/* Custom Stylesheet for Winsoft Solutions */

html,
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

* {
    box-sizing: border-box;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: #0f172a;
}

::-webkit-scrollbar-thumb {
    background: #1e3a8a;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: #facc15;
}

/* Glassmorphism Utilities */
.glass-card {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.glass-card-hover {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.glass-card-hover:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(250, 204, 21, 0.4);
    box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.5), 0 0 25px rgba(250, 204, 21, 0.15);
    transform: translateY(-5px) scale(1.015);
}

/* Glow Effects */
.glow-text {
    text-shadow: 0 0 20px rgba(250, 204, 21, 0.3);
}

.glow-border:hover {
    box-shadow: 0 0 25px rgba(250, 204, 21, 0.2);
}

/* Floating Animations */
.animate-float-slow {
    animation: floatSlow 6s ease-in-out infinite;
}

.animate-float-delayed-1 {
    animation: floatSlow 6s ease-in-out infinite;
    animation-delay: 1.5s;
}

.animate-float-delayed-2 {
    animation: floatSlow 6s ease-in-out infinite;
    animation-delay: 3s;
}

@keyframes floatSlow {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

/* Blobs */
.blob {
    position: absolute;
    filter: blur(100px);
    z-index: 0;
    opacity: 0.3;
    animation: move 12s infinite alternate ease-in-out;
    pointer-events: none;
}

@keyframes move {
    from {
        transform: translate(0, 0) scale(1);
    }
    to {
        transform: translate(30px, -30px) scale(1.1);
    }
}

/* Typewriter Cursor */
.typewriter-cursor::after {
    content: '|';
    animation: blink 1s step-end infinite;
    color: #facc15;
    margin-left: 4px;
}

@keyframes blink {
    from, to { opacity: 1; }
    50% { opacity: 0; }
}

/* Innovation Sphere Animations - Redesigned to Ripples */
@keyframes ripple-out {
    0% { transform: scale(0.5); opacity: 1; border-width: 4px; }
    100% { transform: scale(1.5); opacity: 0; border-width: 0px; }
}

@keyframes core-pulse {
    0%, 100% { transform: scale(1); box-shadow: 0 0 20px rgba(250, 204, 21, 0.4); }
    50% { transform: scale(1.05); box-shadow: 0 0 50px rgba(250, 204, 21, 0.8); }
}

.sphere-container {
    perspective: 1000px;
}

.ring {
    position: absolute;
    border-radius: 50%;
    border: solid rgba(250, 204, 21, 0.5);
}

.ring-inner {
    width: 200px;
    height: 200px;
    animation: ripple-out 3s cubic-bezier(0.1, 0.8, 0.5, 1) infinite;
    animation-delay: 0s;
}

.ring-outer {
    width: 200px;
    height: 200px;
    animation: ripple-out 3s cubic-bezier(0.1, 0.8, 0.5, 1) infinite;
    animation-delay: 1.5s;
}

.core {
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, #facc15 0%, #ca8a04 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: core-pulse 2s ease-in-out infinite;
}

.core::after {
    content: "\f007";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #0f172a;
    font-size: 2.5rem;
}

/* Custom Scrollbar for Milestones overflow */
.custom-scrollbar::-webkit-scrollbar {
    height: 6px;
}
.custom-scrollbar::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.05);
    border-radius: 3px;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(250, 204, 21, 0.3);
    border-radius: 3px;
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: rgba(250, 204, 21, 0.6);
}

/* Hamburger transition styling */
.nav-hamburger-line {
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.hamburger-active .nav-hamburger-line:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}
.hamburger-active .nav-hamburger-line:nth-child(2) {
    opacity: 0;
}
.hamburger-active .nav-hamburger-line:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

/* Sticky navbar transition */
#navbar.scrolled {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.08);
}
