 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 :root {
     --primary: #FFD302;
     --black: #000000;
     --white: #FFFFFF;
     --dark-bg: #1a1a1a;
     --border-color: #333333;
     --text-muted: #888888;
 }

 body {
     font-family: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
     background-color: var(--black);
     color: var(--white);
     line-height: 1.6;
     overflow-x: hidden;
 }

 /* Navigation */
 nav {
     background-color: var(--black);
     border-bottom: 1px solid var(--border-color);
     position: sticky;
     top: 0;
     z-index: 1000;
     padding: 0.75rem 2rem;
 }

 .nav-container {
     max-width: 1400px;
     margin: 0 auto;
     display: flex;
     justify-content: space-between;
     align-items: center;
 }

 /* Logo Section */
 .logo a {
     display: flex;
     align-items: center;
 }

 .logo img {
     height: 40px;
     width: auto;
     transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
 }

 .logo img:hover {
     transform: scale(1.08);
 }

 /* Nav Links & Dropdown */
 .nav-links {
     display: flex;
     gap: 2rem;
     align-items: center;
     list-style: none;
 }

 .nav-item {
     position: relative;
 }

 .nav-links a {
     color: var(--white);
     text-decoration: none;
     transition: color 0.3s ease;
     font-size: 0.95rem;
     font-weight: 500;
 }

 .nav-links a:hover {
     color: var(--primary);
 }

 /* CTA styling */
 .nav-links li a.nav-cta {
     background-color: var(--primary);
     color: var(--black);
     padding: 0.65rem 1.5rem;
     border-radius: 6px;
     font-weight: 600;
     transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 .nav-links li a.nav-cta:hover {
     background-color: #FFC500;
     transform: translateY(-2px);
     box-shadow: 0 4px 12px rgba(255, 211, 2, 0.3);
 }

 /* Mobile Toggle */
 .menu-toggle {
     display: none;
     background: none;
     border: none;
     color: var(--white);
     font-size: 1.5rem;
     cursor: pointer;
 }

 /* Responsive Mobile Styles */
 @media (max-width: 992px) {

     /* Increased breakpoint for better tablet support */
     .menu-toggle {
         display: block;
     }

     .nav-links {
         display: none;
         position: absolute;
         top: 100%;
         left: 0;
         width: 100%;
         flex-direction: column;
         background-color: var(--dark-bg);
         padding: 2rem;
         gap: 1.5rem;
         border-bottom: 1px solid var(--border-color);
     }

     .nav-links.active {
         display: flex;
     }
 }

 /* Footer */
 footer {
     background-color: var(--dark-bg);
     border-top: 1px solid var(--border-color);
     padding: 3rem 2rem;
 }

 .footer-content {
     max-width: 1400px;
     margin: 0 auto;
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
     gap: 2rem;
     margin-bottom: 2rem;
 }

 .footer-section h4 {
     margin-bottom: 1rem;
     color: var(--primary);
     font-weight: 700;
 }

 .footer-section ul {
     list-style: none;
     padding: 0;
 }

 .footer-section ul li {
     margin-bottom: 0.75rem;
 }

 .footer-section a {
     color: var(--text-muted);
     text-decoration: none;
     transition: color 0.3s ease;
 }

 .footer-section a:hover {
     color: var(--primary);
 }

 /* --- Social Interactive Elements --- */
 .social-icons-wrapper {
     display: flex;
     gap: 25px;
     margin-top: 1.25rem;
     align-items: center;
 }

 /* Base button styling */
 .social-btn {
     position: relative;
     display: flex;
     align-items: center;
     justify-content: center;
     width: 44px;
     height: 44px;
     background-color: var(--white);
     border-radius: 50%;
     text-decoration: none;
     font-size: 1.2rem;
     transition:
         background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
         transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
         box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 }

 .social-btn i {
     color: #111111;
     font-size: 1.2rem;
     transition: color 0.3s ease;
 }

 .social-btn:hover {
     z-index: 10;
     background-color: var(--primary);
     transform: translateY(-5px);
     box-shadow: 0 8px 20px rgba(255, 197, 0, 0.4);
 }

 .social-btn:hover i {
     color: #000000;
     /* High contrast black on yellow */
 }

 /* --- Global Footer Bottom --- */
 .footer-bottom {
     text-align: center;
     border-top: 1px solid var(--border-color);
     padding-top: 2.5rem;
     color: var(--text-muted);
 }

 .footer-link {
     display: inline-block;
     color: var(--primary);
     text-decoration: none;
     font-weight: 500;
     border-bottom: 1px solid transparent;
     transition: color 0.3s ease, border-bottom-color 0.3s ease;
 }

 .footer-link:hover {
     color: var(--white);
     border-bottom-color: var(--primary);
 }

 .footer-link {
     color: var(--primary);
     text-decoration: none;
     font-weight: 500;
     transition: all 0.3s ease;
     border-bottom: 1px solid transparent;
 }

 .footer-link:hover {
     color: var(--white);
     border-bottom-color: var(--primary);
     /* Subtle underline effect on hover */
 }