body{
  font-family: "Inter", serif;
  background: #FFFFFF;
  margin: 0;
  padding: 0;
}

h1{
  margin: 0;
  padding: 0;
}

p{
  margin:0;
  padding: 0;
}

@property --t-1-x {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 35%;
}

@property --t-2-x {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 65%;
}

@property --t-3-x {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --t-1-y {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 35%;
}

@property --t-2-y {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --t-3-y {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 65%;
}

.about-hero {
  height: 80vh;
  display: flex;
  align-items: center;
}

.about-hero-wrapper {
  margin: 0 auto;
  width: 80%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.about-us-icon{
  margin: 0;
  padding: 0;
  font-size: 50px;
  padding-top: 10px;
  padding-right: 10px;
}
.about-hero-left-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  flex: 1;
  padding-right: 30px;
}
.about-hero-heading-wrapper{
  display: flex;
  flex-direction: row;
}

.about-hero-heading-wrapper,
.about-hero-sub-heading-wrapper {
  width: 100%;
  max-width: 500px;
  text-align: left;
}

.about-hero-heading {
  text-align: left;
  font-weight: bold;
  font-size: 56px;
  margin-bottom: 24px;
}

.about-hero-sub-heading {
  font-size: 24px;
  width: 100%;
  color: gray;
  line-height: 1.6;
}

.about-hero-right-wrapper {
  display: flex;
  height: 100%;
  width: 100%;
  justify-content: center;
  flex: 1;
  background:
    radial-gradient(ellipse 15vw 15vw at var(--t-1-x) var(--t-1-y), #FD7E87 0%, transparent),
    radial-gradient(ellipse 16vw 16vw at var(--t-2-x) var(--t-2-y), #feb95a 0%, transparent),
    radial-gradient(ellipse 15vw 15vw at var(--t-3-x) var(--t-3-y), #743dbb 0%, transparent),
    #FFFFFF;
  animation: top-gradient-flow 3s ease-in-out infinite alternate;
}

.about-img-wrapper {
  width: 85%;
  height: auto;
  display: flex;
  align-items: center;
}

.about-hero-img {
  width: 100%;
  height: auto;
  object-fit: contain;
  transition: transform 0.5s ease-in-out;
}
.about-hero-img:hover{
  transform:scale(1.2);
}

@keyframes top-gradient-flow {
  0% {
    --t-1-x: 35%;
    --t-1-y: 35%;
    --t-2-x: 65%;
    --t-2-y: 50%;
    --t-3-x: 50%;
    --t-3-y: 65%;
  }

  100% {
    --t-1-x: 65%;
    --t-1-y: 65%;
    --t-2-x: 35%;
    --t-2-y: 50%;
    --t-3-x: 50%;
    --t-3-y: 35%;
  }
}

.story-heading {
  text-align: center;
  font-weight: bold;
  font-size: 48px;
}

.story-heading-icon {
  margin: 0;
  padding: 0;
  color: #FD7E87;
  text-align: center;
  padding-top: 5px;
  padding-right: 12px;
  font-size: 48px;
}

.story-wrapper {
  display: flex;
  max-width: 1300px;
  margin: 0 auto;
  gap: 40px;
  border-radius: 40px;
  align-items: stretch;
  justify-content: center;
  padding: 0 24px;
}

.story-left-wrapper,
.story-right-wrapper {
  flex: 1;
  display: flex;
}

.story-img-wrapper {
  width: 100%;
  border-radius: 40px;
  display: flex;
}

.story-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 4px solid #743dbb;
  border-radius: 40px;
  padding: 15px;
  background: #fff;
  box-sizing: border-box;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px, rgba(10, 37, 64, 0.35) 0px -2px 6px 0px inset;
}

.story-heading-wrapper,
.story-section-heading-wrapper {
  display: flex;
  text-align: center;
  justify-content: center;
  padding-top: 10px;
  padding-bottom: 20px;
}

.story-heading-wrapper {
  margin: 30px auto;
}

.story-text-section {
  color: #555555;
  font-size: 20px;
  line-height: 1.6;
  padding-bottom: 16px;
}

.list-item {
  color: #555555;
  font-size: 20px;
  line-height: 1.5;
}

.provide-section {
  padding-bottom: 16px;
}

.story-section-wrapper {
  flex: 1;
  padding: 40px;
  border-radius: 20px;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px, rgba(10, 37, 64, 0.35) 0px -2px 6px 0px inset;
  box-sizing: border-box;
  background: #FFFFFF;
}

.story-section-heading {
  font-size: 36px;
  font-weight: bold;
}

.story-section-heading-icon {
  margin: 0;
  padding: 0;
  color: #743dbb;
  font-size: 36px;
  padding-top: 3px;
  padding-right: 12px;
}
.about-story-wrapper{
  padding-top: 40px;  
  padding-bottom: 50px;
}

/* features heading */

.features-heading-icon{
  margin: 0;
  padding: 0;
  font-size: 50px;
  color: #743dbb;
  padding-top: 5px;
  padding-right: 10px;
}
.features-heading{
  font-weight: bold; 
  font-size: 50px;
}
.features-heading-wrapper{
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 40px;

}
.features-sub-heading-wrapper{
  display: flex;
  text-align: center;
  justify-content: center;
  margin-bottom: 30px;
}
.features-sub-heading{
  font-size: 24px;
  color: gray;
  width: 80%;
}


/* feature cards */
.features-grid{
  width: 80%;
  margin: 0 auto;
  justify-content: center;
  display: grid;
  grid-template-columns: repeat(3,400px);
  gap: 30px;
}
@media (max-width: 768px) {
    .features-grid {
        grid-template-columns: 1fr;
    }
}
.feature-card{
  margin: 0 auto;
  padding: 60px 40px;
  width: 100%;
  box-sizing: border-box;
  justify-content: center;
  background-color: white;
  text-align: center;
  color: rgb(98, 94, 94);
  border-radius: 20px;
  box-shadow:
  rgba(50, 50, 93, 0.18) 0px 40px 80px -20px,
  rgba(0, 0, 0, 0.18) 0px 20px 40px -25px;
  transition: transform 0.3s ease-in-out;
}
.feature-card-icon-wrapper{
  display: inline-block;
  justify-content: center;
  padding: 40px;
  border-width: 5px;
  border-radius: 100px;
  border-style: solid;
  margin-bottom: 10px;
}

.red-feature-card{
  /* color: #FD7E87; */
  border-color: #FD7E87;
  border-width: 3px;
  border-style: solid;
}
.yellow-feature-card{
  /* color: #feb95a; */
  border-color: #feb95a;
  border-width: 3px;
  border-style: solid;
}
.purple-feature-card{
  /* color: #743dbb; */
  border-color: #743dbb;
  border-width: 3px;
  border-style: solid;
}

.red-icon-wrapper{
  color: #FD7E87;
  padding-left: 45px;
  padding-right: 45px;
  border-color: #FD7E87;
}

.yellow-icon-wrapper{
  color: #feb95a;
  border-color: #feb95a;
}
.purple-icon-wrapper{
  color: #743dbb;
  border-color: #743dbb;
}
.feature-card-icon{
  margin: 0;
  padding: 0;
  font-size: 40px;
}

.feature-card:hover{
  transform: translateY(-5px);
}


/* vision-section */
.philosophy-heading-wrapper{
  padding: 70px 0;
  display: flex;
  justify-content: center;
  text-align: center;
}
.philosophy-heading-icon{
  margin: 0;
  padding: 0;
  font-size: 50px;
  color: #FD7E87;
  padding-top: 5px;
  padding-right: 10px;
}

.philosophy-heading{
  font-size: 50px;
  font-weight: bold;
  margin-bottom: 40px;
}

.philosophy-heading-wrapper{
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.philosophy-card-grid{
  margin: 0 auto;
  justify-content: center;
  width: 80%;
  display: grid;
  gap: 30px;
  align-items: stretch;
  grid-template-columns:repeat(3,1fr);
}

.philosophy-card{
  display: flex;
  vertical-align: start;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 30px;
  height: 100%;
  border-radius: 20px;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px, rgba(10, 37, 64, 0.35) 0px -2px 6px 0px inset;
  transition: transform 0.2s ease-in-out;
}
.philosophy-content{
  color: gray;
  font-size: 18px;
  flex-grow: 1;
  width: 100%;
  height: auto;
}
.philosophy-card-heading{
  font-size: 30px;
  width: 100%;
  margin-bottom: 30px;
  font-weight: 600;
}
.red-card-icon{
  color: #FD7E87;
}
.yellow-card-icon{
  color: #feb95a;
}
.purple-card-icon{
  color: #743dbb;
}
.philosophy-card-icon{
  margin: 0;
  padding: 0;
  vertical-align: middle;
  padding-bottom: 20px;
  font-size: 50px;
}

.philosophy-card:hover{
  transform: translateY(-5px);
}
/* call to action */


.call-to-action-heading-wrapper{
  display: flex;
  flex-direction: row;
  justify-content: center;
  padding-top: 50px;
  padding-bottom: 30px;
}
.call-to-action-wrapper{
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  margin-top: 80px;
  margin-bottom: 80px;
}
.call-to-action-icon{
  margin: 0;
  padding: 0;
  padding-top:5px;
  padding-right: 10px;
  font-size: 50px;
  color: #FD7E87;
}
.call-to-action-heading{
  font-weight: bold;
  font-size: 50px;
}
.call-to-action-sub-heading{
  color: gray;
  font-size: 20px;
  padding-bottom: 20px;
}
.button-section{
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.schedule-button,.curriculum-button{
  margin:0 10px;
  font-size: 20px;
  padding: 20px 30px;
}
.schedule-button{
  background-color: white;
  border-style: solid;
  border-color: #743dbb;
  border-width: 3px;
  border-radius: 20px;
  color: #743dbb;
  font-weight: bold;
  transition: background-color 0.2s ease-in-out, color
  0.2s ease-in-out,transform 0.2s ease-in-out;
}
.schedule-button:hover{
  background-color: #743dbb;
  color: white;
  transform: translateY(-5px);
}

.curriculum-button{
  background-color: #743dbb;
  border-width: 3px;
  border-style: solid;
  font-weight: bold;
  border-color: #743dbb;
  border-radius: 20px;
  color: white;
  transition: background-color 0.2s ease-in-out, color
  0.2s ease-in-out,transform 0.2s ease-in-outf;
}
.curriculum-button:hover{
  background-color: white;
  color: #743dbb;
  transform: translateY(-5px);
}























