.php-email-form .error-message {
  display: none;
  background: #df1529;
  color: #ffffff;
  text-align: left;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.php-email-form .sent-message {
  display: none;
  color: #ffffff;
  background: #059652;
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.php-email-form .loading {
  display: none;
  background: var(--surface-color);
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
}

.php-email-form .loading:before {
  content: "";
  display: inline-block;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: 0 10px -6px 0;
  border: 3px solid var(--accent-color);
  border-top-color: var(--surface-color);
  animation: php-email-form-loading 1s linear infinite;
}

@keyframes php-email-form-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

:root {
  --primary: #4154f1;
  --secondary: #012970;
  --dark-bg: #0a192f;
  --glass-white: rgba(255, 255, 255, 0.05);
}

body { font-family: 'Poppins', sans-serif; overflow-x: hidden; color: #444; }

/* Header & Navigation */
.header { transition: all 0.5s; z-index: 997; padding: 15px 0; background: #fff; box-shadow: 0px 2px 20px rgba(1, 41, 112, 0.1); }
.nav-link { color: var(--secondary); font-weight: 600; margin: 0 15px; }
.nav-link:hover { color: var(--primary); }

/* Hero Section */
.hero { 
    padding: 160px 0 100px 0; 
    background: var(--dark-bg); 
    color: white; 
    min-height: 85vh; 
    display: flex; 
    align-items: center; 
}
.hero h1 { font-size: 3.5rem; line-height: 1.2; margin-bottom: 25px; }

/* Glassmorphism & Animated Background */
.glass-section-bg {
    padding: 100px 0;
    background: linear-gradient(-45deg, #012970, #0a192f, #4154f1, #00d2ff);
    background-size: 400% 400%;
    animation: gradientShift 15s ease infinite;
    position: relative;
}

@keyframes gradientShift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.glass-card {
    background: var(--glass-white);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: 0.4s;
}

.glass-card:hover { transform: translateY(-10px); background: rgba(255, 255, 255, 0.1); border-color: var(--primary); }

.glass-card .icon {
    width: 60px; height: 60px;
    background: var(--primary);
    border-radius: 12px;
    display: flex;
    align-items: center; justify-content: center;
    margin-bottom: 25px;
    font-size: 24px; color: white;
    filter: drop-shadow(0 0 10px rgba(65, 84, 241, 0.5));
}

/* FAQ Accordion Alignment */
.accordion-button:not(.collapsed) { background-color: #f0f4ff; color: var(--primary); }

/* Footer */
.footer { padding: 80px 0 30px 0; background: #f8f9fa; border-top: 1px solid #eee; }
