﻿/* Contact Section Styles */
.contact-section {
    padding: 3rem 2rem;
    text-align: center;
}

.contact-container {
    max-width: 800px; /* Narrower for readability */
    margin: 0 auto;
}

.contact-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    color: var(--primary-color); /* Vibrant blue */
    margin-bottom: 1rem;
    position: relative;
    display: inline-block;
}

    .contact-title::after {
        content: '';
        position: absolute;
        width: 50%;
        height: 3px;
        background: var(--secondary-color); /* Lighter blue underline */
        bottom: -0.5rem;
        left: 25%;
        transition: width 0.3s ease;
    }

    .contact-title:hover::after {
        width: 100%;
        left: 0;
    }

.contact-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1.2rem;
    color: var(--steel-blue); /* Muted blue */
    margin-bottom: 2rem;
}

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.form-group {
    text-align: left;
}

    .form-group label {
        font-family: 'Poppins', sans-serif;
        font-weight: 500;
        font-size: 1rem;
        color: var(--navy-blue);
        margin-bottom: 0.5rem;
        display: block;
    }

.form-input {
    width: 100%;
    padding: 0.75rem;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    color: var(--navy-blue);
    background-color: #fff;
    border: 2px solid var(--cornflower-blue); /* Soft blue border */
    border-radius: 5px;
    transition: all 0.3s ease;
    position: relative;
    outline: none;
}

    /* Water-like focus effect */
    .form-input:focus {
        border-color: var(--primary-color); /* Vibrant blue */
        box-shadow: 0 0 10px rgba(30, 144, 255, 0.5); /* Glow effect */
        background: linear-gradient( 135deg, rgba(240, 248, 255, 0.9), /* Alice blue for subtle water */
        rgba(135, 206, 250, 0.2) /* Light sky blue */
        );
    }

        /* Ripple effect on focus */
        .form-input:focus::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 0;
            height: 0;
            background: rgba(30, 144, 255, 0.3); /* Subtle blue ripple */
            border-radius: 50%;
            transform: translate(-50%, -50%);
            animation: ripple 1.5s ease-out;
        }

@keyframes ripple {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        width: 200%;
        height: 200%;
        opacity: 0;
    }
}

/* Textarea-specific adjustments */
.form-input[type="textarea"] {
    resize: vertical; /* Allow vertical resize only */
}

/* Submit button */
.contact-submit {
    padding: 0.75rem 1.5rem;
    background-color: var(--secondary-color);
    color: var(--navy-blue);
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

    .contact-submit:hover {
        background-color: var(--aqua-marine);
        color: var(--steel-blue);
        transform: translateY(-3px);
        box-shadow: 0 4px 10px rgba(30, 144, 255, 0.4);
    }

/* Responsive Adjustments */
@media (max-width: 768px) {
    .contact-title {
        font-size: 2rem;
    }

    .contact-subtitle {
        font-size: 1rem;
    }

    .form-input {
        font-size: 0.9rem;
    }
}
