@charset "UTF-8";

/* ============================
  Change Hero
============================ */
.mj_change_hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: #0a0a0a;
  overflow: hidden;
}

/* 배경 */
.mj_changehero_bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.mj_changehero_bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* 텍스트 */
.mj_changehero_text {
  position: relative;
  z-index: 2;
  text-align: center;
  padding-top: 160px;
  padding-bottom: 0;
}

/* 창업비용 회수? — 포인트폰트 68px, 쉐도우 */
.mj_changehero_eyebrow {
  font-size: 68px;
  color: var(--mj_color_white);
  font-weight: var(--mj_fw_regular);
  line-height: var(--mj_lh_sm);
  margin-bottom: 4px;
  text-shadow: 0 5px 5px #000;
}

/* 6개월이면 충분합니다 — 92px, 쉐도우 */
.mj_changehero_title {
  font-size: 92px;
  color: var(--mj_color_yellow);
  line-height: var(--mj_lh_sm);
  margin-bottom: 20px;
  text-shadow: 0 5px 5px #000;
}

/* 서브텍스트 — 28px, light 300 */
.mj_changehero_sub {
  font-size: 28px;
  font-weight: 300;
  color: var(--mj_color_white);
  line-height: var(--mj_lh_md);
}
/* 일매출, 200만원 — bold 700 */
.mj_changehero_sub strong {
  font-weight: 700;
}

/* 하단 영역 */
.mj_changehero_bottom {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  padding-bottom: 0;
}

/* 건물 */
.mj_changehero_store {
  position: relative;
  z-index: 3;
  width: 1100px;
  flex-shrink: 0;
}

.mj_changehero_store_after {
  position: relative;
  z-index: 1;
  display: block;
}

.mj_changehero_store_before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
  clip-path: inset(0 0 0 0);
  transition: clip-path 2s cubic-bezier(0.65, 0, 0.35, 1);
}

.mj_changehero_store_after img,
.mj_changehero_store_before img {
  width: 100%;
  display: block;
}

/* 와이프: 오른쪽 → 왼쪽으로 채워짐 */
.mj_store_revealed .mj_changehero_store_before {
  clip-path: inset(0 100% 0 0);
}

/* ── 배지 (section 기준 absolute 배치) ── */
.mj_changehero_badge {
  position: absolute;
  z-index: 4;
  width: 310px;
  height: 310px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

/* 배지 등장 속도: mj_reveal 기본 0.8s → 2.5배 = 2s */
.mj_changehero_badge.mj_reveal {
  transition-duration: 2s;
}

/* 왼쪽 배지 */
.mj_changehero_badge_l {
  left: calc(50% - 710px);
  bottom: 240px;
}

/* 오른쪽 배지 */
.mj_changehero_badge_r {
  right: calc(50% - 740px);
  bottom: 200px;
}

/* 빛나는 glow 원 — 고정 px 크기 */
.mj_changehero_badge_glow {
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  background: var(--mj_color_red);
  animation: mj_badge_glow 2.6s ease-in-out infinite;
}

/* 첫 번째 외곽 원: 310px */
.mj_changehero_badge_glow_1 {
  width: 310px;
  height: 310px;
  opacity: 0.5;
  transform: translate(-50%, -50%);
}

/* 두 번째 외곽 원: 380px */
.mj_changehero_badge_glow_2 {
  width: 380px;
  height: 380px;
  opacity: 0.2;
  transform: translate(-50%, -50%);
  animation-delay: 0.2s;
}

/* 최대 크기 → 작아졌다가 → 원래 크기 복귀 */
@keyframes mj_badge_glow {
  0%,
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
  50% {
    transform: translate(-50%, -50%) scale(0.88);
  }
}

/* 배지 안쪽 원 — 260px */
.mj_changehero_badge_inner {
  position: relative;
  z-index: 2;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: #0c0c0c;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 6px;
  padding: 20px;
}

/* 업종변경 후 일매출 — semibold 600, 18px, #fff */
.mj_changehero_badge_label {
  display: block;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  line-height: 1.5;
}

/* 숫자 + 단위 묶음 */
.mj_changehero_badge_num {
  display: flex;
  align-items: baseline;
  gap: 4px;
  white-space: nowrap;
  font-weight: normal;
}

/* 200 / 600 — yellow, 포인트폰트, 62px */
.mj_ch_count {
  font-size: 62px;
  color: var(--mj_color_yellow);
  line-height: 1;
}

/* 만 원 / % 상승 — #fff, 포인트폰트, 40px */
.mj_changehero_badge_suffix {
  font-size: 40px;
  color: #fff;
  line-height: 1;
}

/* ============================
  Change Hero 미디어쿼리
============================ */

/* -----------------------------------------
   Hero 텍스트 상단 여백 (padding-top)
   PC기준: 160px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_text {
    /* padding-top: 140px; */
  }
}
@media (max-width: 1280px) {
  .mj_changehero_text {
    /* padding-top: 120px; */
  }
}
@media (max-width: 1024px) {
  .mj_changehero_text {
    /* padding-top: 100px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_text {
    padding-top: calc(var(--mj_header_h) + 64px);
  }
}
@media (max-width: 425px) {
  .mj_changehero_text {
    padding-top: calc(var(--mj_header_h) + 16px);
  }
}

/* -----------------------------------------
   Hero eyebrow (창업비용 회수?)
   PC기준: 68px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_eyebrow {
    font-size: 56px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_eyebrow {
    font-size: 48px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_eyebrow {
    /* font-size: 40px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_eyebrow {
    /* font-size: 30px; */
  }
}
@media (max-width: 425px) {
  .mj_changehero_eyebrow {
    font-size: 24px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_eyebrow {
    /* font-size: 20px; */
  }
}

/* -----------------------------------------
   Hero title (6개월이면 충분합니다)
   PC기준: 92px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_title {
    font-size: 76px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_title {
    font-size: 64px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_title {
    /* font-size: 54px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_title {
    /* font-size: 40px; */
    margin-bottom: 12px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_title {
    font-size: 32px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_title {
    /* font-size: 28px; */
  }
}

/* -----------------------------------------
   Hero sub (서브텍스트)
   PC기준: 28px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_sub {
    font-size: 24px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_sub {
    /* font-size: 20px; */
  }
}
@media (max-width: 1024px) {
  .mj_changehero_sub {
    /* font-size: 18px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_sub {
    /* font-size: 16px; */
  }
}
@media (max-width: 425px) {
  .mj_changehero_sub {
    font-size: 18px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_sub {
    /* font-size: 14px; */
  }
}

/* -----------------------------------------
   Hero 건물 이미지 너비
   PC기준: 1100px
----------------------------------------- */
/* @media (max-width: 1480px) { .mj_changehero_store { width: 900px; } } */
/* @media (max-width: 1280px) { .mj_changehero_store { width: 760px; } } */
/* @media (max-width: 1024px) { .mj_changehero_store { width: 620px; } } */
@media (max-width: 768px) {
  .mj_changehero_store {
    width: 990px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_store {
    width: 700px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_store {
    width: 400px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_badge {
    width: 120px;
    height: 120px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_badge_glow_1 {
    width: 120px;
    height: 120px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_badge_glow_2 {
    width: 148px;
    height: 148px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_badge_inner {
    width: 100px;
    height: 100px;
    gap: 2px;
    padding: 8px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_badge_label {
    font-size: 10px;
  }
}
@media (max-width: 360px) {
  .mj_ch_count {
    font-size: 24px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_badge_suffix {
    font-size: 16px;
  }
}

/* -----------------------------------------
   Hero 하단 영역 높이 (모바일 flex:1 팽창 방지)
   PC기준: flex:1 자동
----------------------------------------- */
@media (max-width: 768px) {
  .mj_change_hero {
    min-height: 100vh;
  }
}
@media (max-width: 768px) {
  .mj_changehero_bottom {
    flex: 1;
    min-height: 280px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_bottom {
    flex: 1;
    min-height: 220px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_bottom {
    flex: 1;
    min-height: 190px;
  }
}

/* 하단 레드 바 — PC기준 380px, 절대 하단 고정 */
.mj_changehero_red_bar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  height: 380px;
  background: #9b0000;
}

/* -----------------------------------------
   Hero 레드바 높이
   PC기준: 320px
----------------------------------------- */
@media (max-width: 1024px) {
  .mj_changehero_red_bar {
    height: 300px;
  }
}
@media (max-width: 768px) {
  .mj_changehero_red_bar {
    height: 380px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_red_bar {
    height: 320px;
  }
}
@media (max-width: 360px) {
  .mj_changehero_red_bar {
    height: 150px;
  }
}

/* -----------------------------------------
   Hero 배지 컨테이너 크기
   PC기준: 310x310px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge {
    width: 260px;
    height: 260px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge {
    width: 220px;
    height: 220px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge {
    width: 180px;
    height: 180px;
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge {
    width: 195px;
    height: 195px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge {
    width: 140px;
    height: 140px;
  }
}

/* -----------------------------------------
   Hero 배지 위치 - 왼쪽
   PC기준: left calc(50% - 710px) / bottom 240px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_l {
    left: calc(50% - 580px);
    bottom: 200px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_l {
    left: calc(50% - 490px);
    bottom: 175px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_l {
    left: calc(50% - 470px);
    bottom: 260px;
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_l {
    left: calc(50% - 370px);
    bottom: 320px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_l {
    left: 4px;
    bottom: 260px;
  }
}

/* -----------------------------------------
   Hero 배지 위치 - 오른쪽
   PC기준: right calc(50% - 740px) / bottom 320px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_r {
    right: calc(50% - 600px);
    bottom: 255px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_r {
    right: calc(50% - 505px);
    bottom: 220px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_r {
    right: calc(50% - 490px);
    bottom: 358px;
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_r {
    right: calc(50% - 370px);
    bottom: 380px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_r {
    right: 4px;
    bottom: 320px;
  }
}

/* -----------------------------------------
   Hero 배지 글로우 - glow_1 (안쪽)
   PC기준: 310px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_glow_1 {
    width: 260px;
    height: 260px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_glow_1 {
    width: 220px;
    height: 220px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_glow_1 {
    /* width: 180px; */ /* height: 180px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_glow_1 {
    width: 195px;
    height: 195px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_glow_1 {
    width: 140px;
    height: 140px;
  }
}

/* -----------------------------------------
   Hero 배지 글로우 - glow_2 (바깥)
   PC기준: 380px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_glow_2 {
    width: 320px;
    height: 320px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_glow_2 {
    width: 270px;
    height: 270px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_glow_2 {
    /* width: 220px; */ /* height: 220px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_glow_2 {
    width: 240px;
    height: 240px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_glow_2 {
    width: 175px;
    height: 175px;
  }
}

/* -----------------------------------------
   Hero 배지 내부 원
   PC기준: 260x260px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_inner {
    width: 218px;
    height: 218px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_inner {
    width: 185px;
    height: 185px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_inner {
    /* width: 150px; */ /* height: 150px; */
    gap: 4px; /* padding: 14px; */
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_inner {
    width: 160px;
    height: 160px;
    gap: 3px;
    padding: 12px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_inner {
    width: 115px;
    height: 115px;
    gap: 2px;
    padding: 10px;
  }
}

/* -----------------------------------------
   Hero 배지 라벨 텍스트 (업종변경 후 일매출)
   PC기준: 18px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_label {
    font-size: 16px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_label {
    font-size: 14px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_label {
    font-size: 12px;
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_label {
    font-size: 13px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_label {
    font-size: 11px;
  }
}

/* -----------------------------------------
   Hero 배지 카운트 숫자 (200 / 600)
   PC기준: 62px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_ch_count {
    font-size: 52px;
  }
}
@media (max-width: 1280px) {
  .mj_ch_count {
    font-size: 44px;
  }
}
@media (max-width: 1024px) {
  .mj_ch_count {
    font-size: 36px;
  }
}
@media (max-width: 768px) {
  .mj_ch_count {
    font-size: 38px;
  }
}
@media (max-width: 425px) {
  .mj_ch_count {
    font-size: 28px;
  }
}

/* -----------------------------------------
   Hero 배지 단위 (만 원 / % 상승)
   PC기준: 40px
----------------------------------------- */
@media (max-width: 1480px) {
  .mj_changehero_badge_suffix {
    font-size: 34px;
  }
}
@media (max-width: 1280px) {
  .mj_changehero_badge_suffix {
    font-size: 28px;
  }
}
@media (max-width: 1024px) {
  .mj_changehero_badge_suffix {
    font-size: 22px;
  }
}
@media (max-width: 768px) {
  .mj_changehero_badge_suffix {
    font-size: 26px;
  }
}
@media (max-width: 425px) {
  .mj_changehero_badge_suffix {
    font-size: 18px;
  }
}

/* ============================
  Change Sec1
============================ */

/* 섹션 */
.mj_change_sec1 {
  position: relative;
  overflow: hidden;
  padding: 100px 0 160px;
}

/* z:0 배경 */
.mj_cs1_bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.mj_cs1_bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* z:1 왼쪽 하단 고정 매장 이미지 */
.mj_cs1_store {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 660px;
  transform: translateX(-110%);
  opacity: 0;
  transition:
    transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.5s 0.1s;
  pointer-events: none;
}
.mj_cs1_store.mj_cs1_store_on {
  transform: translateX(0);
  opacity: 1;
}
.mj_cs1_store img {
  width: 100%;
  display: block;
}

/* 헤드 */
.mj_cs1_head {
  position: relative;
  z-index: 3;
  text-align: center;
  margin-bottom: 48px;
}

/* 서브텍스트 — Pretendard 28px bold */
.mj_cs1_sub {
  font-size: 28px;
  font-weight: 700;
  color: var(--mj_color_white);
  margin-bottom: 12px;
}

/* 타이틀 wrap — 데코레이션 위치 기준 */
.mj_cs1_title_wrap {
  position: relative;
  display: inline-block;
}

/* 소자본 wrapper — ::after로 밑줄 이미지 자동 정렬 (원팩 방식) */
.mj_cs1_sojabon_wrap {
  position: relative;
  display: inline-block;
  vertical-align: bottom;
  isolation: isolate;
}
.mj_cs1_sojabon_wrap::after {
  content: '';
  position: absolute;
  bottom: 11px;
  left: 0;
  width: 100%;
  height: 22px;
  z-index: -1;
  background-image: var(--ul-img, none);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transform: translateX(-30px);
  transition:
    opacity 1.1s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    transform 1.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.mj_cs1_sojabon_wrap.mj_cs1_ul_on::after {
  opacity: 1;
  transform: translateX(0);
}

/* 기적 wrapper — 반짝이 기준점 */
.mj_cs1_em_wrap {
  position: relative;
  display: inline-block;
  isolation: isolate;
}

/* z:3 타이틀 — 포인트폰트 64px, 굵기 200, 좌→우 슬라이드 */
.mj_cs1_title {
  font-size: 64px;
  font-weight: 200;
  color: var(--mj_color_white);
  line-height: var(--mj_lh_sm);
  white-space: nowrap;
  transform: translateX(-44px);
  opacity: 0;
  transition:
    transform 1.1s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    opacity 1.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.mj_cs1_title.mj_cs1_title_on {
  transform: translateX(0);
  opacity: 1;
}

/* 기적 — 옐로우 */
.mj_cs1_em {
  font-style: normal;
  color: var(--mj_color_yellow);
}

/* z:4 반짝이 이미지 — em_wrap 기준 절대 배치 */
.mj_cs1_sparkle {
  position: absolute;
  left: -29px;
  top: -34px;
  z-index: 4;
  width: 70px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.5s;
}
.mj_cs1_sparkle.mj_cs1_sparkle_on {
  opacity: 1;
  animation: mj_cs1_sparkle_pulse 1.8s ease-in-out infinite;
}
.mj_cs1_sparkle img {
  width: 100%;
  display: block;
}

@keyframes mj_cs1_sparkle_pulse {
  0%,
  100% {
    transform: scale(1);
    filter: drop-shadow(0 0 4px rgba(255, 220, 60, 0.5));
  }
  50% {
    transform: scale(1.3);
    filter: drop-shadow(0 0 16px rgba(255, 220, 60, 1))
      drop-shadow(0 0 32px rgba(255, 200, 0, 0.6));
  }
}

/* 케이스 목록 */
.mj_cs1_cases {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 80px;
}

/* 케이스 행 — before + arrow + after */
.mj_cs1_case {
  display: flex;
  align-items: center;
}

/* z:5 업변 전 / z:7 업변 후 — JS 직접 제어, mj_reveal 미사용 */
.mj_cs1_before,
.mj_cs1_after {
  position: relative;
  width: 566px;
  flex-shrink: 0;
  opacity: 0;
  transform: translateY(40px);
  transition:
    opacity 1.1s ease,
    transform 1.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.mj_cs1_before {
  z-index: 5;
}
.mj_cs1_after {
  z-index: 7;
}
.mj_cs1_before.mj_active,
.mj_cs1_after.mj_active {
  opacity: 1;
  transform: translateY(0);
}

/* 카드 이미지 */
.mj_cs1_card_img {
  display: block;
  width: 100%;
  overflow: hidden;
}
.mj_cs1_card_img img {
  width: 100%;
  display: block;
}

/* z:6 설명 박스 — before 중앙 절대 배치, opacity 페이드인 */
.mj_cs1_desc {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 6;
  width: 340px;
  padding: 20px;
  background: rgba(0, 0, 0, 0.76);
  border-radius: 12px;
  text-align: center;
  color: #fff;
  opacity: 0;
  transition: opacity 0.6s 0.25s;
}
/* before 카드 진입 시 설명 박스 페이드인 */
.mj_cs1_before.mj_active .mj_cs1_desc {
  opacity: 1;
}

/* 가게명 — Pretendard 24px medium */
.mj_cs1_desc_name {
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  margin-bottom: 6px;
}

/* 설명 텍스트 — Pretendard 32px bold */
.mj_cs1_desc_text {
  font-size: 32px;
  font-weight: 700;
  color: #fff;
  line-height: var(--mj_lh_sm);
}

/* z:8 화살표 — 왼→오 클립 와이프 등장 */
.mj_cs1_arrow {
  width: 165px;
  flex-shrink: 0;
  position: relative;
  z-index: 8;
  margin: 0 -12.5px;
  opacity: 0;
}
.mj_cs1_arrow.mj_active {
  animation: mj_cs1_arrow_wipe 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}
@keyframes mj_cs1_arrow_wipe {
  0% {
    clip-path: inset(0 100% 0 0);
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  100% {
    clip-path: inset(0 0% 0 0);
    opacity: 1;
  }
}
.mj_cs1_arrow img {
  width: 100%;
  display: block;
}

/* z:9 뱃지 — 팝인(transition) 후 jiggle(animation) 자동 시작, JS 불필요 */
.mj_cs1_badge {
  position: absolute;
  top: -16px;
  right: -16px;
  z-index: 9;
  width: 340px;
  opacity: 0;
  transform: rotate(-5deg) scale(0.55);
  transition:
    transform 0.7s cubic-bezier(0.34, 1.4, 0.64, 1) 0.6s,
    opacity 0.6s ease-out 0.6s;
}
.mj_cs1_after.mj_active .mj_cs1_badge {
  transform: rotate(-5deg) scale(1); /* transition 팝인 타겟 */
  opacity: 1;
  /* 팝인(0.6s delay + 0.7s = 1.3s) 완료 후 jiggle 시작 */
  animation: mj_cs1_badge_jiggle 2.4s ease-in-out 1.4s infinite;
}
.mj_cs1_badge img {
  width: 100%;
  display: block;
}

@keyframes mj_cs1_badge_jiggle {
  0%,
  100% {
    transform: rotate(-5deg) scale(1) translateY(0);
  }
  38% {
    transform: rotate(-5deg) scale(1.04) translateY(-4px);
  }
  75% {
    transform: rotate(-5deg) scale(0.98) translateY(2px);
  }
}

/***** Sec1 1480 *****/
@media (max-width: 1480px) {
  .mj_cs1_before,
  .mj_cs1_after {
    width: 520px;
  }
  .mj_cs1_arrow {
    width: 152px;
    margin: 0 -11px;
  }
  .mj_cs1_desc {
    width: 320px;
  }
  .mj_cs1_desc_text {
    font-size: 30px;
  }
  .mj_cs1_store {
    width: 600px;
  }
}

/***** Sec1 1280 *****/
@media (max-width: 1280px) {
  .mj_cs1_before,
  .mj_cs1_after {
    width: 460px;
  }
  .mj_cs1_arrow {
    width: 140px;
    margin: 0 -10px;
  }
  .mj_cs1_desc {
    width: 300px;
  }
  .mj_cs1_desc_text {
    font-size: 28px;
  }
  .mj_cs1_store {
    width: 520px;
  }
}

/***** Sec1 1024 *****/
@media (max-width: 1024px) {
  .mj_change_sec1 {
    padding: 100px 0 160px;
  }
  .mj_cs1_title {
    font-size: 54px;
  }
  .mj_cs1_sojabon_wrap::after {
    bottom: 9px;
    height: 18px;
  }
  .mj_cs1_sparkle {
    width: 58px;
    left: -24px;
    top: -28px;
  }
  .mj_cs1_before,
  .mj_cs1_after {
    width: 360px;
  }
  .mj_cs1_arrow {
    width: 110px;
    margin: 0 -8px;
  }
  .mj_cs1_desc {
    width: 260px;
  }
  .mj_cs1_desc_name {
    font-size: 20px;
  }
  .mj_cs1_desc_text {
    font-size: 24px;
  }
  .mj_cs1_badge {
    width: 240px;
  }
  .mj_cs1_store {
    width: 400px;
  }
}

/***** Sec1 768 (모바일) *****/
@media (max-width: 768px) {
  .mj_change_sec1 {
    padding: 80px 20px 140px;
  }
  .mj_cs1_head {
    margin-bottom: 48px;
  }
  .mj_cs1_sub {
    font-size: 20px;
  }
  .mj_cs1_title {
    font-size: 38px;
    white-space: normal;
  }
  .mj_cs1_sparkle {
    width: 44px;
    left: -16px;
    top: -20px;
  }
  .mj_cs1_sojabon_wrap::after {
    bottom: 7px;
    height: 14px;
  }

  .mj_cs1_cases {
    gap: 48px;
  }

  .mj_cs1_case {
    flex-direction: column;
    width: 100%;
  }

  .mj_cs1_before,
  .mj_cs1_after {
    width: 100%;
  }

  /* 화살표 세로 — clip-path 대신 opacity 페이드만 */
  .mj_cs1_arrow {
    width: 80px;
    margin: 0;
    transform: rotate(90deg);
    clip-path: none;
  }
  .mj_cs1_arrow.mj_active {
    animation: none;
    opacity: 1;
    transform: rotate(90deg);
  }

  .mj_cs1_desc {
    width: 80%;
  }
  .mj_cs1_desc_text {
    font-size: 22px;
  }

  .mj_cs1_badge {
    width: 250px;
    top: auto;
    bottom: -12px;
    right: -8px;
  }

  .mj_cs1_store {
    width: 260px;
  }
}

/***** Sec1 425 *****/
@media (max-width: 425px) {
  .mj_cs1_title {
    font-size: 30px;
  }
  .mj_cs1_sojabon_wrap::after {
    bottom: 5px;
    height: 11px;
  }
  .mj_cs1_sparkle {
    width: 36px;
    left: -14px;
    top: -16px;
  }
  .mj_cs1_desc {
    width: 90%;
    padding: 14px;
  }
  .mj_cs1_desc_name {
    font-size: 18px;
  }
  .mj_cs1_desc_text {
    font-size: 20px;
  }
  .mj_cs1_badge {
    width: 170px;
  }
}

/***** Sec1 360 *****/
@media (max-width: 360px) {
  .mj_cs1_title {
    font-size: 26px;
  }
  .mj_cs1_sojabon_wrap::after {
    bottom: 4px;
    height: 9px;
  }
  .mj_cs1_sparkle {
    width: 30px;
    left: -12px;
    top: -14px;
  }
  .mj_cs1_sub {
    font-size: 17px;
  }
  .mj_cs1_desc_text {
    font-size: 18px;
  }
  .mj_cs1_badge {
    width: 100px;
  }
  .mj_cs1_store {
    width: 220px;
  }
}
