/* ලෝගෝ එකට ගැලපෙන අලුත් වර්ණ (Global Variables) */
:root {
    --primary-blue: #144e96; /* ලෝගෝ එකේ තියෙන නිල් පාට */
    --accent-orange: #ef6c3b; /* ලෝගෝ එකේ තියෙන තැඹිලි පාට */
    --text-dark: #333333;
    --bg-light: #f8f9fa;
    --white: #ffffff;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

body {
    background-color: var(--bg-light);
    color: var(--text-dark);
}

.container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}

/* Header සැකසුම් */
.header {
    background-color: var(--white);
    box-shadow: 0 2px 15px rgba(0,0,0,0.08);
    position: sticky;
    top: 0;
    z-index: 1000;
    padding: 10px 0;
}

.flex-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main-nav ul {
    list-style: none;
    display: flex;
    gap: 30px;
    align-items: center;
}

.main-nav a {
    text-decoration: none;
    color: var(--primary-blue); /* මෙනුව නිල් පාටින් */
    font-weight: 600;
    font-size: 15px;
    transition: all 0.3s ease;
}

.main-nav a:hover {
    color: var(--accent-orange); /* මවුස් එක ගෙනිච්චාම තැඹිලි පාට වෙනවා */
}

/* Mega Menu */
.dropdown {
    position: relative;
    padding: 10px 0;
}

.mega-menu {
    position: absolute;
    top: 100%;
    left: -100px;
    background-color: var(--white);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    padding: 25px;
    border-radius: 8px;
    display: flex;
    gap: 40px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    transform: translateY(10px);
    border-top: 4px solid var(--accent-orange); /* ලස්සන තැඹිලි ඉරක් උඩින් */
}

.dropdown:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.mega-menu h3 {
    color: var(--primary-blue);
    font-size: 15px;
    margin-bottom: 15px;
    border-bottom: 2px solid var(--accent-orange);
    padding-bottom: 5px;
    white-space: nowrap;
}

.mega-menu a {
    display: block;
    font-weight: 400;
    font-size: 14px;
    margin-bottom: 10px;
    color: #555;
}

.mega-menu a:hover {
    color: var(--accent-orange);
    padding-left: 5px;
}

/* බොත්තම් (Buttons) */
.btn {
    padding: 10px 24px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    display: inline-block;
}

.btn-primary {
    background-color: var(--accent-orange);
    color: var(--white) !important;
}

.btn-primary:hover {
    background-color: #d1562b;
    box-shadow: 0 4px 10px rgba(239, 108, 59, 0.3);
}

.btn-secondary {
    background-color: var(--primary-blue);
    color: var(--white) !important;
    margin-left: 10px;
}

.btn-secondary:hover {
    background-color: #0d386d;
}

.btn-outline {
    border: 2px solid var(--primary-blue);
    color: var(--primary-blue) !important;
    background: transparent;
}

.btn-outline:hover {
    background-color: var(--primary-blue);
    color: var(--white) !important;
}

.btn-large {
    padding: 14px 30px;
    font-size: 16px;
}

/* Hero Section (මුල් පිටුවේ ප්‍රධාන කොටස) */
.hero {
    background: linear-gradient(135deg, #f0f5fa 0%, #ffffff 100%);
    padding: 80px 0;
    min-height: 80vh;
    display: flex;
    align-items: center;
}

.hero-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 50px;
}

.hero-content {
    flex: 1;
}

.intake-alert {
    display: inline-block;
    background-color: rgba(239, 108, 59, 0.1);
    color: var(--accent-orange);
    padding: 8px 16px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 20px;
}

.hero-content h1 {
    font-size: 48px;
    color: var(--primary-blue);
    line-height: 1.2;
    margin-bottom: 20px;
    font-weight: 700;
}

.text-orange {
    color: var(--accent-orange); /* ලෝගෝ එකේ තැඹිලි පාටින් Highlight වීම */
}

.hero-content p {
    font-size: 18px;
    color: #555;
    margin-bottom: 35px;
    line-height: 1.6;
}

.hero-action-buttons {
    display: flex;
    gap: 15px;
}

.hero-image {
    flex: 1;
    display: flex;
    justify-content: flex-end;
}

/* පසුව පින්තූරයක් දාන්න තියපු හිස් කොටුව */
.placeholder-box {
    width: 100%;
    height: 400px;
    background-color: #e0e6ed;
    border-radius: 10px;
    border: 2px dashed var(--primary-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-blue);
    font-weight: 600;
}

/* Trust Section (Counters & Partners) */
.trust-section {
    background-color: var(--white);
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    position: relative;
    z-index: 10;
    margin-top: -60px; /* Hero Section එක උඩට පොඩ්ඩක් එන්න හදලා තියෙන්නේ */
    border-radius: 15px;
    padding: 40px 0;
    width: 85%;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}

/* Animated Counters */
.counters-grid {
    display: flex;
    justify-content: space-around;
    text-align: center;
    margin-bottom: 40px;
    flex-wrap: wrap;
    gap: 20px;
}

.counter-item {
    flex: 1;
    min-width: 150px;
}

.counter-item h2 {
    font-size: 45px;
    color: var(--primary-blue);
    display: inline-block;
    margin-bottom: 5px;
}

.counter-item span {
    font-size: 45px;
    color: var(--accent-orange);
    font-weight: 700;
}

.counter-item p {
    color: #666;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Partners Carousel (ලෝගෝ යන කොටස) */
.partners-carousel {
    text-align: center;
    border-top: 1px solid #eaeaea;
    padding-top: 30px;
    width: 90%;
    margin: 0 auto;
}

.partners-title {
    color: #888;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 25px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.logos-slide-container {
    overflow: hidden; /* පිටතට යන ඒවා නොපෙනී යන්න */
    white-space: nowrap;
    width: 100%;
}

.logos-slide {
    display: inline-block;
    animation: slide 25s infinite linear; /* තත්පර 25කින් රවුමක් යනවා */
}

/* ලෝගෝ වල පෙනුම (මුලින් අළු පාටයි, Hover කරාම පාට වෙනවා) */
.logos-slide img {
    height: 50px;
    margin: 0 35px;
    filter: grayscale(100%);
    opacity: 0.6;
    transition: all 0.4s ease;
    vertical-align: middle;
}

/* Partners Carousel (සාමාන්‍ය අවස්ථාවේදීත් නියම වර්ණ පෙන්වීමට) */
.logos-slide img {
    height: 50px;
    margin: 0 35px;
    filter: none; /* මෙතනින් තමයි හැමතිස්සෙම පාටින් පේන්න හදන්නේ */
    opacity: 1;
    transition: all 0.4s ease;
    vertical-align: middle;
}

/* මවුස් එක ගෙනිච්චම ලොකු වෙන Effect එක පමණක් මෙහි තබමු */
.logos-slide img:hover {
    transform: scale(1.15); /* මවුස් එක තිබ්බම පොඩ්ඩක් ලොකු වෙනවා */
    cursor: pointer;
}

/* ලෝගෝ ටික එහාට මෙහාට යන Animation එක */
@keyframes slide {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* 3 Pillars Section */
.pillars-section {
    padding: 80px 0;
    background-color: var(--bg-light); /* ළා අළු පසුබිම */
}

.section-header {
    text-align: center;
    margin-bottom: 50px;
}

.section-header h2 {
    font-size: 36px;
    color: var(--primary-blue);
    margin-bottom: 10px;
    font-weight: 700;
}

.section-header p {
    color: #666;
    font-size: 16px;
}

/* Grid Layout (Phone එකෙන් බලද්දී ඉබේම යටින් යටින් වැටෙන්න හදලා තියෙන්නේ) */
.pillars-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

/* Pillar Card Design */
.pillar-card {
    background-color: var(--white);
    padding: 40px 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border-bottom: 4px solid transparent;
    text-align: center;
}

/* Mouse එක ගෙනිච්චාම වෙනස් වෙන විදිය */
.pillar-card:hover {
    transform: translateY(-10px); /* උඩට ඉස්සෙනවා */
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
    border-bottom: 4px solid var(--accent-orange); /* තැඹිලි පාට ඉර */
}

.pillar-icon {
    font-size: 50px;
    margin-bottom: 20px;
}

.pillar-card h3 {
    color: var(--primary-blue);
    font-size: 22px;
    margin-bottom: 15px;
    font-weight: 600;
}

.pillar-card p {
    color: #555;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 20px;
}

.pillar-link {
    text-decoration: none;
    color: var(--accent-orange);
    font-weight: 600;
    font-size: 14px;
    transition: color 0.3s ease;
}

.pillar-link:hover {
    color: var(--primary-blue);
}

/* Career Path Finder Section */
.path-finder-section {
    background-color: var(--primary-blue); /* තද නිල් පසුබිම */
    background-image: radial-gradient(circle at right, #1a5ea8 0%, #144e96 100%);
    color: var(--white);
    padding: 70px 0;
    margin-top: 50px;
}

.path-finder-container {
    text-align: center;
    max-width: 800px;
}

.path-finder-content h2 {
    font-size: 36px;
    margin-bottom: 15px;
    line-height: 1.3;
}

.path-finder-content p {
    color: #d1e2f3;
    font-size: 16px;
    margin-bottom: 30px;
}

/* Form Design */
.finder-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
    max-width: 500px;
    margin: 0 auto;
}

.finder-select {
    padding: 15px;
    border-radius: 8px;
    border: none;
    font-size: 16px;
    font-family: inherit;
    outline: none;
    color: #333;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

/* Result Box Design */
.path-result {
    margin-top: 30px;
    background-color: var(--white);
    color: var(--text-dark);
    padding: 25px;
    border-radius: 10px;
    border-left: 5px solid var(--accent-orange);
    text-align: left;
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
    animation: fadeIn 0.5s ease; /* ලස්සනට මතු වෙලා එන්න */
}

.path-result h3 {
    color: var(--primary-blue);
    font-size: 20px;
    margin-bottom: 10px;
}

.path-result p {
    color: #555;
    margin-bottom: 0;
    font-size: 15px;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}
/* Google Reviews Section */
.reviews-section {
    padding: 80px 0;
    background-color: var(--white);
}

.reviews-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.review-card {
    background-color: var(--bg-light);
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.03);
    border-top: 4px solid var(--primary-blue);
    transition: transform 0.3s ease;
}

.review-card:hover {
    transform: translateY(-5px);
}

.stars {
    font-size: 18px;
    margin-bottom: 15px;
    letter-spacing: 2px;
}

.review-text {
    color: #555;
    font-style: italic;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 20px;
}

.reviewer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #e0e6ed;
    padding-top: 15px;
}

.reviewer-info h4 {
    color: var(--primary-blue);
    font-size: 16px;
    margin-bottom: 3px;
    font-weight: 600;
}

.reviewer-info span {
    color: #777;
    font-size: 13px;
}

.review-platform {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-dark);
    background-color: #e0e6ed;
    padding: 4px 10px;
    border-radius: 20px;
}
/* Knowledge Hub / Blog Section */
.knowledge-section {
    padding: 80px 0;
    background-color: var(--bg-light);
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

/* කාඩ් එකේ උස හැමතිස්සෙම සමානව තියාගන්න Flexbox පාවිච්චි කරමු */
.news-card {
    background-color: var(--white);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column; /* කාඩ් එක ඇතුළේ දේවල් යටින් යටින් වැටෙන්න */
    height: 100%;
}

.news-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

/* පින්තූරය තියෙන කොටුව (පින්තූරයක් නැති වුණොත් Placeholder එකක් විදියටත් වැඩ කරනවා) */
.news-img {
    width: 100%;
    height: 200px;
    overflow: hidden;
    background-color: #e0e6ed; /* පින්තූරයක් නැත්නම් පේන පාට */
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-blue);
    font-weight: 600;
    flex-shrink: 0; /* උස කිසිම විටෙක අඩුවෙන්න දෙන්නේ නෑ */
}

.news-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.4s ease;
}

.news-card:hover .news-img img {
    transform: scale(1.08); /* මවුස් එක ගෙනිච්චම පින්තූරය ලොකු වෙනවා */
}

/* අකුරු තියෙන කොටස */
.news-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* ඉතිරි ඉඩ ඔක්කොම පුරවා ගන්නවා */
}

.news-category {
    display: inline-block;
    background-color: rgba(239, 108, 59, 0.1);
    color: var(--accent-orange);
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 15px;
    text-transform: uppercase;
    align-self: flex-start; /* වම් පැත්තටම වෙලා තියෙන්න */
}

.news-content h3 {
    font-size: 20px;
    color: var(--primary-blue);
    margin-bottom: 12px;
    line-height: 1.4;
}

.news-content p {
    color: #666;
    font-size: 14px;
    margin-bottom: 20px;
    line-height: 1.6;
    flex-grow: 1; /* බොත්තම යටටම යවන්න මේක උදව් වෙනවා */
}

.read-more {
    color: var(--primary-blue);
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: color 0.3s ease;
    margin-top: auto; /* බොත්තම හැමතිස්සෙම කාඩ් එකේ යටින්ම තියාගන්න */
}

.read-more:hover {
    color: var(--accent-orange);
}
/* Research Section */
.research-section {
    padding: 60px 0;
    background-color: var(--white);
}

.research-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px;
}

.research-card {
    display: flex;
    align-items: center;
    background-color: var(--bg-light);
    padding: 25px;
    border-radius: 12px;
    border-left: 4px solid var(--primary-blue);
    transition: transform 0.3s ease;
}

.research-card:hover {
    transform: translateX(10px); /* මවුස් එක ගෙනිච්චම දකුණට පොඩ්ඩක් යනවා */
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.pdf-icon {
    font-size: 40px;
    margin-right: 20px;
    color: var(--accent-orange);
}

.research-info h3 {
    font-size: 16px;
    color: var(--primary-blue);
    margin-bottom: 5px;
    line-height: 1.4;
}

.research-info .author {
    font-size: 13px;
    color: #666;
    margin-bottom: 15px;
    font-weight: 600;
}

.btn-small {
    padding: 8px 16px;
    font-size: 12px;
}

/* Video Testimonials Section */
.video-testimonials-section {
    padding: 60px 0 80px 0;
    background-color: #f0f5fa;
}

.video-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.video-card {
    background-color: var(--white);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 20px rgba(0,0,0,0.05);
    transition: transform 0.3s ease;
}

.video-card:hover {
    transform: translateY(-5px);
}

.video-thumbnail {
    height: 200px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

/* Play බොත්තමේ ඩිසයින් එක */
.play-btn {
    width: 60px;
    height: 60px;
    background-color: rgba(255, 255, 255, 0.9);
    color: var(--accent-orange);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    padding-left: 4px; /* Play අයිකන් එක මැදට ගන්න */
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    transition: transform 0.3s ease;
}

.video-thumbnail:hover .play-btn {
    transform: scale(1.1); /* මවුස් එක ගෙනිච්චම ලොකු වෙනවා */
    background-color: var(--white);
}

.video-duration {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background-color: rgba(0, 0, 0, 0.7);
    color: var(--white);
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
}

.video-info {
    padding: 20px;
}

.video-info h4 {
    font-size: 16px;
    color: var(--primary-blue);
    margin-bottom: 8px;
}

.video-info p {
    font-size: 14px;
    color: #666;
}


/* Quick Inquiry Section */
.inquiry-section {
    padding: 60px 0;
    background-color: var(--white);
}

.inquiry-box {
    background: linear-gradient(135deg, #144e96 0%, #0d386d 100%);
    border-radius: 20px;
    padding: 50px;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    align-items: center;
    box-shadow: 0 20px 40px rgba(20, 78, 150, 0.2);
}

.inquiry-text {
    flex: 1;
    min-width: 300px;
    color: var(--white);
}

.inquiry-text h2 {
    font-size: 32px;
    margin-bottom: 15px;
}

.inquiry-text p {
    color: #d1e2f3;
    font-size: 16px;
    line-height: 1.6;
}

.inquiry-form-wrapper {
    flex: 1;
    min-width: 300px;
    background-color: var(--white);
    padding: 30px;
    border-radius: 12px;
}

.form-group {
    margin-bottom: 15px;
}

.form-group input, .form-group select {
    width: 100%;
    padding: 14px;
    border: 1px solid #e0e6ed;
    border-radius: 8px;
    font-size: 15px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.3s ease;
}

.form-group input:focus, .form-group select:focus {
    border-color: var(--accent-orange);
}

/* Footer Section */
.footer {
    background-color: var(--primary-blue);
    color: #d1e2f3;
    padding: 70px 0 0 0;
    margin-top: 60px;
    border-top: 5px solid var(--accent-orange); /* උඩින් තැඹිලි පාට ඉරක් */
}

.footer-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
    margin-bottom: 40px;
}

.footer-col h3 {
    color: var(--white);
    font-size: 18px;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 10px;
}

/* මාතෘකාවට යටින් තැඹිලි පාට පොඩි ඉරක් */
.footer-col h3::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 3px;
    background-color: var(--accent-orange);
}

.footer-logo {
    background-color: var(--white);
    padding: 10px;
    border-radius: 8px;
    display: inline-block;
    margin-bottom: 15px;
}

.footer-logo img {
    height: 40px;
    width: auto;
}

.footer-col p {
    font-size: 14px;
    line-height: 1.6;
}

/* Lists (Links & Contact) */
.footer-links, .footer-contact {
    list-style: none;
    padding: 0;
}

.footer-links li, .footer-contact li {
    margin-bottom: 12px;
    font-size: 14px;
}

.footer-links a {
    color: #d1e2f3;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-links a:hover {
    color: var(--accent-orange);
    padding-left: 5px; /* Hover කරද්දී ඉස්සරහට එනවා */
}

.social-links {
    margin-top: 20px;
    font-size: 14px;
}

.social-links a {
    color: var(--white);
    text-decoration: none;
    font-weight: 600;
}

.social-links a:hover {
    color: var(--accent-orange);
}

.footer-map iframe {
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

/* Bottom Copyright Bar */
.footer-bottom {
    background-color: #0d386d; /* තවත් තද නිල් පාටක් */
    text-align: center;
    padding: 20px;
    font-size: 13px;
    color: #a8c6e6;
}

/* =========================================
   Courses Section (Dynamic)
   ========================================= */
.course-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}
.course-card {
    background: var(--white);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    transition: transform 0.3s;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.course-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}
.course-img {
    height: 200px;
    overflow: hidden;
}
.course-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.course-card:hover .course-img img {
    transform: scale(1.08);
}
.course-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.course-category {
    display: inline-block;
    background-color: rgba(13, 56, 109, 0.1);
    color: var(--primary-blue);
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 15px;
    align-self: flex-start;
}
.course-content h3 {
    font-size: 20px;
    color: var(--primary-blue);
    margin-bottom: 10px;
    line-height: 1.4;
}
.course-meta {
    margin-top: 10px;
    margin-bottom: 15px;
    font-size: 14px;
    color: #555;
    font-weight: 600;
    flex-grow: 1;
}
.btn-enroll {
    color: var(--accent-orange);
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    transition: color 0.3s ease;
    margin-top: auto;
}
.btn-enroll:hover {
    color: var(--primary-blue);
}
/* =========================================
   Course Details Page - Premium Layout
   ========================================= */
.course-banner {
    background: linear-gradient(135deg, #0d386d 0%, #1a529a 100%);
    color: white;
    padding: 60px 0;
    margin-top: 80px; /* Header එක නිසා */
}
.breadcrumb { font-size: 14px; margin-bottom: 15px; color: #ccc; }
.breadcrumb a { color: var(--accent-orange); text-decoration: none; }
.course-banner h1 { font-size: 36px; margin: 0 0 10px 0; }
.awarding-body { font-size: 18px; color: #e0e0e0; margin: 0; }
.awarding-body strong { color: #fff; }

/* Two Column Layout */
.course-layout-section { padding: 60px 0; background-color: #f9fbfd; }
.course-layout { display: flex; gap: 40px; align-items: flex-start; }
.course-main-content { flex: 7; /* වම් පැත්ත 70% */ }
.course-sidebar { flex: 3; /* දකුණු පැත්ත 30% */ position: sticky; top: 100px; }

/* Tabs Navigation */
.tabs { display: flex; border-bottom: 2px solid #ddd; margin-bottom: 30px; overflow-x: auto; }
.tab-btn {
    background: none; border: none; padding: 15px 25px; font-size: 16px; font-weight: 600;
    color: #666; cursor: pointer; transition: 0.3s; white-space: nowrap;
}
.tab-btn:hover { color: var(--primary-blue); }
.tab-btn.active { color: var(--primary-blue); border-bottom: 3px solid var(--accent-orange); margin-bottom: -2px; }

/* Tab Content */
.tab-content { display: none; background: white; padding: 30px; border-radius: 8px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); animation: fadeEffect 0.5s; }
@keyframes fadeEffect { from {opacity: 0;} to {opacity: 1;} }
.tab-content h3 { color: var(--primary-blue); margin-top: 0; border-bottom: 1px solid #eee; padding-bottom: 10px; margin-bottom: 20px;}

/* Rich Text Area Formatting (CKEditor වලින් එන දේවල් ලස්සන කරන්න) */
.rich-text-area p { line-height: 1.8; color: #444; margin-bottom: 15px; }
.rich-text-area ul { margin-left: 20px; color: #444; line-height: 1.8; margin-bottom: 15px; }
.rich-text-area li { margin-bottom: 8px; }

/* Sticky Sidebar Card */
.sticky-card {
    background: white; padding: 30px; border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08); border-top: 5px solid var(--accent-orange);
}
.sticky-card h3 { margin-top: 0; color: var(--primary-blue); margin-bottom: 20px; }
.quick-facts { list-style: none; padding: 0; margin: 0; }
.quick-facts li { margin-bottom: 15px; font-size: 15px; border-bottom: 1px solid #f0f0f0; padding-bottom: 10px; }

/* Mobile Responsive */
@media (max-width: 768px) {
    .course-layout { flex-direction: column; }
    .course-sidebar { position: static; }
}

/* World-Class Premium Image Styling - Added for Home Page */

/* 1. Courses සහ Articles පින්තූර එකම උසකට ගැනීම */
.course-img, .news-img {
    width: 100%;
    height: 240px;
    overflow: hidden;
    display: block;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.course-img img, .news-img img {
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Mouse එක ගෙනියද්දි (Hover) පින්තූරය ලස්සනට Zoom වීම */
.course-card:hover .course-img img, 
.news-card:hover .news-img img {
    transform: scale(1.08);
}

/* 2. ගුරුවරුන්ගේ පින්තූර (Lecturers) ඉතාමත් පැහැදිලිව රවුමට පෙන්වීම */
.lecturers-section .review-card img {
    width: 130px !important;
    height: 130px !important;
    object-fit: cover !important;
    object-position: top center !important;
    border-radius: 50% !important;
    border: 4px solid #fff !important;
    box-shadow: 0 10px 25px rgba(239, 108, 59, 0.25) !important;
    margin: 0 auto 20px auto !important;
    display: block;
    transition: transform 0.3s ease;
}

.lecturers-section .review-card:hover img {
    transform: translateY(-5px);
}

/* ලිපි හෝ Courses 1ක්/2ක් පමණක් ඇති විට කාඩ්පත් සම්පූර්ණ තිරයටම ඇදීම (Stretching) නැවැත්වීම */
.news-grid, .course-grid, .pillars-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 30px;
}