/* landing page starts here */
.landing-container{
  display: flex;
  align-items:center;
  flex-flow: row wrap;
  padding: 2rem 10%;
  padding-top: 12rem;
  background-color: var(--bg-primary-light);
  /* background: repeating-radial-gradient(circle farthest-corner at 100% 85%, var(--dblue) 0%, #FFFFFF 50%); */
  /* Represents a percentage of the height/width of the viewport's initial containing block.  */
  min-height: 100dvh; /* ✅ mobile-friendly viewport height */
  column-gap: 2rem; /* horizontal spacing */
  row-gap: 0;         /* no vertical spacing */
  margin: 0 auto;          /* centers inside page */
}

.landing-container .content{
  /* Three values: flex-grow | flex-shrink | flex-basis */
  flex: 1 1 40rem;
  align-self: flex-start;
}

/* collapsible content */
.landing-container .content .about-text.collapsed {
  max-height: 20rem;       /* show only part of it */
  overflow: hidden;
  position: relative;
}

.landing-container .content .about-text.collapsed::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 40px;
  width: 100%;
}

.landing-container .content .toggle-btn {
  margin: 1rem 0;
  padding: 0.5rem 1rem;
  border: 1px solid var(--primary-500);
  background: var(--primary-100);
  color: var(--primary-700);
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.landing-container .content .toggle-btn:hover {
  background: var(--primary-500);
  color: var(--white);
}




.landing-container .image {
  /*  flex: < flex-grow> <flex-shrink> <flex-basis>*/
  flex: 1 1 40rem;
  padding: 1rem;
  border: 2px solid var(--border-on-primary-light-);
  background: var(--primary-50);
  border-radius: 1rem;
  /* Smooth animation */
  transition: transform 0.4s ease-in-out;
}

.landing-container .image:hover {
  transform: scale(1.01); /* zoom slightly */
  box-shadow: 0 8px 20px rgba(255, 100, 50, 0.7); /* orange tone */
}

.landing-container .image img{
  width: 100%;
  /* filter: drop-shadow(2px 2px 2px var(--color-accent-yellow))
          drop-shadow(2px 2px 2px var(--yellow)); */
}

.landing-container .content h1{
  color: var(--text-on-primary-light);
  font-weight: 400;
  animation: fadeIn 1s linear backwards;
  animation-delay: 0.2s;
  /* mix-blend-mode: difference; */
}

.landing-container .content h1 span{
  color: var(--text-on-secondary);
}


.landing-container .content p{
  color: var(--text-on-secondary);
  text-align: justify;
  animation: fadeIn 1s linear backwards;
  animation-delay: 0.2s;

}


.landing-container .content a{
  animation: fadeIn 1s linear backwards;
  animation-delay: 0.6s;
}


@keyframes fadeIn {
  0%{
    transform:translateY(-15rem) scale(0) rotate(45deg);
    transform-origin: left;
  }

  100%{
    transform:translateY(0rem) scale(1) rotate(0deg);
    transform-origin: left;
  }

}

/* landing page ends here */


/* about us section starts here */

.about {
  background: var(--bg-primary-vlight);
  /* background: repeating-radial-gradient(ellipse farthest-corner at bottom left, var(--dblue) 0%, #FFFFFF 70%); */
}


.about .about-row{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap:1.5rem;
  column-gap:2rem;
}

.about .about-row .image{
  /*  flex: < flex-grow> <flex-shrink> <flex-basis>*/
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 40rem;
  flex-flow: row wrap;
  gap:1rem;
}

.about .about-row .image h1{
  width: 100%;
  font-family: 'Oleo Script', cursive;
  color: var(--text-on-secondary);
  font-weight: 400;
  animation: fadeIn 1s linear backwards;
  animation-delay: 0.2s;
  text-align: center;

  /* mix-blend-mode: difference; */
}
.about .about-row .image h1 span{
  color: var(--text-on-primary-light);
}

.about .about-row  .image .icons{
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  width: 15rem;
  border-radius: 0.5rem;
  border: 1px solid var(--border-on-primary-light);
  box-shadow:var(--shadow-on-primary-vlight-focus);
  padding: 1.5rem;

}

.about .about-row  .image .icons i{
  display: flex;
  border-radius: 50%;
  background:var(--primary-200);
  color: var(--yellow);
  height: 7rem;
  width: 7rem;
  line-height: 2rem;
  font-size: 2.5rem;
  align-items: center;
  justify-content: center;
}

.about .about-row  .image .icons i:hover{
box-shadow:var(--shadow-on-primary-light-focus);
transform: translateY(-2%); /* shift back by 50% of its own width */
}

.about .about-row  .image .icons h6{
  color: var(--text-on-secondary);
  padding: 1rem 1rem;
}



.about .about-row .content{
  flex: 1 1 50rem;
}


.about .about-row .content .title{
  color: var(--text-on-secondary);
  padding: 2rem 0;
  font-weight: 500;
  border-bottom: 2px solid var(--border-on-primary-vlight);
  text-align: center;
}

.about .about-row .content p{
  color: var(--text-on-secondary);
  text-align: justify;
}


.about .about-row .content .icons-container{
  display: flex;
  flex-wrap: wrap;
  gap:1rem;
  padding: 2rem;
  border-radius: 0.5rem;
  box-shadow:var(--shadow-on-primary-vlight-focus);
}

.about .about-row .content .icons-container .icons{
  flex: 1 1 15rem;
  border-radius: 0.5rem;
  border: var(--border);
  padding: 1.5rem;
  text-align: center;
  background-color:var(--bg-primary-light);
  backdrop-filter: blur(10px); /* Adjust the blur radius as needed */
}

.about .about-row .content .icons-container .icons i{
  border-radius: 0.5rem;
  background:var(--primary-200);
  color: var(--yellow);
  height: 5rem;
  width: 5rem;
  font-size: 2rem;
  line-height: 5rem;
}

.about .about-row .content .icons-container .icons i:hover{
  box-shadow:var(--shadow-on-primary-light-focus);
  transform: translateY(-2%); /* shift back by 50% of its own width */
}

.about .about-row .content .icons-container .icons h6{
  color: var(--text-on-secondary);
  padding-top: 1rem;
}
/* about us section ends here */




/* ================================
 Responsive Typography
 ================================ */

/* Big Desktop (≥1920px) */
@media (min-width: 1920px) {

  }

/* Laptop (≤1440px) */
@media (max-width: 1440px) {

}


@media (max-width:1024px){

}



@media (max-width:768px){
   .landing-container .content,
   .landing-container .image {
     flex: 1 1 100%;
   }
   .about .about-row .image{
     justify-content: center;
   }
}


@media (max-width:500px){

}
