.core-cards {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.30) 0%, rgba(222, 229, 238, 0.30) 100%);
}

.core-layout {
    margin: 0 auto;
    padding: clamp(69px, 4.5vw, 103px) 0;
    width: 81.4vw;
    display: flex;
    flex-direction: column;
}

.core-title {
  margin-bottom: clamp(72px, 4.7vw, 108px);
  font-style: normal;
  font-weight: 600;
  line-height: 140%; /* 76.8px */
}

/* 공통 아이템 */
.core-item {
  padding: 0 clamp(116px, 7.5vw, 174px);
  display: flex;
  align-items: center;
  gap: clamp(40px, 4vw, 80px);
}

/* 좌 / 우 정렬 */
.align-left {
    justify-content: flex-start;
}

.align-right {
    justify-content: flex-end;
}
.align-right div {
  text-align: right;
}

/* 아이콘 원형 */
.icon-circle {
    width: clamp(221px, 14.4vw, 331px);
    height: clamp(221px, 14.4vw, 331px);
    border-radius: 50%;
    background: rgba(244, 244, 248, 0.90);
    box-shadow: 10px 10px 10px 0 #FFF inset, -10px -10px 10px 0 rgba(174, 174, 192, 0.25) inset, -10px -10px 30px 0 #FFF, 10px 10px 30px 0 rgba(174, 174, 192, 0.40);
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon-circle img {
    width: clamp(152px, 9.9vw, 228px);
    height: auto;
}

/* 텍스트 */
.text-box {
    flex: 1;
}

.text-box h3 {
    font-weight: 600;
    margin-bottom: 16px;
    color: #212121;
}

.text-box p {
    line-height: 1.5;
    color: #7C7C7C;
}


/* 작은 모바일 화면 대응 */
@media (max-width: 1024px) {
    .core-item {
        padding: 0;
    }
}

body.mobile .core-title,
body[data-mobile="true"] .core-title {
  font-size: clamp(26px, 1.7vw, 38px) !important;
}

@media (max-width: 767px) {
    .core-item {
        flex-direction: column;
        text-align: center;
    }

    .align-right {
        flex-direction: column-reverse;
    }
}
