/* Contact Page CSS Overrides */

/* Floating Label Tweaks for Bootstrap */
.form-floating>.form-control,
.form-floating>.form-select {
    height: calc(3.5rem + 2px);
    line-height: 1.25;
}

.form-floating>label {
    padding: 1rem 1rem;
}

.form-floating>.form-control:focus~label,
.form-floating>.form-control:not(:placeholder-shown)~label,
.form-floating>.form-select~label {
    opacity: 0.65;
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    color: var(--color-primary-dark);
}

/* Elegant Input states */
.form-control:focus,
.form-select:focus {
    box-shadow: 0 0 0 0.25rem rgba(74, 124, 89, 0.25);
    background-color: var(--color-bg-white) !important;
    border-color: var(--color-primary);
}

.was-validated .form-control:invalid,
.was-validated .form-select:invalid {
    border-color: #dc3545;
    background-image: none;
    /* Remove distracting default icons */
}

.was-validated .form-control:valid,
.was-validated .form-select:valid {
    border-color: #198754;
    background-image: none;
}

/* Hover behaviors */
.hover-lift {
    transition: transform var(--transition-normal), box-shadow var(--transition-normal);
}

.hover-lift:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-large);
}

.hover-lift-slight {
    transition: transform 0.2s ease-out;
}

.hover-lift-slight:hover {
    transform: translateY(-2px);
    border-color: var(--color-accent-gold) !important;
}

.form-submit-btn:hover .submit-arrow {
    transform: translateX(4px);
}

/* Form success overlay absolute positioning logic */
.form-success-alert {
    backdrop-filter: blur(10px);
    background-color: rgba(255, 255, 255, 0.95) !important;
}