/* === CSS VARIABLES & RESET === */
        :root {
            --primary-red: #E3000F; 
            --primary-yellow: #FFED00;
            --base-white: #FFFFFF;
            --text-dark: #222222; 
            --text-light: #555555;
            --bg-light: #fbfbfb; 
            --gradient-main: linear-gradient(135deg, var(--primary-yellow) 0%, #ff8c00 50%, var(--primary-red) 100%);
            --transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Poppins', sans-serif;
        }

        body {
            background-color: var(--base-white);
            color: var(--text-dark);
            overflow-x: hidden;
            width: 100%;
            -webkit-tap-highlight-color: transparent;
        }

        html { scroll-behavior: smooth; overflow-x: hidden; }

        .serif { font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400; }

        /* === CONTINUOUS (ALWAYS-ON) ANIMATIONS === */
        @keyframes float {
            0% { transform: translateY(0px); filter: drop-shadow(0 15px 15px rgba(0,0,0,0.1)); }
            50% { transform: translateY(-20px); filter: drop-shadow(0 25px 25px rgba(0,0,0,0.05)); }
            100% { transform: translateY(0px); filter: drop-shadow(0 15px 15px rgba(0,0,0,0.1)); }
        }

        @keyframes drift {
            0% { transform: translate(0, 0) scale(1); opacity: 0.3; }
            50% { transform: translate(30px, -50px) scale(1.1); opacity: 0.5; }
            100% { transform: translate(0, 0) scale(1); opacity: 0.3; }
        }

        @keyframes drift-reverse {
            0% { transform: translate(0, 0) scale(1.1); opacity: 0.4; }
            50% { transform: translate(-40px, 40px) scale(0.9); opacity: 0.2; }
            100% { transform: translate(0, 0) scale(1.1); opacity: 0.4; }
        }

        @keyframes spin-slow {
            100% { transform: rotate(360deg); }
        }

        /* Ambient Glow Backgrounds */
        .ambient-glow {
            position: absolute;
            border-radius: 50%;
            filter: blur(100px);
            z-index: 0;
            pointer-events: none;
        }
        .glow-yellow {
            background: var(--primary-yellow);
            width: 400px; height: 400px;
            top: 10%; left: -100px;
            animation: drift 15s infinite ease-in-out;
        }
        .glow-red {
            background: rgba(227, 0, 15, 0.4);
            width: 500px; height: 500px;
            bottom: 10%; right: -150px;
            animation: drift-reverse 18s infinite ease-in-out;
        }

        /* === SCROLL REVEAL ANIMATIONS === */
        .reveal { opacity: 0; transform: translateY(40px); transition: all 0.8s cubic-bezier(0.5, 0, 0, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }
        .reveal-left { opacity: 0; transform: translateX(-40px); transition: all 0.8s cubic-bezier(0.5, 0, 0, 1); }
        .reveal-left.active { opacity: 1; transform: translateX(0); }
        .reveal-right { opacity: 0; transform: translateX(40px); transition: all 0.8s cubic-bezier(0.5, 0, 0, 1); }
        .reveal-right.active { opacity: 1; transform: translateX(0); }

        /* === HEADER & NAVIGATION === */
        header {
            position: fixed;
            top: 0;
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 0px 5%;
            margin: 0;
            z-index: 1000;
            /* background-color: rgba(255, 255, 255, 0.95); */
/*             backdrop-filter: blur(10px); */
            /* box-shadow: 0 4px 15px rgba(0,0,0,0.03); */
            transition: var(--transition);
        }

        .logo { flex-shrink: 0; display: flex; align-items: center; z-index: 1005; position: relative;}
        .logo img { height: 80px; width: auto; filter: drop-shadow(0 2px 5px rgba(0,0,0,0.1)); }

        .nav-container {
            background-color: var(--primary-yellow);
            border-radius: 0px 0px 35px 35px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 20px 70px 20px 40px;
            flex-grow: 1;
            margin-left: 40px;
            transition: var(--transition);
        }

        nav { flex-grow: 1; display: flex; justify-content: center; }
        nav ul { display: flex; list-style: none; gap: 35px; align-items: center; margin: 0; padding: 0; }
        nav ul li { position: relative; }
        nav ul li a {
            text-decoration: none; color: var(--text-dark); font-weight: 500; font-size: 15px;
            transition: var(--transition); display: flex; align-items: center; gap: 5px;
        }
        nav ul li a.active, nav ul li a:hover { color: var(--primary-red); font-weight: 600; }
        .fa-chevron-down { font-size: 10px; color: var(--text-dark); transition: transform 0.3s; }
        nav ul li:hover .fa-chevron-down { transform: rotate(180deg); color: var(--primary-red); }

        /* Dropdown */
        .dropdown {
            position: absolute; top: 100%; left: 50%; transform: translateX(-50%) translateY(20px) scale(0.95);
            background-color: var(--base-white); min-width: 220px; border-radius: 12px;
            box-shadow: 0 15px 40px rgba(0,0,0,0.1); opacity: 0; visibility: hidden;
            transition: var(--transition); display: flex; flex-direction: column; gap: 0;
            padding: 10px 0; z-index: 1001; border-top: 3px solid var(--primary-red);
        }
        nav ul li:hover .dropdown { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(15px) scale(1); }
        .dropdown li { padding: 0; width: 100%; }
        .dropdown li a { padding: 12px 25px; font-size: 14px; font-weight: 400; width: 100%; }
        .dropdown li a:hover { background-color: rgba(255, 237, 0, 0.15); color: var(--primary-red); padding-left: 30px; }

        .btn-register {
            background-color: var(--primary-red); color: var(--base-white); padding: 14px 35px;
            border-radius: 40px; text-decoration: none; font-weight: 500; font-size: 15px;
            white-space: nowrap; transition: var(--transition); box-shadow: 0 5px 15px rgba(227, 0, 15, 0.2);
        }
        .btn-register:hover { background-color: #b3000a; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(227, 0, 15, 0.3); }

        /* Animated Hamburger Icon */
        .menu-toggle { 
            display: none; width: 30px; height: 20px; position: relative; cursor: pointer; z-index: 1005; margin-left: auto;
        }
        .menu-toggle span {
            display: block; position: absolute; height: 3px; width: 100%; background: var(--text-dark);
            border-radius: 3px; opacity: 1; left: 0; transform: rotate(0deg); transition: .25s ease-in-out;
        }
        .menu-toggle span:nth-child(1) { top: 0px; }
        .menu-toggle span:nth-child(2) { top: 9px; }
        .menu-toggle span:nth-child(3) { top: 18px; }
        .menu-toggle.open span:nth-child(1) { top: 9px; transform: rotate(135deg); }
        .menu-toggle.open span:nth-child(2) { opacity: 0; left: -20px; }
        .menu-toggle.open span:nth-child(3) { top: 9px; transform: rotate(-135deg); }

        /* === HERO / BANNER SECTION === */
        .hero {
            min-height: 100vh; 
            background: linear-gradient(to bottom, #ffffff 40%, #fffae6 80%, var(--primary-yellow) 100%);
            display: flex; align-items: flex-end; padding: 120px 5% 0px; position: relative; overflow: hidden;
        }

        .hero-content { flex: 1; max-width: 650px; z-index: 2; position: relative; padding-bottom: 120px;}
        .hero-subtitle { font-size: 14px; color: var(--text-light); letter-spacing: 2px; text-transform: uppercase; margin-bottom: 15px; font-weight: 600;}
        .hero h1 { font-size: 4.8rem; line-height: 1.1; margin-bottom: 25px; color: var(--text-dark); font-weight: 700; display: flex; align-items: center; gap: 15px;}
        .hero h1 span { color: var(--primary-red); }
        .text-red { color: var(--primary-red); }
        .hero-star { font-size: 2.5rem; color: var(--primary-yellow); animation: spin-slow 10s linear infinite; }
        .hero p { color: var(--text-light); margin-bottom: 40px; font-size: 16px; line-height: 1.7; }
        .hero-buttons { display: flex; gap: 20px; }

        .btn {
            display: inline-flex; align-items: center; gap: 15px; padding: 14px 35px; border-radius: 40px;
            text-decoration: none; font-weight: 600; transition: var(--transition); border: 1px solid transparent; font-size: 15px;
        }
        .btn-yellow { background-color: var(--primary-yellow); color: var(--text-dark); box-shadow: 0 10px 20px rgba(255, 237, 0, 0.3);}
        .btn-yellow:hover { background-color: #e6d500; transform: translateY(-5px); box-shadow: 0 15px 25px rgba(255, 237, 0, 0.4); }
        .btn-outline { border-color: var(--text-dark); color: var(--text-dark); background-color: transparent; }
        .btn-outline:hover { background-color: var(--text-dark); color: var(--base-white); transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.1);}
        .btn-icon { background-color: var(--primary-red); color: white; width: 28px; height: 28px; display: inline-flex; justify-content: center; align-items: center; border-radius: 50%; font-size: 12px; transition: var(--transition);}
        .btn:hover .btn-icon { transform: rotate(45deg); }
        
        .hero-image { flex: 1; display: flex; justify-content: flex-end; position: relative; z-index: 2;}
        .hero-image img { max-width: 100%; height: auto; max-height: 85vh; object-fit: contain; padding-bottom: 0px; }

        /* === ABOUT US SECTION === */
        .about-modern { display: flex; align-items: center; gap: 8%; padding: 100px 5%; position: relative;}
        .about-text { flex: 1; max-width: 550px; z-index: 2;}
        .text-accent-red { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400; }
        .about-text h2 { font-size: 2.5rem; line-height: 1.15; color: var(--text-dark); margin-bottom: 30px; font-weight: 700; }
        .about-text p { color: var(--text-light); font-size: 14px; line-height: 1.8; margin-bottom: 40px; }
        .read-story-link { display: inline-block; color: var(--primary-red); font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: 0.5px; text-decoration: none; padding-bottom: 5px; border-bottom: 2px solid var(--primary-red); transition: var(--transition); }
        .read-story-link:hover { color: var(--text-dark); border-bottom-color: var(--text-dark); letter-spacing: 1px;}
        
        .about-visual { flex: 1; position: relative; padding-top: 20px; padding-right: 20px; z-index: 2;}
        .visual-backdrop { position: absolute; top: 0; right: 0; bottom: 30px; left: 30px; background-color: var(--primary-red); border-radius: 0 60px 0 0; z-index: 0; transition: var(--transition); }
        .about-visual:hover .visual-backdrop { transform: translate(10px, -10px); }
        .about-visual img { position: relative; width: 100%; height: auto; display: block; border-radius: 0 50px 0 0; z-index: 1; box-shadow: -10px 10px 30px rgba(0,0,0,0.05); }
        .yellow-quote { position: absolute; bottom: -30px; left: -40px; background-color: var(--primary-yellow); padding: 35px; z-index: 2; box-shadow: 0 15px 30px rgba(0,0,0,0.08); max-width: 250px; transition: var(--transition);}
        .about-visual:hover .yellow-quote { transform: translateY(-10px); }
        .yellow-quote p { font-weight: 700; color: var(--text-dark); font-size: 18px; line-height: 1.4; margin: 0; }

        /* === DIAMOND GRID GALLERY === */
        .gallery-section { padding: 100px 5%; background: #fff; overflow: hidden; position: relative; }
        .gallery-section::before { content: ''; position: absolute; top: -100px; right: -100px; width: 500px; height: 500px; background: radial-gradient(circle, rgb(255 237 0) 0%, transparent 70%); z-index: 0; }
        .gallery-section::after {content: ''; position: absolute; bottom: -100px; left: -100px; width: 500px; height: 500px; background: radial-gradient(circle, rgb(255 237 0) 0%, transparent 70%); z-index: 0;}
        .gallery-header { text-align: center; margin-bottom: 60px; position: relative; z-index: 1; }
        .gallery-header h2, .vm-modern-section h2 { font-size: 3.2rem; color: var(--text-dark); font-weight: 700; }
        .gallery-header span, .vm-modern-section h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}

        .diamond-grid { display: flex; justify-content: center; gap: 25px; flex-wrap: wrap; position: relative; z-index: 1; }
        .diamond-card { width: 200px; height: 320px; position: relative; overflow: hidden; border-radius: 100px; transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1); cursor: pointer; box-shadow: 0 15px 30px rgba(0,0,0,0.08); background: #fff; }
        .diamond-card img { height: 100%; width: 100%; object-fit: cover; transition: all 0.8s ease; }
        .diamond-card:hover { width: 280px; transform: scale(1.05); z-index: 2; box-shadow: 0 25px 45px rgba(227, 0, 15, 0.25); }
        .diamond-card:hover img { transform: scale(1.1); }
        .diamond-card:nth-child(even) { margin-top: 50px; }

        /* === VISION & MISSION SECTION === */
        .vm-modern-section { width: 100%; overflow: hidden; background-color: var(--base-white); position: relative;}
        .vm-row { display: flex; align-items: center; gap: 80px; padding: 100px 5% 50px 5%;}
		.vm-modern-section .reverse {padding: 50px 5% 100px 5%;}
        .vm-text { flex: 1; max-width: 600px; }
        .vm-text h2 { font-size: 3.5rem; color: var(--text-dark); margin-bottom: 25px; font-weight: 700; }
        .vm-text p { color: var(--text-light); font-size: 15px; line-height: 1.8; margin-bottom: 30px; }
        .vm-list { list-style: none; padding: 0; }
        .vm-list li { font-size: 16px; color: var(--text-light); margin-bottom: 18px; display: flex; align-items: center; gap: 15px; font-weight: 600; }
        .vm-list li i { color: #4CAF50; font-size: 22px; }

        .vm-images { flex: 1; position: relative; }
        .vm-images .img-main { width: 85%; border-radius: 20px; height: 480px; box-shadow: 0 15px 35px rgba(0,0,0,0.1); display: block; transition: var(--transition); }
        .vm-images:hover .img-main { transform: scale(1.02); }
        .vm-images .img-overlay { position: absolute; width: 45%; border: 12px solid var(--base-white); border-radius: 20px; transition: var(--transition); }
        .vm-images:hover .img-overlay { transform: translateY(-10px) scale(1.05); }

        .right-align { display: flex; justify-content: flex-end; }
        .overlay-left { left: 0; top: 85%; transform: translateY(-50%); }
        .vm-images.right-align:hover .overlay-left { transform: translateY(-50%) translateX(-15px) scale(1.05); }
        
        .left-align { display: flex; justify-content: flex-start; }
        .overlay-right { right: 0; bottom: -40px; }
        .vm-images.left-align:hover .overlay-right { transform: translateY(-15px) translateX(15px) scale(1.05); }

        /* === PREMIUM WELFARE SECTION === */
        .welfare-card { display: flex; width: 100%; border-radius: 40px; overflow: hidden; transition: var(--transition);}
        .welfare-card:hover { transform: translateY(-5px);}
        .welfare-image { flex: 1; overflow: hidden;}
        .welfare-image img { height: 100%; width: 100%; object-fit: cover; transition: all 1s ease;}
        .welfare-card:hover .welfare-image img { transform: scale(1.08); }
        
        .welfare-text { flex: 1; padding: 60px; display: flex; flex-direction: column; justify-content: center; background: var(--gradient-main); color: white; position: relative; overflow: hidden;}
        .welfare-text::before { content: ''; position: absolute; width: 300px; height: 300px; background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 70%); border-radius: 50%; top: -100px; right: -100px; }
        .w-tag { background: rgba(255,255,255,0.2); width: fit-content; padding: 5px 15px; border-radius: 20px; font-weight: 700; letter-spacing: 2px; margin-bottom: 20px; font-size: 11px; text-transform: uppercase; backdrop-filter: blur(5px);}
        .w-head { font-size: 3rem; line-height: 1.1; margin-bottom: 20px; font-weight: 700; position: relative;}
        .w-desc { font-size: 15px; line-height: 1.7; margin-bottom: 30px; opacity: 0.95; position: relative;}
        .w-btn { align-self: flex-start; padding: 15px 35px; background: white; color: var(--primary-red); font-weight: 700; text-transform: uppercase; border-radius: 30px; transition: 0.3s; box-shadow: 0 10px 20px rgba(0,0,0,0.1); font-size: 13px; text-decoration: none; position: relative;}
        .w-btn:hover { transform: translateY(-5px); box-shadow: 0 15px 25px rgba(0,0,0,0.2); }

        /* === SEAMLESS INFINITE LOGO SCROLL === */
        .partner-section { padding: 0px 0 100px 0; background: white;}
        .partner-title { text-align: center; margin-bottom: 40px; color: #bbb; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; font-size: 13px; }
        .marquee-container { display: flex; overflow: hidden; width: 100%; }
        .marquee-track { display: flex; width: max-content; animation: scrollLogos 25s linear infinite; }
        .marquee-group { display: flex; align-items: center; gap: 60px; padding-right: 60px; }
        .partner-logo {height: 100px; width: auto; max-width: 150px; object-fit: contain;}
        .partner-logo:hover { filter: grayscale(0%); opacity: 1; transform: scale(1.1);}
        @keyframes scrollLogos { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

        /* === PREMIUM FOOTER === */
        footer { background: #fff; color: var(--text-dark); padding: 80px 5% 40px; border-top: 1px solid #f0f0f0;}
        .footer-top { display: flex; justify-content: space-between; align-items: flex-end; padding-bottom: 50px; border-bottom: 2px solid var(--primary-red); }
        .f-logo-big { font-size: 2.5rem; font-weight: 800; line-height: 1; color: var(--text-dark); }
        .f-logo-big span { color: var(--primary-red); }
        .f-socials { display: flex; gap: 15px; }
        .f-socials a { width: 45px; height: 45px; border: 2px solid #eee; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--text-dark); transition: var(--transition); font-weight: 700; text-decoration: none; }
        .f-socials a:hover { border-color: var(--primary-red); background: var(--primary-red); color: white; transform: translateY(-5px); box-shadow: 0 10px 20px rgba(227, 0, 15, 0.2);}
        .footer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; margin-top: 50px; }
        .f-item h4 { color: var(--primary-red); font-size: 13px; margin-bottom: 20px; text-transform: uppercase; letter-spacing: 1px; font-weight: 700; }
        .f-item ul { list-style: none; padding: 0; margin: 0; }
        .f-item ul li { margin-bottom: 12px; font-size: 15px; font-weight: 500; color: #555; transition: 0.3s; text-decoration: none; position: relative;}
        .f-item ul li a { font-size: 15px; font-weight: 500; color: #555; transition: 0.3s; text-decoration: none; position: relative;}
        .f-item ul li a::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background: var(--primary-red); transition: 0.3s;}
        .f-item ul li a:hover { color: var(--primary-red); }
        .f-item ul li a:hover::after { width: 100%; }
        .footer-bottom { text-align: center; color: #999; font-size: 13px; margin-top: 40px;}

        /* =======================================================
           MOBILE RESPONSIVENESS (SUPER ATTRACTIVE & CLASSY)
           ======================================================= */

        
        @media (max-width: 1200px) {
            nav ul { gap: 15px; }
            nav ul li a { font-size: 13px; }
            .nav-container { padding: 10px 15px; margin-left: 20px; }
            .about-modern { flex-direction: column; gap: 60px;}
            .about-visual { padding-right: 0; width: 90%; margin: 0 auto;}
            .yellow-quote { left: -10px; bottom: -20px;}
        }

        @media (max-width: 1300px) {
            .hero h1 {font-size: 2.8rem;}
            .hero p {margin-bottom: 20px; font-size: 13px; line-height: 1.4;}
            nav ul {gap: 20px;}
            nav ul li a {font-size: 13px;}
            .btn-register {font-size: 13px;}
        }

        @media (max-width: 991px) {
            /* 1. Remove Heavy Background Animations on Mobile to prevent lag/bugs */
            .ambient-glow { display: none; }

            /* 2. Glassmorphic App-Like Mobile Menu */
            header { padding: 15px 5%; border-bottom: 1px solid rgba(0,0,0,0.05); background-color: rgba(255, 255, 255, 0.98);}
            
            .nav-container {
                position: fixed; top: 0; left: 0; width: 100%; height: 100vh;
                background: rgba(255, 255, 255, 0.98); backdrop-filter: blur(15px);
                flex-direction: column; justify-content: center; align-items: center; gap: 30px;
                opacity: 0; visibility: hidden; transform: translateY(-10px);
                transition: all 0.4s ease-in-out; margin: 0; border-radius: 0; z-index: 1001; padding: 20px;
            }
            .nav-container.active { opacity: 1; visibility: visible; transform: translateY(0); }
            
            nav ul { flex-direction: column; width: 100%; align-items: center; gap: 20px; }
            nav ul li { width: auto; opacity: 0; transform: translateY(20px); transition: all 0.4s ease; }
            .nav-container.active nav ul li { opacity: 1; transform: translateY(0); }
            
            /* Staggered Menu Item Animation */
            .nav-container.active nav ul li:nth-child(1) { transition-delay: 0.1s; }
            .nav-container.active nav ul li:nth-child(2) { transition-delay: 0.15s; }
            .nav-container.active nav ul li:nth-child(3) { transition-delay: 0.2s; }
            .nav-container.active nav ul li:nth-child(4) { transition-delay: 0.25s; }
            .nav-container.active nav ul li:nth-child(5) { transition-delay: 0.3s; }
            .nav-container.active nav ul li:nth-child(6) { transition-delay: 0.35s; }

            nav ul li a { font-size: 22px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px;}
            .dropdown {
                position: static;
                transform: none !important;
                box-shadow: none;
                border-top: none;
                background-color: rgba(255, 237, 0, 0.1); /* Light yellow tint for contrast */
                border-radius: 12px;
                margin-top: 15px;
                padding: 5px 0;
                width: 100%;
                display: none; /* Hidden by default on mobile */
                opacity: 1;
                visibility: visible;
            }
            
            /* Class toggled by JS */
            .dropdown.active {
                display: flex; 
            }

            /* Override desktop hover effects on mobile */
            nav ul li:hover .dropdown {
                display: none;
                transform: none;
            }
            nav ul li:hover .dropdown.active {
                display: flex;
            }

            /* Submenu link styling for mobile */
            .dropdown li a {
                font-size: 16px;
                padding: 10px 20px;
                text-transform: none;
                font-weight: 500;
                justify-content: center;
            }

            /* Rotates the chevron when active */
            .fa-chevron-down.rotate {
                transform: rotate(180deg);
                color: var(--primary-red);
            } /* Hide complex dropdowns on mobile */
            
            .btn-register { 
                margin-top: 20px; font-size: 16px; padding: 15px 40px; 
                opacity: 0; transform: translateY(20px); transition: all 0.4s ease;
            }
            .nav-container.active .btn-register { opacity: 1; transform: translateY(0); transition-delay: 0.4s;}
            
            .menu-toggle { display: block; }
            
            /* 3. Hero Section Formatting */
            .hero { padding-top: 40px; min-height: auto;}
            .hero-content {padding-bottom: 45px;}
            .hero h1 { font-size: 3.5rem; flex-direction: column; gap: 5px; justify-content: center;}
            .hero-buttons { justify-content: center; flex-wrap: wrap;}
            .hero-image { margin-top: 40px; display: flex; justify-content: center;}
            .hero-image img { max-height: 100vh; }
            .hero-subtitle {
                font-size: 8px;
                color: var(--text-light);
                letter-spacing: 1px;
                text-transform: uppercase;
                margin-bottom: 5px;
                font-weight: 600;
            }
            
            /* 4. Perfect Touch Swiping for Gallery */
            .diamond-grid { 
                justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; 
                padding-bottom: 40px; padding-left: 5%; padding-right: 5%; /* Padding allows first/last card to look right */
                scroll-snap-type: x mandatory; gap: 20px;
                -ms-overflow-style: none; scrollbar-width: none; 
            }
            .diamond-grid::-webkit-scrollbar { display: none; }
            .diamond-card { 
                flex-shrink: 0; width: 220px !important; height: 320px; margin-top: 0 !important; 
                scroll-snap-align: center; border-radius: 20px; transform: none !important;
            }
            .diamond-card:hover { transform: none !important; width: 220px !important; box-shadow: 0 15px 30px rgba(0,0,0,0.08); }

            /* 5. Fixing the Vision/Mission Broken Overlays */
            .vm-row { flex-direction: column; gap: 50px; padding: 60px 5%; }
            .vm-row.reverse { flex-direction: column-reverse; } 
            .vm-text { max-width: 100%;}
            .vm-list li { justify-content: center; text-align: left; }
            
            /* Restructured Mobile Images to prevent screen-breaking overlap */
            .vm-images { width: 100%; height: auto; position: relative; display: flex; flex-direction: column; align-items: center;}
            .vm-images .img-main { width: 90%; height: 350px; border-radius: 15px; position: relative; margin-bottom: 50px;}
            /* Instead of absolutely positioning way off to the side, we anchor it to the bottom center so it stays on screen */
            .vm-images .img-overlay { position: absolute; width: 65%; border-width: 6px; border-radius: 15px; bottom: 0; left: 50%; transform: translateX(-50%) !important; top: auto; right: auto;}
            
            /* Override hover effects on mobile to prevent jittering */
            .vm-images:hover .img-overlay { transform: translateX(-50%) !important; }
            .vm-images.right-align:hover .overlay-left { transform: translateX(-50%) !important; }
            .vm-images.left-align:hover .overlay-right { transform: translateX(-50%) !important; }

            /* 6. Welfare Fixes */
            .welfare-section { padding: 60px 5%; }
            .welfare-card { flex-direction: column; border-radius: 25px;}
            .welfare-image { height: 300px; } /* Fixed height for image on mobile */
            .welfare-text { padding: 40px 30px; align-items: center;}
            .w-head { font-size: 2.2rem; }
            .w-btn { align-self: center; }
            
            /* 7. Footer Fixes */
            .footer-top { flex-direction: column; align-items: center; gap: 30px; text-align: center; padding-bottom: 40px;}
            .footer-grid { grid-template-columns: repeat(2, 1fr); text-align: center; gap: 40px; }
        }

        @media (max-width: 768px) {
            .hero h1 {font-size: 1rem; display: block; margin-bottom: 5px; line-height: 1.1;}
            .hero p { font-size: 9px; line-height: normal; margin-bottom: 10px;}
            .btn {gap: 1px; padding: 6px 10px; font-size: 8px;}
            .hero-buttons {gap: 5px;}
            .hero-buttons {justify-content: flex-start;}
            .btn-icon {width: 15px; height: 15px; font-size: 8px;}
            .hero-star { font-size: 1.8rem; }
            .about-text h2 { font-size: 2.5rem; }
            .yellow-quote { padding: 20px; max-width: 200px; bottom: -20px; left: -10px;}
            .yellow-quote p { font-size: 15px; }
            .gallery-header h2 { font-size: 2.5rem; }
            .vm-text h2 { font-size: 2.5rem; }
            .footer-grid { grid-template-columns: 1fr; }
        }
        .f-logo-big img {
            width: 20%;
        }
        @media (max-width: 500px) {
            .hero-subtitle {font-size: 6px;}
            .hero h1 {font-size: 15px; margin-bottom: 10px; line-height: .8;}
            .hero p {font-size: 6px; margin-bottom: 10px;}
            .hero-content {padding-bottom: 70px;}
            .btn {font-size: 7px;}
            .btn-icon {width: 12px; height: 12px; font-size: 7px;}
            .logo img { height: 40px;}
            .f-logo-big img {width: 40%;}
        }

        /* === INNER PAGE HERO BANNER === */
		.inner-hero {
			padding: 250px 5% 150px;
			text-align: center;
			color: var(--base-white);
			position: relative;
		}
        .inner-hero h1 { font-size: 4rem; font-weight: 700; margin-bottom: 15px; text-shadow: 0 5px 15px rgba(0,0,0,0.3);}
        .inner-hero span.serif { color: var(--primary-yellow); }
        .breadcrumb { font-size: 15px; font-weight: 500; letter-spacing: 1px; text-transform: uppercase;}
        .breadcrumb a { color: var(--primary-yellow); text-decoration: none; transition: var(--transition); }
        .breadcrumb a:hover { color: var(--primary-red); }

        /* === NEW: THE TEAM / JURY SECTION === */
        .team-section { padding: 100px 5%; background-color: var(--base-white); text-align: center; }
        .team-header h2 { font-size: 3.2rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700; }
        .team-header h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .team-header p { color: var(--text-light); max-width: 600px; margin: 0 auto 60px; font-size: 16px; line-height: 1.6;}

        .team-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 40px; }
        .team-card { background: var(--bg-light); border-radius: 20px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.04); transition: var(--transition); text-align: left;}
        .team-card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(227, 0, 15, 0.15); }
        .team-img { width: 100%; aspect-ratio: 4/5; object-fit: cover; transition: var(--transition); }
        .team-card:hover .team-img { transform: scale(1.05); }
        .team-img-wrapper { overflow: hidden; }
        .team-info { padding: 25px; background: var(--bg-light); position: relative; z-index: 2;}
        .team-info h3 { color: var(--text-dark); font-size: 1.3rem; margin-bottom: 5px; font-weight: 700;}
/*         .team-info p { color: var(--primary-red); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 15px;} */
        .team-socials a { display: inline-flex; align-items: center; justify-content: center; width: 35px; height: 35px; border-radius: 50%; background: #eee; color: var(--text-dark); margin-right: 10px; transition: var(--transition); text-decoration: none;}
        .team-socials a:hover { background: var(--primary-yellow); color: var(--text-dark); transform: translateY(-3px);}
        
        @media (max-width: 1200px) {
            .inner-hero h1 { font-size: 3.5rem; }
        }

        @media (max-width: 768px) {
            .inner-hero h1 { font-size: 2.2rem; }
            .team-header h2 { font-size: 2.5rem; }
        }

        /* === FAQ SECTION === */
        .faq-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .faq-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 60px;
        }
        .faq-intro h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .faq-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .faq-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        .faq-container {
            max-width: 900px;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        /* Accordion Item Styling */
        .faq-item {
            background-color: var(--base-white);
            border-radius: 15px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
            border: 1px solid #f0f0f0;
            overflow: hidden;
            transition: var(--transition);
        }
        .faq-item:hover {
            box-shadow: 0 15px 40px rgba(227, 0, 15, 0.08);
            border-color: rgba(227, 0, 15, 0.2);
        }

        /* Question Header */
        .faq-question {
            padding: 25px 30px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            cursor: pointer;
            font-size: 1.2rem;
            font-weight: 600;
            color: var(--text-dark);
            transition: var(--transition);
        }
        .faq-question:hover { color: var(--primary-red); }

        /* Chevron Icon */
        .faq-icon {
            width: 40px; height: 40px;
            background: rgba(255, 237, 0, 0.2);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex; justify-content: center; align-items: center;
            font-size: 14px; flex-shrink: 0; transition: transform 0.4s ease, background 0.4s;
        }

        /* Answer Body (Hidden by default) */
        .faq-answer {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.4s ease-out, padding 0.4s ease-out;
            background-color: var(--bg-light);
        }
        
        .faq-answer p {
            padding: 0 30px 25px;
            margin: 0;
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.8;
            font-weight: 500;
        }
        .faq-answer a {
            color: var(--primary-red);
            font-weight: 700;
            text-decoration: underline;
        }

        /* Active State (When Opened) */
        .faq-item.active {
            border-color: var(--primary-red);
            box-shadow: 0 15px 40px rgba(227, 0, 15, 0.1);
        }
        .faq-item.active .faq-question {
            color: var(--primary-red);
        }
        .faq-item.active .faq-icon {
            transform: rotate(180deg);
            background: var(--primary-red);
            color: var(--base-white);
        }
        .faq-item.active .faq-answer {
            max-height: 500px; /* Arbitrary large number to allow full expansion */
            padding-top: 10px;
        }

        /* Support Box */
        .support-box {
            text-align: center;
            margin-top: 100px;
            padding: 50px;
            background: var(--gradient-main);
            border-radius: 25px;
            color: var(--base-white);
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.25);
        }
        .support-box h3 { font-size: 2rem; margin-bottom: 15px; font-weight: 700; }
        .support-box p { font-size: 16px; margin-bottom: 30px; font-weight: 500; opacity: 0.9;}
        .support-btn {
            display: inline-flex; align-items: center; justify-content: center; gap: 15px;
            padding: 16px 40px; border-radius: 40px; background-color: var(--base-white); color: var(--primary-red);
            text-decoration: none; font-weight: 700; transition: var(--transition); border: none; font-size: 16px;
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); text-transform: uppercase; letter-spacing: 1px;
        }
        .support-btn:hover { transform: translateY(-3px); box-shadow: 0 15px 25px rgba(0, 0, 0, 0.2); }

        @media (max-width: 991px) {
            /* Inner Adjustments */
            .inner-hero { padding: 150px 5% 80px; }
            .inner-hero h1 { font-size: 2.8rem; }

            .faq-question { font-size: 1.1rem; padding: 20px; }
            .faq-answer p { padding: 0 20px 20px; }
            .support-box { padding: 40px 25px; }
        }

        @media (max-width: 768px) {
            .faq-intro h2 { font-size: 2.5rem; }
            .support-box h3 { font-size: 1.6rem; }
			.inner-hero {
    padding: 100px 5% 50px;
    margin-top: 60px;
}
        }

        /* === LEGAL CONTENT SECTION === */
        .legal-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .legal-container {
/*             max-width: 80%; */
            margin: 0 auto;
            background: var(--base-white);
            padding: 80px;
            border-radius: 25px;
            box-shadow: 0 15px 50px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
        }

        .legal-intro {
            margin-bottom: 50px;
            text-align: center;
            padding-bottom: 30px;
            border-bottom: 2px solid #eaeaea;
            text-align: center;
        }
        .legal-intro p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            font-weight: 500;
        }

        /* Refund Highlight Card */
        .refund-highlight {
            background: rgba(227, 0, 15, 0.05);
            border-left: 5px solid var(--primary-red);
            padding: 40px;
            border-radius: 0 15px 15px 0;
            margin-bottom: 40px;
        }
        
        .refund-highlight h3 {
            font-size: 1.8rem;
            color: var(--primary-red);
            margin-bottom: 15px;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 15px;
        }
        .refund-highlight h3 i {
            font-size: 24px;
        }

        .refund-highlight p {
            font-size: 16px;
            color: var(--text-dark);
            line-height: 1.8;
            font-weight: 500;
            margin: 0;
        }
        .refund-highlight p b {
            color: var(--primary-red);
        }

        /* Policy Detail Blocks */
        .legal-block {
            display: flex;
            align-items: flex-start;
            gap: 20px;
            background: var(--bg-light);
            padding: 30px;
            border-radius: 15px;
            border: 1px solid #eaeaea;
        }

        .legal-block-icon {
            width: 50px; height: 50px;
            background: rgba(255, 237, 0, 0.3);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex; justify-content: center; align-items: center;
            font-size: 20px; flex-shrink: 0;
        }

        .legal-block-content h4 {
            font-size: 1.2rem;
            color: var(--text-dark);
            margin-bottom: 10px;
            font-weight: 700;
        }
        .legal-block-content p {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.8;
            margin: 0;
        }

        @media (max-width: 991px) {
            .legal-container { padding: 40px 25px; border-radius: 20px; }
            
            .refund-highlight { padding: 30px 20px; }
            .refund-highlight h3 { font-size: 1.5rem; }
            .legal-block { flex-direction: column; gap: 15px; padding: 25px 20px;}
        }

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

        .terms-list li {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.8;
            margin-bottom: 35px;
            display: flex;
            align-items: flex-start;
            gap: 20px;
        }

        .terms-list li:last-child {
            margin-bottom: 0;
        }

        /* Numbered Badge */
        .terms-number {
            width: 40px;
            height: 40px;
            background: rgba(255, 237, 0, 0.2);
            color: var(--primary-red);
            font-weight: 700;
            font-size: 16px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            flex-shrink: 0;
            margin-top: 3px;
        }

        .terms-text {
            flex: 1;
        }

        .terms-text b, .terms-text strong {
            color: var(--text-dark);
            font-weight: 700;
        }

        /* Highlight Sub-bullet points inside a list item */
        .sub-bullet-list {
            list-style: none;
            padding: 0;
            margin: 15px 0 0 0;
        }
        .sub-bullet-list li {
            margin-bottom: 10px;
            font-size: 15px;
            display: flex;
            align-items: flex-start;
            gap: 10px;
            padding: 0;
        }
        .sub-bullet-list li i {
            color: var(--primary-yellow);
            font-size: 12px;
            margin-top: 6px;
        }

        /* Highlight box for specific terms */
        .highlight-term {
            background: rgba(227, 0, 15, 0.05);
            padding: 25px;
            border-radius: 12px;
            border-left: 4px solid var(--primary-red);
        }
        .highlight-term .terms-number {
            background: var(--primary-red);
            color: var(--base-white);
        }
        .privacy-legal-intro {
            margin-bottom: 50px;
            padding-bottom: 30px;
            border-bottom: 2px solid #eaeaea;
        }
        .privacy-legal-intro p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            margin-bottom: 20px;
        }
        .privacy-legal-intro p strong {
            color: var(--text-dark);
        }

        .privacy-legal-block {
            margin-bottom: 50px;
        }
        .privacy-legal-block:last-child {
            margin-bottom: 0;
        }

        .privacy-legal-block h3 {
            font-size: 1.8rem;
            color: var(--text-dark);
            margin-bottom: 20px;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 15px;
        }
        .privacy-legal-block h3::before {
            content: '';
            display: block;
            width: 8px;
            height: 30px;
            background: var(--primary-red);
            border-radius: 4px;
        }

        .privacy-legal-block p {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.8;
            margin-bottom: 20px;
        }

        .legal-list {
            list-style: none;
            padding: 0;
            margin: 0 0 20px 0;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 15px;
        }
        .legal-list li {
            font-size: 15px;
            color: var(--text-light);
            display: flex;
            align-items: center;
            gap: 10px;
            background: var(--bg-light);
            padding: 15px 20px;
            border-radius: 10px;
            border: 1px solid #f0f0f0;
        }
        .legal-list li i {
            color: var(--primary-red);
            font-size: 12px;
        }

        @media (max-width: 991px) {
            .legal-list { grid-template-columns: 1fr; }
        }

        /* === ASSOCIATES SECTION === */
        .associates-section {
            padding: 80px 5% 100px;
            background-color: var(--bg-light);
            position: relative;
            z-index: 2;
        }

        .associates-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 60px;
        }
        .associates-intro h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .associates-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .associates-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        /* Logo Grid Container */
        .associates-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 30px;
            max-width: 1200px;
            margin: 0 auto;
        }

        /* Logo Card Design */
        .associate-card {
            background-color: var(--base-white);
            padding: 25px 20px;
            border-radius: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
            aspect-ratio: 4/3;
        }

        .associate-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
        }

        .associate-card img {
            max-width: 100%;
            max-height: 100px;
            object-fit: contain;
/*             filter: grayscale(100%);
            opacity: 0.6; */
            transition: var(--transition);
        }

        .associate-card:hover img {
            filter: grayscale(0%);
            opacity: 1;
            transform: scale(1.05);
        }
        @media (max-width: 991px) {
            /* Associates Adjustments */
            .associates-grid { grid-template-columns: repeat(2, 1fr); gap: 20px;}
            .associate-card { padding: 30px 20px; }
        }
        @media (max-width: 768px) {
            .associates-intro h2 { font-size: 2.5rem; }
            .associates-grid { grid-template-columns: 1fr; } /* Stack logos on mobile */
        }

        /* === TITLES INTRO SECTION === */
        .titles-intro {
            padding: 100px 5% 40px;
            text-align: center;
            max-width: 850px;
            margin: 0 auto;
            position: relative;
            z-index: 2;
        }
        .titles-intro h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .titles-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .titles-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        /* === PODIUM LAYOUT FOR TITLES === */
        .podium-section {
            padding: 20px 5% 100px;
            position: relative;
            z-index: 2;
        }

        .podium-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
            max-width: 1200px;
            margin: 0 auto;
            align-items: center; /* Aligns items to create the podium step effect */
        }

        /* Base Title Card */
        .title-card {
            background: var(--base-white);
            border-radius: 25px;
            padding: 50px 30px;
            text-align: center;
            box-shadow: 0 10px 30px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }

        .title-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
        }

        /* Inner Content Styling */
        .title-card .icon-wrapper {
            width: 80px; height: 80px;
            background: rgba(255, 237, 0, 0.2);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex; justify-content: center; align-items: center;
            font-size: 35px; margin: 0 auto 25px;
            transition: var(--transition);
        }

        .title-card:hover .icon-wrapper {
            background: var(--primary-red); color: var(--base-white);
            transform: scale(1.1) rotate(10deg);
        }

        .title-card h3 { font-size: 1.6rem; color: var(--text-dark); margin-bottom: 15px; font-weight: 700; }
        .title-card p { font-size: 15px; color: var(--text-light); line-height: 1.6; margin: 0; }

        /* The Ultimate Winner Card (Center Podium) */
        .title-card.winner {
            background: var(--gradient-main);
            color: var(--base-white);
            padding: 80px 40px;
            transform: scale(1.05); /* Makes it larger to stand out */
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.25);
            border: none;
            z-index: 2;
        }
        .title-card.winner::before {
            content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%;
            background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 60%);
            animation: spin-slow 20s linear infinite;
            z-index: 0;
        }

        .title-card.winner .icon-wrapper {
            background: rgba(255, 255, 255, 0.2);
            color: var(--primary-yellow);
            width: 100px; height: 100px; font-size: 45px;
            position: relative; z-index: 1;
            box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        }
        .title-card.winner:hover { transform: translateY(-10px) scale(1.05); box-shadow: 0 30px 60px rgba(227, 0, 15, 0.35); }
        .title-card.winner:hover .icon-wrapper { background: var(--primary-yellow); color: var(--primary-red); transform: scale(1.1) rotate(0deg); }

        .title-card.winner h3 { color: var(--base-white); font-size: 2.2rem; position: relative; z-index: 1;}
        .title-card.winner p { color: rgba(255,255,255,0.95); font-size: 16px; position: relative; z-index: 1; font-weight: 500;}

        /* Reorder for visual podium effect */
        .podium-left { order: 1; }
        .podium-center { order: 2; }
        .podium-right { order: 3; }


        /* === SPECIAL AWARDS SECTION === */
        .special-awards-section {
            padding: 100px 5% 100px;
            background-color: var(--bg-light);
            text-align: center;
        }

        .special-awards-section h3 {
            font-size: 2.5rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;
        }
        .special-awards-section p {
            font-size: 16px; color: var(--text-light); max-width: 700px; margin: 0 auto 50px; line-height: 1.7;
        }

        .badges-container {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 20px;
            max-width: 1000px;
            margin: 0 auto 60px;
        }

        .award-badge {
            background: var(--base-white);
            padding: 15px 30px;
            border-radius: 50px;
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 15px;
            font-weight: 600;
            color: var(--text-dark);
            box-shadow: 0 8px 20px rgba(0,0,0,0.03);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
            cursor: pointer;
        }
        .award-badge i { color: var(--primary-red); font-size: 18px; transition: var(--transition);}
        
        .award-badge:hover {
            transform: translateY(-5px);
            background: var(--primary-yellow);
            box-shadow: 0 15px 30px rgba(255, 237, 0, 0.3);
            border-color: var(--primary-yellow);
        }
        .award-badge:hover i { color: var(--text-dark); }

        .outro-text {
            max-width: 800px;
            margin: 0 auto;
            font-size: 18px;
            font-weight: 500;
            color: var(--primary-red);
            font-style: italic;
            border-top: 1px solid #eaeaea;
            padding-top: 40px;
        }

        @media (max-width: 991px) {
            /* Podium Adjustments for Mobile */
            .podium-grid { grid-template-columns: 1fr; gap: 40px; }
            .title-card.winner { transform: scale(1); order: -1; } /* Winner card goes to top on mobile */
            .title-card.winner:hover { transform: translateY(-5px) scale(1); }
            .podium-left { order: 2; }
            .podium-right { order: 3; }
        }

        @media (max-width: 768px) {
            .inner-hero h1 { font-size: 2.2rem; }
            .titles-intro h2 { font-size: 2.5rem; }
            .special-awards-section h3 { font-size: 2.2rem; }
            .award-badge { width: 100%; justify-content: center; }
        }

        /* === PRIZES SECTION === */
        .prizes-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            position: relative;
            z-index: 2;
        }

        .prizes-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 60px;
        }
        .prizes-intro h2 { font-size: 3.2rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .prizes-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .prizes-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        .prizes-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 40px;
            max-width: 1200px;
            margin: 0 auto;
        }

        /* Standard Prize Card (Registration & Audition) */
        .prize-card {
            background: var(--base-white);
            border-radius: 25px;
            padding: 50px 40px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }
        .prize-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
        }
        
        /* Ribbon Decoration */
        .prize-card::before {
            content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 6px;
            background: var(--primary-yellow); transition: var(--transition);
        }
        .prize-card:hover::before { height: 10px; background: var(--primary-red); }

        .prize-icon {
            width: 70px; height: 70px;
            background: rgba(255, 237, 0, 0.2);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex; justify-content: center; align-items: center;
            font-size: 28px; margin-bottom: 25px;
            transition: var(--transition);
        }
        .prize-card:hover .prize-icon { background: var(--primary-red); color: var(--base-white); transform: scale(1.1) rotate(10deg); }

        .prize-card h3 {
            font-size: 1.8rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;
        }
        .prize-card p {
            font-size: 15px; color: var(--text-light); line-height: 1.7; margin-bottom: 15px;
        }
        .prize-card p:last-child { margin-bottom: 0; }

        /* Grand Finale Card (Full Width Span) */
        .grand-card {
            grid-column: 1 / -1; /* Spans across all columns */
            background: var(--gradient-main);
            color: var(--base-white);
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
            padding: 80px 50px;
            border: none;
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.25);
        }
        .grand-card::before { display: none; }
        .grand-card:hover {
            transform: translateY(-10px) scale(1.02);
            box-shadow: 0 30px 60px rgba(227, 0, 15, 0.35);
        }
        
        .grand-card .prize-icon {
            background: rgba(255, 255, 255, 0.2);
            color: var(--primary-yellow);
            width: 100px; height: 100px; font-size: 40px;
            margin-bottom: 30px; box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        }
        .grand-card:hover .prize-icon {
            background: var(--primary-yellow);
            color: var(--primary-red);
            transform: scale(1.1) rotate(0deg);
        }

        .grand-card h3 {
            color: var(--base-white);
            font-size: 3rem; margin-bottom: 25px;
        }
        .grand-card h3 span {
            color: var(--primary-yellow);
            font-family: 'Playfair Display', serif;
            font-style: italic;
            font-weight: 400;
        }
        
        .grand-card p {
            color: rgba(255, 255, 255, 0.95);
            font-size: 18px; line-height: 1.8;
            max-width: 800px;
            font-weight: 500;
            font-style: italic;
        }

        .prize-tags {
            display: flex; flex-wrap: wrap; justify-content: center; gap: 15px; margin-top: 40px;
        }
        .prize-tag {
            background: rgba(255, 255, 255, 0.15);
            padding: 10px 25px;
            border-radius: 40px;
            font-size: 14px;
            font-weight: 600;
            letter-spacing: 1px;
            text-transform: uppercase;
            backdrop-filter: blur(5px);
            border: 1px solid rgba(255, 255, 255, 0.3);
        }

        @media (max-width: 991px) {
            /* Prizes Adjustments */
            .prizes-grid { grid-template-columns: 1fr; gap: 30px; }
            .grand-card { grid-column: auto; padding: 50px 30px; }
            .grand-card:hover { transform: translateY(-5px); }
        }

        @media (max-width: 768px) {
            .prizes-intro h2 { font-size: 2.5rem; }
            .grand-card h3 { font-size: 2.2rem; }
            .prize-tags { flex-direction: column; align-items: center; }
            .prize-tag { width: 100%; max-width: 250px; text-align: center;}
        }

        /* === SELECTION PROCESS TIMELINE SECTION === */
        .process-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            position: relative;
            z-index: 2;
        }

        .process-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 60px;
        }
        .process-intro h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .process-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .process-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        .process-container {
            display: flex;
            flex-direction: column;
            gap: 40px;
/*             max-width: 1000px; */
            margin: 0 auto;
        }

        .process-card {
            display: flex;
            background: var(--base-white);
            border-radius: 25px;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0,0,0,0.04);
            transition: var(--transition);
            border: 1px solid #f0f0f0;
        }

        .process-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
        }

        .step-number {
            background: var(--gradient-main);
            color: var(--base-white);
            width: 120px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
            flex-shrink: 0;
        }
        .step-number span {
            font-size: 3.5rem;
            line-height: 1;
            font-family: 'Playfair Display', serif;
        }

        .step-content {
            padding: 40px;
            flex: 1;
        }

        .step-content h3 {
            font-size: 1.8rem;
            color: var(--text-dark);
            margin-bottom: 15px;
            font-weight: 700;
        }

        .step-content p {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.7;
            margin-bottom: 15px;
        }
        .step-content p:last-child { margin-bottom: 0; }

        /* === EVALUATION CRITERIA SECTION === */
        .evaluation-section {
            padding: 100px 5%;
            background-color: var(--base-white);
            position: relative;
        }

        .evaluation-wrapper {
            display: flex;
            align-items: center;
            gap: 60px;
/*             max-width: 1200px; */
            margin: 0 auto;
        }

        .eval-image {
            flex: 1;
            position: relative;
        }
        .eval-image img {
            width: 100%;
            border-radius: 20px;
            box-shadow: 0 20px 50px rgba(0,0,0,0.1);
            position: relative;
            z-index: 2;
        }
        .eval-image::before {
            content: '';
            position: absolute;
            bottom: -20px;
            right: -20px;
            width: 100%;
            height: 100%;
            border: 3px solid var(--primary-yellow);
            border-radius: 20px;
            z-index: 1;
            transition: var(--transition);
        }
        .evaluation-wrapper:hover .eval-image::before { bottom: -10px; right: -10px; }

        .eval-content {
            flex: 1.2;
        }

        .eval-content h3 {
            font-size: 2.5rem;
            color: var(--text-dark);
            margin-bottom: 25px;
            font-weight: 700;
            line-height: 1.2;
        }

        .eval-content p {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.8;
            margin-bottom: 25px;
        }

        .eval-list {
            list-style: none;
            padding: 0;
            margin: 0 0 30px 0;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 15px;
        }

        .eval-list li {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 15px;
            color: var(--text-dark);
            font-weight: 600;
        }
        .eval-list li i {
            color: var(--primary-red);
            background: rgba(227, 0, 15, 0.1);
            padding: 8px;
            border-radius: 50%;
            font-size: 12px;
        }

        .binding-note {
            background: rgba(255, 237, 0, 0.15);
            border-left: 4px solid var(--primary-red);
            padding: 20px;
            border-radius: 0 10px 10px 0;
        }
        .binding-note p {
            margin: 0;
            font-weight: 700;
            color: var(--primary-red);
            font-size: 14px;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        @media (max-width: 1200px) {
            .evaluation-wrapper { gap: 40px; flex-direction: column; }
            .eval-image { order: -1; width: 100%; max-width: 600px; margin: 0 auto 30px;}
        }

        @media (max-width: 991px) {
            /* Process Adjustments */
            .process-card { flex-direction: column; }
            .step-number { width: 100%; padding: 20px; flex-direction: row; gap: 15px;}
            .step-content { padding: 30px 20px; }

            /* Eval List */
            .eval-list { grid-template-columns: 1fr; }
        }

        @media (max-width: 768px) {
            .process-intro h2 { font-size: 2.5rem; }
            .eval-content h3 { font-size: 2rem; }
        }

        /* === SCHEDULE TIMELINE SECTION === */
        .schedule-section {
            padding: 100px 5% 100px;
            background-color: var(--base-white);
            position: relative;
            z-index: 2;
        }

        .schedule-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 80px;
        }
        .schedule-intro h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .schedule-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .schedule-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        /* Timeline Container */
        .timeline {
            position: relative;
            max-width: 1000px;
            margin: 0 auto;
        }

        /* The vertical line */
        .timeline::before {
            content: '';
            position: absolute;
            width: 4px;
            background: var(--gradient-main);
            top: 0;
            bottom: 0;
            left: 50%;
            margin-left: -2px;
            border-radius: 4px;
        }

        /* Timeline Item */
        .timeline-item {
            padding: 10px 50px;
            position: relative;
            background-color: inherit;
            width: 50%;
            margin-bottom: 40px;
        }

        /* Alternating Items */
        .timeline-item.left { left: 0; text-align: right; }
        .timeline-item.right { left: 50%; text-align: left; }

        /* The circles on the timeline */
        .timeline-dot {
            position: absolute;
            width: 40px;
            height: 40px;
            right: -20px;
            background-color: var(--base-white);
            border: 4px solid var(--primary-red);
            top: 20px;
            border-radius: 50%;
            z-index: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--primary-red);
            font-weight: 700;
            font-size: 18px;
            box-shadow: 0 0 0 5px rgba(227, 0, 15, 0.1);
            transition: var(--transition);
        }
        .timeline-item.right .timeline-dot { left: -20px; }

        .timeline-item:hover .timeline-dot {
            background-color: var(--primary-red);
            color: var(--base-white);
            transform: scale(1.1);
            box-shadow: 0 0 15px rgba(227, 0, 15, 0.4);
        }

        /* Timeline Content Card */
        .timeline-content {
            padding: 30px;
            background-color: var(--bg-light);
            position: relative;
            border-radius: 20px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
        }

        .timeline-item:hover .timeline-content {
            transform: translateY(-5px);
            box-shadow: 0 15px 40px rgba(0,0,0,0.08);
            border-color: rgba(227, 0, 15, 0.2);
            background-color: var(--base-white);
        }

        .timeline-content h3 {
            font-size: 1.4rem;
            font-weight: 700;
            color: var(--text-dark);
            margin-bottom: 10px;
            display: flex;
            align-items: center;
            gap: 10px;
            justify-content: flex-end; /* Align right for left items */
        }
        .timeline-item.right .timeline-content h3 {
            justify-content: flex-start; /* Align left for right items */
        }

        .timeline-content h3 i {
            color: var(--primary-yellow);
            font-size: 20px;
        }

        .timeline-content p {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.6;
            margin: 0;
        }

        .timeline-outro {
            text-align: center;
            max-width: 700px;
            margin: 80px auto 0;
            padding: 40px;
            background: var(--bg-light);
            border-radius: 20px;
            border: 1px dashed #eaeaea;
        }
        .timeline-outro p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            font-style: italic;
        }
        @media (max-width: 991px) {
            /* Timeline Adjustments for Mobile */
            .timeline::before { left: 31px; }
            .timeline-item { width: 100%; padding-left: 70px; padding-right: 0; text-align: left !important; }
            .timeline-item.left, .timeline-item.right { left: 0; }
            .timeline-dot { left: 11px !important; right: auto; }
            .timeline-content h3 { justify-content: flex-start !important; }
        }

        @media (max-width: 768px) {
            .schedule-intro h2 { font-size: 2.5rem; }
        }

        /* === FEES SECTION === */
        .fees-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .fees-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 50px;
        }
        .fees-intro h2 { font-size: 2.8rem; color: var(--text-dark); margin-bottom: 15px; font-weight: 700;}
        .fees-intro p { font-size: 16px; color: var(--text-light); }

        /* Premium Pricing Card */
        .fee-card {
            background: var(--gradient-main);
            color: var(--base-white);
            max-width: 550px;
            margin: 0 auto 60px;
            padding: 60px 40px;
            border-radius: 30px;
            text-align: center;
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.25);
            position: relative;
            overflow: hidden;
            transition: var(--transition);
        }
        .fee-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 25px 60px rgba(227, 0, 15, 0.3);
        }
        .fee-card::before {
            content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%;
            background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 60%);
            animation: spin-slow 20s linear infinite;
        }

        .fee-card .price-label {
            font-size: 14px;
            text-transform: uppercase;
            letter-spacing: 3px;
            font-weight: 600;
            margin-bottom: 15px;
            position: relative;
            z-index: 2;
            opacity: 0.9;
        }
        .fee-card .price {
            font-size: 5rem;
            font-weight: 800;
            line-height: 1;
            margin-bottom: 10px;
            position: relative;
            z-index: 2;
            text-shadow: 0 5px 15px rgba(0,0,0,0.1);
        }
        .fee-card .price-sub {
            font-size: 1.1rem;
            font-weight: 500;
            opacity: 0.9;
            position: relative;
            z-index: 2;
        }
        .fee-card .csr-note {
            margin-top: 30px;
            padding-top: 30px;
            border-top: 1px solid rgba(255, 255, 255, 0.3);
            font-size: 15px;
            line-height: 1.6;
            font-weight: 500;
            position: relative;
            z-index: 2;
        }
        .fee-card .csr-note i {
            color: var(--primary-yellow);
            margin-right: 8px;
            font-size: 18px;
        }

        /* Guidelines Wrapper */
        .guidelines-wrapper {
            max-width: 800px;
            margin: 0 auto;
            background: var(--base-white);
            padding: 50px;
            border-radius: 20px;
            box-shadow: 0 10px 40px rgba(0,0,0,0.05);
            border: 1px solid #f0f0f0;
        }
        .guidelines-wrapper h3 {
            color: var(--primary-red);
            margin-bottom: 30px;
            font-size: 1.8rem;
            display: flex;
            align-items: center;
            gap: 15px;
            font-weight: 700;
        }
        .guideline-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }
        .guideline-list li {
            display: flex;
            align-items: flex-start;
            gap: 20px;
            margin-bottom: 25px;
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.6;
        }
        .guideline-list li:last-child { margin-bottom: 0; }
        .guideline-list li i {
            color: var(--primary-red);
            font-size: 20px;
            margin-top: 4px;
            background: rgba(227, 0, 15, 0.1);
            width: 40px; height: 40px;
            display: flex; align-items: center; justify-content: center;
            border-radius: 50%; flex-shrink: 0;
        }
        .btn-container { text-align: center; margin-top: 60px; }
        .btn-large {
            display: inline-flex; align-items: center; justify-content: center; gap: 15px;
            padding: 18px 45px; border-radius: 40px; background-color: var(--primary-red); color: var(--base-white);
            text-decoration: none; font-weight: 700; transition: var(--transition); border: none; font-size: 16px;
            box-shadow: 0 10px 20px rgba(227, 0, 15, 0.2); text-transform: uppercase; letter-spacing: 1px;
        }
        .btn-large:hover { background-color: #b3000a; transform: translateY(-3px); box-shadow: 0 15px 25px rgba(227, 0, 15, 0.3); }

        @media (max-width: 991px) {
            /* Fees Adjustments */
            .fee-card { padding: 40px 20px; margin: 0 10px 50px;}
            .fee-card .price { font-size: 3.5rem; }
            .guidelines-wrapper { padding: 30px 20px; margin: 0 10px; }
            .guideline-list li { font-size: 15px; }
        }

        @media (max-width: 768px) {
            .fee-card .price { font-size: 3rem; }
        }

        /* === ELIGIBILITY CRITERIA SECTION === */
        .eligibility-section {
            padding: 100px 5%;
            background-color: var(--base-white);
            position: relative;
            z-index: 2;
        }

        .eligibility-wrapper {
            display: flex;
            align-items: center;
            gap: 60px;
/*             max-width: 1300px; */
            margin: 0 auto;
        }

        .eligibility-image {
            flex: 1;
            position: relative;
        }
        .eligibility-image img {
            width: 100%;
            border-radius: 20px;
            box-shadow: 0 20px 50px rgba(0,0,0,0.1);
            position: relative;
            z-index: 2;
        }
        .eligibility-image::before {
			content: '';
			position: absolute;
			top: 10px;
			left: 15px;
			width: 100%;
			height: 100%;
			border: 3px solid var(--primary-red);
			border-radius: 20px;
			z-index: 1;
			transition: var(--transition);
		}
        .eligibility-wrapper:hover .eligibility-image::before { top: 0; left: 0; }

        .eligibility-content {
            flex: 1.2;
        }
        .eligibility-content h2 {
            font-size: 3rem; color: var(--text-dark); margin-bottom: 40px; font-weight: 700; line-height: 1.2;
        }
        .eligibility-content h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}

        .criteria-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
        }

        .criteria-card {
            background: var(--bg-light);
            padding: 25px;
            border-radius: 15px;
            display: flex;
            align-items: flex-start;
            gap: 20px;
            transition: var(--transition);
            border: 1px solid #eee;
        }
        .criteria-card:hover {
            transform: translateY(-5px);
            background: var(--base-white);
            box-shadow: 0 15px 30px rgba(227, 0, 15, 0.08);
            border-color: rgba(227, 0, 15, 0.2);
        }

        .criteria-icon {
            width: 50px; height: 50px;
            background: rgba(255, 237, 0, 0.3);
            color: var(--primary-red);
            border-radius: 50%; display: flex; justify-content: center; align-items: center;
            font-size: 20px; flex-shrink: 0; transition: var(--transition);
        }
        .criteria-card:hover .criteria-icon { background: var(--primary-red); color: var(--base-white); }

        .criteria-text h4 { font-size: 1.1rem; color: var(--text-dark); margin-bottom: 5px; font-weight: 700;}
        .criteria-text p { font-size: 15px; color: var(--text-light); margin: 0; font-weight: 500;}

        /* === DUAL LIST SECTION (QUALITIES & GAINS) === */
        .dual-list-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            position: relative;
        }

        .dual-list-wrapper {
            display: flex;
            gap: 40px;
/*             max-width: 1300px; */
            margin: 0 auto;
        }

        .list-box {
            flex: 1;
            background: var(--base-white);
            padding: 50px;
            border-radius: 20px;
            box-shadow: 0 15px 40px rgba(0,0,0,0.04);
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }
        .list-box:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 50px rgba(0,0,0,0.08);
        }

        .list-box::before {
            content: '';
            position: absolute; top: 0; left: 0; width: 5px; height: 100%;
            background: var(--gradient-main);
        }

        .list-box h3 {
            font-size: 2rem; color: var(--text-dark); margin-bottom: 30px; font-weight: 700;
        }
        .list-box h3 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}

        .elegant-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }
        .elegant-list li {
            font-size: 16px;
            color: var(--text-light);
            margin-bottom: 20px;
            display: flex;
            align-items: flex-start;
            gap: 15px;
            font-weight: 500;
            line-height: 1.5;
        }
        .elegant-list li i {
            color: var(--primary-red);
            font-size: 20px;
            margin-top: 2px;
        }

        @media (max-width: 1200px) {
            .eligibility-wrapper { gap: 40px; }
            .dual-list-wrapper { flex-direction: column; gap: 30px;}
        }

        @media (max-width: 991px) {
            .eligibility-wrapper { flex-direction: column; }
            .eligibility-image { order: -1; width: 100%; max-width: 500px; margin: 0 auto 30px;}
            .eligibility-content { text-align: center; }
            .criteria-card { text-align: left; }

            .list-box { padding: 35px 25px; }
        }

        @media (max-width: 768px) {
            .eligibility-content h2 { font-size: 2.5rem; }
            .list-box h3 { font-size: 1.8rem; }
        }
        /* === CSR PILLARS GRID === */
        .csr-pillars { padding: 100px 5% 100px; background-color: var(--bg-light); text-align: center; position: relative;}
        .csr-pillars h2 { font-size: 3.2rem; color: var(--text-dark); margin-bottom: 60px; font-weight: 700;}
        .csr-pillars h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        
        .pillars-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 30px; max-width: 1200px; margin: 0 auto; }
        
        .pillar-card { 
            background: var(--base-white); padding: 40px 30px; border-radius: 20px; 
            box-shadow: 0 10px 30px rgba(0,0,0,0.04); transition: var(--transition); 
            position: relative; overflow: hidden; text-align: left;
        }
        .pillar-card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(227,0,15,0.15); }
        
        .pillar-icon { 
            font-size: 45px; color: var(--primary-yellow); margin-bottom: 25px; 
            transition: var(--transition); display: inline-block;
        }
        .pillar-card:hover .pillar-icon { color: var(--primary-red); transform: scale(1.1) rotate(5deg); }
        
        .pillar-card h3 { font-size: 1.4rem; color: var(--text-dark); margin-bottom: 15px; font-weight: 700; }
        .pillar-card p { font-size: 15px; color: var(--text-light); line-height: 1.6; margin: 0;}
        
        /* Decorative bottom line */
        .pillar-card::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 4px; background: var(--gradient-main); transition: var(--transition); }
        .pillar-card:hover::after { width: 100%; }

        /* === PREMIUM WELFARE / UNNATO BANGLA SECTION === */
        .welfare-section { padding: 0px 5% 100px 5%; display: flex; align-items: center; justify-content: center; background-color: var(--base-white);}
        .welfare-card { display: flex; width: 100%; border-radius: 40px; overflow: hidden; transition: var(--transition); box-shadow: 0 20px 50px rgba(0,0,0,0.08);}
        .welfare-card:hover { transform: translateY(-5px); box-shadow: 0 30px 60px rgba(227, 0, 15, 0.15);}
        .welfare-image { flex: 1; overflow: hidden;}
        .welfare-image img { height: 100%; width: 100%; object-fit: cover; transition: all 1s ease;}
        .welfare-card:hover .welfare-image img { transform: scale(1.08); }
        
        .welfare-text { flex: 1; padding: 60px; display: flex; flex-direction: column; justify-content: center; background: var(--gradient-main); color: white; position: relative; overflow: hidden;}
        .welfare-text::before { content: ''; position: absolute; width: 300px; height: 300px; background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 70%); border-radius: 50%; top: -100px; right: -100px; }
        .w-tag { background: rgba(255,255,255,0.2); width: fit-content; padding: 5px 15px; border-radius: 20px; font-weight: 700; letter-spacing: 2px; margin-bottom: 20px; font-size: 11px; text-transform: uppercase; backdrop-filter: blur(5px);}
        .w-head { font-size: 3rem; line-height: 1.1; margin-bottom: 20px; font-weight: 700; position: relative;}
        .w-desc { font-size: 15px; line-height: 1.7; margin-bottom: 30px; opacity: 0.95; position: relative;}
        .w-btn { align-self: flex-start; padding: 15px 35px; background: white; color: var(--primary-red); font-weight: 700; text-transform: uppercase; border-radius: 30px; transition: 0.3s; box-shadow: 0 10px 20px rgba(0,0,0,0.1); font-size: 13px; text-decoration: none; position: relative;}
        .w-btn:hover { transform: translateY(-5px); box-shadow: 0 15px 25px rgba(0,0,0,0.2); }

        @media (max-width: 991px) {
            /* Welfare Adjustments */
            .welfare-section { padding: 60px 5%; }
            .welfare-card { flex-direction: column; border-radius: 25px;}
            .welfare-image { height: 300px; }
            .welfare-text { padding: 40px 30px; align-items: center;}
            .w-head { font-size: 2.2rem; }
            .w-btn { align-self: center; }
        }

        @media (max-width: 768px) {
            .csr-pillars h2 { font-size: 2.5rem; }
        }

        /* === TEAM INTRO SECTION === */
        .team-intro-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .team-intro-wrapper {
            display: flex;
            align-items: center;
            gap: 60px;
/*             max-width: 1200px; */
            margin: 0 auto;
        }

        .team-intro-text { flex: 1; }
        .team-intro-text h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 25px; font-weight: 700; line-height: 1.2; }
        .team-intro-text h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .team-intro-text p { color: var(--text-light); font-size: 16px; line-height: 1.8; margin-bottom: 20px; }
        .team-intro-text p b { color: var(--text-dark); }
        
        .team-intro-image {
            flex: 1;
            position: relative;
        }
        .team-intro-image .img-main {
            width: 90%;
            border-radius: 20px;
            box-shadow: 0 15px 35px rgba(0,0,0,0.1);
            position: relative;
            z-index: 2;
        }
        .team-intro-image::before {
            content: '';
            position: absolute;
            top: 30px;
            right: 0;
            width: 90%;
            height: 100%;
            border: 3px solid var(--primary-yellow);
            border-radius: 20px;
            z-index: 1;
            transition: var(--transition);
        }
        .team-intro-wrapper:hover .team-intro-image::before {
            top: 15px; right: 15px;
        }

        

        

        @media (max-width: 1200px) {
            .team-intro-wrapper { gap: 40px; }
        }

        @media (max-width: 991px) {
            /* Team Intro */
            .team-intro-wrapper { flex-direction: column;}
            .team-intro-image { margin-top: 30px; width: 100%; display: flex; justify-content: center;}
            .team-intro-image .img-main { width: 100%; height: auto;}
            .team-intro-image::before { display: none; } /* Hide border box on mobile for cleaner look */
        }

        @media (max-width: 768px) {
            .team-intro-text h2 { font-size: 2.5rem; }
        }

        /* === CONTACT SECTION === */
        .contact-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
            max-width: 1300px;
            margin: 0 auto;
        }

        .contact-header { text-align: center; margin-bottom: 60px; }
        .contact-header h2 { font-size: 3.2rem; color: var(--text-dark); font-weight: 700; }
        .contact-header p { color: var(--text-light); font-size: 16px; margin-top: 10px; }

        .contact-wrapper {
            display: flex;
            gap: 60px;
            align-items: flex-start;
        }

        /* Left Side: Info Cards */
        .contact-info { flex: 1; display: flex; flex-direction: column; gap: 30px; }
        
        .info-card {
            background: var(--base-white);
            padding: 35px 30px;
            border-radius: 20px;
            display: flex;
            align-items: flex-start;
            gap: 20px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
            transition: var(--transition);
        }
        .info-card:hover { transform: translateY(-5px); box-shadow: 0 15px 35px rgba(227, 0, 15, 0.1); }
        
        .info-icon {
            width: 60px; height: 60px;
            background: rgba(255, 237, 0, 0.2);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex; justify-content: center; align-items: center;
            font-size: 24px; flex-shrink: 0; transition: var(--transition);
        }
        .info-card:hover .info-icon { background: var(--primary-red); color: var(--base-white); }
        
        .info-text h3 { font-size: 1.3rem; color: var(--text-dark); margin-bottom: 8px; font-weight: 700;}
        .info-text p, .info-text a { color: var(--text-light); font-size: 15px; line-height: 1.6; text-decoration: none; transition: var(--transition);}
        .info-text a:hover { color: var(--primary-red); }

        .social-card .social-links {
			display: flex;
			gap: 15px;
			margin-top: -15px;
			margin-bottom: 30px;
		}
        .social-card .social-links a {
            width: 45px; height: 45px; background: #f0f0f0; border-radius: 50%;
            display: flex; align-items: center; justify-content: center;
            color: var(--text-dark); font-size: 18px; text-decoration: none; transition: var(--transition);
        }
        .social-card .social-links a:hover { background: var(--primary-red); color: white; transform: translateY(-3px); }

        /* Right Side: Form */
        .contact-form-container {
            flex: 1.2;
            background: var(--base-white);
            padding: 50px;
            border-radius: 30px;
            box-shadow: 0 20px 50px rgba(0,0,0,0.05);
            position: relative;
        }
        .contact-form-container::before {
            content: ''; position: absolute; top: -15px; right: -15px; width: 100px; height: 100px;
            background: radial-gradient(circle, rgba(255, 237, 0, 0.5) 0%, transparent 70%); z-index: 0; border-radius: 50%;
        }

        .form-row { display: flex; gap: 20px; margin-bottom: 20px; position: relative; z-index: 1;}
        .form-group { flex: 1; display: flex; flex-direction: column; }
        .form-group label { font-size: 13px; font-weight: 600; color: var(--text-dark); margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.5px;}
        
        .form-control {
            width: 100%; padding: 16px 20px; border: 1px solid #eaeaea; border-radius: 12px;
            background-color: #fcfcfc; font-size: 15px; color: var(--text-dark); transition: var(--transition);
            font-family: 'Poppins', sans-serif; outline: none;
        }
        .form-control:focus { border-color: var(--primary-red); background-color: var(--base-white); box-shadow: 0 0 0 4px rgba(227, 0, 15, 0.1); }
        textarea.form-control { resize: none; height: 150px; }

        .btn-submit {
            display: inline-flex; align-items: center; gap: 15px; padding: 16px 40px; border-radius: 40px;
            background-color: var(--primary-red); color: var(--base-white); text-decoration: none; font-weight: 600; 
            transition: var(--transition); border: none; font-size: 15px; cursor: pointer; margin-top: 10px;
            box-shadow: 0 10px 20px rgba(227, 0, 15, 0.2); width: fit-content;
        }
        .btn-submit:hover { background-color: #b3000a; transform: translateY(-3px); box-shadow: 0 15px 25px rgba(227, 0, 15, 0.3); }
        .btn-submit i { font-size: 14px; transition: var(--transition); }
        .btn-submit:hover i { transform: translateX(5px); }

        /* === MAP SECTION === */
        .map-section { width: 100%; height: 500px; background: #eee; }
        .map-section iframe { width: 100%; height: 100%; border: none; filter: grayscale(50%) contrast(1.2); }

        @media (max-width: 991px) {
            .contact-wrapper { flex-direction: column; }
            .contact-form-container { width: 100%; padding: 40px 25px; }
            .form-row { flex-direction: column; gap: 20px; margin-bottom: 20px;}
        }

        @media (max-width: 768px) {
            .contact-header h2 { font-size: 2.5rem; }
            .info-card { flex-direction: column; align-items: center; text-align: center;}
        }

        /* === REGISTRATION FORM SECTION === */
        .registration-section {
            padding: 100px 5% 100px 5%;
            position: relative;
            z-index: 2;
        }

        .form-wrapper {
            max-width: 900px;
            margin: 0 auto;
            background: var(--base-white);
            padding: 60px;
            border-radius: 30px;
            box-shadow: 0 20px 60px rgba(0,0,0,0.06);
            position: relative;
        }

        /* Decorative Element behind form */
        .form-wrapper::before {
            content: ''; position: absolute; top: -20px; right: -20px; width: 150px; height: 150px;
            background: radial-gradient(circle, rgba(227, 0, 15, 0.15) 0%, transparent 70%); z-index: -1; border-radius: 50%;
        }

        .form-header { text-align: center; margin-bottom: 40px; }
        .form-header h2 { font-size: 2.5rem; color: var(--text-dark); font-weight: 700; margin-bottom: 10px;}
        .form-header p { color: var(--text-light); font-size: 15px;}

        .form-section-title {
            font-family: 'Playfair Display', serif;
            font-size: 1.8rem;
            color: var(--primary-red);
            font-style: italic;
            border-bottom: 1px solid #eaeaea;
            padding-bottom: 10px;
            margin: 40px 0 25px;
        }
        .form-section-title:first-child { margin-top: 0; }

        select.form-control {
            cursor: pointer;
            appearance: none;
            background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23222222%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
            background-repeat: no-repeat;
            background-position: right 20px top 50%;
            background-size: 12px auto;
            padding: 20px 20px;
        }

        /* File Upload Styling */
        .file-upload-wrapper {
            position: relative; width: 100%; height: 120px; border: 2px dashed #ccc; border-radius: 12px;
            background-color: #fdfdfd; display: flex; flex-direction: column; justify-content: center; align-items: center;
            text-align: center; transition: var(--transition); cursor: pointer; overflow: hidden;
        }
        .file-upload-wrapper:hover { border-color: var(--primary-red); background-color: rgba(227,0,15,0.02); }
        .file-upload-wrapper i { font-size: 30px; color: var(--primary-red); margin-bottom: 10px; }
        .file-upload-wrapper span { font-size: 13px; color: var(--text-light); font-weight: 500; }
        .file-upload-wrapper input[type="file"] {
			position: absolute;
			top: -30px;
			left: -140px;
			width: auto;
			cursor: pointer;
			border: none;
		}
.file-upload-wrapper
        /* Custom Checkbox */
        .checkbox-group { display: flex; align-items: flex-start; gap: 15px; margin-top: 20px; }
        .checkbox-group input { width: 20px; height: 20px; margin-top: 3px; cursor: pointer; accent-color: var(--primary-red); }
        .checkbox-group label { font-size: 14px; font-weight: 400; color: var(--text-light); text-transform: none; letter-spacing: 0; cursor: pointer; line-height: 1.6;}
        .checkbox-group label a { color: var(--primary-red); text-decoration: underline; }

        @media (max-width: 991px) {
            .form-wrapper { padding: 40px 25px; border-radius: 20px;}
        }

        @media (max-width: 768px) {
            .form-header h2 { font-size: 2rem; }
        }

        .payment-card{width: 60%;}
        .payment-image {width: 45%;}
        .payment-text {width: 65%;}

        @media (max-width: 768px) {
            .payment-card{width: 100%;}
            .payment-image {width: 100%;}
            .payment-text {width: 100%;}
            .team-grid { width: 100%;}
        }

        /* === WHY PARTICIPATE MAIN SECTION === */
        .participate-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .participate-wrapper {
            display: flex;
            align-items: center;
            gap: 60px;
/*             max-width: 1300px; */
            margin: 0 auto;
        }

        .participate-text {
            flex: 1;
        }
        .participate-text h2 {
            font-size: 3rem; color: var(--text-dark); margin-bottom: 25px; font-weight: 700; line-height: 1.2;
        }
        .participate-text h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .participate-text p {
            font-size: 16px; color: var(--text-light); line-height: 1.8; margin-bottom: 20px;
        }
        .participate-text p b { color: var(--text-dark); font-weight: 700; }
        
        .highlight-quote {
            padding: 20px; background: rgba(227, 0, 15, 0.05); border-left: 4px solid var(--primary-red);
            border-radius: 0 10px 10px 0; margin: 30px 0; font-size: 18px; font-weight: 600; color: var(--primary-red);
            font-style: italic;
        }

        .participate-image {
            flex: 1;
            position: relative;
        }
        .participate-image img {
            width: 90%; border-radius: 20px; box-shadow: 0 20px 50px rgba(0,0,0,0.1); position: relative; z-index: 2;
        }
        .participate-image::before {
            content: '';
			position: absolute;
			top: 30px;
			right: 0;
			width: 90%;
			height: 100%;
			border: 3px solid var(--primary-yellow);
			border-radius: 20px;
			z-index: 1;
			transition: var(--transition);
        }
        .participate-wrapper:hover .participate-image::before { bottom: -10px; right: -10px; }

        /* === REASONS GRID SECTION === */
        .reasons-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            text-align: center;
        }

        .reasons-intro {
            max-width: 800px;
            margin: 0 auto 60px;
        }
        .reasons-intro h3 { font-size: 2.8rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700; }
        .reasons-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        .reasons-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 30px;
/*             max-width: 1300px; */
            margin: 0 auto;
        }

        .reason-card {
            background: var(--base-white); padding: 40px 30px; border-radius: 20px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03); transition: var(--transition);
            border: 1px solid #f0f0f0; text-align: left;
        }
        .reason-card:hover {
            transform: translateY(-8px); box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1); border-color: rgba(227, 0, 15, 0.2);
        }

        .reason-icon {
            width: 60px; height: 60px; background: rgba(255, 237, 0, 0.2); color: var(--primary-red);
            border-radius: 50%; display: flex; justify-content: center; align-items: center;
            font-size: 24px; margin-bottom: 20px; transition: var(--transition);
        }
        .reason-card:hover .reason-icon { background: var(--primary-red); color: var(--base-white); transform: scale(1.1) rotate(10deg);}

        .reason-card h4 { font-size: 1.2rem; color: var(--text-dark); margin-bottom: 10px; font-weight: 700; line-height: 1.4;}
        .reason-card p { font-size: 15px; color: var(--text-light); margin: 0; line-height: 1.7;}

        /* === APPRECIATION BANNER === */
        .appreciation-section {
            padding: 100px 5%;
            background-color: var(--base-white);
        }
        .appreciation-banner {
            max-width: 1100px; margin: 0 auto; background: var(--gradient-main);
            padding: 50px; border-radius: 25px; color: var(--base-white); text-align: center;
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.2); position: relative; overflow: hidden;
        }
        .appreciation-banner::before {
            content: ''; position: absolute; top: -50px; right: -50px; width: 150px; height: 150px;
            background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 70%); border-radius: 50%;
        }
        .appreciation-icon { font-size: 40px; color: var(--primary-yellow); margin-bottom: 20px; }
        .appreciation-banner h3 { font-size: 2rem; font-weight: 700; margin-bottom: 15px; }
        .appreciation-banner p { font-size: 16px; font-weight: 500; opacity: 0.95; max-width: 800px; margin: 0 auto; line-height: 1.6; text-transform: uppercase; letter-spacing: 1px;}
        
        @media (max-width: 1200px) {
            .participate-wrapper { gap: 40px; flex-direction: column; }
            .participate-image { width: 100%; max-width: 600px; margin: 0 auto; }
        }

        @media (max-width: 991px) {
            /* Adjustments */
/*             .participate-text { text-align: center; } */
            .highlight-quote { text-align: left; }
            
            .reasons-grid { grid-template-columns: 1fr; }
            .appreciation-banner { padding: 40px 20px; }
            .appreciation-banner h3 { font-size: 1.5rem; }
        }

        @media (max-width: 768px) {
            .participate-text h2, .reasons-intro h3 { font-size: 2.5rem; }
        }

        /* === PAGEANT ABOUT SECTION === */
        .pageant-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .pageant-wrapper {
            display: flex;
            align-items: center;
            gap: 60px;
/*             max-width: 1300px; */
            margin: 0 auto;
        }

        .pageant-text {
            flex: 1;
        }
        .pageant-text h2 {
            font-size: 3rem; color: var(--text-dark); margin-bottom: 25px; font-weight: 700; line-height: 1.2;
        }
        .pageant-text h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        
        .pageant-text p {
            font-size: 16px; color: var(--text-light); line-height: 1.8; margin-bottom: 20px;
        }
        .pageant-text p b { color: var(--text-dark); font-weight: 700; }
        
        .pageant-image {
            flex: 1;
            position: relative;
        }
        .pageant-image img {
            width: 95%; border-radius: 20px; box-shadow: 0 20px 50px rgba(0,0,0,0.1); position: relative; z-index: 2;
        }
        .pageant-image::before {
			content: '';
			position: absolute;
			top: 30px;
			right: 0;
			width: 90%;
			height: 100%;
			border: 3px solid var(--primary-yellow);
			border-radius: 20px;
			z-index: 1;
			transition: var(--transition);
        }
        .pageant-wrapper:hover .pageant-image::before { bottom: -10px; right: -10px; }

        /* === HIGHLIGHT PURPOSE SECTION === */
        .purpose-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            text-align: center;
            position: relative;
        }
        
        .purpose-card {
            max-width: 900px;
            margin: 0 auto;
            background: var(--base-white);
            padding: 60px 60px;
            border-radius: 25px;
            box-shadow: 0 15px 40px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
        }
        .purpose-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 50px rgba(227,0,15,0.1);
        }

        .purpose-icon {
            font-size: 50px;
            color: var(--primary-red);
            margin-bottom: 20px;
        }

        .purpose-card h3 {
            font-size: 2.2rem;
            color: var(--text-dark);
            margin-bottom: 20px;
            font-weight: 700;
        }

        .purpose-card p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            margin: 0;
        }

        /* === EMPOWERMENT BANNER === */
        .empowerment-section {
            padding: 100px 5%;
            background-color: var(--base-white);
        }
        .empowerment-banner {
            max-width: 1200px; margin: 0 auto; background: var(--gradient-main);
            padding: 60px 40px; border-radius: 25px; color: var(--base-white); text-align: center;
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.2); position: relative; overflow: hidden;
        }
        .empowerment-banner::before {
            content: ''; position: absolute; top: -50px; left: -50px; width: 200px; height: 200px;
            background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 70%); border-radius: 50%;
        }
        .empowerment-banner h3 { font-size: 2.5rem; font-weight: 700; margin-bottom: 20px; position: relative; z-index: 2;}
        .empowerment-banner p { font-size: 18px; font-weight: 500; opacity: 0.95; max-width: 800px; margin: 0 auto; line-height: 1.6; font-style: italic; position: relative; z-index: 2;}
        
        @media (max-width: 1200px) {
            .pageant-wrapper { gap: 40px; flex-direction: column; }
            .pageant-image { width: 100%; max-width: 600px; margin: 0 auto; order: -1; margin-bottom: 30px;}
        }

        @media (max-width: 991px) {
            /* Adjustments */
/*             .pageant-text { text-align: center; } */
            .purpose-card { padding: 40px 20px; }
            .empowerment-banner { padding: 50px 20px; }
            .empowerment-banner h3 { font-size: 2rem; }
        }

        @media (max-width: 768px) {
            .pageant-text h2, .purpose-card h3 { font-size: 2.5rem; }
        }

        /* === MERGER HIGHLIGHT SECTION === */
        .merger-section {
            padding: 100px 5% 100px;
            position: relative;
            z-index: 2;
            text-align: center;
        }

        .merger-intro {
            max-width: 900px;
            margin: 0 auto 60px;
        }
        .merger-intro h2 { font-size: 3.2rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .merger-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .merger-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }

        /* Interconnected Trifecta Grid */
        .trifecta-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
            max-width: 1100px;
            margin: 0 auto 60px;
            position: relative;
        }

        /* Decorative connecting line */
        .trifecta-grid::before {
            content: '';
            position: absolute;
            top: 60px;
            left: 10%;
            right: 10%;
            height: 2px;
            background: #eaeaea;
            z-index: 0;
            border-top: 2px dashed #ccc;
        }

        .trifecta-card {
            background: var(--base-white);
            padding: 40px 30px;
            border-radius: 20px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
            border: 1px solid #f0f0f0;
            position: relative;
            z-index: 1;
            transition: var(--transition);
        }
        .trifecta-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
        }

        .tri-icon {
            width: 150px; height: 100px;
            background: var(--base-white);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex; justify-content: center; align-items: center;
            font-size: 35px; margin: 0 auto 20px;
        }
.tri-icon img {
	width: 100%;
}
/*         .trifecta-card:hover .tri-icon {
            background: var(--gradient-main);
            color: var(--base-white);
            border-color: transparent;
            transform: scale(1.1) rotate(5deg);
        } */
        .tri-icon.yellow { color: var(--primary-yellow); } /* Jewel of Bengal */
/*         .trifecta-card:hover .tri-icon.yellow { color: var(--text-dark); } */

        .trifecta-card h3 { font-size: 1.5rem; color: var(--text-dark); margin-bottom: 10px; font-weight: 700; }
        .trifecta-card p { font-size: 13px; color: var(--text-light); text-transform: uppercase; letter-spacing: 1px; font-weight: 600; margin: 0;}

        /* === MERGER TEXT CONTENT === */
        .merger-content-wrapper {
            max-width: 900px;
            margin: 0 auto;
            text-align: left;
        }

        .merger-text-box {
            background: var(--bg-light);
            padding: 50px;
            border-radius: 20px;
            border-left: 5px solid var(--primary-red);
            box-shadow: 0 10px 30px rgba(0,0,0,0.02);
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            position: relative;
        }
        
        .merger-text-box p { margin-bottom: 25px; }
        .merger-text-box p:last-child { margin-bottom: 0; }
        .merger-text-box b, .merger-text-box strong { color: var(--text-dark); font-weight: 700;}

        .vision-quote {
            font-size: 1.2rem;
            color: var(--primary-red);
            font-family: 'Playfair Display', serif;
            font-style: italic;
            text-align: center;
            margin-top: 40px;
            font-weight: 600;
        }

        @media (max-width: 991px) {
            .trifecta-grid { grid-template-columns: 1fr; gap: 20px; }
            .trifecta-grid::before { display: none; } /* Hide dashed line on mobile stacking */
            .merger-text-box { padding: 30px 20px; }
        }

        @media (max-width: 768px) {
            .merger-intro h2 { font-size: 2.5rem; }
        }

        .form-btn-smt::after {
            /* 1. The Unicode for paper-plane */
            content: "\f1d8"; 
            
            /* 2. The Font Family for Font Awesome 6 Free */
            font-family: "Font Awesome 6 Free";
            
            /* 3. The Weight (900 is required for "Solid" icons) */
            font-weight: 900;
            
            /* Optional Styling */
            margin-right: 8px;
            color: #fff;
        }

        .form-btn-smt::before {
  content: "\f1d8"; /* Unicode for paper-plane */
  font-family: "Font Awesome 6 Free";
  font-weight: 900; /* Must be 900 for Solid icons */
  margin-right: 10px;
}
.payment {
	padding-top: 150px;
}

.checkbox-group {
	margin-bottom: 20px;
}

.page-template-vision .vm-row {
    padding: 100px 5% 100px 5%;
}

.page-template-mission .vm-modern-section .reverse {
    padding: 100px 5% 100px 5%;
}
@media (max-width: 500px) {
	.legal-section {
		padding: 100px 1%;
	}
	.legal-container {
    max-width: 90%;
	}
	.eligibility-image::before {
		top: -12px;
		left: -12px;
	}
	.btn-register {
    margin-bottom: 50px;
}
}

@media screen and (max-width: 991px) {
    /* Ensure the menu is hidden by default on small screens */
    .navbar-collapse, .main-navigation, #primary-menu {
        display: none;
        width: 100%;
        position: absolute; /* Ensures it drops down below the header */
        top: 100%;
        left: 0;
        background-color: #ffffff; /* Change to match your site's header color */
        z-index: 9999; /* Keeps the menu on top of page content */
        box-shadow: 0px 4px 6px rgba(0,0,0,0.1);
    }
    
    /* Force the menu to show when toggled */
    .navbar-collapse.show, .main-navigation.is-active, #primary-menu.is-active {
        display: block !important;
    }
    
    /* Make sure the hamburger button itself is clickable and visible */
    .navbar-toggler, .menu-toggle, .mobile-menu-btn {
        display: block !important;
        cursor: pointer;
        z-index: 10000;
    }
}

@media screen and (max-width: 991px) {
    /* 1. Force all dropdown menus to be visible and stacked under their parent links */
    .menu-item-has-children .sub-menu, 
    .dropdown .dropdown-menu,
    ul.sub-menu {
        display: block !important;
        position: relative !important;
        visibility: visible !important;
        opacity: 1 !important;
        float: none !important;
        width: 100% !important;
        height: auto !important;
        padding-left: 20px !important; /* Indents the child items so it looks neat */
        box-shadow: none !important;
        background: transparent !important;
        border: none !important;
        transform: none !important;
    }

    /* 2. Force the parent links (About Us, CSR, etc.) to act as normal, clickable links */
    .menu-item-has-children > a, 
    .dropdown > a {
        pointer-events: auto !important;
        display: block !important;
    }
    
    /* 3. Optional: Add a little spacing for easier tapping on mobile */
    .menu-item-has-children .sub-menu li a {
        padding: 10px 0 !important;
        font-size: 0.9em !important;
    }
}

/* === COMPLIANCES CONTENT SECTION === */
        .compliances-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .compliances-wrapper {
            display: flex;
            gap: 50px;
            margin: 0 auto;
            
        }

        /* Left Side: Registrations Grid */
        .registrations-container {
            flex: 1.5;
        }

        .cert-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 25px;
        }

        .cert-card {
            background: var(--base-white);
            padding: 30px;
            border-radius: 15px;
            border: 1px solid #eaeaea;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
            text-align: center;
            gap: 20px;
            transition: var(--transition);
        }
        .cert-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 35px rgba(227, 0, 15, 0.08);
            border-color: rgba(227, 0, 15, 0.2);
        }

        .cert-icon {
            color: var(--primary-red);
            font-size: 40px; 
            margin-bottom: 10px;
            transition: var(--transition);
        }

        .cert-details h4 {
            font-size: 1.1rem;
            color: var(--text-dark);
            margin-bottom: 5px;
            font-weight: 700;
        }
        .cert-details p {
            font-size: 15px;
            color: var(--text-light);
            font-weight: 500;
            margin: 0;
            word-break: break-word; /* Prevent long IDs from breaking layout */
        }
        .cert-details p strong {
            color: var(--primary-red);
        }
@media (max-width: 991px) {
	.compliances-wrapper { flex-direction: column; gap: 40px; }
}

/* === QUEENS OF DISTINCTION & GRAND FINALE === */
        .titles-intro {
            padding: 100px 5% 40px;
            text-align: center;
            max-width: 1000px;
            margin: 0 auto;
            position: relative;
            z-index: 2;
        }
        .titles-intro h2 { font-size: 3rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700;}
        .titles-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .titles-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8; }
        .titles-intro .grand-finale-quote {
            margin-top: 30px; font-size: 1.1rem; font-style: italic; color: var(--primary-red); font-weight: 600;
        }

        .podium-section {
            padding: 20px 5% 100px;
            position: relative;
            z-index: 2;
            background-color: var(--base-white);
        }

        .podium-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
            max-width: 1250px;
            margin: 0 auto;
            align-items: center; 
        }

        /* Base Title Card */
        .title-card {
            background: var(--bg-light);
            border-radius: 25px;
            padding: 50px 30px;
            text-align: center;
            box-shadow: 0 10px 30px rgba(0,0,0,0.04);
            border: 1px solid #eaeaea;
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }
        .title-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
            background: var(--base-white);
        }

        .title-card .icon-wrapper {
            width: 80px; height: 80px;
            background: rgba(255, 237, 0, 0.3);
            color: var(--primary-red);
            border-radius: 50%; display: flex; justify-content: center; align-items: center;
            font-size: 35px; margin: 0 auto 20px; transition: var(--transition);
        }
        .title-card:hover .icon-wrapper {
            background: var(--primary-red); color: var(--base-white);
            transform: scale(1.1) rotate(10deg);
        }

        .title-card h3 { font-size: 1.5rem; color: var(--text-dark); margin-bottom: 10px; font-weight: 700; }
        .title-card p.desc { font-size: 14px; color: var(--text-light); line-height: 1.6; margin-bottom: 25px; }

        /* Prize Amounts & Details */
        .prize-amount { font-size: 2rem; font-weight: 800; color: var(--primary-red); margin-bottom: 15px;}
        .prize-list { list-style: none; padding: 0; margin: 0;}
        .prize-list li { font-size: 14px; font-weight: 600; color: var(--text-dark); margin-bottom: 8px; display: flex; align-items: center; justify-content: center; gap: 8px;}
        .prize-list li i { color: var(--primary-yellow); font-size: 12px; }

        /* The Ultimate Winner Card (Center Podium) */
        .title-card.winner {
            background: var(--gradient-main);
            color: var(--base-white);
            padding: 80px 40px;
            transform: scale(1.08); /* Podium height effect */
            box-shadow: 0 20px 50px rgba(227, 0, 15, 0.25);
            border: none;
            z-index: 2;
        }
        .title-card.winner::before {
            content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%;
            background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 60%);
            animation: spin-slow 20s linear infinite; z-index: 0;
        }
        .title-card.winner .icon-wrapper {
            background: rgba(255, 255, 255, 0.2); color: var(--primary-yellow);
            width: 100px; height: 100px; font-size: 45px; position: relative; z-index: 1;
            box-shadow: 0 10px 20px rgba(0,0,0,0.1); margin-bottom: 25px;
        }
        .title-card.winner:hover { transform: translateY(-10px) scale(1.08); box-shadow: 0 30px 60px rgba(227, 0, 15, 0.35); }
        .title-card.winner:hover .icon-wrapper { background: var(--primary-yellow); color: var(--primary-red); transform: scale(1.1) rotate(0deg); }

        .title-card.winner h3 { color: var(--base-white); font-size: 2.2rem; position: relative; z-index: 1;}
        .title-card.winner h3 span { font-family: 'Playfair Display', serif; font-style: italic; color: var(--primary-yellow); font-weight: 400;}
        .title-card.winner p.desc { color: rgba(255,255,255,0.95); font-size: 15px; position: relative; z-index: 1; font-weight: 500; margin-bottom: 30px;}
        
        .title-card.winner .prize-amount { color: var(--primary-yellow); font-size: 2.8rem; position: relative; z-index: 1; text-shadow: 0 5px 15px rgba(0,0,0,0.2);}
        .title-card.winner .prize-list li { color: var(--base-white); position: relative; z-index: 1; font-size: 15px;}
        .title-card.winner .prize-list li i { color: var(--primary-yellow); }

        .podium-left { order: 1; }
        .podium-center { order: 2; }
        .podium-right { order: 3; }

        /* === PHYSICAL AUDITIONS PRIZES === */
        .auditions-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            text-align: center;
        }
        .auditions-intro { max-width: 800px; margin: 0 auto 60px; }
        .auditions-intro h2 { font-size: 2.8rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700; }
        .auditions-intro h2 span { color: var(--primary-red); font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400;}
        .auditions-intro p { font-size: 16px; color: var(--text-light); line-height: 1.8;}

        .audition-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
            max-width: 1100px;
            margin: 0 auto 50px;
        }

        .aud-card {
            background: var(--base-white);
            padding: 40px 30px;
            border-radius: 20px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
        }
        .aud-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1); border-color: rgba(227,0,15,0.2);}
        
        .aud-card h4 { font-size: 1.4rem; color: var(--text-dark); font-weight: 700; margin-bottom: 15px;}
        .aud-card .aud-prize { font-size: 1.8rem; font-weight: 800; color: var(--primary-red); margin-bottom: 15px;}
        .aud-card ul { list-style: none; padding: 0; margin: 0; }
        .aud-card ul li { font-size: 14px; color: var(--text-light); font-weight: 600; margin-bottom: 5px;}

        .auditions-outro {
            max-width: 800px; margin: 0 auto; padding: 30px; background: rgba(227,0,15,0.05); border-left: 4px solid var(--primary-red); border-radius: 12px; text-align: left;
        }
        .auditions-outro p { margin: 0; font-size: 15px; color: var(--text-dark); line-height: 1.7; font-weight: 500;}

        /* === MEMENTO BANNER === */
        .memento-section {
            padding: 100px 5%;
            background-color: var(--base-white);
        }
        .memento-banner {
            max-width: 1200px; margin: 0 auto; background: var(--text-dark);
            padding: 60px 50px; border-radius: 25px; color: var(--base-white); text-align: center;
            box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2); position: relative; overflow: hidden;
            display: flex; align-items: center; justify-content: space-between; gap: 40px;
        }
        .memento-banner::before {
            content: ''; position: absolute; top: -50px; left: -50px; width: 250px; height: 250px;
            background: radial-gradient(circle, rgba(255,237,0,0.15) 0%, transparent 70%); border-radius: 50%;
        }
        .memento-text { flex: 2; text-align: left; position: relative; z-index: 2;}
        .memento-text h3 { font-size: 2.2rem; font-weight: 700; margin-bottom: 15px; color: var(--primary-yellow);}
        .memento-text p { font-size: 15px; font-weight: 400; opacity: 0.9; line-height: 1.8;}
        
        .memento-icon { flex: 1; font-size: 80px; color: var(--primary-red); position: relative; z-index: 2; display: flex; justify-content: center;}

        /* === SPECIAL AWARDS SECTION === */
        .special-awards-section {
            padding: 100px 5% 100px;
            background-color: var(--bg-light);
            text-align: center;
        }
        .special-awards-section h3 { font-size: 2.5rem; color: var(--text-dark); margin-bottom: 20px; font-weight: 700; }
        .special-awards-section p { font-size: 16px; color: var(--text-light); max-width: 700px; margin: 0 auto 50px; line-height: 1.7; }
        .badges-container { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; max-width: 1000px; margin: 0 auto 60px; }
        .award-badge {
            background: var(--base-white); padding: 15px 30px; border-radius: 50px; display: flex; align-items: center; gap: 12px;
            font-size: 15px; font-weight: 600; color: var(--text-dark); box-shadow: 0 8px 20px rgba(0,0,0,0.03);
            border: 1px solid #f0f0f0; transition: var(--transition); cursor: pointer;
        }
        .award-badge i { color: var(--primary-red); font-size: 18px; transition: var(--transition);}
        .award-badge:hover { transform: translateY(-5px); background: var(--primary-yellow); box-shadow: 0 15px 30px rgba(255, 237, 0, 0.3); border-color: var(--primary-yellow); }
        .award-badge:hover i { color: var(--text-dark); }
        .outro-text { max-width: 800px; margin: 0 auto; font-size: 18px; font-weight: 500; color: var(--primary-red); font-style: italic; border-top: 1px solid #eaeaea; padding-top: 40px; }

@media (max-width: 991px) {
	/* Podium & Grid Adjustments */
            .podium-grid { grid-template-columns: 1fr; gap: 40px; }
            .title-card.winner { transform: scale(1); order: -1; padding: 50px 30px;} 
            .title-card.winner:hover { transform: translateY(-5px) scale(1); }
            .podium-left { order: 2; }
            .podium-right { order: 3; }

            .audition-grid { grid-template-columns: 1fr; }
            .memento-banner { flex-direction: column; text-align: center; padding: 40px 20px; }
            .memento-text { text-align: center; }
}

@media (max-width: 768px) {
            .titles-intro h2, .auditions-intro h2 { font-size: 2.5rem; }
            .special-awards-section h3 { font-size: 2.2rem; }
            .award-badge { width: 100%; justify-content: center; }
        }

/* Timeline Date & Location Badges */
        .timeline-date {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(227, 0, 15, 0.08);
            color: var(--primary-red);
            padding: 6px 15px;
            border-radius: 20px;
            font-size: 13px;
            font-weight: 700;
            margin-bottom: 15px;
            border: 1px solid rgba(227, 0, 15, 0.15);
        }
        .timeline-location {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(255, 237, 0, 0.2);
            color: var(--text-dark);
            padding: 6px 15px;
            border-radius: 20px;
            font-size: 13px;
            font-weight: 600;
            margin-bottom: 15px;
            margin-left: 10px;
        }
        
        /* Mobile adjustment for badges */
        @media (max-width: 991px) {
            .timeline-location { 
                margin-left: 0; 
                margin-top: 10px; 
                display: inline-flex; 
            }
        }

/* === CORE LEADERSHIP TEAM SECTION === */
        .team-section {
            padding: 100px 5%;
            background-color: var(--bg-light);
            position: relative;
            z-index: 2;
        }

        .team-intro {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 60px;
        }

        .team-intro h2 {
            font-size: 3rem;
            color: var(--text-dark);
            margin-bottom: 20px;
            font-weight: 700;
        }

        .team-intro h2 span {
            color: var(--primary-red);
            font-family: 'Playfair Display', serif;
            font-style: italic;
            font-weight: 400;
        }

        .team-intro p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
        }

        .team-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 40px;
            margin: 0 auto;
        }

        .team-card {
            background: var(--base-white);
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
            transition: var(--transition);
            display: flex;
            flex-direction: column;
        }

        .team-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(227, 0, 15, 0.1);
            border-color: rgba(227, 0, 15, 0.2);
        }

        .team-image {
            position: relative;
            width: 100%;
            height: 450px; 
            overflow: hidden;
        }

        .team-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: top center;
            transition: transform 0.6s ease;
        }

        .team-card:hover .team-image img {
            transform: scale(1.08);
        }

        .team-overlay {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 50%;
            background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
            opacity: 0;
            transition: var(--transition);
            display: flex;
            align-items: flex-end;
            justify-content: center;
            padding-bottom: 20px;
        }

        .team-card:hover .team-overlay {
            opacity: 1;
        }

        .social-links a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            background: var(--primary-yellow);
            color: var(--text-dark);
            border-radius: 50%;
            text-decoration: none;
            transition: var(--transition);
            transform: translateY(20px);
        }

        .team-card:hover .social-links a {
            transform: translateY(0);
        }

        .social-links a:hover {
            background: var(--primary-red);
            color: var(--base-white);
        }

        .team-info {
            padding: 35px 30px;
            flex: 1;
            display: flex;
            flex-direction: column;
        }

        .team-info h3 {
            font-size: 1.6rem;
            color: var(--text-dark);
            margin-bottom: 8px;
            font-weight: 700;
        }

        .team-role {
            display: inline-block;
            font-size: 12px;
            color: var(--primary-red);
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 20px;
            background: rgba(227, 0, 15, 0.05);
            padding: 6px 15px;
            border-radius: 20px;
            width: fit-content;
            border: 1px solid rgba(227, 0, 15, 0.1);
        }

        .team-info p {
            font-size: 14.5px;
            color: var(--text-light);
            line-height: 1.8;
            margin: 0;
            font-weight: 400;
        }

        /* Mobile Responsiveness for Team Grid */
        @media (max-width: 1200px) {
            .team-grid { gap: 20px; }
            .team-info { padding: 25px 20px; }
        }

        @media (max-width: 991px) {
            .team-grid { grid-template-columns: repeat(2, 1fr); gap: 30px; }
        }

        @media (max-width: 768px) {
            .team-intro h2 { font-size: 2.5rem; }
            .team-grid { grid-template-columns: 1fr; }
            .team-image { height: 400px; }
        }

/* === LEGAL Retention CONTENT SECTION === */
        .legal-retention-section {
            padding: 100px 5%;
            position: relative;
            z-index: 2;
        }

        .legal-retention-container {
            margin: 0 auto;
            background: var(--base-white);
            padding: 80px;
            border-radius: 25px;
            box-shadow: 0 15px 50px rgba(0,0,0,0.04);
            border: 1px solid #f0f0f0;
        }

        .legal-retention-intro {
            margin-bottom: 50px;
            padding-bottom: 30px;
            border-bottom: 2px solid #eaeaea;
            text-align: center;
        }
        .legal-retention-intro p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            font-weight: 500;
        }

        .legal-retention-block {
            margin-bottom: 50px;
        }
        .legal-retention-block:last-child {
            margin-bottom: 0;
        }

        .legal-retention-block h3 {
            font-size: 1.8rem;
            color: var(--text-dark);
            margin-bottom: 20px;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 15px;
        }
        .legal-retention-block h3::before {
            content: '';
            display: block;
            width: 8px;
            height: 30px;
            background: var(--primary-red);
            border-radius: 4px;
        }

        .legal-retention-block p {
            font-size: 15px;
            color: var(--text-light);
            line-height: 1.8;
            margin-bottom: 20px;
        }

        /* Checkmark List */
        .legal-retention-list {
            list-style: none;
            padding: 0;
            margin: 0 0 20px 0;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 15px;
        }
        .legal-retention-list li {
            font-size: 15px;
            color: var(--text-light);
            display: flex;
            align-items: center;
            gap: 10px;
            background: var(--bg-light);
            padding: 15px 20px;
            border-radius: 10px;
            border: 1px solid #f0f0f0;
        }
        .legal-retention-list li i {
            color: var(--primary-red);
            font-size: 12px;
        }

        /* Sub Bullet List */
        .retention-sub-bullet-list {
            list-style: none;
            padding: 0;
            margin: 15px 0 0 0;
        }
        .retention-sub-bullet-list li {
            margin-bottom: 10px;
            font-size: 15px;
            display: flex;
            align-items: flex-start;
            gap: 10px;
            color: var(--text-light);
            line-height: 1.6;
        }
        .retention-sub-bullet-list li i {
            color: var(--primary-yellow);
            font-size: 12px;
            margin-top: 6px;
        }

        /* Highlight Info Box for Contacts & Specific Details */
        .retention-highlight-box {
            background: rgba(227, 0, 15, 0.05);
            padding: 30px;
            border-radius: 15px;
            border-left: 4px solid var(--primary-red);
            margin-top: 20px;
        }
        .retention-highlight-box p {
            margin: 0;
            font-size: 15px;
            color: var(--text-dark);
            line-height: 1.8;
            font-weight: 500;
        }
        .retention-highlight-box a {
            color: var(--primary-red);
            text-decoration: none;
            font-weight: 700;
        }

        /* Custom Box for Data Retention Periods */
        .retention-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
            margin-top: 20px;
        }
        .retention-card {
            background: var(--base-white);
            border: 1px solid #eaeaea;
            padding: 25px;
            border-radius: 12px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.02);
        }
        .retention-card h4 {
            font-size: 1.1rem;
            color: var(--primary-red);
            margin-bottom: 10px;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .retention-card p {
            margin: 0;
            font-size: 14px;
            color: var(--text-light);
            line-height: 1.6;
        }
@media (max-width: 991px) {
	.legal-retention-container { padding: 40px 25px; border-radius: 20px; }
	.legal-retention-list { grid-template-columns: 1fr; }
	.retention-grid { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
	.legal-retention-block h3 { font-size: 1.5rem; }
}

/* === THANK YOU SPECIFIC SECTION === */
        .thank-you-section {
            flex: 1; /* Allows it to take up remaining height so footer stays down */
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 180px 5% 100px; /* Large top padding to account for fixed header */
            position: relative;
            z-index: 2;
        }

        .thank-you-section .thank-you-card {
            background: var(--base-white);
            max-width: 650px;
            width: 100%;
            padding: 70px 50px;
            border-radius: 30px;
            text-align: center;
            box-shadow: 0 20px 60px rgba(0,0,0,0.06);
            border: 1px solid #f0f0f0;
            position: relative;
            overflow: hidden;
        }

        /* Top Gradient Line */
        .thank-you-section .thank-you-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 8px;
            background: var(--gradient-main);
        }

        .thank-you-section .success-icon {
            width: 110px;
            height: 110px;
            background: rgba(227, 0, 15, 0.08);
            color: var(--primary-red);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 55px;
            margin: 0 auto 35px;
            /* Custom Pop-in Animation */
            animation: popIn 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
            box-shadow: 0 0 0 15px rgba(227, 0, 15, 0.03);
        }

        @keyframes popIn {
            0% { transform: scale(0); opacity: 0; }
            100% { transform: scale(1); opacity: 1; }
        }

        .thank-you-section .thank-you-card h1 {
            font-size: 3rem;
            color: var(--text-dark);
            margin-bottom: 15px;
            font-weight: 700;
        }
        .thank-you-section .thank-you-card h1 span {
            color: var(--primary-red);
            font-family: 'Playfair Display', serif;
            font-style: italic;
            font-weight: 400;
        }

        .thank-you-section .thank-you-card p {
            font-size: 16px;
            color: var(--text-light);
            line-height: 1.8;
            margin-bottom: 40px;
        }

        .thank-you-section .btn-home {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            padding: 16px 45px;
            border-radius: 40px;
            background-color: var(--text-dark);
            color: var(--base-white);
            text-decoration: none;
            font-weight: 700;
            transition: var(--transition);
            border: none;
            font-size: 15px;
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
            text-transform: uppercase;
            letter-spacing: 1px;
        }
        .thank-you-section .btn-home:hover {
            background-color: var(--primary-red);
            transform: translateY(-3px);
            box-shadow: 0 15px 25px rgba(227, 0, 15, 0.25);
        }

@media (max-width: 1200px) {
	
	/* Thank you section mobile */
            .thank-you-section { padding: 150px 5% 80px; }
            .thank-you-section .thank-you-card { padding: 50px 25px; }
            .thank-you-section .thank-you-card h1 { font-size: 2.2rem; }
}