html,
 body {
     overflow-x: hidden;
     cursor: default;
 }

 body::-webkit-scrollbar {
     display: none;
 }

 :root {
     --teal: #007f55;
     --coral: #ff303b;
     --pink: #e07c9b;
 }

 body {
     font-family: "Inter", sans-serif;
     background-color: #1a202c;
     color: #f8fafc;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .glassy-effect {
     background-color: rgba(255, 255, 255, 0.15);
     backdrop-filter: blur(10px);
     -webkit-backdrop-filter: blur(10px);
     border: 1px solid rgba(255, 255, 255, 0.3);
     border-radius: 30px;
     transition: all 0.3s ease-in-out;
     padding: 1rem 1.5rem;
 }

 .glassy-effect .gradient-text {
     font-size: 2rem;
     transition: font-size 0.3s ease-in-out;
 }

 .glassy-effect #menu-links a {
     padding: 0.5rem 1rem;
     font-size: 1rem;
     transition: all 0.3s ease-in-out;
 }

 .glassy-effect.scrolled {
     padding: 0.5rem 1rem;
     border-radius: 15px;
     background-color: rgba(255, 255, 255, 0.1);
     backdrop-filter: blur(8px);
     -webkit-backdrop-filter: blur(8px);
     border: 1px solid rgba(255, 255, 255, 0.2);
     box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
 }

 .glassy-effect.scrolled .gradient-text {
     font-size: 1.75rem;
 }

 .glassy-effect.scrolled #menu-links a {
     padding: 0.3rem 0.8rem;
     font-size: 0.9rem;
 }

 .gradient-text {
     background: linear-gradient(90deg, var(--teal), var(--coral), var(--pink));
     -webkit-background-clip: text;
     background-clip: text;
     color: transparent;
 }

 .blob {
     position: fixed;
     border-radius: 50%;
     opacity: 0.25;
     filter: blur(40px);
     pointer-events: none;
     z-index: -1;
     animation-duration: 28s;
     animation-timing-function: ease-in-out;
     animation-iteration-count: infinite;
     animation-direction: alternate;
 }

 .blob-1 {
     width: 320px;
     height: 320px;
     background: var(--teal);
     top: -120px;
     left: -140px;
     animation-name: blobFloat1;
 }

 .blob-2 {
     width: 240px;
     height: 240px;
     background: var(--coral);
     bottom: -140px;
     right: -100px;
     animation-name: blobFloat2;
     animation-duration: 36s;
 }

 .blob-3 {
     width: 280px;
     height: 280px;
     background: var(--pink);
     top: 45%;
     left: -180px;
     transform: translateY(-50%);
     animation-name: blobFloat3;
     animation-duration: 32s;
 }

 @keyframes blobFloat1 {
     0% {
         transform: translate(0, 0) scale(1) rotate(0deg);
     }

     25% {
         transform: translate(40px, 20px) scale(1.07) rotate(20deg);
     }

     50% {
         transform: translate(80px, -10px) scale(1) rotate(0deg);
     }

     75% {
         transform: translate(40px, 30px) scale(1.05) rotate(-15deg);
     }

     100% {
         transform: translate(0, 0) scale(1) rotate(0deg);
     }
 }

 @keyframes blobFloat2 {
     0% {
         transform: translate(0, 0) scale(1) rotate(0deg);
     }

     33% {
         transform: translate(-60px, -30px) scale(0.95) rotate(25deg);
     }

     66% {
         transform: translate(-120px, 10px) scale(1.05) rotate(-15deg);
     }

     100% {
         transform: translate(0, 0) scale(1) rotate(0deg);
     }
 }

 @keyframes blobFloat3 {
     0% {
         transform: translateY(-50%) scale(1) rotate(0deg);
     }

     50% {
         transform: translateY(-60%) scale(1.1) rotate(10deg);
     }

     100% {
         transform: translateY(-50%) scale(1) rotate(0deg);
     }
 }

 @media (prefers-reduced-motion: reduce) {
     .blob {
         animation: none;
     }
 }

 /* Responsive menu styles */
@media (max-width: 767px) {
    #main-nav .container {
        padding-right: 3.5rem;
    }
    #menu-links {
        display: none;
        position: absolute;
        top: 60px;
        right: 1.5rem;
        width: 200px;
        height: auto;
        background: rgba(30, 41, 59, 0.98);
        box-shadow: 0 8px 24px rgba(0,0,0,0.18);
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        padding: 1rem 1.2rem;
        border-radius: 18px;
        z-index: 1001;
        transition: transform 0.3s ease-in-out, opacity 0.3s;
        transform: translateY(-20px);
        opacity: 0;
    }
    #menu-links.open {
        display: flex;
        transform: translateY(0);
        opacity: 1;
    }
    #menu-toggle {
        display: block;
        position: absolute;
        right: 1.5rem;
        top: 1.2rem;
        z-index: 1050;
        background: none;
        border: none;
        color: #fff;
        font-size: 2rem;
        cursor: pointer;
    }
    #menu-close {
        display: none;
        position: absolute;
        top: 1.2rem;
        right: 1.5rem;
        z-index: 1051;
        background: none;
        border: none;
        color: #fff;
        font-size: 2rem;
        cursor: pointer;
    }
    #menu-links.open ~ #menu-close {
        display: block;
    }
    .glassy-effect.scrolled {
        padding: 0.5rem 1rem !important;
        border-radius: 15px !important;
        background-color: rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
    }
    .glassy-effect {
        padding: 0.5rem 1rem !important;
        border-radius: 15px !important;
        background-color: rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
    }
}
@media (min-width: 768px) {
    #menu-toggle, #menu-close {
        display: none !important;
    }
    #menu-links {
        display: flex !important;
        position: static;
        height: auto;
        width: auto;
        background: none;
        box-shadow: none;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        padding: 0;
        transform: none;
        overflow: visible;
    }
}