/* Hi Profile Consultancy and Services - shared styles (used by contact-us.html) */

body { font-family: 'DM Sans', sans-serif; color: #334155; background-color: #F8FAFC; overflow-x: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: 'Poppins', sans-serif; }

/* Glass panels */
.glass { background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.5); }
.glass-dark { background: rgba(15, 23, 42, 0.75); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.1); }

/* Gradient text */
.text-gradient { background: linear-gradient(135deg, #9b51e0, #8a2be2, #00e699); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; background-size: 200% auto; animation: shine 5s linear infinite; }
@keyframes shine { to { background-position: 200% center; } }

/* Scroll reveal (toggled by the page script) */
.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.5, 0, 0, 1); }
.reveal.active { opacity: 1; transform: translateY(0); }

/* FAQ accordion */
.faq-content { max-height: 0; overflow: hidden; transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
.faq-icon { transition: transform 0.3s ease, color 0.3s ease; }

/* Contact form fields */
.form-input:focus { border-color: #9b51e0; }
.form-input:invalid:not(:placeholder-shown):not(:focus) { border-color: #f87171; }
select.form-input:invalid, select.form-input option[value=""] { color: #9ca3af; }
select.form-input option { color: #0F172A; }
.form-input:-webkit-autofill { -webkit-box-shadow: 0 0 0 1000px #ffffff inset; -webkit-text-fill-color: #0F172A; }

/* Form status message (inserted by main.js) */
.form-status { border-radius: 12px; padding: 12px 16px; font-size: 0.875rem; line-height: 1.4; }
.form-status.is-success { background: rgba(0, 230, 153, 0.12); color: #047857; border: 1px solid rgba(0, 230, 153, 0.4); }
.form-status.is-error { background: rgba(248, 113, 113, 0.12); color: #b91c1c; border: 1px solid rgba(248, 113, 113, 0.4); }

/* Scrollbar */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #F8FAFC; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: #9b51e0; }

@media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
    .text-gradient { animation: none; }
}
