/* About Widget 1 - Mission & Vision Styles */
.mission-vision,
.mission-vision * {
  box-sizing: border-box;
}

.mission-vision {
  padding: 0px 100px 0px 100px;
  display: flex;
  flex-direction: row;
  gap: 60px;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
  align-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  position: relative;
}

.frame-1000008345 {
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: center;
  justify-content: flex-start;
  flex: 1 1 50%;
  max-width: 400px;
  position: relative;
}

.frame-1000008342 {
  display: flex;
  flex-direction: column;
  gap: 22px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.target {
  flex-shrink: 0;
  width: 82px;
  height: 82px;
  position: relative;
  overflow: hidden;
}

.group {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  left: 0%;
  bottom: 0%;
  top: 0%;
  overflow: visible;
}

.mission {
  color: #091d3e;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  letter-spacing: -0.02em;
  font-weight: 700;
  position: relative;
  align-self: stretch;
}

.mission-description {
  color: #091d3e;
  text-align: center;
  font-family: "Montserratr", sans-serif;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.02em;
  font-weight: 400;
  position: relative;
  width: 440px;
}

.frame-1000008344 {
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: center;
  justify-content: flex-start;
  flex: 1 1 50%;
  max-width: 400px;
  position: relative;
}

.frame-1000008343 {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.vision {
  flex-shrink: 0;
  width: 76px;
  height: 76px;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
}

.group2 {
  height: auto;
  position: absolute;
  left: 0px;
  top: 13.51px;
  overflow: visible;
}

.group3 {
  height: auto;
  position: absolute;
  left: 22.27px;
  top: 22.41px;
  overflow: visible;
}

.group4 {
  height: auto;
  position: absolute;
  left: 31.17px;
  top: 31.32px;
  overflow: visible;
}

.vision2 {
  color: #091d3e;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  letter-spacing: -0.02em;
  font-weight: 700;
  position: relative;
  align-self: stretch;
}

.vision-description {
  color: #091d3e;
  text-align: center;
  font-family: "Montserrat-Regular", sans-serif;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.02em;
  font-weight: 400;
  position: relative;
  align-self: stretch;
}

/* Responsive Design for About Widget 1 */
@media (min-width: 769px) and (max-width: 1024px) {
  .mission-vision {
    padding: 0px 50px 0px 50px;
    gap: 40px;
    flex-wrap: nowrap;
  }

  .frame-1000008345,
  .frame-1000008344 {
    flex: 1 1 50%;
    min-width: 280px;
  }

  .mission-description {
    width: 100%;
    max-width: 440px;
  }
}

@media (max-width: 768px) {
  .mission-vision {
    padding: 0px 20px 0px 20px;
    flex-direction: column;
    gap: 40px;
    align-items: center;
    flex-wrap: wrap;
  }

  .frame-1000008345,
  .frame-1000008344 {
    min-width: auto;
    width: 100%;
  }

  .line-1771 {
    width: 150px;
    transform: rotate(0deg) scale(1, 1);
    margin: 20px 0;
  }

  .mission-description {
    width: 100%;
    text-align: center;
  }

  .vision-description {
    text-align: center;
  }

  .mission,
  .vision2 {
    font-size: 22px;
  }

  .mission-description,
  .vision-description {
    font-size: 15px;
    line-height: 22px;
  }

  .target {
    width: 70px;
    height: 70px;
  }

  .vision {
    width: 65px;
    height: 65px;
  }
}

@media (max-width: 480px) {
  .mission-vision {
    padding: 0px 15px 0px 15px;
    gap: 30px;
  }

  .frame-1000008345,
  .frame-1000008344 {
    gap: 25px;
  }

  .frame-1000008342 {
    gap: 18px;
  }

  .frame-1000008343 {
    gap: 10px;
  }

  .line-1771 {
    width: 100px;
    margin: 15px 0;
  }

  .mission,
  .vision2 {
    font-size: 20px;
  }

  .mission-description,
  .vision-description {
    font-size: 14px;
    line-height: 20px;
  }

  .target {
    width: 60px;
    height: 60px;
  }

  .vision {
    width: 55px;
    height: 55px;
  }

  .group2 {
    top: 10px;
  }

  .group3 {
    left: 18px;
    top: 18px;
  }

  .group4 {
    left: 25px;
    top: 25px;
  }
}

/* Fallback fonts */
@font-face {
  font-family: "Montserrat";
  src: local("Montserrat Bold"), local("Montserrat");
  font-weight: 700;
}

@font-face {
  font-family: "Montserrat-Regular";
  src: local("Montserrat Regular"), local("Montserrat-Regular");
  font-weight: 400;
}

/* If Montserrat is not available, use system fonts */
.mission,
.vision2 {
  font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.mission-description,
.vision-description {
  font-family: "Montserrat-Regular", "Helvetica Neue", Helvetica, Arial,
    sans-serif;
}
