@import url("https://fonts.googleapis.com/css2?family=Michroma&display=swap");
@font-face {
    font-family: 'sansita-one'; /* Name for your font */
    src: url('../assets/fonts/sansita-one/SansitaOne.ttf') format('truetype'); /* Path to the font file */
}

* {
  padding: 0;
  margin: 0;
}

.loading-page {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #272B3B;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
  justify-content: center;
  color: #191654;
  z-index: 1001; /* Higher z-index to ensure it is on top */
}

#svg {
  height: 150px;
  width: 150px;
  stroke: white;
  
  stroke-width: 2px;
  stroke-dasharray: 4500;
  animation: draw 15s ease-in forwards, scale 1s infinite alternate;
}

.animate-fill {
  animation: fillAnimation 5s ease-in infinite;
}

@keyframes fillAnimation {
  0% {
    fill: transparent;
  }
  50% {
    fill: white;
  }
  100% {
    fill: transparent;
  }
}

@keyframes draw {
  0% {
    stroke-dashoffset: 4500;
    transform: scale(0.8);
  }
  50% {
    stroke-dashoffset: 2250;
    transform: scale(1);
  }
  100% {
    stroke-dashoffset: 0;
    transform: scale(1.2);
  }
}

@keyframes scale {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}



.logo-name {
  color: #fff;
  font-size: 10px;
  letter-spacing: 6px;
  text-transform: uppercase;
  margin-left: 20px;
  font-weight: bolder;
  text-align: center;
 
}



@media only screen and (min-width: 768px) {
 
  .logo-name {
    color: #fff;
    font-size: 20px;
    letter-spacing: 6px;
    text-transform: uppercase;
    margin-left: 20px;
    font-weight: bolder;
    text-align: center;
    font-family: Helvetica;
  }
}

@media only screen and (min-width: 425px) {
 
}


@font-face {
    font-family: 'roboto'; /* Name for your font */
    src: url('../fonts/Roboto/Roboto-VariableFont_wdth\,wght.ttf') format('truetype'); /* Path to the font file */
}
*{
    box-sizing: border-box;
    background-color: #272B3B;
    font-family: Helvetica;
    margin: 0;
    padding: 0;
}

body {
    display: flex;
    flex-direction: column;
    height: 100%;
    
}

body::-webkit-scrollbar {
    display: none; /* For Chrome, Safari, and Edge */
    
}



/* Style for the landingcontent */

  .landingcontent {
    display: flex; /* Enable Flexbox layout */
    flex-direction: column; /* Default stack vertically */
    gap: 20px; /* Space between items */
  
}

.text-container {
    display: none; /* Hidden by default */
}



/* Grid container */
.gridcontainter {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden; /* Ensure content doesn't overflow */
    margin: 0 auto;
    max-width: 375px;
    margin-top: 7vh;
    padding-bottom: 0;
}

/* Grid structure */
.Grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 8px;
    margin-left: 2.5vh;
    margin-right: 2.5vh;
}

/* Common styles for divs with images */
.div1, .div4, .div5, .div7, .div10 {
    border-radius: 15px;
    overflow: hidden; /* Ensure content doesn't overflow */
}

.div1, .div4, .div5, .div7, .div10 {
    display: flex;
    justify-content: center;
    align-items: center;
}

.div1 img, .div4 img, .div5 img, .div7 img, .div10 img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ensures the image covers the entire div */
     border-radius: 19px;
}

/* Adjustments for specific divs */
.div1 {
    grid-column: span 2;
    grid-row: span 2;
    background-size: cover;
}

.div2, .div3, .div6, .div8, .div9, .div11 {
    background-color: #a8dce7;
    border-radius: 19px;
    height: 65px;
    
    
}

/* Other div styles remain the same */
.div2, .div3, .div6, .div8, .div9, .div11 {
    background-color: #a8dce7;
    border-radius: 19px;
    height: 65px;
    width: 100%;
    height: 100%;
}

.div9 {
    border-radius: 0 90% 0 0;
}

.div2 {
    grid-column-start: 1;
    grid-row-start: 3;
    border-radius: 19px;
}

.div3 {
    grid-column-start: 1;
    grid-row-start: 4;
    border-radius: 19px;
}

.div4 {
    grid-row: span 2 / span 2;
    grid-column-start: 2;
    grid-row-start: 3;
}

.div5 {
    grid-column-start: 3;
    grid-row-start: 1;
    background-size: cover;
}

.div6 {
    grid-column-start: 3;
    grid-row-start: 2;
    border-radius: 19px;
   
}

.div7 {
    grid-column-start: 3;
    grid-row-start: 3;
    background-size: cover;
}

.div8 {
    grid-column-start: 3;
    grid-row-start: 4;
    border-radius: 19px;
 
}

.div9 {
    grid-column-start: 4;
    grid-row-start: 1;
    border-radius: 19px;
   
}

.div10 {
    grid-column-start: 4;
    grid-row-start: 2;
    background-size: cover;
}

.div11 {
    grid-column-start: 4;
    grid-row-start: 3;
    border-radius: 19px;
    
}


/* Media query for larger screens (e.g., desktops) */
@media (min-width: 768px) {
    .landingcontent {
        flex-direction: row; /* Align items side-by-side */
    }

    .text-container {
        display: block; /* Show text container */
        background-color: #272B3B;
        padding: 20px;
        border-radius: 8px;
        flex: 1; /* Each container takes equal width */
        margin: 40px;
        color: #ffffff;
        text-align: center;
        font-size: 17px;
        width: 700px;
        height: 300px;
        max-width: 600px;
    }

    .text-container P { 
        margin-top: 3vh;
        margin-bottom: 7vh;
        line-height: 1.2; 
        font-size: 15px;
    }

    .text-container h2{
        font-family: robato;
    }
    
}

@media (min-width: 1024px) {
    .text-container{
        margin-left: 100px;
    }
}




/* Style for the aboutus */

 .divider {
    display: block;
    margin: 0 auto; /* Automatically centers horizontally */
    margin-top: 7vh;
    margin-bottom: 7vh;
}

.aboutus h2 {

    text-align: center;
    color: #a8dce7;
    font-size: 30px;
    text-transform: uppercase;
    margin-bottom: 3vh;
    font-family: robato;
    margin-top: 5vh;
    
}

.aboutus p, .divider p{

    text-align: center;
    color: white;
    font-size: 14px;
    padding-bottom: 3vh;
    line-height: 20px;

}

.aboutus {
   margin-left: 30px;
   margin-right: 30px;
    background-color: #272B3B;
    border-radius: 8px;
}

/* Media query for larger screens (e.g., desktops) */
@media (min-width: 768px) {
    .aboutus-container {
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 3 equal-width columns */
        gap: 20px; /* Space between the sections */
    }

    .aboutus {
        background-color: #272B3B; /* Optional: background color for contrast */
        padding: 20px;
    }

    .aboutus-container{

        display: none;
    }   
}






/* Style for the events */


.events h2 {
    text-align: center;
    color: #a8dce7;
    font-size: 30px;
    padding-bottom: 3vh;
    text-transform: uppercase;
    font-family: robato;
  
}

.events{
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column
}


.eventcard {
    background-color: #a8dce7;
    text-align: center;
    padding: 10px;
    display: flex;
    flex-direction: column;
    margin: 4vh 3.5vh 20px 3.5vh;    
    border-radius: 19px;
    padding-bottom: 50px;
    padding-top: 50px;
    max-width: 500px;
    min-width: 300px;
    transform: translateY(20px); /* Start slightly below */
    transition: opacity 0.5s ease, transform 0.5s ease; /* Smooth transition */
}

.eventcard.active {
    opacity: 1; /* Fully visible */
    transform: translateY(0); /* Move to original position */
}


.eventcard h5{
    width: 100px;
    height: 100px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
}

.eventcard h3{
    color: black;
    font-family: robato;
    text-transform: uppercase;
}

.currentcard, .events h3, .currentcard, .events h4 {
    background-color: #a8dce7;
    color: #000000;
}


.eventcard, .circle{
    background-color: #a8dce7;
}

.circle{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 5vh;
}  

.eventcard h4, h3{
    margin: 5px;
}

.eventcard h4{
    font-size: 15px;
}

.currentcard {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 10px;
    margin: 4vh 30px 20px 30px; /* Top: 4vh, Right: 30px, Bottom: 20px, Left: 30px */
    border-radius: 19px;
    background-color: #a8dce7;
    max-width: 500px;
    opacity: 0; /* Start hidden */
    transform: translateY(20px); /* Start slightly below */
    transition: opacity 0.5s ease, transform 0.5s ease; /* Smooth transition */
}

.currentcard.active {
    opacity: 1; /* Fully visible */
    transform: translateY(0); /* Move to original position */
}

.currentcard h2, .currentcard p{
    text-align: left;
    background-color: #a8dce7;
    color: #000000;
 
}

.currentcard h2{
    padding: 0;
    padding-top: 4.6vh;
    font-family: robato;
    font-size: 23px;
    
}

.currentcard p{
    font-size: 13px;
    margin: 30px;
    text-align: justify;
}

.line {
    height: 1.5px; /* Line thickness */
    background-color: #000000; /* Line color */
    width: 90%; /* Line width */
    margin: 75px auto; /* Add spacing and center horizontally */
}


.date {
    display: flex; /* Align items horizontally */
    align-items: center; /* Vertically center */
    gap: 8px; /* Spacing between icon and text */
    background-color: #a8dce7;
    margin-bottom: 10px;
    margin-left: 30px;
    margin-right: 30px;
}

.material-icons {
    font-family: 'Material Icons', sans-serif; /* Ensure correct font */
    font-size: 36px !important; /* Larger size, ensure it overrides */
    color: #000000; /* Icon color */
    line-height: 1; /* Avoid extra spacing */
    vertical-align: middle; /* Align with text */
    background-color: #a8dce7;
}

.date h5 {
    margin: 0; /* Remove default margin */
    color: #000000; /* Text color */
    font-size: 15px !important; /* Optional: Adjust text size */
    background-color: #a8dce7;
}


.location{
    display: flex; /* Align items horizontally */
    align-items: center; /* Vertically center */
    gap: 8px; /* Spacing between icon and text */
    background-color: #a8dce7; 
    margin-bottom: 20px;
    margin-left: 30px;
    margin-right: 30px;
    
}

.location h5{
    margin: 0; /* Remove default margin */
    color: #000000; /* Text color */
    font-size: 10px !important; /* Optional: Adjust text size */
    background-color: #a8dce7; 
}

.location a {
    margin-top: -10px; /* Move the link higher */
    color: #000000;
    font-size: 14px; /* Optional: Adjust link size */
    background-color: #a8dce7;

} 
  .location a:hover {
    color: white; /* Change color when hovered */
    text-decoration: underline; /* Add underline on hover */
  }
  
  .location h5 a {
     color: black; /* Change color on hover */
    text-decoration: none; /* Remove the underline */
    font-weight: bold; /* Make the text bold */
  }
  
  .location h5 a:hover {
    color: #272B3B; /* Change color on hover */
    text-decoration: none; /* Underline the text on hover */
  }
  

.currentcard a{
    background-color: #a8dce7; 
    color: #000000;
    margin-bottom: 5px;
}







/* Style for the belive */



.belive h2 {
    color: #a8dce7;
    text-align: center; 
    font-size: 30px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-family: robato;
}

.belive h4 {
    color: white;
    text-align: center; 
    font-size: 12px;margin-bottom: 5vh;
}


.slider-container {
    width: 100%; /* Full width of the viewport */
    /* max-width: 1200px; Optional: Set a max width to keep content from being too wide */
    overflow: hidden;
    position: relative;
    background-color: #272B3B;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    margin-bottom: 5vh;
}



.testimonial-slider {
    display: flex;
    transition: transform 0.1s ease;
    gap: 30px; /* Gap between the slides */
}

.testimonial-card {
    /* min-width: calc(100% - 30px); Adjust to take width minus gap */
    min-width: 400px;
    min-height: 200px;
    padding: 60px;
    background-color: #a8dce7;
    border-radius: 19px;
    text-align: center;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}

.testimonial-card .quote {
    font-size: 16px;
    color: #000000;
    font-style: italic;
    background-color: #a8dce7;
    font-size: 1.9vh;
    text-align: center;
    
}

.testimonial-card .author {
    margin-top: 25px;
    margin-bottom: 10px;
    font-weight: bold;
    color: #000000;
    background-color: #a8dce7;
}

.testimonial-card .book {
    color: #000000;
    font-size: 10px;
    background-color: #a8dce7;
}

@media (min-width: 768px) {
    .belive-section{
        margin-bottom: 100px;
        margin-top: 50px;
    }
}

/* partners sectction */
.partners{
    margin-left: 5vh;
    margin-right: 5vh;
    margin-bottom: 3ch;

}

.partners-section {
  text-align: center;
  margin-bottom: 7vh;
  margin-left: 30px;
  margin-right: 30px;

}

.partners-section h2 {
  font-size: 30px;
  margin-bottom: 10px;
  color: #a8dce7;
  font-family: robato;
}

.partners-section p {
  font-size: 14px;
  color: #ffffff;
  max-width: 600px;
  margin: 0 auto 30px;
}

/* Partner Row */
.partners-row {
  display: flex;
  gap: 30px;
  justify-content: center;
  flex-wrap: wrap;
  padding: 20px;
}

/* Partner logo styling */
.partner-logo img {
    width: 120px; /* Smaller size for better fit on mobile */
    height: 50px;
    object-fit: contain;
    opacity: 0.85;
    transition: transform 0.3s ease, opacity 0.3s ease;
    opacity: 0; /* Start hidden for animation */
    transform: translateY(20px); /* Start slightly below */
  }
  
  /* Hover effect */
  .partner-logo img:hover {
    transform: scale(1.1);
    opacity: 1;
  }
  
  /* Animation for fade-in */
  @keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateY(20px);
    }
    to {
      opacity: 0.85;
      transform: translateY(0);
    }
  }
  
  /* Active class for animation */
  .partner-logo img.active {
    animation: fadeIn 0.5s forwards; /* Apply fade-in animation */
  }
  
  /* Responsive Adjustments */
  @media (max-width: 768px) {
    .partner-logo img {
        width: 85px; /* Further reduce size on smaller screens */
        height: 40px;
    }
  }



/* Button Styles */


.button-container {
    display: flex;
    justify-content: center; /* Centers the button horizontally */
    align-items: center; /* Centers the button vertically (if needed) */
   
}


button {
    background-color: #a8dce7;
    color: black;
    border: none;
    padding: 10px 10px;
    border-radius: 5px;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    margin-top: 20px; /* Added margin-top for more space between text and button */
}

button:hover {
    background-color: #88c1d2;
}

button a {
    background: #a8dce7;
    text-decoration: none;
    color: black;
    font-weight: bold;
}