/* MENU FROM HELL */
        .gen-nav {
          display: flex;
          align-items: center;
          background: #f7f7f7;
          min-height: 80px;
          border-radius: 8px;
          border: none;
          box-shadow: 0 4px 12px rgba(0,0,0,.18);
          padding: 0 16px;
          font-family: "League Spartan," sans-serif;
         font-size: 1.25em;
          position: fixed;
          bottom: 0px;
            z-index: 9999;
            width: 100%
        }
        .gen-nav ul {
          list-style: none;
          margin: 0;
          padding: 0;
        }
        .gen-logo {
          display: flex;
          align-items: center;
          margin-right: auto;
        }
        .gen-hamburger {
          display: none;
          background: none;
          border: none;
          cursor: pointer;
          padding: 8px;
          margin-left: auto;
          display: none;
          align-items: center;
          justify-content: center;
          flex-direction:column; gap:0;
          color: #F7F7F7;
        }
        .gen-hamburger span {
          display: block;
          background: linear-gradient(120deg, #4CC9F0, #18206F);
          transition: all .3s;
          width:22px; height:2px; border-radius:2px; margin:3px 0;
        }

        .gen-nav > ul {
          display: flex; justify-content:center; flex: 1;
          flex-wrap: wrap;
        }
        .gen-nav > ul > li {
          position: relative;
        }
        .gen-nav > ul > li > a {
          display: flex;
          align-items: center;
          gap: 4px;
          padding: 0 16px;
          height: 80px;
          text-decoration: none;
          transition: background .2s, color .2s;
          white-space: nowrap;
        }
        .gen-arrow { font-size: .7em; opacity: .8; }
        /* Dropdown */
        .gen-nav > ul > li > ul {
          display: none;
          position: absolute;
          bottom: 100%;
          left: 0;
          background: linear-gradient(120deg, #4CC9F0, #18206F);
          min-width: 170px;
          border-radius: 8px 8px 0 0;
          box-shadow: 0 8px 24px rgba(0,0,0,.18);
          z-index: 1000;
          overflow: hidden;
          color: #F7F7F7;
        }
        .gen-nav > ul > li:hover > ul {
          display: block;
        }
        .gen-nav > ul > li > ul > li > a {
          display: block;
          padding: 10px 18px;
          color: #f7f7f7;
          font-size: 13px;
          text-decoration: none;
          transition: background .15s, color .15s;
            background: linear-gradient(120deg, #fff, #F7F7F7);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
          font-size:.75em;
        }
        .gen-nav > ul > li > ul > li > a:hover {
          text-decoration: underline;
            
        }
        .gen-nav > ul > li > ul > li:last-child {
          border-radius: 0 0 8px 8px;
          overflow: hidden;
        }
        .gen-nav > ul > li > ul > li:last-child > a {
          border-radius: 0 0 8px 8px;
        }
        
        /* Responsive */
        @media (max-width: 768px) {
          .gen-hamburger { display: flex; }
          .gen-nav {
            display: flex;
            flex-wrap: nowrap;
          }
          .gen-logo { margin-right: auto; justify-self: unset; }
          .gen-nav > ul {
            display: none;
            position: absolute;
            bottom: 100%;
            left: 0; right: 0;
            flex-direction: column;
            background: #f7f7f7;
            border-radius: 0 0 8px 8px;
            box-shadow: 0 12px 32px rgba(0,0,0,.2);
            z-index: 9999;
            padding: 8px 0;
            overflow: hidden;
          }
          .gen-nav > ul.open { display: flex; }
          /* Remove nav bottom radius when dropdown is open so they flow together */
          .gen-nav.mobile-open { border-radius: 8px 8px 0 0; }
          .gen-nav > ul > li > a { height: auto; padding: 14px 20px; }
          /* Reset desktop last-child rounding — not needed on mobile */
          .gen-nav > ul > li:last-child { border-radius: 0; overflow: visible; }
          .gen-nav > ul > li:last-child > a { border-radius: 0; }
          .gen-nav > ul > li > ul {
            display: none;
            position: static;
            box-shadow: none;
            border-radius: 0;
            overflow: visible;
            background: linear-gradient(120deg, #4CC9F0, #18206F);
            min-width: 0;
          }
            
          /* No rounding on submenu items in mobile */
          .gen-nav > ul > li > ul > li:last-child { border-radius: 0; overflow: visible; }
          .gen-nav > ul > li > ul > li:last-child > a { border-radius: 0; }
          .gen-nav > ul > li > ul > li > a { padding: 10px 32px; }
          /* Hamburger animates to X when open */

          .gen-nav.mobile-open .gen-hamburger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
          .gen-nav.mobile-open .gen-hamburger span:nth-child(2) { opacity: 0; }
          .gen-nav.mobile-open .gen-hamburger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

        }