/* Header Styles */
.header {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;

    .headerContainer {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 20px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 80px;

        .logo {
            h1 {
                font-size: 1.5rem;
                font-weight: bold;
                color: #0066CC;
                transition: all 0.3s ease;

                &:hover {
                    color: #004AAD;
                }
            }
        }

        .headerNav {
            ul {
                display: flex;
                align-items: center;
                gap: 2rem;

                li {
                    a {
                        font-weight: 500;
                        color: #333;
                        padding: 0.5rem 0;
                        position: relative;
                        transition: all 0.3s ease;

                        &:hover {
                            color: #0066CC;
                        }

                        &::after {
                            content: '';
                            position: absolute;
                            bottom: -2px;
                            left: 0;
                            width: 0;
                            height: 2px;
                            background: #0066CC;
                            transition: width 0.3s ease;
                        }

                        &:hover::after {
                            width: 100%;
                        }

                        &.ctaButton {
                            background: linear-gradient(135deg, #0066CC, #004AAD);
                            color: white;
                            padding: 12px 24px;
                            border-radius: 25px;
                            font-size: 14px;

                            &::after {
                                display: none;
                            }

                            &:hover {
                                transform: translateY(-2px);
                                box-shadow: 0 4px 15px rgba(0, 102, 204, 0.3);
                                color: white;
                            }
                        }
                    }
                }
            }
        }

        .hamburger {
            display: none;
            flex-direction: column;
            cursor: pointer;
            padding: 8px;

            span {
                width: 25px;
                height: 3px;
                background: #333;
                margin: 3px 0;
                transition: all 0.3s ease;
                border-radius: 2px;
            }

            &.active {
                span:nth-child(1) {
                    transform: rotate(-45deg) translate(-5px, 6px);
                }

                span:nth-child(2) {
                    opacity: 0;
                }

                span:nth-child(3) {
                    transform: rotate(45deg) translate(-5px, -6px);
                }
            }
        }
    }
}

/* Mobile Header */
@media (max-width: 768px) {
    .header {
        .headerContainer {
            padding: 0 16px;
            height: 70px;

            .logo {
                h1 {
                    font-size: 1.2rem;
                }
            }

            .headerNav {
                position: fixed;
                top: 70px;
                left: 0;
                right: 0;
                background: white;
                box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
                transform: translateY(-100%);
                opacity: 0;
                visibility: hidden;
                transition: all 0.3s ease;

                &.active {
                    transform: translateY(0);
                    opacity: 1;
                    visibility: visible;
                }

                ul {
                    flex-direction: column;
                    padding: 2rem 1rem;
                    gap: 1rem;

                    li {
                        width: 100%;
                        text-align: center;

                        a {
                            display: block;
                            padding: 1rem;
                            border-radius: 8px;

                            &:hover {
                                background: rgba(0, 102, 204, 0.1);
                            }

                            &.ctaButton {
                                margin-top: 1rem;
                            }
                        }
                    }
                }
            }

            .hamburger {
                display: flex;
            }
        }
    }
}