 :root {
     --primary-gradient: linear-gradient(135deg, #7B2CBF 0%, #4A148C 100%);
     --primary-gradient-hover: linear-gradient(135deg, #8B3CCF 0%, #5A28AC 100%);
     --secondary-gradient: linear-gradient(135deg, #2C3E50 0%, #1A1A2E 100%);
     --accent-color: #7B2CBF;
     --dark-purple: #4A148C;
     --light-purple: #E6E6FA;
     --section-bg: #F8F9FF;
     --card-shadow: 0 10px 30px rgba(123, 44, 191, 0.1);
     --card-shadow-hover: 0 20px 40px rgba(123, 44, 191, 0.15);
 }

 /* Hero Section */
 .admissions-hero-section {
     background: linear-gradient(rgba(74, 20, 140, 0.9), rgba(123, 44, 191, 0.9));
     background-size: cover;
     background-position: center;
     padding: 100px 0;
     position: relative;
     color: white;
     overflow: hidden;
 }

 .admissions-hero-section::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background: radial-gradient(circle at 30% 50%, rgba(123, 44, 191, 0.3), transparent 70%);
 }

 .hero-title {
     font-size: 3.5rem;
     font-weight: 800;
     margin-bottom: 1.5rem;
     background: linear-gradient(135deg, #fff 0%, #E6E6FA 100%);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     text-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
 }

 .hero-subtitle {
     font-size: 1.25rem;
     margin-bottom: 2rem;
     opacity: 0.9;
     max-width: 600px;
 }

 .hero-stats {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
     gap: 20px;
     margin-top: 3rem;
 }

 .stat-item {
     text-align: center;
     padding: 20px;
     background: rgba(255, 255, 255, 0.1);
     backdrop-filter: blur(10px);
     border-radius: 15px;
     border: 1px solid rgba(255, 255, 255, 0.2);
     transition: transform 0.3s ease;
 }

 .stat-item:hover {
     transform: translateY(-5px);
 }

 .stat-number {
     font-size: 2.5rem;
     font-weight: 700;
     background: var(--dark-purple);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     margin-bottom: 5px;
 }

 .stat-label {
     font-size: 0.9rem;
 }

 /* Timeline Steps */
 .timeline-container {
     position: relative;
     padding: 60px 0;
 }

 .timeline-line {
     position: absolute;
     left: 50%;
     top: 0;
     bottom: 0;
     width: 4px;
     background: var(--primary-gradient);
     transform: translateX(-50%);
     z-index: 1;
 }

 .timeline-item {
     display: flex;
     justify-content: center;
     align-items: center;
     margin-bottom: 60px;
     position: relative;
     z-index: 2;
 }

 .timeline-content {
     background: white;
     border-radius: 20px;
     padding: 30px;
     box-shadow: var(--card-shadow);
     width: 45%;
     position: relative;
     transition: all 0.3s ease;
     border: 2px solid transparent;
 }

 .timeline-content:hover {
     transform: translateY(-10px);
     box-shadow: var(--card-shadow-hover);
     border-color: var(--accent-color);
 }

 .timeline-content.left {
     margin-right: auto;
     margin-left: 0;
 }

 .timeline-content.right {
     margin-left: auto;
     margin-right: 0;
 }

 .step-badge {
     position: absolute;
     top: -20px;
     left: 50%;
     transform: translateX(-50%);
     background: var(--primary-gradient);
     color: white;
     width: 50px;
     height: 50px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-weight: 700;
     font-size: 1.2rem;
     box-shadow: 0 5px 15px rgba(123, 44, 191, 0.3);
     z-index: 3;
 }

 .step-title {
     color: var(--dark-purple);
     margin-bottom: 15px;
     font-weight: 600;
     font-size: 1.3rem;
 }

 .step-details {
     color: #666;
     margin-bottom: 15px;
     line-height: 1.6;
 }

 .step-features {
     list-style: none;
     padding: 0;
     margin: 15px 0;
 }

 .step-features li {
     padding: 5px 0;
     position: relative;
     padding-left: 20px;
 }

 .step-features li:before {
     content: "✓";
     position: absolute;
     left: 0;
     color: var(--accent-color);
     font-weight: bold;
 }

 /* Enhanced Tuition Section */
 .tuition-section {
     background: var(--section-bg);
     padding: 80px 0;
 }

 .tuition-card {
     background: white;
     border-radius: 25px;
     padding: 40px;
     box-shadow: var(--card-shadow);
     position: relative;
     overflow: hidden;
 }

 .tuition-card::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 5px;
     background: var(--primary-gradient);
 }

 .pricing-card {
     background: white;
     border-radius: 20px;
     padding: 30px;
     text-align: center;
     box-shadow: var(--card-shadow);
     transition: all 0.3s ease;
     border: 2px solid #f0f0f0;
     height: 100%;
 }

 .pricing-card:hover {
     transform: translateY(-10px);
     box-shadow: var(--card-shadow-hover);
     border-color: var(--accent-color);
 }

 .pricing-header {
     background: var(--primary-gradient);
     color: white;
     padding: 20px;
     border-radius: 15px 15px 0 0;
     margin: -30px -30px 30px -30px;
 }

 .price {
     font-size: 2.5rem;
     font-weight: 700;
     color: var(--dark-purple);
     margin: 20px 0;
 }

 .price-period {
     font-size: 0.9rem;
     color: #666;
 }

 /* Programs Section */
 .programs-section {
     padding: 80px 0;
 }

 .program-card {
     background: white;
     border-radius: 20px;
     overflow: hidden;
     box-shadow: var(--card-shadow);
     transition: all 0.3s ease;
     height: 100%;
     position: relative;
 }

 .program-card::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 5px;
     background: var(--primary-gradient);
 }

 .program-card:hover {
     transform: translateY(-15px);
     box-shadow: var(--card-shadow-hover);
 }

 .program-badge {
     position: absolute;
     top: 20px;
     right: 20px;
     background: var(--primary-gradient);
     color: white;
     padding: 8px 15px;
     border-radius: 20px;
     font-size: 0.8rem;
     font-weight: 600;
     z-index: 2;
 }

 .program-img-container {
     height: 250px;
     overflow: hidden;
     position: relative;
 }

 .program-img-container::after {
     content: '';
     position: absolute;
     bottom: 0;
     left: 0;
     width: 100%;
     height: 50%;
     background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
 }

 .program-img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: transform 0.5s ease;
 }

 .program-card:hover .program-img {
     transform: scale(1.05);
 }

 .program-content {
     padding: 30px;
 }

 .program-title {
     color: var(--dark-purple);
     margin-bottom: 15px;
     font-weight: 700;
 }

 .program-features {
     list-style: none;
     padding: 0;
     margin: 20px 0;
 }

 .program-features li {
     padding: 8px 0;
     border-bottom: 1px solid #f0f0f0;
     color: #666;
 }

 .program-features li:last-child {
     border-bottom: none;
 }

 .program-features li i {
     color: var(--accent-color);
     margin-right: 10px;
 }

 /* CTA Section */
 .cta-section {
     background: var(--secondary-gradient);
     padding: 100px 0;
     position: relative;
     overflow: hidden;
 }

 .cta-section::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background: radial-gradient(circle at 70% 50%, rgba(123, 44, 191, 0.2), transparent 70%);
 }

 .cta-content {
     text-align: center;
     color: white;
     position: relative;
     z-index: 2;
 }

 .cta-title {
     font-size: 2.5rem;
     margin-bottom: 1.5rem;
     font-weight: 700;
 }

 .cta-buttons {
     display: flex;
     gap: 20px;
     justify-content: center;
     margin-top: 40px;
 }

 .btn-cta-primary {
     background: var(--primary-gradient);
     color: white;
     padding: 15px 40px;
     border-radius: 50px;
     font-weight: 600;
     border: none;
     transition: all 0.3s ease;
     text-decoration: none;
     display: inline-flex;
     align-items: center;
     gap: 10px;
     cursor: pointer;
     position: relative;
     z-index: 1;
 }

 .btn-cta-primary:hover {
     background: var(--primary-gradient-hover);
     transform: translateY(-3px);
     box-shadow: 0 15px 30px rgba(123, 44, 191, 0.3);
     color: white;
 }

 .btn-cta-secondary {
     background: transparent;
     color: white;
     padding: 15px 40px;
     border-radius: 50px;
     font-weight: 600;
     border: 2px solid white;
     transition: all 0.3s ease;
     text-decoration: none;
     display: inline-block;
 }

 .btn-cta-secondary:hover {
     background: white;
     color: var(--dark-purple);
     transform: translateY(-3px);
 }

 /* Responsive Design */
 @media (max-width: 992px) {
     .timeline-line {
         left: 30px;
     }

     .timeline-content {
         width: calc(100% - 80px);
         margin-left: 80px !important;
         margin-right: 0 !important;
     }

     .timeline-content.left,
     .timeline-content.right {
         margin-left: 80px !important;
     }

     .step-badge {
         left: -40px;
         transform: none;
     }
 }

 @media (max-width: 768px) {
     .hero-title {
         font-size: 2.5rem;
     }

     .hero-stats {
         grid-template-columns: repeat(2, 1fr);
     }

     .cta-buttons {
         flex-direction: column;
         align-items: center;
     }

     .btn-cta-primary,
     .btn-cta-secondary {
         width: 100%;
         max-width: 300px;
         justify-content: center;
     }
 }

 @media (max-width: 576px) {
     .hero-stats {
         grid-template-columns: 1fr;
     }

     .timeline-content {
         width: calc(100% - 60px);
         margin-left: 60px !important;
     }

     .step-badge {
         left: -12px;
         width: 40px;
         height: 40px;
         font-size: 1rem;
     }
 }

 /* Scroll animation */
 .fade-in-up {
     opacity: 0;
     transform: translateY(30px);
     transition: all 0.6s ease;
 }

 .fade-in-up.visible {
     opacity: 1;
     transform: translateY(0);
 }

 /* Fix for button positioning */
 a.btn-cta-primary {
     text-decoration: none !important;
     display: inline-block;
 }

 .hero-cta {
     position: relative;
     z-index: 10;
 }