@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
/* Global CSS Variables & Setup */
:root {
--clr-primary: #4f46e5;
--clr-primary-scrolled: #3730a3;
--clr-accent: #fbbf24;
--clr-accent-hover: #f59e0b;
--clr-white: #ffffff;
--clr-text-main: #333333;
--clr-text-light: #e5e7eb;
--clr-overlay: rgba(0, 0, 0, 0.7);
--font-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
--header-height: 8rem;
--transition-fast: 0.2s ease;
--transition-smooth: 0.3s ease-in-out;
--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 62.5%; scroll-behavior: smooth; }
body { font-size: 1.6rem; font-family: var(--font-base); background-color: var(--clr-white); color: var(--clr-text-main); overflow-x: hidden; }
body.no-scroll { overflow: hidden; }
a { text-decoration: none; color: inherit; }
ul, ol { list-style: none; }
img { max-width: 100%; height: auto; display: block; border:none; }
h1,h2,h3,h4,h5,h6{font-family:'Cambria','Times New Roman', serif;}
.btn { display: inline-flex; align-items: center; justify-content: center; padding: 1.2rem 2.4rem; border-radius: 3rem; font-weight: 600; font-size: 1.6rem; cursor: pointer; transition: background-color var(--transition-fast); border: none; }
.btn-primary { background-color: var(--clr-accent); color: var(--clr-text-main); }
.btn-primary:hover { background-color: var(--clr-accent-hover); }
.btn-secondary { background-color: var(--clr-accent); color: var(--clr-text-main); border-radius: 0.8rem; padding: 1.5rem 3rem; font-size: 1.6rem; }
.btn-secondary:hover { background-color: var(--clr-accent-hover); }

/* Layout Containers */
.container { width: 100%; padding: 0 2rem; margin: 0 auto; }
@media (min-width: 1280px) { .container { padding: 0 4%; } }
@media (min-width: 1440px) { .container { padding: 0 8%; } }

/* Header & Mobile Navigation */
.header{position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; background-color:#fff; transition: background-color var(--transition-smooth); height: var(--header-height); display: flex; align-items: center;}
.header.scrolled { background-color:#f7f7f7; box-shadow: var(--shadow-sm); }
.header-container { display: flex; justify-content: space-between; align-items: center; max-width:1402px }
.brand-logo{z-index:1; width:25rem;}
/* Animated Hamburger Menu */
.menu-toggle { display: flex; flex-direction: column; justify-content: space-around; width: 3rem; height: 3rem; background:transparent; border: none; cursor: pointer; z-index: 1001; padding: 0.4rem 0; }
.hamburger-line { width: 100%; height: 0.3rem; background-color: #222; border-radius: 1rem; transition: all 0.3s linear; position: relative; transform-origin: 1px; }

/* Morph into Cross (X) when active */
.menu-toggle.active .hamburger-line:nth-child(1) { transform: rotate(45deg); }
.menu-toggle.active .hamburger-line:nth-child(2) { opacity: 0; transform: translateX(2rem); }
.menu-toggle.active .hamburger-line:nth-child(3) { transform: rotate(-45deg); }

/* Ensure Sidebar Header has proper spacing since close button is removed */
.sidebar-header { display: block; padding-bottom: 2rem; border-bottom: 1px solid var(--clr-text-light); }

/* Make sure hamburger lines change color if sidebar is open (since background is white) */
.menu-toggle.active .hamburger-line { background-color: var(--clr-text-main); }
.mobile-overlay { position: fixed; inset: 0; background-color: var(--clr-overlay); z-index: 998; opacity: 0; visibility: hidden; transition: opacity var(--transition-smooth); }
.mobile-overlay.active { opacity: 1; visibility: visible; }
.nav-sidebar { position: fixed; top: 0; right: -100%; width: 30rem; height: 100vh; background-color: var(--clr-white); z-index: 999; padding: 2rem; transition: right var(--transition-smooth); overflow-y: auto; display: flex; flex-direction: column; gap: 2rem; }
.nav-sidebar.active { right: 0; }
.sidebar-header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 2rem; border-bottom: 1px solid var(--clr-text-light); }
.sidebar-header img{width:20rem;}

.nav-menu { display: flex; flex-direction: column; gap: 1rem; }
.nav-link { display: flex; justify-content: space-between; align-items: center; padding: 1rem 0; font-size: 1.6rem; color: var(--clr-text-main); font-weight: 500; border-bottom: 1px solid var(--clr-text-light);  font-family: "Poppins", sans-serif !important;}
.nav-link .caret { transition: transform var(--transition-fast); }
.dropdown-menu { display: none; padding-left: 2rem; flex-direction: column; gap: 0.5rem; margin-top: 0.5rem; border-left: 2px solid var(--clr-primary); }
.nav-item.active-dropdown > .dropdown-menu { display: flex; }
.nav-item.active-dropdown > .dropdown-toggle .caret { transform: rotate(180deg); }
.btn-signup { margin-top: 2rem; align-self: flex-start; }

/* Hero Section */
.hero{position: relative; width:100%; padding-top:var(--header-height); background-color:var(--clr-primary); overflow:hidden;}

/* CSS Grid Stacking: Solves container height collapse without fixed heights */
.hero-slider{display: grid; width:100%; }
.hero-slide{grid-area:1 / 1; width:100%; height:100%; opacity:0; visibility:hidden; transition:opacity 0.8s ease-in-out, visibility 0.8s; z-index: 1; }
.hero-slide.active{opacity:1; visibility:visible; z-index:2;}

/* Image styling with object-fit for responsive cropping */
.hero-slide img{width: 100%; height: auto; object-fit: cover; display: block;} /* Mobile aspect ratio */

/* Navigation Dots */
.hero-slider-dots { position: absolute; bottom: 2rem; left: 50%; transform: translateX(-50%); z-index: 10; display: flex; gap: 1rem; align-items: center; }
.hero-dot { width: 1.2rem; height: 1.2rem; border-radius: 50%; background-color: rgba(255, 255, 255, 0.5); border: none; cursor: pointer; transition: all var(--transition-fast); }
.hero-dot.active { background-color: var(--clr-white); transform: scale(1.3); }

.form-wrapper { display: flex; justify-content: center; background-color:#f7f7f7; border-radius: 1.2rem; backdrop-filter: blur(5px); padding:1rem; max-width: 40rem; min-height: 50rem; width:100%; margin:0 0 2rem;}
.form-widget-container { width: 100%;   }

/* Statistics Section */
.statistics { background-color: #f4f6f9; padding: 4rem 0; border-bottom: 1px solid #e5e7eb; }
.stats-container { display: grid; grid-template-columns: 1fr; gap: 3rem; }
.stat-item { display: flex; align-items: center; gap: 1.5rem; justify-content: flex-start; }
.stat-icon { flex-shrink: 0; width: 9.2rem; height: 6.5rem; display: flex; align-items: center; justify-content: center; }
.stat-content { display: flex; flex-direction: column; gap: 0.2rem; }
.stat-number { font-size: 2.8rem; font-weight: 800; color: #1e1b4b; line-height: 1.1; }
.stat-text { font-size: 1.3rem; color: #222; font-weight: 500; text-transform: capitalize; }

/* About Programs Section */
.about-programs { padding: 3rem 0; background-color: var(--clr-white); text-align: left; }
.about-container {display: flex; flex-direction: column; align-items: center; }
.section-title { font-size: clamp(2.8rem, 4vw, 3.6rem); font-weight: 800; color: #1e1b4b; line-height:1.4; margin-bottom:2rem; text-transform: capitalize; }
.about-content { color: #222; font-size: 1.6rem; line-height: 1.6; margin-bottom: 3rem; display: flex; flex-direction: column; gap: 1.5rem; text-align: left; }
.about-content .section-title {margin-bottom:0;}
.btn-orange { background-color: #f59e0b; color: var(--clr-white); font-weight: 600; border-radius: 0.8rem; padding: 1.4rem 3.5rem; font-size: 1.6rem; display: inline-block; transition: background-color var(--transition-fast); }
.btn-orange:hover { background-color: #d97706; color: var(--clr-white); }

/* Why Choose Section */
.why-choose { padding: 6rem 0; background-color: #f8fafc; }
.why-choose-container { display: grid; grid-template-columns: 1fr; gap: 4rem; align-items: center; }
.why-choose-image { position: relative; display: flex; justify-content: center; }
.subtitle-wrap { display: inline-flex; align-items: center; gap: 1rem; color: var(--clr-primary); font-weight: 700; text-transform: uppercase; margin-bottom: 1.5rem; letter-spacing: 0.1rem; }
.subtitle-line { width: 3rem; height: 2px; background-color: var(--clr-primary); }
.why-choose-content .section-title { font-size: clamp(2.8rem, 4vw, 3.6rem); color: #1e1b4b; margin-bottom: 1.5rem; line-height: 1.2; font-weight: 800; text-align: left; }
.section-desc {color: #222; margin-bottom: 3.5rem; line-height: 1.6; font-size: 1.8rem; }
.features-list { display: flex; flex-direction: column; gap: 2.5rem; }
.feature-item { display: flex; gap: 2rem; align-items: flex-start; }
.feature-icon { flex-shrink: 0; width: 4.5rem; height: 4.5rem; display: flex; align-items: center; justify-content: center; }
.feature-text { display: flex; flex-direction: column; gap: 0.5rem; }
.feature-title { font-size: 1.8rem; font-weight: 700; color: #1e1b4b; }
.feature-desc {color: #444; line-height: 1.6; }

/* Course Categories Section */
.course-categories { padding: 6rem 0; background-color:#0b155e; }
.text-center{text-align: center;}
.justify-center{justify-content: center; }
.text-white{color: var(--clr-white) !important; }
.bg-white{background-color: var(--clr-white) !important; }
.category-tabs-wrapper { display: flex; justify-content: center; margin: 3rem 0 4rem; }
.category-tabs { display: inline-flex; background-color: var(--clr-accent); border-radius: 4rem; overflow: hidden; padding: 0.5rem; }
.tab-btn { background: transparent; border: none; padding: 1.2rem 2.4rem; font-size: 1.6rem; font-weight: 700; color: #1e1b4b; cursor: pointer; border-radius: 3rem; transition: all var(--transition-fast); }
.tab-btn.active { background-color: var(--clr-white); }
.course-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:2rem;margin-bottom:4rem;padding-bottom:2rem;scrollbar-width:none}
.course-grid::-webkit-scrollbar{display:none}
.course-card{flex:0 0 100%;scroll-snap-align:center;background-color:var(--clr-white);border-radius:1.2rem;overflow:hidden;display:flex;flex-direction:column;text-align:center;transition:transform var(--transition-fast)}
.course-card:hover { transform: translateY(-0.5rem); box-shadow: var(--shadow-lg); }
.card-image-wrap { position: relative; width: 100%; aspect-ratio: 16/10; }
.card-image-wrap img { width: 100%; height: 100%; object-fit: cover; }
.card-icon { position: absolute; bottom: -2.5rem; right: 2rem; width: 5rem; height: 5rem; border-radius: 50%; border: 3px solid var(--clr-white); display: flex; align-items: center; justify-content: center; }
.card-icon img{width:2.4rem; height:2.4rem;}
.bg-purple { background-color: #6366f1; }
.bg-gray { background-color: #6b7280; }
.card-body { padding: 4rem 2rem 3rem; display: flex; flex-direction: column; flex-grow: 1; align-items: center; }
.card-title { font-size: 1.8rem; font-weight: 800; color: #1e1b4b; margin-bottom: 1rem; min-height: 4.5rem; display: flex; align-items: center; justify-content: center; }
.card-desc { color: #222; line-height: 1.6; margin-bottom: 2rem; flex-grow: 1; }
.card-meta { width: 100%; display: flex; flex-direction: column; gap: 0.8rem; font-size: 1.5rem; color: #1e1b4b; margin-bottom: 2.5rem; }
.card-meta strong { font-weight: 800; }
.btn-apply { background-color: var(--clr-accent); color: var(--clr-text-main); font-weight: 700; padding: 1rem 3rem; transition: background-color var(--transition-fast); }
.btn-apply:hover { background-color: var(--clr-accent-hover); }
.carousel-dots { display: flex; justify-content: center; gap: 1rem; }
.dot { width: 1.2rem; height: 1.2rem; border-radius: 50%; background-color: rgba(255, 255, 255, 0.4); border: none; cursor: pointer; transition: background-color var(--transition-fast); }
.dot.active { background-color: var(--clr-white); }

/* Approvals Section */
.approvals { background: var(--clr-primary) url('../images/approvals-bg-placeholder.jpg') no-repeat center center / cover; position: relative; padding: 6rem 0; overflow: hidden; }
/* Overlay to blend the background image perfectly with the purple theme */
.approvals::before { content: ''; position: absolute; inset: 0; background-color: rgba(79, 70, 229, 0.9); z-index: 1; }
.approvals-container { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr; gap: 4rem; align-items: center; }
.approvals-content { color: var(--clr-white); }
.approvals-title { font-size: clamp(2.8rem, 4vw, 3.6rem); font-weight: 800; text-transform: uppercase; margin-bottom: 2rem; line-height: 1.3; letter-spacing: 0.05rem; }
.approvals-text  {font-size:1.8rem; line-height: 1.6; color: rgba(255, 255, 255, 0.9); text-align: justify; }
.approvals-logos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.logo-box { background-color: var(--clr-white); padding: 1rem; border-radius: 0.4rem; display: flex; justify-content: center; align-items: center; aspect-ratio: 1; transition: transform var(--transition-fast); }
.logo-box:hover { transform: scale(1.05); }
.logo-box img { max-width: 100%; max-height: 100%; object-fit: contain; }

/* Scroll Animations */
.fade-up { opacity: 0; transform: translateY(3rem); transition: opacity 0.6s ease-out, transform 0.6s ease-out; }
.fade-up.visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: 0.2s; }

/* Recruiters Section */
.recruiters { padding: 6rem 0 8rem; background-color: var(--clr-white); overflow: hidden; }
.text-dark { color: #1e1b4b !important; }
.mx-auto { margin-left: auto; margin-right: auto; }
.recruiters .section-title { font-size: clamp(2.8rem, 4vw, 3.6rem); font-weight: 800; margin-bottom: 1.5rem; text-transform: none; }
.recruiters .section-desc {color: #222; line-height: 1.6; max-width: 95rem; margin-bottom: 5rem; }

/* Infinite Auto Logo Carousel */
.logo-carousel { position: relative; width: 100%; display: flex; overflow: hidden; padding: 1rem 0; }
/* Gradient masks for smooth fade-in/out at the edges */
.logo-carousel::before, .logo-carousel::after { content: ''; position: absolute; top: 0; width: 6rem; height: 100%; z-index: 2; pointer-events: none; }
.logo-carousel::before { left: 0; background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); }
.logo-carousel::after { right: 0; background: linear-gradient(to left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); }

/* The Track - double width to accommodate clones, sliding 50% for a perfect loop */
.logo-track { display: flex; align-items: center; gap: 4rem; width: max-content; animation: scrollLogos 35s linear infinite; }
/* Pause animation when user hovers over a logo */
.logo-track:hover { animation-play-state: paused; }

.logo-slide { flex-shrink: 0; width:15rem; height:15rem; display: flex; justify-content: center; align-items: center; transition: all var(--transition-fast); cursor: pointer; }
.logo-slide:hover { transform: scale(1.05); }
.logo-slide img {width: 100%; height: 100%; }

@keyframes scrollLogos { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

/* Testimonials Section */
.testimonials { background-color: #4338ca; padding: 6rem 0; overflow: hidden; }
.testimonials-container { display: flex; flex-direction: column; gap: 3rem; }
.testimonials-sidebar { text-align: center; }
.testimonials-title { color: var(--clr-white); font-size: clamp(2.8rem, 4vw, 3.6rem); font-weight: 800; line-height: 1.2; }
.testimonials-main { width: 100%; overflow: hidden; }

/* Testimonial Carousel Grid */
.testi-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 2rem; margin-bottom: 3rem; padding-bottom: 1rem; scrollbar-width: none; }
.testi-grid::-webkit-scrollbar { display: none; }
.testi-card { flex: 0 0 100%; scroll-snap-align: start; background-color: var(--clr-white); border-radius: 1.2rem; padding: 3rem 2rem; text-align: center; box-shadow: var(--shadow-md); display: flex; flex-direction: column; align-items: center; }
.testi-img-wrap { width: 8rem; height: 8rem; border-radius: 50%; overflow: hidden; margin-bottom: 1.5rem; background-color: #e5e7eb; }
.testi-img-wrap img { width: 100%; height: 100%; object-fit: cover; }
.testi-name { font-size: 1.8rem; font-weight: 800; color: #1e1b4b; line-height: 1.2; }
.testi-course { color: #1e1b4b; font-weight: 600; margin-bottom: 1rem; }
.testi-role { color: #4f46e5; font-size: 1.4rem; font-weight: 700; margin-bottom: 1.5rem; }
.testi-desc { font-size: 1.4rem; color: #222; line-height: 1.6; }

/* FAQ Section */
.faq { padding: 6rem 0 8rem; background-color: var(--clr-white); }
.faq .section-title { font-size: clamp(2.8rem, 4vw, 3.6rem); font-weight: 800; margin-bottom: 1.5rem; }
.faq .section-desc {color: #6b7280; margin-bottom: 4rem; }
.faq-accordion { max-width: 90rem; margin: 0 auto; }
.faq-item { border-bottom: 1px solid #f3f4f6; }

/* FAQ Question Button */
.faq-question { width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 2.5rem 0; background: transparent; border: none; font-size: 1.6rem; font-weight: 700; color: #1e1b4b; cursor: pointer; text-align: left; transition: color var(--transition-fast); }
.faq-question:hover { color: var(--clr-primary); }

/* Pure CSS Animated + and - Icon */
.faq-icon { position: relative; width: 1.4rem; height: 1.4rem; flex-shrink: 0; margin-left: 2rem; }
.faq-icon::before, .faq-icon::after { content: ''; position: absolute; background-color: var(--clr-primary); transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out; }
/* Horizontal line (Minus part) */
.faq-icon::before { top: 50%; left: 0; width: 100%; height: 2px; transform: translateY(-50%); }
/* Vertical line (Makes it a Plus) */
.faq-icon::after { top: 0; left: 50%; width: 2px; height: 100%; transform: translateX(-50%); }

/* FAQ Active State */
.faq-item.active .faq-question { color: var(--clr-primary); }
/* Rotate and hide the vertical line to form a minus sign (-) */
.faq-item.active .faq-icon::after { transform: translateX(-50%) rotate(90deg); opacity: 0; }

/* FAQ Answer Accordion */
.faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.4s cubic-bezier(0, 1, 0, 1); }
.faq-item.active .faq-answer { transition: max-height 0.4s ease-in-out; }
.faq-answer-inner { padding-bottom: 2.5rem; font-size: 1.5rem; color: #222; line-height: 1.6; padding-right: 3rem; }

/* Articles Section */
.articles { padding: 6rem 0 8rem; background-color: #f8fafc; }
.text-primary { color: var(--clr-primary); }
.bg-primary { background-color: var(--clr-primary); }
.article-grid { display: grid; grid-template-columns: 1fr; gap: 3rem; margin-bottom: 5rem; }
.article-card { background-color: var(--clr-white); border-radius: 1.2rem; overflow: hidden; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); transition: box-shadow var(--transition-fast), transform var(--transition-fast); display: flex; flex-direction: column; }
.article-card:hover { transform: translateY(-0.5rem); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); }
/* Placeholder styles specifically to match the grey box in your design */
.article-img { width: 100%; aspect-ratio: 4/3; background-color: #9ca3af; position: relative; }
.article-img img { width: 100%; height: 100%; object-fit: cover; }
.article-content { padding: 2.5rem 2rem; display: flex; flex-direction: column; flex-grow: 1; }
.article-meta { display: flex; gap: 1.5rem; font-size: 1.4rem; color: #6b7280; margin-bottom: 1.5rem; }
.meta-item { display: flex; align-items: center; gap: 0.5rem; }
.article-title { font-size: 1.8rem; font-weight: 800; color: #1e1b4b; line-height: 1.4; margin-bottom: 2rem; flex-grow: 1; }
.article-title a { transition: color var(--transition-fast); }
.article-title a:hover { color: var(--clr-primary); }
.read-more { font-size: 1.4rem; font-weight: 600; color: #6b7280; display: inline-flex; align-items: center; gap: 0.8rem; transition: color var(--transition-fast); }
.read-more:hover { color: var(--clr-primary); }
.view-more-wrap { margin-top: 1rem; }

/* Animation delay utility */
.delay-2 { transition-delay: 0.4s; }

/* CTA Section */
.cta-section { background-color: #070e41; padding: 7rem 0; overflow: hidden; }
.cta-container { display: flex; flex-direction: column; gap: 4rem; align-items: flex-start; }
.cta-content { display: flex; flex-direction: column; gap: 1.5rem; color: var(--clr-white); }
.cta-subtitle-wrap { display: flex; align-items: center; gap: 1.2rem; font-size: 1.4rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1rem; }
.cta-line { width: 3rem; height: 2px; background-color: var(--clr-accent); }
.cta-title { font-size: clamp(2.8rem, 4vw, 3.6rem); font-weight: 800; line-height: 1.2; }
.cta-desc {color: rgba(255, 255, 255, 0.8); }
.cta-actions { display: flex; flex-direction: column; gap: 1.5rem; width: 100%; }
.btn-white { background-color: var(--clr-white); color: #070e41; font-weight: 700; border-radius: 0.6rem; padding: 1.4rem 3rem; transition: background-color var(--transition-fast); }
.btn-white:hover { background-color: #f3f4f6; }
.cta-btn-glow { box-shadow: 0 0 25px rgba(251, 191, 36, 0.4); border-radius: 0.6rem; padding: 1.4rem 3rem; font-weight: 700; }

/* Footer Section */
.footer { background-color: #3b31ad; padding: 6rem 0; color: #e5e7eb; font-size: 1.6rem; }
.footer-grid { display: grid; grid-template-columns: 1fr; gap: 4rem; }
.footer-widget { display: flex; flex-direction: column; gap: 1.8rem; }
.footer-logo-wrap { background-color: var(--clr-white); padding: 1rem; border-radius: 0.8rem; display: inline-flex; width: 28rem; margin-bottom: 0.5rem; }
.footer-logo-wrap img { width: 100%; height: auto; }
.footer-desc { line-height: 1.6; }
.social-wrapper { display: flex; align-items: center; gap: 1rem; font-weight: 700; margin-top: 0.5rem; }
.social-links { display: flex; gap: 1rem; }
.social-links a { color: var(--clr-white); transition: color var(--transition-fast), transform var(--transition-fast); display: flex; align-items: center; justify-content: center; }
.social-links a:hover { color: var(--clr-accent); transform: translateY(-3px); }
.widget-title { font-size: 1.8rem; font-weight: 700; color: var(--clr-white); margin-bottom: 0.5rem; }
.mt-2 { margin-top: 1.5rem; }
.contact-list { display: flex; flex-direction: column; gap: 1.5rem; }
.contact-list li { display: flex; align-items: flex-start; gap: 1rem; line-height: 1.5; }
.contact-list li svg { flex-shrink: 0; margin-top: 0.2rem; }
.footer-links { display: flex; flex-direction: column; gap: 1.2rem; }
.footer-links a { color: #e5e7eb; transition: color var(--transition-fast); display: inline-block; }
.footer-links a:hover { color: var(--clr-accent); text-decoration: underline; }


/* Tablet (600px and up) */
@media (min-width: 600px) { 
	.stats-container { grid-template-columns: repeat(2, 1fr); gap: 4rem; } 
}

/* Tablet (768px and up) */
@media (min-width: 768px) {
	/*.hero-slide img{aspect-ratio: 1920 / 755; }*/
	.hero-slider-dots{bottom: 3rem; }
	.form-wrapper{max-width:60rem; padding:1rem 2rem; min-height:55rem;}
	.about-content {padding: 0 4rem; }
	.course-card { flex: 0 0 calc(50% - 1rem); }
	.approvals-logos { grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
	.approvals-title { margin-bottom: 3rem; }
	.logo-carousel::before, .logo-carousel::after { width: 15rem; }
	.logo-track { gap: 8rem; } 
	.testi-card { flex: 0 0 calc(50% - 1rem); }
	.faq-question { font-size: 1.7rem; padding: 3rem 0; }
	.faq-answer-inner { font-size: 1.5rem; }
	.article-grid { grid-template-columns: repeat(2, 1fr); }
	.cta-container { flex-direction: row; justify-content: space-between; align-items: center; }
	.cta-content { flex: 1; padding-right: 4rem; }
	.cta-actions { width: auto; flex-shrink: 0; min-width: 22rem; }
	.footer-grid { grid-template-columns: repeat(2, 1fr); }
}


@media (min-width: 1024px) {
	.menu-toggle, .sidebar-header, .mobile-overlay { display: none; }
	.nav-sidebar { position: static; height: auto; width: auto; background-color: transparent; flex-direction: row; align-items: center; padding: 0; overflow-y: visible; transform: none; }
	.nav-menu { flex-direction: row; /*gap: 2rem;*/ align-items: center; }
	.nav-link { padding: 0.5rem 0; color:#0f598f; border-bottom: none; font-size: 1.6rem; position: relative; }
	.nav-link::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background-color: #183985 !important; transition: width var(--transition-fast); }
	.nav-link.active, .nav-link:hover{color:var(--clr-accent);}
	.nav-link:hover::after { width: 100%; }
	.nav-link.active::after { width: 100%; }
	.has-dropdown { position: relative; }
	.dropdown-menu { position: absolute; top: 100%; left: 0; background-color: var(--clr-white); min-width: 22rem; box-shadow: var(--shadow-sm); padding: 1rem 0; border-radius: 0.4rem; border-left: none; display: flex; flex-direction: column; opacity: 0; visibility: hidden; transform: translateY(1rem); transition: all var(--transition-fast); z-index: 10; margin-top: 0; }
	.has-dropdown:hover > .dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
	.dropdown-menu .nav-link { color: var(--clr-text-main); padding: 1rem 2rem; font-size: 1.6rem; }
	.dropdown-menu .nav-link::after { display: none; }
	.dropdown-menu .nav-link:hover { background-color: var(--clr-text-light); color: var(--clr-primary); }
	/* 3-Level Dropdown Collision Detection */
	.nested-dropdown { top: 0; left: 100%; transform: translateX(1rem); }
	.has-dropdown:hover > .nested-dropdown { transform: translateX(0); }
	.nav-menu > .nav-item:nth-last-child(-n+3) .nested-dropdown { left: auto; right: 100%; transform: translateX(-1rem); }
	.nav-menu > .nav-item:nth-last-child(-n+3).has-dropdown:hover > .nested-dropdown { transform: translateX(0); }
	.dropdown-toggle .caret { margin-left: 0.5rem; }
	.btn-signup { margin-top: 0; }
	
	.stats-container { grid-template-columns: repeat(4, 1fr); gap: 2rem;  justify-content: space-between; } 
	.stat-item { justify-content: center; }

	.about-content { padding: 0 8rem; text-align:justify; }

	.why-choose-container { grid-template-columns: 1fr 1.2fr; gap: 6rem; }
	
	.course-grid { display: flex; overflow-x: auto; } 
	.course-card { flex: 0 0 calc(33.333% - 2rem); }
	.carousel-dots { display: flex; } /* Keep dots visible on desktop */

	.approvals-container { grid-template-columns: 1fr 1fr; gap: 6rem; }
	.testimonials-container { flex-direction: row; align-items: center; gap: 4rem; }
	.testimonials-sidebar { flex: 0 0 25%; text-align: left; }
	.testimonials-main { flex: 0 0 calc(75% - 4rem); overflow: hidden; }
	/* Display exactly 3 cards on desktop as requested */
	.testi-card { flex: 0 0 calc(33.333% - 1.34rem); }
	.article-grid { grid-template-columns: repeat(3, 1fr); gap: 4rem; }
	.footer-grid { grid-template-columns: 1.3fr 1fr 1fr 1.2fr; gap: 3rem; }
}

@media (min-width:1280px) {
	.about-container{display:grid; grid-template-columns:1fr 40rem; gap:4rem; min-height:70rem;}
	.form-wrapper {max-width:40rem; order:2}
	.about-content{order:1; padding:0}
	.why-choose-container { gap: 10rem; }
	.footer-grid { gap: 5rem; }
}

@media (min-width:1800px) {
	.brand-logo{width:40rem;}
	.nav-link {font-size: 1.8rem;}
	.dropdown-menu .nav-link {font-size: 1.6rem; }
	.about-content {font-size: 1.8rem;}
	.articles-container{max-width:120rem; margin: 0 auto; padding:0}
}