.home {
  background-color: #ffffff;
  overflow-x: hidden;
  width: 100%;
  min-width: 100%;
  min-height: 100vh;
  position: relative;
}

.home .heading-subheading {
  display: flex;
  width: 1437px;
  height: 71px;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 0px 100px;
  position: absolute;
  top: 2160px;
  left: -7px;
}

.home .heading {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.home .label {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 20px;
  position: relative;
  flex: 0 0 auto;
  background-color: #ffffff;
  border-radius: 7px;
}

.home .text-wrapper {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 700;
  color: #000000;
  font-size: 40px;
  letter-spacing: 0;
  line-height: normal;
}

.home .heading-wrapper {
  width: 1437px;
  height: 71px;
  top: 1163px;
  left: -10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 0px 100px;
  position: absolute;
}

.home .div-wrapper {
  width: 1440px;
  top: 3297px;
  left: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 0px 100px;
  position: absolute;
}

.home .label-wrapper {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 0px 0px;
  position: relative;
  flex: 0 0 auto;
  border-radius: 7px;
}

.home .div {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 700;
  color: #000000;
  font-size: 40px;
  text-align: center;
  letter-spacing: 0;
  line-height: normal;
}

.home .landing-page {
  display: flex;
  flex-direction: column;
  width: 1440px;
  align-items: flex-start;
  gap: 145px;
  position: absolute;
  top: 60px;
  left: 0;
}

.home .navigation-bar {
  display: flex;
  width: 1440px;
  align-items: center;
  justify-content: space-between;
  padding: 0px 100px;
  position: relative;
  flex: 0 0 auto;
}

.home .image {
  position: relative;
  width: 54px;
  height: 33px;
  aspect-ratio: 1.64;
  object-fit: cover;
}

.home .frame {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  position: relative;
  flex: 0 0 auto;
}

.home .text-wrapper-2 {
  position: relative;
  width: fit-content;
  color: #000000;
  font-size: 20px;
  line-height: 28px;
  white-space: nowrap;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.home .button {
  all: unset;
  box-sizing: border-box;
  border-radius: 50px;
  border: 1px solid;
  border-color: var(--dark);
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  padding: 20px 35px;
  position: relative;
  flex: 0 0 auto;
}

.home .label-2 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: #000000;
  font-size: 20px;
  text-align: center;
  letter-spacing: 0;
  line-height: 28px;
  white-space: nowrap;
}

.home .header {
  display: flex;
  width: 1300px;
  align-items: flex-start;
  gap: 174px;
  padding: 0px 100px 0px 143px;
  position: relative;
  flex: 0 0 auto;
  background-color: transparent;
}

.home .frame-2 {
  display: flex;
  flex-direction: column;
  width: 531px;
  height: 535px;
  align-items: flex-start;
  justify-content: center;
  gap: 35px;
  position: relative;
}

.home .p {
  position: relative;
  width: 531px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: transparent;
  font-size: 60px;
  letter-spacing: 0;
  line-height: normal;
}

.home .span {
  font-weight: 500;
  color: #000000;
}

.home .text-wrapper-3 {
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 700;
  color: #74b39a;
}

.home .span-wrapper {
  position: relative;
  width: 518px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: #000000;
  font-size: 24px;
  letter-spacing: 0;
  line-height: 28px;
}

.home .text-wrapper-4 {
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: #000000;
  font-size: 24px;
  letter-spacing: 0;
  line-height: 28px;
}

.home .button-2 {
  all: unset;
  box-sizing: border-box;
  background-color: var(--green);
  border-radius: 50px;
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  padding: 20px 35px;
  position: relative;
  flex: 0 0 auto;
}

.home .label-3 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 700;
  color: #ffffff;
  font-size: 28px;
  text-align: center;
  letter-spacing: 0;
  line-height: 28px;
  white-space: nowrap;
}

.home .illustration {
  position: relative;
  width: 399.4px;
  height: 534.71px;
  margin-right: -13.40px;
}

.home .chatgpt-image {
  position: absolute;
  top: 0;
  left: 43px;
  width: 357px;
  height: 535px;
  aspect-ratio: 0.67;
  object-fit: cover;
}

.home .logotypes {
  position: relative;
  width: 1440px;
  height: 48px;
}

.home .services-block {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
  position: absolute;
  top: 2292px;
  left: 3px;
}

.home .cards-section {
  display: flex;
  width: 1440px;
  align-items: flex-start;
  gap: 40px;
  padding: 0px 172px;
  position: relative;
  flex: 0 0 auto;
}

.home .card {
  width: 527px;
  align-items: center;
  justify-content: space-between;
  padding: 50px;
  background-color: var(--grey);
  overflow: hidden;
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .heading-and-link {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 93px;
  position: relative;
  flex: 0 0 auto;
}

.home .label-4 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--h-3-font-family);
  font-weight: var(--h-3-font-weight);
  color: #000000;
  font-size: var(--h-3-font-size);
  letter-spacing: var(--h-3-letter-spacing);
  line-height: var(--h-3-line-height);
  font-style: var(--h-3-font-style);
}

.home .label-5 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  margin-right: -1.00px;
  font-family: var(--h-3-font-family);
  font-weight: var(--h-3-font-weight);
  color: #000000;
  font-size: var(--h-3-font-size);
  letter-spacing: var(--h-3-letter-spacing);
  line-height: var(--h-3-line-height);
  font-style: var(--h-3-font-style);
}

.home .link {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  position: relative;
  flex: 0 0 auto;
}

.home .icon {
  position: relative;
  width: 41px;
  height: 41px;
}

.home .label-6 {
  position: relative;
  width: fit-content;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: var(--black);
  font-size: 20px;
  letter-spacing: 0;
  line-height: 28px;
  white-space: nowrap;
}

.home .illustration-2 {
  position: relative;
  width: 210px;
  height: 170px;
  margin-left: -69.5px;
}

.home .thought-balloon {
  position: relative;
  width: 168px;
  height: 150px;
  margin-left: -69.5px;
  box-shadow: inset 0px -4px 10px #00000040;
  background-image: url(./img/image-2.svg);
  background-size: cover;
  background-position: 50% 50%;
}

.home .card-2 {
  width: 527px;
  align-items: center;
  justify-content: space-between;
  padding: 50px;
  background-color: var(--green);
  overflow: hidden;
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .label-7 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 0px 7px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--green);
  border-radius: 7px;
}

.home .label-8 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--h-3-font-family);
  font-weight: var(--h-3-font-weight);
  color: #ffffff;
  font-size: var(--h-3-font-size);
  letter-spacing: var(--h-3-letter-spacing);
  line-height: var(--h-3-line-height);
  font-style: var(--h-3-font-style);
}

.home .illustration-3 {
  position: relative;
  width: 210px;
  height: 147.62px;
  margin-left: -6px;
}

.home .cards-section-2 {
  display: inline-flex;
  align-items: flex-start;
  gap: 40px;
  padding: 0px 172px;
  position: relative;
  flex: 0 0 auto;
}

.home .label-9 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--h-3-font-family);
  font-weight: var(--h-3-font-weight);
  color: var(--grey);
  font-size: var(--h-3-font-size);
  letter-spacing: var(--h-3-letter-spacing);
  line-height: var(--h-3-line-height);
  font-style: var(--h-3-font-style);
}

.home .arrow-wrapper {
  background-color: #ffffff;
  border-radius: 20.5px;
  position: relative;
  width: 41px;
  height: 41px;
}

.home .arrow {
  position: absolute;
  top: 11px;
  left: 10px;
  width: 20px;
  height: 20px;
}

.home .label-10 {
  position: relative;
  width: fit-content;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: #ffffff;
  font-size: 20px;
  letter-spacing: 0;
  line-height: 28px;
  white-space: nowrap;
}

.home .img {
  position: relative;
  width: 190px;
  height: 190px;
  margin-left: -6px;
}

.home .heading-and-link-2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 93px;
  position: relative;
  flex: 0 0 auto;
}

.home .img-wrapper {
  background-color: var(--dark);
  border-radius: 20.5px;
  position: relative;
  width: 41px;
  height: 41px;
}

.home .revolving-hearts {
  position: relative;
  width: 140px;
  height: 140px;
  background-image: url(./img/image.png);
  background-size: cover;
  background-position: 50% 50%;
}

.home .CTA-block {
  position: absolute;
  top: 3377px;
  left: 0;
  height: 394px;
  width: 1440px;
  display: flex;
}

.home .CTA {
  height: 394px;
  position: relative;
  align-items: center;
  padding: 0px 100px;
  width: 1440px;
  display: flex;
}

.home .text-button-wrapper {
  width: 1240px;
  height: 347px;
  align-items: center;
  gap: 275px;
  padding: 0px 60px;
  background-color: var(--grey);
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .text-button {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
  position: relative;
  flex: 0 0 auto;
}

.home .text-wrapper-5 {
  position: relative;
  width: 500px;
  margin-top: -1.00px;
  font-family: var(--h-3-font-family);
  font-weight: var(--h-3-font-weight);
  color: #000000;
  font-size: var(--h-3-font-size);
  letter-spacing: var(--h-3-letter-spacing);
  line-height: var(--h-3-line-height);
  font-style: var(--h-3-font-style);
}

.home .text-wrapper-6 {
  position: relative;
  width: 1200px;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #000000;
  font-size: var(--p-font-size);
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .illustration-wrapper {
  position: relative;
  width: 494px;
  height: 394px;
  margin-left: -715px;
}

.home .star-wrapper {
  position: relative;
  top: -26px;
  left: 400px;
  width: 209px;
  display: flex;
  transform: rotate(180deg);
}

.home .star {
  width: 198.77px;
  height: 209px;
  margin-left: 5.1px;
  transform: rotate(-180deg);
}

.home .chatgpt-image-2 {
  position: absolute;
  top: 1070px;
  left: 164px;
  width: 314px;
  height: 314px;
  aspect-ratio: 1;
  object-fit: cover;
}

.home .CTA-wrapper {
  position: absolute;
  top: 1269px;
  left: 0;
  width: 1440px;
  height: 577px;
  display: flex;
}

.home .card-wrapper {
  height: 577px;
  position: relative;
  align-items: center;
  padding: 0px 172px;
  width: 1440px;
  display: flex;
}

.home .card-3 {
  width: 1096px;
  height: 515px;
  align-items: center;
  gap: 50px;
  padding: 0px 60px;
  background-color: var(--grey);
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .frame-3 {
  position: relative;
  width: 293px;
  height: 380px;
}

.home .text-wrapper-7 {
  position: absolute;
  top: 226px;
  left: calc(50.00% - 116px);
  width: 234px;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #000000;
  font-size: var(--p-font-size);
  text-align: center;
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .text-wrapper-8 {
  position: absolute;
  top: 144px;
  left: calc(50.00% - 144px);
  width: 288px;
  font-family: var(--h-3-font-family);
  font-weight: var(--h-3-font-weight);
  color: #000000;
  font-size: var(--h-3-font-size);
  text-align: center;
  letter-spacing: var(--h-3-letter-spacing);
  line-height: var(--h-3-line-height);
  font-style: var(--h-3-font-style);
}

.home .frame-4 {
  position: relative;
  width: 292px;
  height: 380px;
  margin-right: -2.00px;
}

.home .illustration-5 {
  position: absolute;
  width:59px;
  height:59px;
  top:24px;
  left:118px;
}

.home .text-wrapper-9 {
  position: absolute;
  top: 132px;
  left: calc(50.00% - 117px);
  width: 234px;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #000000;
  font-size: var(--p-font-size);
  text-align: center;
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .group-of-cards {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
  position: absolute;
  top: 3812px;
  left: 0;
}

.home .row {
  display: inline-flex;
  align-items: flex-start;
  gap: 40px;
  padding: 0px 100px;
  position: relative;
  flex: 0 0 auto;
}

.home .eumm-png-wrapper {
  flex-direction: column;
  width: 387px;
  height: 331px;
  align-items: center;
  gap: 10px;
  padding: 40px 35px;
  background-color: var(--grey);
  overflow: hidden;
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .eumm-png {
  position: relative;
  width: 330px;
  height: 290px;
  margin-bottom: -39.00px;
  margin-left: -35.00px;
  margin-right: -35.00px;
  aspect-ratio: 1.36;
}

.home .content-wrapper {
  flex-direction: column;
  width: 387px;
  height: 331px;
  align-items: flex-start;
  gap: 10px;
  padding: 40px 35px;
  background-color: var(--green);
  overflow: hidden;
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .content {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
  position: relative;
  flex: 0 0 auto;
}

.home .person {
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.home .picture-and-name {
  display: flex;
  align-items: flex-end;
  gap: 20px;
  padding: 0px 76px 0px 0px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.home .picture {
  position: relative;
  width: 97.82px;
  height: 97.82px;
  background-image: url(./img/vector-2.svg);
  background-size: 100% 100%;
}

.home .name {
  position: relative;
  width: 198.18px;
  height: 49.18px;
  margin-right: -75.00px;
}

.home .text-wrapper-10 {
  position: absolute;
  top: 0;
  left: 0;
  font-family: var(--h-4-font-family);
  font-weight: var(--h-4-font-weight);
  color: #ffffff;
  font-size: var(--h-4-font-size);
  letter-spacing: var(--h-4-letter-spacing);
  line-height: var(--h-4-line-height);
  font-style: var(--h-4-font-style);
}

.home .text-wrapper-11 {
  position: absolute;
  top: 26px;
  left: 1px;
  width: 194px;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #ffffff;
  font-size: var(--p-font-size);
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .social-icon {
  position: relative;
  width: 34px;
  height: 34px;
  margin-left: -67px;
  border-radius: 17px;
}

.home .git-icon {
  position: absolute;
  width: 34px;
  height: 34px;
}

.home .line {
  width: 317px;
  position: relative;
  height: 1px;
  object-fit: cover;
}

.home .text-wrapper-12 {
  position: relative;
  width: 317px;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #ffffff;
  font-size: var(--p-font-size);
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .picture-2 {
  position: relative;
  width: 97.82px;
  height: 97.82px;
  background-image: url(./img/vector.svg);
  background-size: 100% 100%;
}

.home .name-2 {
  position: relative;
  width: 120px;
  height: 49px;
}

.home .text-wrapper-13 {
  position: absolute;
  top: 26px;
  left: 0;
  color: #ffffff;
  font-size: var(--p-font-size);
  line-height: var(--p-line-height);
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  letter-spacing: var(--p-letter-spacing);
  font-style: var(--p-font-style);
}

.home .card-4 {
  flex-direction: column;
  width: 387px;
  height: 354px;
  align-items: flex-start;
  gap: 10px;
  padding: 40px 35px;
  background-color: var(--green);
  overflow: hidden;
  display: flex;
  position: relative;
  border-radius: 45px;
}

.home .picture-3 {
  position: relative;
  width: 97.82px;
  height: 97.82px;
  background-image: url(./img/vector-3.svg);
  background-size: 100% 100%;
}

.home .picture-4 {
  position: relative;
  width: 97.82px;
  height: 97.82px;
  background-image: url(./img/vector-4.svg);
  background-size: 100% 100%;
}

.home .picture-5 {
  position: relative;
  width: 97.82px;
  height: 97.82px;
  background-image: url(./img/image.svg);
  background-size: 100% 100%;
}

.home .footer-block {
  height: 352px;
  gap: 10px;
  padding: 0px 100px;
  position: absolute;
  top: 4812px;
  left: 1px;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
}

.home .footer {
  gap: 50px;
  padding: 55px 60px 50px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--green);
  border-radius: 45px 45px 0px 0px;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
}

.home .navigation-and {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 66px;
  position: relative;
  flex: 0 0 auto;
}

.home .contact-us-wrapper {
  display: inline-flex;
  align-items: flex-start;
  gap: 154px;
  position: relative;
  flex: 0 0 auto;
}

.home .contact-us {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 27px;
  position: relative;
  flex: 0 0 auto;
}

.home .label-11 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--h-4-font-family);
  font-weight: var(--h-4-font-weight);
  color: #000000;
  font-size: var(--h-4-font-size);
  letter-spacing: var(--h-4-letter-spacing);
  line-height: var(--h-4-line-height);
  font-style: var(--h-4-font-style);
}

.home .info {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  position: relative;
  flex: 0 0 auto;
}

.home .text-wrapper-14 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #ffffff;
  font-size: var(--p-font-size);
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .text-wrapper-15 {
  position: relative;
  width: fit-content;
  font-family: var(--p-font-family);
  font-weight: var(--p-font-weight);
  color: #ffffff;
  font-size: var(--p-font-size);
  letter-spacing: var(--p-letter-spacing);
  line-height: var(--p-line-height);
  font-style: var(--p-font-style);
}

.home .line-and-text {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 50px;
  position: relative;
  flex: 0 0 auto;
}

.home .line-2 {
  width: 1120px;
  margin-top: -1.00px;
  position: relative;
  height: 1px;
  object-fit: cover;
}

.home .text {
  display: inline-flex;
  align-items: flex-start;
  gap: 40px;
  position: relative;
  flex: 0 0 auto;
}

.home .text-wrapper-16 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Pretendard", Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-weight: 400;
  color: #ffffff;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 28px;
  white-space: nowrap;
}

.modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.5);
}
.modal-content {
  background: #fff;
  padding: 20px;
  width: 250px;
  margin: 20% auto;
  border-radius: 12px;
  text-align: center;
}

html { scroll-behavior: smooth; }

/* === Reveal animations === */
.reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .6s ease, transform .6s ease;
  transition-delay: var(--delay, 0ms);
  will-change: opacity, transform;
}
.reveal.is-visible {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .reveal { transition: none; opacity: 1; transform: none; }
}

/* === Polished micro-interactions === */
.card, .card-2, .card-3, .card-4, .content-wrapper, .eumm-png-wrapper {
  transition: transform .3s ease, box-shadow .3s ease;
}
.card:hover, .card-2:hover, .card-3:hover, .card-4:hover,
.content-wrapper:hover, .eumm-png-wrapper:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.08);
}
.button, .button-2 {
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.button:hover, .button-2:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.12);
  cursor: pointer;
}
.text-wrapper-2 {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: color .2s ease, transform .2s ease;
}
.text-wrapper-2:hover {
  transform: translateY(-1px);
}
.card, .card-2 {
  cursor: pointer;
}

/* Optional motion variants */
.reveal[data-reveal="slide-left"]  { transform: translateX(24px); }
.reveal[data-reveal="slide-right"] { transform: translateX(-24px); }
.reveal[data-reveal="scale"]       { transform: scale(.96); }

@media (min-width: 1440px) {
  .home {
    width: 100% !important;      /* 뷰포트보다 커지지 않게 */
    max-width: 1440px !important;/* 디자인 기준 폭 */
    min-width: 0 !important;     /* 기존 min-width:100% 무력화 */
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;  /* 혹시 다른 곳에서 overflow 걸렸다면 무력화 */
    position: relative !important; /* 자식 absolute 기준 유지 */
    left: auto !important;        /* 혹시 다른 곳에서 left를 줬다면 무력화 */
    right: auto !important;
    transform: none !important;   /* translateX 등 있으면 제거 */
  }
}

@media (min-width: 1440px) {
  .page-center,
  #scale-wrapper {
    overflow: visible !important; /* 스크롤은 오직 html/body */
  }
}
