html {
    scroll-behavior: smooth;
}

/* Ensures that this style has higher specificity than Bootstrap's default styles */
body .navbar.fixed-top.navbar-expand-lg.navbar-light {
    transition: background-color 0.3s; /* Smooth transition for background color */
    background-color: transparent !important; /* Start with a transparent background */
}

body .navbar.fixed-top.navbar-expand-lg.navbar-light.scrolled {
    background-color: #ffffff !important; /* Change to white when scrolled */
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); /* Optional: add a shadow for depth */
}


.hero-section {
    position: relative;
    background: url('../img/hero.png') center center no-repeat;
    background-size: cover;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.6)); /* Dark gradient */

}

.hero-content {
    position: relative; /* Ensure the text is above the overlay */
    z-index: 1;
}


.hero-title {
    /* You can adjust margins, font-size, and padding to fit the title within the banner */
    margin-bottom: 1em; /* Space between title and button */
}

.about-me-section, .courses-section, .contact-section, .footer-section {
    padding: 40px 0;
}

.card {
    margin-bottom: 20px;
}

.navbar {
    transition: background-color 0.3s; /* Smooth transition for background color */
    background-color: transparent !important; /* Start with a transparent background */
}

.navbar-top {
    background-color: transparent !important; /* Transparent background */
    color: white; /* White text */
}

.navbar-brand {
    display: flex;
    align-items: center;
}

/* Ensure all text elements in the navbar also become white */
.navbar-top .navbar-brand, .navbar-top .nav-link {
    color: white !important; /* White text */
}

/* When the user scrolls down, the navbar background becomes white, so the text should be darker */
.navbar.scrolled {
    background-color: #ffffff !important; /* White background */
    color: #333; /* Darker text color for contrast */
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); /* Optional: add a shadow for depth */
}

/* Make sure the text color changes for brand and link elements as well */
.navbar.scrolled .navbar-brand, .navbar.scrolled .nav-link {
    color: #264b7e !important; /* Darker text color for contrast */
}

.nav-link {
    padding: 0.2em 1em !important; /* Add some padding around the text */
}

.dropdown-menu {
    background-color: #ededed;
}

.dropdown-item {
    color: #264b7e;
    padding: 0.5em 1em !important;
}

.hero-content h1, .hero-content h2 {
    margin-bottom: 0.5em; /* Adjust as needed */
}

#typing-effect {
    display: inline-block;
    border-right: 2px solid white; /* Simulates the text cursor */
    padding-right: 5px;
    /* Add more styling here if needed */
}

.hero-cta {
    font-size: 1.2em; /* Larger font size */
    padding: 10px 20px; /* Larger button */
    background-color: #007bff; /* Primary color */
    border: none;
    transition: background-color 0.3s, transform 0.3s; /* Smooth transition for hover effect */
}

.hero-cta:hover, .hero-cta:focus {
    background-color: #0056b3; /* Darker color on hover */
    transform: scale(1.05); /* Slightly larger on hover */
    text-decoration: none; /* Removes underline text on hover */
}

.about-me-section {
    padding: 60px 0;
    background-color: #eeeeee; /* Light background color */
}

.about-me-section h2 {
    margin-bottom: 20px;
    font-size: 2.5rem; /* Larger font size for the heading */
}

.about-me-section p {
    margin-bottom: 1.5rem; /* Spacing between paragraphs */
}

.about-me-section .col-lg-6 {
    text-align: center; /* Centers all content in the column */
}

.about-me-section img {
    max-width: 40%; /* Ensures the image is responsive */
    border-radius: 50%; /* Creates a circular mask */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* Optional: adds a subtle shadow for depth */
    display: inline-block; /* Aligns the image properly inside text-align center */
}

.social-icons {
    margin-top: 20px;
}

.social-icons a {
    margin-right: 10px;
    color: #007bff; /* or your preferred icon color */
    font-size: 1.5em; /* Adjust size as needed */
}

.social-icons a:hover {
    color: #0056b3; /* Darker shade or different color on hover */
}

.courses-section {
    padding: 60px 0;
    background-color: #0a305b; /* Dark background color */
}

.course-heading {
    text-align: center; /* Center aligns the text */
    color: white; /* Sets the text color, change as needed */
    margin-bottom: 30px; /* Adds space below the heading */
    padding-bottom: 10px; /* Adds padding to the bottom */
    font-size: 2.5rem; /* Sets the font size */
    line-height: 1.2; /* Adjusts line spacing */
    font-weight: 600; /* Makes the font bold */
}

.card {
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2); /* Adding a subtle shadow for depth */
    transition: 0.3s; /* Smooth transition for hover effects */
    border-radius: 10px; /* Slightly rounded corners for a modern look */
    margin-bottom: 20px; /* Space between cards */
}

.card:hover {
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.3); /* More pronounced shadow on hover */
}

.card-img-top {
    width: 100%; /* Ensures the image covers the card width */
    height: auto; /* Keeps the image aspect ratio */
    border-top-left-radius: 10px; /* Rounded corners at the top */
    border-top-right-radius: 10px;
}

.card-body {
    padding: 20px; /* Spacing inside the card */
}

.card-title {
    color: #333; /* Title color */
    margin-bottom: 15px; /* Space below the title */
}

.card-text {
    color: #555; /* Text color */
    font-size: 14px; /* Adjust as needed */
    margin-bottom: 15px; /* Space below the text */
}

.btn-primary {
    background-color: #007bff; /* Primary button color */
    border-color: #007bff;
    color: white;
}

.btn-primary:hover {
    background-color: #0056b3; /* Darker shade on hover */
    border-color: #0056b3;
}

.contact-section {
    background-color: #eeeeee; /* Light background color */
    padding: 50px 0; /* Adjust padding as needed */
}

.contact-section h2 {
    font-size: 28px; /* Adjust font size as needed */
    margin-bottom: 20px;
}

.contact-section p {
    font-size: 16px; /* Adjust font size as needed */
    color: #555; /* Adjust text color as needed */
}

.text-column {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Vertically center the content */
    text-align: center; /* Center text */
}

.text-column-dark {
    color: white;
}

form {
    width: 100%; /* Adjust based on your preference */
    max-width: 500px; /* Maximum width of the form */
    padding: 20px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    border-radius: 8px;
}

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

label {
    display: block;
    margin-bottom: 5px;
}

input[type="text"],
input[type="email"],
textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

button[type="submit"] {
    width: 100%;
    padding: 10px;
    border: none;
    background-color: #007bff;
    color: white;
    border-radius: 4px;
    cursor: pointer;
}

button[type="submit"]:hover {
    background-color: #0056b3;
}


.footer-section {
    background-color: #0a305b; /* Dark background color */
    color: white;
    padding: 20px 0;
}

.footer-section a {
    color: white;
    text-decoration: none;
}

.footer-section a:hover {
    text-decoration: underline;
}

.footer-section .col-md-3 {
    margin-bottom: 20px;
}

.footer-section h4 {
    margin-bottom: 15px;
    font-size: 1.2rem;
}

.footer-section img {
    margin-bottom: 10px;
}

.footer-section ul {
    list-style: none;
    padding: 0;
}

.footer-section ul li {
    margin-bottom: 10px;
}

.footer-bottom {
    color: #2aa9e1;
    font-size: 12px;
}

.footer-bottom-name {
    color: #2aa9e1 !important;
    font-size: 12px;
}

/* Course Banner */
.course-c-hero {
    background: url('../img/c_card.png') no-repeat center center/cover;
}

.course-cpp-hero {
    background: url('../img/cplus_card.png') no-repeat center center/cover;
}

.course-python-hero {
    background: url('../img/python_card.png') no-repeat center center/cover;
}

.course-java-hero {
    background: url('../img/java_card.png') no-repeat center center/cover;
}

.course-webdev-hero {
    background: url('../img/web_card.png') no-repeat center center/cover;
}

.course-nodejs-hero {
    background: url('../img/nodejs_card.png') no-repeat center center/cover;
}


/* Course HTML */
.course-hero {
    position: relative;
    padding: 60px 0;
    text-align: center;
    color: white;
}

.course-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.8));
    
}

.course-title {
    margin-top: 50px;
}

.course-title, .course-description {
    position: relative;
    z-index: 1;
}

.course-table .table {
    background-color: #f8f9fa;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.course-table th {
    background-color: #0a305b;
    color: #fff;
}

.course-table td {
    color: #333;
}

.course-details {
    background-color: #f2f2f2;
    padding: 30px 0;
    text-align: center;
}

.course-details-title {
    font-size: 2rem;
    margin-bottom: 15px;
}

.course-short-description {
    font-size: 1.1rem;
    color: #333;
    margin-bottom: 20px;
    text-align: justify !important;
}

.course-info-list {
    list-style: none;
    padding: 0;
    text-align: left;
}

.course-info-list li {
    margin-bottom: 10px;
    font-size: 1.1rem;
}

.course-registration {
    background-color: #0a305b;
    padding: 30px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    margin-top: 30px;
    text-align: center; /* Aligns text to the center */
}

.course-registration form {
    display: inline-block; /* Allows the form to be centered */
    text-align: left; /* Aligns form content to the left */
    margin-top: 20px;
    background-color: white;
}

.form-group {
    margin-bottom: 15px; /* Add space between form elements */
}


@media (max-width: 767px) {
    .courses-section .col-md-6 {
        margin-bottom: 20px;
    }
}
