/* Extracted from index.html — shared main-header + menu-overlay styles */
			/* Contest Header Overrides */
			/* Main Header Styles */
			.main-header {
				position: relative;
				top: 0;
				left: 0;
				width: 100%;
				background: rgba(255, 255, 255, 0.85);
				backdrop-filter: none;
				-webkit-backdrop-filter: none;
				z-index: 1000;
				padding: 28px 0 24px 0;
				transition: all 0.3s cubic-bezier(.4,0,.2,1);
				border-bottom: 1.5px solid rgba(255,255,255,0.25);
				box-shadow: 0 4px 24px 0 rgba(0,0,0,0.08);
			}

			.main-header.scrolled {
				background: rgba(255,255,255,0.92);
				box-shadow: 0 2px 12px rgba(0,0,0,0.10);
			}

			.header-content {
				display: flex;
				justify-content: space-between;
				align-items: center;
				max-width: 1200px;
				margin: 0 auto;
				padding: 0 20px;
				gap: 12px;
				flex-wrap: nowrap;
			}

			.main-header .container {
				display: flex;
				justify-content: center;
				align-items: center;
			}

			.main-header .logo {
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				text-align: left;
				margin: 0;
				gap: 6px;
				flex: 1 1 auto;
				min-width: 0;
			}

			.main-header .logo img {
				height: 52px;
				width: auto;
				filter: drop-shadow(0 2px 8px rgba(50,150,217,0.08));
			}

			.main-header .logo .contest-text {
				display: inline-block;
				font-size: 13px;
				font-weight: 900;
				color: #7a5f00;
				letter-spacing: 0.01em;
				line-height: 1.1;
				white-space: nowrap;
				max-width: 100%;
				overflow: hidden;
				text-overflow: ellipsis;
				text-transform: uppercase;
			}

			.main-header .logo .contest-text .contest-highlight {
				color: #ba9504;
				font-weight: 1000;
				font-size: 1.5em;
				white-space: nowrap;
			}

			.main-header .logo .contest-text .contest-highlight-secondary {
				color: inherit;
				font-weight: 1000;
				font-size: 1em;
				white-space: nowrap;
			}

			.main-header .logo .winners-link {
				display: inline-flex;
				align-items: center;
				gap: 9px;
				background: linear-gradient(135deg, #d5aa00 0%, #dcb823 50%, #d5aa00 100%);
				color: #7a5f00;
				text-decoration: none;
				line-height: 1.2;
				padding: 10px 14px;
				border-radius: 12px;
				font-size: 16px;
				font-weight: 1000;
				text-transform: uppercase;
				letter-spacing: 0.045em;
				box-shadow: 0 3px 12px rgba(213, 170, 0, 0.35);
				transition: transform 0.2s ease, box-shadow 0.2s ease;
				text-shadow: 0 1px 1px rgba(0,0,0,0.12);
			}

			.main-header .logo .winners-link:hover {
				transform: translateY(-1px);
				box-shadow: 0 5px 18px rgba(213, 170, 0, 0.42);
			}

			.main-header .logo .winners-link::before {
				content: '🏆';
				font-size: 20px;
				line-height: 1;
			}

			@media screen and (max-width: 768px) {
				.header-content {
					padding: 0 10px;
					gap: 8px;
					flex-wrap: nowrap;
					align-items: center;
				}
				.main-header .logo {
					gap: 5px;
					max-width: 70%;
				}

				.main-header .logo .contest-text {
					font-size: 12px;
					white-space: normal;
				}

				.main-header .logo .winners-link {
					width: auto;
					justify-content: flex-start;
					text-align: left;
					font-size: 12px;
					align-self: flex-start;
					padding: 8px 10px;
					letter-spacing: 0.025em;
					font-weight: 1000;
					text-shadow: 0 1px 2px rgba(0,0,0,0.18), 0 0 1px rgba(0,0,0,0.22);
					gap: 8px;
					max-width: 100%;
				}
				.main-header .logo .winners-link::before {
					font-size: 18px;
				}
				.main-nav ul li a {
					font-size: 15px;
				}
				.menu-toggle {
					align-self: flex-start;
					margin-left: auto;
					flex-shrink: 0;
				}
			}

			.main-nav ul {
				display: flex;
				list-style: none;
				margin: 0;
				padding: 0;
				align-items: center;
				gap: 20px;
				flex-wrap: nowrap;
				justify-content: flex-end;
			}

			.main-nav {
				flex: 1;
			}

			.main-nav ul li {
				margin: 0;
			}

			.main-nav ul li a {
				color: #232b33;
				text-decoration: none;
				font-size: 16px;
				font-weight: 700;
				letter-spacing: 0.015em;
				padding: 6px 0;
				position: relative;
				transition: color 0.2s cubic-bezier(.4,0,.2,1);
				display: flex;
				align-items: center;
				white-space: nowrap;
			}

			.main-nav ul li a::after {
				content: '';
				display: block;
				position: absolute;
				left: 0;
				bottom: -2px;
				width: 100%;
				height: 2.5px;
				background: linear-gradient(90deg, #3296d9 0%, #6ad1e3 100%);
				border-radius: 2px;
				transform: scaleX(0);
				transition: transform 0.3s cubic-bezier(.4,0,.2,1);
			}

			.main-nav ul li a:hover::after {
				transform: scaleX(1);
			}

			.main-nav ul li a:hover {
				color: #3296d9;
			}

			.main-header.scrolled .main-nav ul li a {
				color: #232b33;
			}

			.main-header.scrolled .main-nav ul li a:hover {
				color: #3296d9;
			}

			.more-menu .arrow-down {
				font-size: 13px;
				margin-left: 7px;
				transition: transform 0.3s cubic-bezier(.4,0,.2,1);
			}

			.more-menu:hover .arrow-down {
				transform: rotate(180deg);
			}

			.menu-toggle {
				display: none;
				background: none;
				border: none;
				cursor: pointer;
				padding: 12px;
				z-index: 1001;
				transition: background 0.2s;
				border-radius: 8px;
			}

			.menu-toggle span {
				display: block;
				width: 28px;
				height: 3px;
				background-color: #232b33;
				margin: 6px 0;
				border-radius: 2px;
				transition: all 0.3s cubic-bezier(.4,0,.2,1);
			}

			.menu-toggle:active, .menu-toggle:focus {
				background: rgba(50,150,217,0.08);
			}

			.main-header.scrolled .menu-toggle span {
				background-color: #3296d9;
			}

			@media screen and (max-width: 900px) {
				.header-content {
					padding: 0 10px;
					gap: 10px;
					justify-content: center;
				}
				.main-nav ul {
					gap: 14px;
					justify-content: flex-start;
				}
			}

			@media screen and (max-width: 768px) {
				.main-nav {
					display: none;
				}
				.menu-toggle {
					display: block;
				}
				.main-header {
					padding: 10px 0;
				}
				.main-header .logo img {
					height: 36px;
				}
			}

			.section_first {
				/* margin-top: 32px; */
				padding-top: 0;
			}

			/* Modern Glass Overlay Menu */
			.menu-overlay {
				position: fixed;
				top: 0;
				left: 0;
				width: 100vw;
				height: 100vh;
				background: rgba(255,255,255,0.18);
				backdrop-filter: blur(18px);
				-webkit-backdrop-filter: blur(18px);
				z-index: 2000;
				display: none;
				overflow-y: auto;
				box-shadow: 0 8px 32px 0 rgba(31,38,135,0.18);
			}

			.menu-container {
				max-width: 1100px;
				margin: 40px auto;
				padding: 32px 24px;
				background: rgba(255,255,255,0.45);
				border-radius: 24px;
				box-shadow: 0 8px 32px 0 rgba(31,38,135,0.18);
			}

			.menu-header {
				display: flex;
				justify-content: space-between;
				align-items: center;
				padding: 0 0 24px 0;
				border-bottom: 1px solid rgba(50,150,217,0.08);
			}

			.menu-logo {
				height: 48px;
			}

			.close-menu {
				background: none;
				border: none;
				color: #232b33;
				font-size: 36px;
				cursor: pointer;
				padding: 5px 16px;
				transition: color 0.2s;
				border-radius: 8px;
			}

			.close-menu:hover {
				color: #3296d9;
				background: rgba(50,150,217,0.08);
			}

			.menu-nav {
				display: grid;
				grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
				gap: 36px;
				padding: 36px 0 0 0;
			}

			.menu-section h3 {
				color: #3296d9;
				margin-bottom: 18px;
				font-size: 17px;
				font-weight: 700;
				text-transform: uppercase;
				letter-spacing: 0.7px;
			}

			.menu-section ul {
				list-style: none;
				padding: 0;
				margin: 0;
			}

			.menu-section ul li {
				margin-bottom: 14px;
			}

			.menu-section ul li a {
				color: #232b33;
				text-decoration: none;
				font-size: 16px;
				font-weight: 600;
				transition: color 0.2s cubic-bezier(.4,0,.2,1), transform 0.2s cubic-bezier(.4,0,.2,1);
				display: inline-block;
				padding: 2px 0;
				border-radius: 4px;
			}

			.menu-section ul li a:hover {
				color: #3296d9;
				transform: translateX(6px) scale(1.04);
				background: rgba(50,150,217,0.06);
			}

			@media screen and (max-width: 768px) {
				.menu-nav {
					grid-template-columns: 1fr;
					gap: 24px;
				}
				.menu-container {
					padding: 16px 6px;
				}
				.menu-section {
					margin-bottom: 18px;
				}
				.menu-section h3 {
					font-size: 15px;
					margin-bottom: 10px;
				}
				.menu-section ul li {
					margin-bottom: 9px;
				}
				.menu-section ul li a {
					font-size: 15px;
				}
			}
