/* Contact Section - Cyber Theme */
.contact {
    padding: 100px 0;
    background: var(--bg-color);
    position: relative;
    overflow: hidden;
}

.contact::before {
    content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: radial-gradient(circle at 10% 90%, rgba(236, 72, 153, 0.05) 0%, transparent 50%);
    pointer-events: none;
}

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

.contact-content {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 4rem;
    margin-top: 4rem;
    align-items: start;
}

.contact-info { display: flex; flex-direction: column; gap: 1.5rem; }

.contact-item {
    display: flex; align-items: flex-start; gap: 1.5rem;
    padding: 1.5rem; background: var(--glass-bg);
    border: 1px solid var(--glass-border); border-radius: var(--radius-lg);
    transition: var(--transition-normal); backdrop-filter: blur(10px);
    opacity: 0; transform: translateX(-30px);
}
.contact-item.animate-in { opacity: 1; transform: translateX(0); }

.contact-item:hover {
    background: rgba(30, 41, 59, 0.6);
    border-color: rgba(56, 189, 248, 0.3);
    transform: translateX(10px); box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.contact-icon {
    width: 60px; height: 60px; min-width: 60px;
    background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.1);
    border-radius: var(--radius-full);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.5rem; color: var(--neon-blue);
    transition: var(--transition-normal);
}

.contact-item:hover .contact-icon {
    background: var(--gradient-gold); color: var(--white); border-color: transparent;
    transform: rotate(15deg) scale(1.1); box-shadow: 0 0 20px rgba(56, 189, 248, 0.4);
}

.contact-details h3 {
    font-size: 1.1rem; font-weight: 700; color: var(--white); margin-bottom: 0.25rem; font-family: 'Outfit', sans-serif;
}
.contact-details p, .contact-details a { font-size: 0.95rem; color: var(--text-light); text-decoration: none; transition: var(--transition-fast); }
.contact-details a:hover { color: var(--neon-blue); }

.contact-form { opacity: 0; transform: translateX(30px); transition: var(--transition-slow); }
.contact-form.animate-in { opacity: 1; transform: translateX(0); }

.form-group { position: relative; margin-bottom: 1.5rem; }

.form-group input, .form-group textarea {
    width: 100%; padding: 1.25rem 1.25rem 1.25rem 3.5rem;
    background: rgba(15, 23, 42, 0.5); border: 1px solid var(--glass-border);
    border-radius: var(--radius-md); font-size: 1rem; color: var(--white);
    font-family: inherit; transition: var(--transition-normal); outline: none;
}

.form-group input::placeholder, .form-group textarea::placeholder { color: #64748b; }

.form-group input:focus, .form-group textarea:focus {
    border-color: var(--neon-blue); background: rgba(15, 23, 42, 0.8);
    box-shadow: 0 0 15px rgba(56, 189, 248, 0.15);
}

.form-group i {
    position: absolute; left: 1.2rem; top: 1.3rem;
    font-size: 1.2rem; color: #64748b; transition: var(--transition-fast);
}
.form-group input:focus + i, .form-group textarea:focus + i { color: var(--neon-blue); }

.contact-form .btn {
    width: 100%; padding: 1.25rem;
}

@media (max-width: 968px) {
    .contact-content { grid-template-columns: 1fr; gap: 3rem; }
    .contact-info { order: 2; }
    .contact-form { order: 1; }
}
