/* Contact Page Styles */
.contact-section {
    position: relative;
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-xl) 0;
}

.contact-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: 
        radial-gradient(circle at 20% 30%, rgba(255, 76, 41, 0.1) 0%, transparent 25%),
        radial-gradient(circle at 80% 70%, rgba(0, 201, 255, 0.1) 0%, transparent 25%);
    z-index: -1;
    animation: orbs 15s infinite alternate;
}

@keyframes orbs {
    0% {
        background-position: 0% 0%;
    }
    100% {
        background-position: 100% 100%;
    }
}

.contact-form {
    position: relative;
    z-index: 1;
}

.form-control {
    background-color: rgba(0, 0, 0, 0.3);
}

.form-control:focus {
    border-color: var(--ice-color);
    box-shadow: 0 0 10px rgba(0, 201, 255, 0.3);
}

.form-control.error {
    border-color: var(--fire-color);
    box-shadow: 0 0 10px rgba(255, 76, 41, 0.3);
}

/* Orbs Animation */
.orb {
    position: absolute;
    border-radius: 50%;
    opacity: 0.2;
    filter: blur(20px);
}

.fire-orb {
    background: var(--fire-color);
    width: 200px;
    height: 200px;
    top: 30%;
    left: 10%;
    animation: fireFloat 8s infinite alternate;
}

.ice-orb {
    background: var(--ice-color);
    width: 250px;
    height: 250px;
    bottom: 20%;
    right: 10%;
    animation: iceFloat 10s infinite alternate;
}

@keyframes fireFloat {
    0% {
        transform: translate(0, 0) scale(1);
        opacity: 0.2;
    }
    100% {
        transform: translate(20px, -20px) scale(1.1);
        opacity: 0.3;
    }
}

@keyframes iceFloat {
    0% {
        transform: translate(0, 0) scale(1);
        opacity: 0.2;
    }
    100% {
        transform: translate(-20px, 20px) scale(1.1);
        opacity: 0.3;
    }
}

/* Responsive Styles */
@media (max-width: 768px) {
    .contact-section {
        min-height: 60vh;
        padding: var(--spacing-lg) 0;
    }
}