/* Main CSS File - Imports all component styles */

/* Import Component Styles */
@import url("./components/modern-header.css");
@import url("./components/navbar.css");
@import url("./components/hero.css");
@import url("./components/home.css");
@import url("./components/footer.css");
@import url("./components/about.css");
@import url("./components/services.css");
@import url("./components/features.css");
@import url("./components/counter-facts.css");
@import url("./components/testimonials.css");
@import url("./components/dashboard.css");
@import url("./components/courses.css");
@import url("./components/study-abroad.css");

/* Root Variables */
:root {
  --primary: #1e3a5f;
  --primary-dark: #152c4a;
  --primary-rgb: 30, 58, 95;
  --secondary: #e63946;
  --secondary-rgb: 230, 57, 70;
  --light: #f8f9fa;
  --dark: #212529;
  --white: #ffffff;
  --gray: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --gradient-primary: linear-gradient(to right, #1e3a5f, #2a4f80);
  --gradient-secondary: linear-gradient(to right, #e63946, #ff4d58);
}

/* Base Styles */
body {
  font-family: "Poppins", sans-serif;
  color: var(--dark);
  background-color: #f8f9fa;
  overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}

a {
  text-decoration: none;
  transition: all 0.3s ease;
}

/* Utility Classes */
.text-primary {
  color: var(--primary) !important;
}

.text-secondary {
  color: var(--secondary) !important;
}

.section-title {
  color: #1e3a5f !important;
  line-height: 1.2;
}

.bg-primary {
  background-color: var(--primary) !important;
}

.bg-secondary {
  background-color: var(--secondary) !important;
}

.bg-light {
  background-color: var(--light) !important;
}

.bg-dark {
  background-color: var(--dark) !important;
}

/* Button Styles */
.btn {
  font-weight: 500;
  transition: all 0.3s ease;
  border-radius: 5px;
}

.btn-primary {
  background-color: var(--primary);
  border-color: var(--primary);
}

.btn-primary:hover {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
}

.btn-secondary {
  background-color: var(--secondary);
  border-color: var(--secondary);
}

.btn-secondary:hover {
  background-color: #d12836;
  border-color: #d12836;
}

.btn-outline-primary {
  color: var(--primary);
  border-color: var(--primary);
}

.btn-outline-primary:hover {
  background-color: var(--primary);
  border-color: var(--primary);
}

.btn-outline-secondary {
  color: var(--secondary);
  border-color: var(--secondary);
}

.btn-outline-secondary:hover {
  background-color: var(--secondary);
  border-color: var(--secondary);
}

.btn-lg {
  padding: 0.75rem 1.5rem;
}

.btn-sm {
  padding: 0.25rem 0.75rem;
}

.rounded-pill {
  border-radius: 50px !important;
}

.rounded-lg {
  border-radius: 15px !important;
}

.shadow-hover {
  transition: all 0.3s ease;
}

.shadow-hover:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* Animation Classes */
.float-animation {
  animation: float 6s infinite ease-in-out;
}

.pulse-animation {
  animation: pulse 2s infinite;
}

@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(var(--secondary-rgb), 0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(var(--secondary-rgb), 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(var(--secondary-rgb), 0);
  }
}

/* Section Spacing */
.section-padding {
  padding: 100px 0;
}

.section-padding-sm {
  padding: 60px 0;
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 1.75rem;
  }

  .section-padding {
    padding: 80px 0;
  }

  .section-padding-sm {
    padding: 50px 0;
  }
}

@media (max-width: 767.98px) {
  h1 {
    font-size: 2.25rem;
  }

  h2 {
    font-size: 1.75rem;
  }

  h3 {
    font-size: 1.5rem;
  }

  .section-padding {
    padding: 60px 0;
  }

  .section-padding-sm {
    padding: 40px 0;
  }
}

@media (max-width: 575.98px) {
  h1 {
    font-size: 2rem;
  }

  h2 {
    font-size: 1.5rem;
  }

  h3 {
    font-size: 1.25rem;
  }

  .section-padding {
    padding: 50px 0;
  }

  .section-padding-sm {
    padding: 30px 0;
  }
}
