.text-right {
    float: right;
}
div#carouselExampleControls a {
    cursor: pointer;
}
.right0 {
    right: 0;
    left: unset;
}
.carousel-item.west {
    height: 700px;
	position: relative;
}
.carousel-item.west:before {
    position: absolute;
    content: '';
    background: #00000094;
    width: 100%;
    height: 700px;
}
.carousel-caption {
    bottom: 25%;
}
input.btn {
    width: 100%;
}
.carousel-indicators.spons {
    bottom: -52px;
}
.carousel.slide.sponsor {
    overflow: unset;
}
.carousel-indicators.spons [data-bs-target] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
	opacity: 1;
	background-color: #fff;
}
.carousel-indicators.spons .active {
    opacity: 1;
    background-color: #de302f;
}
.pagination-lg .page-link {
    padding: 0px 20px;
}
textarea.form-control {
    height: auto;
}
.width50-right {
    width: 570px;
    max-width: 560px;
	
}
#banner .owl-pagination {
    display: none;
}
.col-md-6.vc_col.section-padding {
    position: relative;
}



/* General Styles for Navigation */
nav {
  padding: 10px;
  background-color:transparent; /* Light background color */
  border-bottom: none /* Subtle border for separation */
}

nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}

nav .menu-item {
  margin-right: 20px;
  position: relative; /* To position the dropdown */
}

/* Styling for the menu link */
.menu-link {
  text-decoration: none;
  color: #f80707;
  font-weight: bold;
  transition: color 0.3s ease;
}

.menu-link:hover {
  color: #0056b3; /* Color change on hover */
}

/* Dropdown menu styling */
.dropdown-menu {
  display: none; /* Hide dropdown by default */
  position: absolute;
  top: 100%; /* Position it below the menu item */
  left: 0;
  background-color:rgba(85, 82, 241, 0.7); 
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5);
  border: .5px solid rgba(66, 33, 252, 0.9);
  min-width: 200px;
  padding: 10px;
  border-radius: 4px;
  z-index: 9999;
}

.dropdown-menu li {
  padding: 8px 10px;
 
}

.dropdown-menu li:hover {
  background-color:  rgba(12, 12, 12, 0.9); /* Highlight on hover */
}

.menu-item:hover .dropdown-menu {
  display: block; /* Show dropdown on hover */
}

/* Optional: Style the contact details */
.dropdown-menu span {
  font-size: .8em !important;
  color: #f5f0f0;
  display: block;
  padding: 5px 0;
  padding-left: 8px;
}
.fas.fa-address-book {
  margin-right: 8px; /* Adjust the space between the icon and the text */
}
/* Logo styles */
.logo {
  width: 18vh; /* Default width */
  height: auto; /* Maintain aspect ratio */
  transition: width 0.3s ease, transform 0.3s ease; /* Smooth transition */
  position: absolute;
  top:1%;
  left:1%;
  
  z-index: 999; /* Positioned within its container */
}

/* Reset default styling */


/* Adjustments for navbar items */
/* Navbar styling */
.navbar {
  background-color: transparent;
  display: flex;
  justify-content: space-between; /* Keep logo on the left and menu on the right */
  align-items: center; /* Centers items vertically */
  z-index: 3;
  padding: 10px 20px; /* Adds padding around the navbar */
  position: relative;
  flex-wrap: wrap; /* Allows items to wrap on smaller screens */
}

/* Basic styles for navigation */


/* Basic styles for navigation */

/* Basic styles for navigation */



.menu-link {
  color: rgb(253, 250, 247) !important;
  text-decoration: none;
  font-size: 18px;
  text-shadow: 2px 2px 4px rgba(32, 30, 30, 0.4); /* Optional: text shadow for better contrast */
  font-family:'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
}

.menu-link:hover {
  color: #f1c40f !important;
  opacity: 1 !important; /* Text fades in when the 'active' class is added */
  
}
.menu-link:hover::after {
 
 zoom{ animation-name: zoomEffect }; /* Text fades in when the 'active' class is added */
  
}

/* Hamburger icon for mobile */
.menu-toggle {
  display:block;
  font-size: 24px;
  color: white;
  cursor: pointer;

}

/* On larger screens (>= 768px), show the menu in row */
@media (min-width: 768px) {
  
  .menu-toggle {
     
      visibility: hidden;
      position: relative;
      left: 1400px;
      }
      
      
  }

/* On smaller screens (<= 767px) */
@media (max-width: 767px) {
  /* Hide menu items initially */
  .menu {
      display: none;
      flex-direction: column;
      width: 40%;
      text-align: center;
      background-color: rgba(17, 7, 110, .9);
      position: absolute;
      top: 51px; /* Below the navbar */
      left: 60%;
      padding: 10px 0;
      z-index: 3;
  }

  /* Menu items should be stacked vertically with some space */
  .menu-item {
      margin: 10px 0;
  }

  /* Show the menu when it has the 'active' class */
  .menu.active {
      display: flex;
  }

  /* Show the hamburger icon */
  .menu-toggle {
      display: block;
      position: relative;
      left: 80%;
  }
  .menu-link {
  color: rgb(251, 249, 252) !important;
  text-decoration:solid;
  font-size: 12px;
  text-shadow: 2px 2px 4px rgba(32, 30, 30, 0.5); /* Optional: text shadow for better contrast */
  font-family:'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
}
.flash {
  position: fixed;
  top: -300px; /* start offscreen for slide-down */
  left: 50%;
  transform: translateX(-50%);
  min-width: 380px;
  max-width: 320px;
  padding: 20px 40px;
  border-radius: 10px;
  color: white;
  line-height: 1.5;
  opacity: 0;
  transition:
    top 0.45s ease,
    opacity 0.45s ease;
  z-index: 9999;
  cursor: grab;      /* draggable */
}
  
  
}

@media (max-width: 480px) {
  #flash {
    padding: 18px;
    border-radius: 10px;
  }

  #flash-text {
    font-size: 0.95rem;
  }

  .flash-button {
    width: 100%;
    text-align: center;
  }
}

  /* Styling for each menu item */
  .menu-item {
      margin: 10px 0;
  }

  /* Make the menu visible when active */
  .menu.active {
      display: flex;
  }

  /* Show the hamburger icon */
  .menu-toggle {
      display: block;
    
  }



/* Dropdown menu styling */
.dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: rgba(10, 1, 1, 0.5);
  z-index: 999;
  width: 200px; /* Adjust to fit content */
}

/* Show dropdown when menu item is active */
.menu-item.active .dropdown {
  display: block;
}

/* Dropdown item styling */
.dropdown .dropdown-item {
  padding: 5px !important;
  background-color: rgba(85, 82, 241, 0.7); /* Background color for the box */
  color:rgba(8, 8, 8, 0.6) !important;
  text-decoration: none !important;
  white-space: normal !important; /* Fix white-space issue */
  
  display: flex; /* Enables justify-content on the item */
  justify-content: centre !important; /* Justifies the content (center it horizontally) */
  align-items: centre !important; /* Center the content vertically (optional) */
  justify-content: space-between!important; /* Justifies the content (left and right) */
  width: 100%; /* Make sure the item takes up full width */
  border: .5px solid rgba(66, 33, 252, 0.9); /* Adds a border around the item */
  
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5); /* Adds a subtle shadow around the item*/
 
}
.dropdown .dropdown-link {
    color: #fcf5f5 !important;
    
    padding: 10px 10px; 
    font-size: .8em !important;
    
    text-decoration: none; 
  }
 
  

/* Hover effect for dropdown items */
.dropdown .dropdown-item:hover {
  background-color:  rgba(20, 17, 17, 0.9);
  
  
}



/* Media Queries for Responsiveness */ /* Handle dropdown toggle on mobile */
@media (max-width: 768px) {
 
/* Adjust logo size for mobile screens */
  .logo1 {
    width: 1px;
    margin: 10px 0;
  }
  .dropdown {
    display:none;
    
  }
}

/* For very small mobile screens (up to 480px) */
@media (max-width:767px) {
  

  .logo1 {
    width: auto;
    margin: auto;
  }
  .dropdown {
    visibility:collapse ;
    
  }
  
  .dropdown-menu{
  visibility:collapse ;
}
  
  
}

/* Default logo size */

/* Sidebar Button */
.sidebar-toggle-btn {
  font-size: 24px;
  background-color:transparent;
  color: rgb(252, 246, 246);
  border: none;
  padding: 10px;
  cursor: pointer;
  position:absolute;
  top: 25px;
  right: 60px;
  
}

.sidebar-toggle-btn i {
  font-size: 30px;
}


/* Popup Sidebar Styles (Positioned Under the Button) */
.popup-sidebar {
  width: 25%;  /* Full width, or adjust as needed */
  height: auto;
  position:absolute;
  top: 60px;  /* Place the sidebar directly under the button */
  right: 20px;  /* Align with the button */
  background-color: rgba(0, 0, 0, 0.2); /* Transparent black background */
  display: none; /* Initially hidden */
  z-index: 3;
  padding: 20px;
  border-radius: 8px;  /* Optional: Rounded corners for the sidebar */
}

/* Open Sidebar */
.popup-sidebar.open {
  display: block; /* Display it when the 'open' class is added */
}

/* Popup Content Styles */
.popup-content {
  color: white;
  text-align: center;
}

.popup-content h2 {
  margin-bottom: 20px;
}

.popup-content p {
  margin-bottom: 20px;
}

/* Close Button */
.close-btn {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 36px;
  color: white;
  cursor: pointer;
  z-index: 1;
}

.close-btn:hover {
  color: #ddd;
}

/* Contact Form */
.contact-form label {
  display: block;
  margin: 10px 0 5px;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 10px;
  border: none;
  border-radius: 4px;
}
.contact-form button {
  background-color: #4CAF50;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}
.contact-form button:hover {
  background-color: #45a049;
}
/* Dropdown Button */
.dropdown-btn {
  background-color: #4CAF50;
  color: white;
  padding: 10px 20px;
  font-size: 16px;
  border: none;
  cursor: pointer;
  position: relative; /* Needed for positioning the dropdown menu */
}
/* Dropdown Menu */
.dropdown-content {
  display: none; /* Initially hidden */
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px; /* Adjust width of the dropdown */
  box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2);
  z-index: 1; /* Makes sure the dropdown appears above other elements */
}
/* Dropdown links */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}
/* Hover effect for links */
.dropdown-content a:hover {
  background-color: #ddd;
}
/* Show the dropdown menu when the button is clicked */
.dropdown-content.show {
  display: block;
}
.icon {
  color: rgb(248, 248, 252);
}
.icon:hover {
  color: green;
}
/* Base Button Styles */
.about-us-btn {
  background: linear-gradient(135deg, #73239b, #4e1f99);
  color: #ebe9ee;
  font-weight: 600;
  text-decoration: none;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  padding: 14px 28px;
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(182, 52, 247, 0.25);

  transition: 
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background 0.3s ease;
}

/* Icon Animation */
.btn-icon {
  font-size: 1.2em;
  transition: transform 0.25s ease;
}

/* Hover (desktop only) */
@media (hover: hover) {
  .about-us-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.25);
  }

  .about-us-btn:hover .btn-icon {
    transform: translateX(6px);
  }
}

/* Active (touch feedback) */
.about-us-btn:active {
  transform: scale(0.97);
}

/* Focus (accessibility) */
.about-us-btn:focus-visible {
  outline: 3px solid rgba(182, 52, 247, 0.6);
  outline-offset: 3px;
}

/* Button Container */
.button-container {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 20vh;
  padding: 16px;
}

/* 📱 Mobile (≤ 480px) */
@media (max-width: 480px) {
  .about-us-btn {
    width: 100%;
    max-width: 320px;
    font-size: 15px;
    padding: 14px 20px;
  }
}

/* 📱 Tablet (481px – 768px) */
@media (min-width: 481px) and (max-width: 768px) {
  .about-us-btn {
    font-size: 16px;
    padding: 15px 26px;
  }
}

/* 💻 Desktop (≥ 769px) */
@media (min-width: 769px) {
  .about-us-btn {
    font-size: 17px;
    padding: 16px 32px;
  }
}


@media (max-width: 480px) {
  .sidebar-toggle-btn {
    width: 5px; /* Smaller logo size on small screens */
    margin:5px, 0; /* Add space around the logo */
  }

}
/* Responsive design */
@media (max-width: 768px) {
  .content-container {
   
      flex-direction: column; /* Stack text and image vertically */
      align-items: center; /* Center content horizontally */
  }
  .content-container .content-image {
      margin-left: 0; /* Remove left margin when stacking vertically */
      margin-top: 15px; /* Adds space between image and text when stacked */
  }
  .content-container .content-image img {
      width: 100%; /* Make image responsive */
      max-width: 300px; /* Limit max width of the image */
  }
}

@media (max-width: 480px) {
  .content-container .content-text {
      font-size: 16px; /* Adjust font size for small screens */
  }
}


.grade-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;                   /* space between boxes */
  margin-top: 20px;
}

.grade-box {
  width: 80px;
  height: 80px;
  border: 2px solid orange;
  border-radius: 6px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 26px;
  font-weight: bold;
  color: orange;
  background: white;
  transition: 0.3s ease;
}

/* Hover Effects */
.grade-box:hover {
  background: orange;
  color: white;
  transform: translateY(-4px) scale(1.05);
  box-shadow: 0 6px 18px rgba(255, 165, 0, 0.4);
}
.orange-strip {
  background: orange;
  color: white;
  padding: 2px 2%;
  display: inline-block;     /* keeps the strip tight */
  border-radius: 4px;        /* optional soft corners */
  .font-weight: bold;
}
.orange-margin
{margin-top: 150px;}
.german-flag {
  width: 150px;
  height: 90px;
  background: linear-gradient(
      to bottom,
      #000 33.33%,   /* Black */
      #DD0000 33.33% 66.66%,  /* Red */
      #FFCE00 66.66%   /* Gold */
  );
  border: 2px solid #000;
  border-radius: 4px;
}


.feature-list:hover i {
  color: #cd0ce7; /* Darker shade on hover */
  transform: scale(1.2);
}

.feature-list:hover i {
  color: #eb8c10; /* Darker shade on hover */
  transform: scale(1.2);
}

.justify {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  max-width: 99%;
}
.fas.fa-microchip {
  font-size: 2rem;
}


@media (min-width: 768px) {
  .fas.fa-microchip {
    font-size: 2rem;
  }
}

@media (min-width: 1200px) {
  .fas.fa-microchip {
    font-size: 3rem;
  }
}

/* Fixed bottom bar */
/* Fixed bottom bar */
.fixed-bottom-bar {
  position: fixed;
  bottom: -1%;
  left: 0;
  width: 100%;
  height:auto;
  /background: #5a64f0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

/* Ticker container */
.js-ticker-container {
  width: 100%;
  height: 35px;
  overflow: hidden;
  position: relative;
  background: #5a64f0;
  padding: 3px 6px;
  color: white;
  font-weight: 600;
}

/* Moving text */
.js-ticker {
  position: absolute;
  white-space: nowrap;
  left: 100%;
}
@media (max-width: 768px) {
  .fixed-bottom-bar { height: 50px; }
  .js-ticker-container { height: 30px; padding: 4px 8px; }
  .js-ticker { font-size: 0.9rem; }
}

@media (max-width: 480px) {
  .fixed-bottom-bar { height: 45px; }
  .js-ticker-container { height: 28px; padding: 3px 6px; }
  .js-ticker { font-size: 0.8rem; }
}



/* ================= BASE ================= */

.countdown-tab {
    padding: 6px 0 !important;
    background: linear-gradient(135deg, #ff5858, #f09819);
    border-radius: 10px;
    color: #fff;
}


.counter-sec {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 30px;
}

/* Sections */
.countdown-left,
.countdown-message,
.countdown-btn {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    min-height: 260px;
}

/* Text */
.countdown-left img {
    max-width: 90px;
    margin-bottom: 15px;
}

.countdown-left h4 { font-size: 1.6rem; }
.countdown-left p  { font-size: 1rem; }

.countdown-message h3 {
    font-size: 2.1rem;
    font-weight: 700;
}

.countdown-message p {
    font-size: 1.1rem;
}

/* Button */
.countdown-btn .btn {
    padding: 16px 38px;
    font-size: 1.2rem;
    font-weight: 700;
    border-radius: 50px;
    white-space: nowrap;
}

/* Force white text */
.countdown-tab * {
    color: #fff;
}

/* ================= XXL DESKTOP ================= */
@media (min-width: 1400px) {
    .countdown-tab {
        padding: 24px 160px;
    }

    .countdown-message h3 {
        font-size: 2.4rem;
    }
}

/* ================= LARGE DESKTOP ================= */
@media (max-width: 1399px) {
    .countdown-tab {
        padding: 20px 120px;
    }
}

/* ================= LAPTOP ================= */
@media (max-width: 1199px) {
    .countdown-tab {
        padding: 18px 70px;
    }

    .countdown-message h3 {
        font-size: 1.9rem;
    }

    .countdown-btn .btn {
        font-size: 1.1rem;
        padding: 14px 32px;
    }
}

/* ================= TABLET ================= */
@media (max-width: 991px) {

    .countdown-tab {
        padding: 25px;
    }

    .counter-sec {
        flex-direction: column;
    }

    .countdown-left,
    .countdown-message,
    .countdown-btn {
        min-height: auto;
        padding: 15px 10px;
    }

    .countdown-left {
        flex-direction: row;
        gap: 15px;
    }

    .countdown-left img {
        max-width: 70px;
        margin-bottom: 0;
    }

    .countdown-message h3 {
        font-size: 1.7rem;
    }
}

/* ================= MOBILE ================= */
@media (max-width: 767px) {

    .countdown-left,
    .countdown-message {
        display: none;
    }

    .countdown-btn {
        width: 100%;
    }

    .countdown-btn .btn {
        width: 100%;
        font-size: 1rem;
        padding: 14px;
    }
}

/* ================= SMALL MOBILE ================= */
@media (max-width: 480px) {
    .countdown-btn .btn {
        font-size: 0.95rem;
    }
}

html {
  scroll-behavior: smooth;
}

.grade-section {
  max-width: 900px;
  margin: 60px auto;
  padding: 30px;
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.grade-section h3 {
  font-size: 26px;
  color: #004aad;
  margin-bottom: 10px;
}

.grade-section p {
  color: #555;
  margin-bottom: 15px;
}

.grade-section ul {
  margin-bottom: 20px;
}

.grade-section li {
  margin-bottom: 8px;
  margin-left: 18px;
  list-style: disc;
}

.cta-btn {
  display: inline-block;
  padding: 12px 22px;
  background: #004aad;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  font-weight: 600;
  transition: background 0.3s;
}

.cta-btn,
.cta-btn:hover {
  /* delete these rules */
}
.popular-courses {
  max-width: 1000px;
  margin: auto;
}

.section-title {
  text-align: center;
  margin-bottom: 20px;
}

.pc-item {
  border: 1px solid #ddd;
  margin-bottom: 10px;
  border-radius: 6px;
  overflow: hidden;
}

.pc-title {
  width: 100%;
  padding: 15px;
  background: #f4f6f8;
  border: none;
  text-align: left;
  font-size: 18px;
  cursor: pointer;
  font-weight: 600;
}

.pc-title::after {
  content: "+";
  float: right;
  font-size: 22px;
}

.pc-item.active .pc-title::after {
  content: "−";
}

.pc-content {
  display: none;
  padding: 15px 20px;
  background: #fff;
}

.pc-content ul {
  padding-left: 20px;
}

.pc-content li {
  margin-bottom: 8px;
}
/* Card hover effect */
/* Card hover effect */
.custom-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.custom-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.18);
}

/* Gradient Headers */
.custom-header-gradient {
  background: linear-gradient(135deg, #0d6efd, #6610f2);
}
.custom-header-gradient-alt {
  background: linear-gradient(135deg, #6f42c1, #20c997);
}

/* Alternating list item backgrounds */
.course-item:nth-child(odd) {
  background-color: #e9f5ff;
}
.course-item:nth-child(even) {
  background-color: #f7f9fa;
}
.course-item {
  padding: 12px 15px;
  border-radius: 6px;
  margin-bottom: 6px;
  opacity: 0;             /* initially hidden for animation */
  transform: translateX(-20px);
  transition: all 0.6s ease;
}
.course-item.visible {
  opacity: 1;
  transform: translateX(0);
}

/* Hover effect */
.course-item:hover {
  background-color: #d0ebff;
}

