/*
Theme Name: Eduverse Global - Test Preparation & Counseling
Theme URI: https://eduverseglobal.com
Author: Eduverse Global Tech
Author URI: https://eduverseglobal.com
Description: A premium, high-converting standalone WordPress theme designed specifically for entrance preparation institutes, colleges, and educational counselling centers. Features CMAT, KUUMAT, BIT, B.Sc. CSIT course modules, live customizer, direct email channel, and inquiry forms.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: eduverse
Tags: education, test-prep, cmat, kuumat, entrance-preparation, university-guidance, customizable-header, custom-colors, custom-menu, featured-images, theme-options

--------------------------------------------------------------
TABLE OF CONTENTS
--------------------------------------------------------------
1. Color Variables & Reset
2. Typography & Core Layout
3. Header & Top Bar
4. Navigation & Mobile Menu
5. Hero Section & Banner Cards
6. Entrance Course Cards & Badges
7. Scholarship & Counseling Callout
8. Forms & Modals
9. Footer
10. Responsive Media Queries
-------------------------------------------------------------- */

:root {
  --primary-red: #E61924;
  --primary-red-hover: #C5111B;
  --deep-navy: #0F2942;
  --navy-light: #1A3B5C;
  --accent-gold: #FFB800;
  --accent-blue: #0088FF;
  --bg-light: #F8FAFC;
  --text-dark: #1E293B;
  --text-muted: #64748B;
  --white: #FFFFFF;
  --card-shadow: 0 10px 30px -5px rgba(15, 41, 66, 0.08);
  --border-radius: 12px;
  --font-main: 'Outfit', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Reset & Base */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-main);
  background-color: var(--bg-light);
  color: var(--text-dark);
  line-height: 1.6;
  overflow-x: hidden;
}

a {
  color: inherit;
  text-decoration: none;
  transition: all 0.25s ease;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Header Top Contact Bar */
.eduverse-topbar {
  background: var(--deep-navy);
  color: var(--white);
  padding: 8px 0;
  font-size: 0.88rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.topbar-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.topbar-contacts {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}

.topbar-item {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #CBD5E1;
}

.topbar-item:hover {
  color: var(--white);
}

.topbar-item svg {
  color: var(--primary-red);
  flex-shrink: 0;
}

.topbar-cta .btn-sm {
  background: var(--primary-red);
  color: var(--white);
  padding: 6px 14px;
  border-radius: 20px;
  font-weight: 600;
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.topbar-cta .btn-sm:hover {
  background: var(--primary-red-hover);
  transform: translateY(-1px);
}

/* Main Navbar */
.eduverse-navbar {
  background: var(--white);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  position: sticky;
  top: 0;
  z-index: 1000;
}

.navbar-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 80px;
}

.brand-logo {
  display: flex;
  align-items: center;
  gap: 12px;
}

.logo-text {
  display: flex;
  flex-direction: column;
}

.logo-title {
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--deep-navy);
  line-height: 1;
  letter-spacing: -0.5px;
}

.logo-title span {
  color: var(--primary-red);
}

.logo-tagline {
  font-size: 0.75rem;
  color: var(--text-muted);
  font-style: italic;
  margin-top: 2px;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 32px;
  list-style: none;
}

.nav-link {
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--deep-navy);
  position: relative;
  padding: 8px 0;
}

.nav-link::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 3px;
  background: var(--primary-red);
  border-radius: 2px;
  transition: width 0.3s ease;
}

.nav-link:hover::after,
.nav-link.active::after {
  width: 100%;
}

.nav-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}

.btn-primary {
  background: linear-gradient(135deg, var(--primary-red) 0%, #B90E17 100%);
  color: var(--white);
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 700;
  box-shadow: 0 4px 14px rgba(230, 25, 36, 0.35);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.btn-primary:hover {
  background: linear-gradient(135deg, #D0121D 0%, #A00B13 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(230, 25, 36, 0.45);
}

/* Banner & Hero Section */
.hero-banner {
  background: linear-gradient(135deg, #0F2942 0%, #1A3B5C 100%);
  color: var(--white);
  padding: 60px 0 80px 0;
  position: relative;
  overflow: hidden;
}

.hero-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: center;
}

.hero-headline-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(230, 25, 36, 0.15);
  border: 1px solid var(--primary-red);
  color: #FF6B74;
  padding: 6px 16px;
  border-radius: 30px;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 20px;
}

.hero-title {
  font-size: 3.2rem;
  font-weight: 900;
  line-height: 1.1;
  text-transform: uppercase;
  margin-bottom: 16px;
  letter-spacing: -1px;
}

.hero-title .highlight-red {
  color: var(--primary-red);
  text-shadow: 0 0 20px rgba(230, 25, 36, 0.4);
}

.hero-subtitle {
  font-size: 1.25rem;
  color: #E2E8F0;
  margin-bottom: 30px;
  font-weight: 500;
}

.featured-exam-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 32px;
}

.exam-pill {
  background: var(--white);
  color: var(--deep-navy);
  padding: 10px 18px;
  border-radius: 8px;
  font-weight: 800;
  font-size: 0.95rem;
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border: 2px solid transparent;
  transition: all 0.25s;
}

.exam-pill.tu-badge {
  border-color: #E61924;
}

.exam-pill.ku-badge {
  border-color: #0088FF;
}

.exam-pill:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}

.hero-card-form {
  background: var(--white);
  color: var(--text-dark);
  padding: 32px;
  border-radius: 16px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}

.form-title {
  font-size: 1.4rem;
  font-weight: 800;
  color: var(--deep-navy);
  margin-bottom: 6px;
}

.form-subtitle {
  font-size: 0.88rem;
  color: var(--text-muted);
  margin-bottom: 20px;
}

.form-group {
  margin-bottom: 16px;
}

.form-control {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #E2E8F0;
  border-radius: 8px;
  font-size: 0.95rem;
  font-family: inherit;
  transition: border-color 0.2s;
}

.form-control:focus {
  outline: none;
  border-color: var(--primary-red);
}

.btn-full {
  width: 100%;
  justify-content: center;
}

/* Course Grid Section */
.section-padding {
  padding: 80px 0;
}

.section-title-wrap {
  text-align: center;
  margin-bottom: 50px;
}

.section-badge {
  color: var(--primary-red);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 0.85rem;
}

.section-title {
  font-size: 2.3rem;
  font-weight: 800;
  color: var(--deep-navy);
  margin-top: 6px;
}

.courses-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
  gap: 28px;
}

.course-card {
  background: var(--white);
  border-radius: 16px;
  padding: 28px;
  box-shadow: var(--card-shadow);
  border: 1px solid #F1F5F9;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
  overflow: hidden;
}

.course-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--primary-red), var(--accent-gold), var(--accent-blue));
}

.course-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(15, 41, 66, 0.12);
}

.course-icon-badge {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: rgba(230, 25, 36, 0.1);
  color: var(--primary-red);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  margin-bottom: 20px;
}

.course-title {
  font-size: 1.4rem;
  font-weight: 800;
  color: var(--deep-navy);
  margin-bottom: 10px;
}

.course-desc {
  color: var(--text-muted);
  font-size: 0.95rem;
  margin-bottom: 20px;
}

.course-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  border-top: 1px solid #F1F5F9;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--deep-navy);
}

/* Footer */
.eduverse-footer {
  background: var(--deep-navy);
  color: var(--white);
  padding: 70px 0 30px 0;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  gap: 40px;
  margin-bottom: 50px;
}

.footer-col-title {
  font-size: 1.15rem;
  font-weight: 700;
  margin-bottom: 20px;
  color: var(--white);
  position: relative;
  padding-bottom: 8px;
}

.footer-col-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 36px;
  height: 3px;
  background: var(--primary-red);
  border-radius: 2px;
}

.footer-links {
  list-style: none;
}

.footer-links li {
  margin-bottom: 12px;
}

.footer-links a {
  color: #94A3B8;
}

.footer-links a:hover {
  color: var(--white);
  padding-left: 4px;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 24px;
  text-align: center;
  color: #94A3B8;
  font-size: 0.88rem;
}

/* Responsive */
@media (max-width: 992px) {
  .hero-grid {
    grid-template-columns: 1fr;
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }
  .hero-title {
    font-size: 2.5rem;
  }
}

@media (max-width: 600px) {
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .topbar-content {
    flex-direction: column;
    align-items: flex-start;
  }
  .hero-title {
    font-size: 2rem;
  }
}
