/* ============================================
   ¹è¿ò »õº½ ÇÁ·Î¸ð¼Ç - Vanilla CSS
   PC: 1200px / Tablet: 768~1199px / Mobile: ~767px
   ============================================ */

/* ============================================
   Reset - .page ½ºÄÚÇÁ (include È¯°æ Ãæµ¹ ¹æÁö)
   Àü¿ª * / body ´ë½Å .page ³»ºÎ ¿ä¼Ò¿¡¸¸ Àû¿ë
   ============================================ */
.page, .page * { box-sizing: border-box; margin: 0; padding: 0; }
.page img { display: block; max-width: 100%; /*height: auto; */}
.page a { /*color: inherit;*/ text-decoration: none; }
.page ul, .page ol { list-style: none; }
.page button { font-family: inherit; cursor: pointer; border: 0; background: none; }

/* ============================================
   CSS º¯¼ö - .baeoom-promo ·¡ÆÛ Å¬·¡½º
   (Àü¿ª :root ´ë½Å ·¡ÆÛ Å¬·¡½º¿¡ Á¤ÀÇÇØ
    include ½Ã ´Ù¸¥ ÆäÀÌÁö º¯¼ö¿Í Ãæµ¹ ¹æÁö)
   ============================================ */
.baeoom-promo {
  --purple: #7b3ab8;
  --purple-dark: #483c7f;
  --purple-deeper: #370698;
  --gold: #9d7047;
  --gold-dark: #7f4e21;
  --beige: #f9f5e7;
  --gray-text: #4d4d4d;
  --board-row-h: 51px;
  --board-visible: 5;
  --board-trans-dur: 900ms;
  --board-dwell: 2200ms;
  --board-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* ============================================
   ÆäÀÌÁö ÄÁÅ×ÀÌ³Ê
   body ½ºÅ¸ÀÏµµ .page ½ºÄÚÇÁ·Î Èí¼ö
   ============================================ */
.page {
  width: 100%;
  overflow-x: clip;
  font-family: 'Pretendard Variable', 'Pretendard', -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 400;
  color: #333;
  line-height: 1.5;
  background: #fff;
  -webkit-font-smoothing: antialiased;
}

/* ============================================
   HERO
   ============================================ */
.hero {
  width: 100%;
  background: linear-gradient(to bottom, #fbeedd 0%, #f4e0c8 100%);
  display: flex;
  justify-content: center;
}
.hero__inner {
  position: relative;
  width: 100%;
  max-width: 1200px;
  display: flex;
  justify-content: center;
}
.hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.hero__main {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1200px;
  height: auto;
  display: block;
  
}

/* ============================================
   EVENT °øÅë
   ============================================ */
.event {
  width: 100%;
  padding: 160px 8px;
  display: flex;
  justify-content: center;
}
.event__container {
  width: 100%;
  max-width: 1200px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 70px;
}
.event__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  width: 100%;
}
.event__badge {
  position: relative;
  width: 310px;
  height: 94px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.event__badge img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.event__badge-text {
  position: relative;
  display: flex;
  align-items: center;
  gap: 11px;
  padding-left: 20px;
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 600;
}
.badge__title {
  color: var(--purple);
  font-size: 26px;
  letter-spacing: -1.04px;
}
.badge__num {
  color: #333;
  font-size: 30px;
  letter-spacing: -1.2px;
}

.event__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
  gap: 0;
}
.event__sub {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-size: 32px;
  color: #333;
  letter-spacing: -0.64px;
  line-height: 1.2;
  font-weight: 400;
}
.event__big {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-size: 80px;
  color: #000;
  font-weight: 400;
  letter-spacing: -4.8px;
  line-height: 1.2;
}
.event__big-line {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-size: 62px;
  color: #000;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -1.24px;
}
.event__big-line--xl {
  font-size: 80px;
  letter-spacing: -4.8px;
}
.event__big-line .accent { color: var(--purple); }
.event__desc {
  font-size: 24px;
  color: #000;
  letter-spacing: -0.72px;
  line-height: 1.3;
  margin-top: 8px;
}
/* PC¿¡¼­¸¸ ¸ð¹ÙÀÏ¿ë ÁÙ¹Ù²Þ ¼û±è */
.br-mobile { display: none; }

/* ============================================
   EVENT 01 - ±×¶óµð¾ðÆ® ¹è°æ + Ä«µå 2°³
   ============================================ */
.event--01 {
  background: linear-gradient(to bottom, #f4e8f4 0%, #fff 25.481%, #fff2e0 100%);
}
.cards-2 {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  width: 100%;
}
.card-item {
  flex: 1 1 590px;
  max-width: 590px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.card-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 590 / 427;
  display: flex;
  align-items: center;
  justify-content: center;
}
.card-frame__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.card-frame__content {
  position: relative;
  text-align: center;
}
.card__label {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 32px;
  color: #444;
  line-height: 1.5;
}
.card__big {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 400;
  font-size: 74px;
  color: var(--purple);
  line-height: 1.1;
}
.card__note {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 400;
  font-size: 18px;
  color: #32325e;
  margin-top: 12px;
  line-height: 1.9;
}

/* ============================================
   NOTICE
   ============================================ */
.notice {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: left;
}
.notice__title {
  font-weight: 500;
  font-size: 20px;
  color: #000;
  letter-spacing: -0.8px;
  line-height: 1.5;
}
.notice__list {
  padding-left: 24px;
  list-style: disc;
  color: var(--gray-text);
  font-size: 16px;
  letter-spacing: -0.64px;
  line-height: 1.5;
}

.notice__list li { margin-bottom: 2px; }
.notice__list--ol {
  list-style: decimal;
  letter-spacing: -0.32px;
}
.notice--block {
  width: 100%;
  max-width: 1200px;
  padding-top: 30px;
  align-items: flex-start;
}

/* ============================================
   EVENT 02 - ½Ç½À ÇÒÀÎ Ä«µå
   ============================================ */
.event--02 {
  background: linear-gradient(to bottom, #fffeff 28.846%, #f9f3f9 58.173%, #ffe8f4 100%);
}
.practice-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.practice-card {
  background: #fff;
  border: 1px solid #e4bebe;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  padding: 20px 40px;
  width: 100%;
}
.practice-card__info {
  display: flex;
  align-items: center;
  gap: 20px;
  flex: 1 1 560px;
  min-width: 0;
}
.discount-badge {
  position: relative;
  width: 126px;
  height: 126px;
  border-radius: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  color: #fff;
  text-shadow: 0 3px 3px rgba(0, 0, 0, 0.28);
  background-size: cover;
  background-position: center;
}
.discount-badge--1 { background-image: url('../assets_202605/card-discount-1.png'); }
.discount-badge--2 { background-image: url('../assets_202605/card-discount-2.png'); }
.discount-badge--3 { background-image: url('../assets_202605/card-discount-3.png'); }
.discount-badge span { font-size: 22px; font-weight: 500; }
.discount-badge strong {
  font-size: 27px;
  font-weight: 700;
}
.discount-badge strong b {
  font-size: 44px;
  font-weight: 700;
}
.practice-card__text {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.practice-card__title {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 28px;
  color: #000;
  line-height: 1.2;
}
.practice-card__price {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.price-old {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 200;
  font-size: 24px;
  color: #333;
  text-decoration: line-through;
}
.price-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 600;
  font-size: 32px;
  line-height: 1;
  color: #555;
  flex-shrink: 0;
  margin: 0 4px;
}
.price-new {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 48px;
  line-height: 1.2;
}
.price-new--1 { color: #9d3ab8; }
.price-new--2 { color: #3a4bb8; }
.price-new--3 { color: #643ab8; }

.btn-coupon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--purple-dark);
  color: #fff;
  padding: 25px 70px;
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 400;
  font-size: 26px;
  flex-shrink: 0;
  min-width: 240px;
}
.arrow-right {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

/* ============================================
   EVENT 03 - Ç®ÆÐÅ°Áö
   ============================================ */
.event--03 {
  background: linear-gradient(to bottom, #fff 55.288%, #ffedd3 100%);
}
.package-box {
  position: relative;
  width: 100%;
  padding: 80px 53px 59px;
}
.package-box__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  z-index: 0;
}
.package-tag {
  position: absolute;
  right: 80px;
  top: 12px;
  width: 182px;
  height: 145px;
  background: var(--purple);
  border-radius: 0 0 999px 999px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 20px;
  filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.25));
  z-index: 2;
}
.package-tag__title {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 600;
  font-size: 36px;
  color: #fff;
  letter-spacing: -0.72px;
  line-height: 1.2;
  text-align: center;
}
.package-tag__hash {
  font-family: 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 16px;
  color: #ffdcb4;
  text-align: center;
  letter-spacing: -0.32px;
  line-height: 1.4;
  margin-top: 4px;
}

.package-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding-top: 60px;
}
.package-pill {
  background: var(--beige);
  border: 4px solid #a8896c;
  border-radius: 230px;
  padding: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  margin-bottom: 40px;
}
.package-pill span {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 600;
  font-size: 48px;
  color: var(--gold-dark);
  letter-spacing: -0.48px;
  white-space: nowrap;
}
.package-pill em {
  color: var(--purple-deeper);
  font-style: normal;
}

.package-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  width: 100%;
}
.package-card {
  background: #fff;
  border-radius: 10px;
  flex: 1 1 534px;
  max-width: 534px;
  padding: 30px 53px 19px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
}
.package-card__head {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 400;
  font-size: 40px;
  color: var(--gold);
  text-align: center;
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: center;
  position: relative;
}
/* ½Ç½À°ú¸ñ head: "½Ç½À°ú¸ñ" ÅØ½ºÆ®´Â head °¡¿îµ¥¿¡ ´Üµ¶ ¹èÄ¡ÇÏ°í
   "20% ÇÒÀÎ" ¾Ë¾àÀº ÅØ½ºÆ® ¿À¸¥ÂÊ¿¡ absolute ·Î ¶ç¿ö, "ÀÌ·Ð°ú¸ñ"°ú ÅØ½ºÆ® °¡¿îµ¥ X °¡ ÀÏÄ¡ÇÏµµ·Ï Á¤·Ä.
   left ÀÇ em Àº ¾Ë¾à ÀÚ±â font-size(20px) ±âÁØÀÌ¹Ç·Î °è»ê ½Ã ÁÖÀÇ ? ÅØ½ºÆ® ÆøÀÇ Àý¹Ý(¾à 70px)+°¸(¾à 14px)?84px = 4.2em */
.package-card__head .discount-pill {
  position: absolute;
  left: calc(50% + 4.2em);
  top: 50%;
  transform: translateY(-50%);
}
.discount-pill {
  background: var(--gold);
  color: #fff;
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 20px;
  padding: 8px 16px;
  border-radius: 999px;
  white-space: nowrap;
}
.package-card__row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  flex-wrap: nowrap;
  white-space: nowrap;
}
.price-line {
  display: flex;
  align-items: center;
  gap: 6px;
}
.price-line__per {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 300;
  font-size: 22px;
  color: #333;
}
.price-line__old {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 300;
  font-size: 22px;
  color: #333;
  text-decoration: line-through;
}
.price-block { text-align: right; position: relative; }
.price-block__caption {
  font-weight: 300;
  font-size: 15px;
  color: #333;
  position: absolute;
  right: 0;
  bottom: 100%;
  margin-bottom: 4px;
  white-space: nowrap;
}
.price-block__big {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 40px;
  color: var(--purple-deeper);
  line-height: 1.2;
}
.price-block__big strong { font-weight: 600; }

.package-total {
  background: #eee7fe;
  border-radius: 10px;
  padding: 34px 16px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
}
.package-total__icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.package-total__icon svg { display: block; }
.package-total__label {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 300;
  font-size: 30px;
  color: #333;
}
.package-total__price {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 500;
  font-size: 60px;
  color: var(--purple-deeper);
  line-height: 1.2;
}
.package-total__price strong { font-weight: 700; }

.package-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 34px;
  width: 100%;
}
.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: var(--purple-dark);
  color: #fff;
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 400;
  font-size: 28px;
  letter-spacing: -0.56px;
  height: 80px;
  margin-top : 40px;
  padding: 0 100px;
  text-align: center;
  min-width: 300px;
}
.package-cta__note {
  font-size: 16px;
  color: #333;
  text-align: center;
  line-height: 1.5;
}

/* ============================================
   EVENT 04 - ÀÌÀ¯ ÀÖ´Â ¹è¿ò
   ============================================ */
.event--04 {
  background: linear-gradient(to bottom, #fff 13.942%, #fff9fc 71.635%, #ffe8f4 100%);
}
.event--04 .event__container { gap: 20px; }

.event-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  width: fit-content;
  margin: 0 auto;
}
.event-info__row {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.info-tag {
  background: var(--gray-text);
  color: #fff;
  font-size: 17px;
  padding: 8px 20px;
  border-radius: 999px;
  width: 100px;
  text-align: center;
  flex-shrink: 0;
  line-height: 1.2;
}
.event-info__row p {
  font-size: 17px;
  color: #333;
  line-height: 1.3;
}

.present-img {
  width: 100%;
  max-width: 722px;
  margin: 0 auto;
}
.present-img img { width: 100%; }

.quiz-box {
  position: relative;
  width: 100%;
  max-width: 827px;
  aspect-ratio: 876 / 731;
  padding: 0 214px 70px 214px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  margin: 0 auto;
}
.quiz-box__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  z-index: 0;
}
.quiz-box__content {
  position: relative;
  z-index: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
}
.quiz-box__heading {
  position: absolute;
  top: 20.38%;
  left: 0;
  width: 100%;
  height: 29.14%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.quiz-box__title {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 400;
  font-size: 56px;
  color: #333;
  letter-spacing: -3.36px;
  line-height: 1.3;
}
.quiz-box__sub {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-weight: 300;
  font-size: 38px;
  color: var(--purple);
  letter-spacing: -2.28px;
  line-height: 1.3;
}
.quiz-box__desc {
  font-size: 20px;
  color: #333;
  letter-spacing: -1.2px;
  line-height: 1.3;
  margin: 30px 0 16px;
}
.quiz-box__content .btn-primary { width: 100%; max-width: 420px; padding: 0 30px; background: #da7b96; }
.quiz-box__note {
  font-size: 16px;
  color: #333;
  text-align: center;
  line-height: 1.3;
  letter-spacing: -0.32px;
}

.board {
  position: relative;
  width: 100%;
  padding: 50px 90px;
  filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.14));
}
.board__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  z-index: 0;
}
.board__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.board__title {
  font-family: 'Paperlogy', 'Pretendard Variable', sans-serif;
  font-size: 30px;
  color: var(--purple-dark);
  letter-spacing: -1.8px;
  line-height: 1.3;
  text-align: center;
  padding-bottom: 30px;
}
.board__table {
  width: 100%;
  max-width: 1020px;
  background: #f6f6f6;
  border-top: 1px solid #a1a1a1;
  border-bottom: 1px solid #a1a1a1;
  height: calc(var(--board-row-h) * var(--board-visible));
  overflow: hidden;
  position: relative;
}
.board__track {
  display: flex;
  flex-direction: column;
  transform: translateY(0);
  will-change: transform;
}
.board__row {
  display: flex;
  align-items: stretch;
  background: #fff;
  border-top: 1px solid #a1a1a1;
  height: var(--board-row-h);
  flex: 0 0 var(--board-row-h);
  box-sizing: border-box;
  overflow: hidden;
}
.board__row:first-child { border-top: 0; }
.board__cell {
  background: #fff;
  padding: 16px 20px;
  font-size: 14px;
  color: #333;
  line-height: 1.3;
  display: flex;
  align-items: center;
  flex: 1;
}
.board__cell--id {
  width: 148px;
  flex: 0 0 148px;
  font-weight: 500;
  color: #000;
  justify-content: center;
}

/* ============================================
   CONSULTING SECTION
   ============================================ */
.consulting {
  background: #fff;
  padding: 90px 49px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
}
.consulting__head {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.consulting__title {
  font-weight: 600;
  font-size: 26px;
  color: #000;
  letter-spacing: -0.52px;
  line-height: 1;
}
.consulting__sub {
  font-weight: 300;
  font-size: 17px;
  color: #767676;
  letter-spacing: -0.34px;
  line-height: 1.2;
}
.consulting__row {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}
.consulting__box {
  background: #eee;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 26px 99px;
  height: 80px;
}
.consulting__label {
  font-size: 24px;
  color: #000;
  letter-spacing: -0.48px;
}
.consulting__num {
  font-weight: 300;
  font-size: 27px;
  color: #000;
  letter-spacing: -0.54px;
}
.consulting__num--md { font-size: 24px; letter-spacing: -0.48px; }
.consulting__box--link { padding-left: 112px; }
.consulting__arrow {
  font-size: 28px;
  color: #000;
  font-weight: 300;
}

/* ============================================
   TABLET (768 ~ 1199)
   ============================================ */
@media (max-width: 1199px) {
  .event { padding: 100px 16px; }
  .event__container { max-width: 720px; gap: 50px; }

  .event__sub { font-size: 28px; }
  .event__big { font-size: 64px; letter-spacing: -3.6px; }
  .event__big-line { font-size: 52px; letter-spacing: -1px; }
  .event__big-line--xl { font-size: 64px; letter-spacing: -3.6px; }
  .event__desc { font-size: 20px; letter-spacing: -0.6px; }
  .br-mobile { display: inline; }

  /* Event 01 */
  .cards-2 { gap: 20px; }
  .card-item { flex: 1 1 100%; max-width: 100%; }
  .card__big { font-size: 64px; }
  .card__label { font-size: 28px; }

  /* Event 02 */
  .practice-card {
    flex-direction: column;
    align-items: stretch;
    padding: 24px;
    gap: 18px;
  }
  .practice-card__info {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: flex-start;
  }
  .practice-card__title { font-size: 24px; }
  .price-old { font-size: 22px; }
  .price-arrow { font-size: 28px; }
  .price-new { font-size: 40px; }
  .btn-coupon {
    width: 100%;
    min-width: 0;
    padding: 18px;
    font-size: 22px;
  }

  /* Event 03 */
  .package-box { padding: 30px 24px 50px; }
  .package-tag {
    right: 24px;
    top: 10px;
    width: 150px;
    height: 120px;
    padding-top: 16px;
  }
  .package-tag__title { font-size: 28px; letter-spacing: -0.5px; }
  .package-tag__hash { font-size: 14px; }
  .package-content { padding-top: 130px; }
  .package-pill { padding: 20px; }
  .package-pill span { font-size: 36px; }
  .package-card { flex: 1 1 100%; max-width: 100%; padding: 24px; }
  .package-card__head { font-size: 32px; gap: 8px; flex-wrap: wrap; }
  .package-total__price { font-size: 48px; }
  .package-total__label { font-size: 24px; }
  .package-total__icon svg { width: 80px; height: 56px; }
  .price-block__big { font-size: 32px; }

  /* Event 04 */
  .quiz-box { padding: 0 60px 40px; max-width: 720px; }
  .quiz-box__title { font-size: 44px; letter-spacing: -2.5px; }
  .quiz-box__sub { font-size: 30px; letter-spacing: -1.8px; }
  .quiz-box__desc { font-size: 18px; letter-spacing: -0.9px; margin: 18px 0 12px; }

  .board { padding: 40px 30px; }
  .board__title { font-size: 24px; letter-spacing: -1.4px; }

  .btn-primary { font-size: 24px; padding: 0 40px; height: 70px; }

  .consulting { padding: 70px 30px; }
  .consulting__box { padding: 20px 50px; }
  .consulting__box--link { padding-left: 50px; }
}

/* ============================================
   MOBILE (~767px)
   ============================================ */
@media (max-width: 767px) {
  .baeoom-promo {
    --board-row-h: 49px;
    --board-trans-dur: 800ms;
    --board-dwell: 2000ms;
  }

  .event { padding: 80px 16px; }
  .event__container { gap: 40px; }

  .event__badge { width: 240px; height: 72px; }
  .badge__title { font-size: 20px; letter-spacing: -0.8px; }
  .badge__num { font-size: 24px; letter-spacing: -1px; }

  .event__sub { font-size: 22px; letter-spacing: -0.44px; }
  .event__big { font-size: 42px; letter-spacing: -2px; }
  .event__big-line { font-size: 36px; letter-spacing: -0.7px; }
  .event__big-line--xl { font-size: 42px; letter-spacing: -2px; }
  .event__desc { font-size: 16px; letter-spacing: -0.4px; }
  .event__desc--04 .desc-line { display: inline-block; white-space: nowrap; }
  .event__desc--04 .desc-sep { display: block; height: 0; font-size: 0; line-height: 0; }

  /* Event 01 */
  .card__big { font-size: 44px; }
  .card__label { font-size: 22px; }
  .card__note { font-size: 14px; margin-top: 6px; }
  .notice__title { font-size: 16px; letter-spacing: -0.6px; }
  .notice__list { font-size: 13px; letter-spacing: -0.4px; padding-left: 20px; }

  /* Event 02 */
  .practice-card {
    flex-direction: column;
    align-items: stretch;
    padding: 14px;
    gap: 12px;
  }
  .practice-card__info {
    gap: 12px;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 0 4px;
  }
  .practice-card__text { flex: 1 1 0; min-width: 0; }
  .discount-badge { width: 78px; height: 78px; flex-shrink: 0; }
  .discount-badge span { font-size: 12px; }
  .discount-badge strong { font-size: 14px; }
  .discount-badge strong b { font-size: 22px; }
  .practice-card__title { font-size: 18px; line-height: 1.2; }
  .practice-card__price {
    gap: 4px;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
    white-space: nowrap;
    margin-top: 2px;
  }
  .price-old { font-size: 20px; }
  .price-arrow { font-size: 18px; margin: 0 2px; color: #555; }
  .price-new { font-size: 22px; font-weight: 600; }
  .btn-coupon {
    min-width: 0;
    width: 100%;
    padding: 16px;
    font-size: 18px;
  }

  /* Event 03 */
  .event--03 {
    background: linear-gradient(to bottom, #fff 0%, #fff 33%, #f9f8f4 33%, #f9f8f4 100%);
  }
  .event--03 .event__container { gap: 80px; }
  .package-box { padding: 30px 16px 40px; }
  .package-box__bg { display: none; }
  .package-tag {
    right: 16px;
    width: 110px;
    height: 100px;
    top: -2px;
    padding-top: 14px;
    transform: none;
    z-index: 3;
  }
  .package-tag__title { font-size: 24px; letter-spacing: -0.4px; }
  .package-tag__hash { font-size: 13px; }
  .package-content { padding-top: 50px; gap: 24px; }

  .package-pill {
    padding: 14px 20px;
    border-width: 3px;
    border-radius: 100px;
    width: 100%;
    max-width: 100%;
  }
  .package-pill span {
    font-size: 28px;
    font-weight: 700;
    white-space: nowrap;
    text-align: center;
    line-height: 1.2;
    letter-spacing: -0.5px;
  }
  .package-card { padding: 18px 20px; align-items: stretch; }
  .package-card__head {
    font-size: 26px;
    gap: 8px;
    justify-content: center;
    flex-wrap: wrap;
    position: relative;
  }
  /* ½Ç½À°ú¸ñ head: "½Ç½À°ú¸ñ" ÅØ½ºÆ®´Â °¡¿îµ¥, "20% ÇÒÀÎ" ¾Ë¾àÀº ÅØ½ºÆ® ¿À¸¥ÂÊ¿¡ absolute ·Î ºÙ¿©
     "ÀÌ·Ð°ú¸ñ"°ú ÅØ½ºÆ® ½ÃÀÛ¼±(ÁÂÃø)ÀÌ µ¿ÀÏÇÏµµ·Ï Á¤·Ä. ¾Ë¾àÀº ÅØ½ºÆ®¿Í °ãÄ¡Áö ¾Ê°Ô ÅØ½ºÆ® Æø + °¸¸¸Å­ ¿ìÃøÀ¸·Î ÀÌµ¿ */
  .package-card__head .discount-pill {
    position: absolute;
    left: calc(50% + 3.9em);
    top: 50%;
    transform: translateY(-50%);
  }
  .discount-pill { font-size: 14px; padding: 6px 12px; }
  .package-card__row {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-wrap: nowrap;
    white-space: nowrap;
  }
  .price-line {
    flex: 0 0 auto;
    align-items: center;
  }
  .price-line__per, .price-line__old { font-size: 20px; }
  .price-block {
    text-align: center;
    position: relative;
  }
  .price-block__caption {
    font-size: 14px;
	line-height: 15px;
    position: absolute;
    top: -16px;
    right: 0;
    white-space: nowrap;
  }
  .price-block__big { font-size: 26px; }
  .package-card .price-block { width: auto; }
  .package-card .price-block__big { font-size: 26px; line-height: 1; }

  .package-cta { gap: 18px; }
  .package-total {
    flex-wrap: nowrap;
    padding: 22px 10px;
    gap: 8px;
    justify-content: center;
  }
  .package-total__icon svg { width: 56px; height: 40px; flex-shrink: 0; }
  .package-total__label { font-size: 18px; flex-shrink: 0; white-space: nowrap; }
  .package-total__price { font-size: 32px; flex-shrink: 0; white-space: nowrap; }
  .btn-primary {
    font-size: 22px;
    padding: 0 20px;
    height: 64px;
    min-width: 0;
    width: calc(100% - 32px);
    margin: 0 16px;
  }
  .package-cta__note { font-size: 13px; letter-spacing: -0.2px; }

  /* Event 04 */
  .event-info { width: 100%; max-width: 360px; margin: 0 auto; align-items: stretch; gap: 10px; }
  .info-tag {
    font-size: 13px;
    padding: 6px 14px;
    height: auto;
    width: auto;
    white-space: nowrap;
    flex-shrink: 0;
  }
  .event-info__row p { font-size: 13px; }
  .event-info__row {
    gap: 10px;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .event-info__row p { flex: 1 1 auto; min-width: 0; }
  .event-info__row p br { display: none; }

  .quiz-box {
    padding: 0;
    max-width: 600px;
    aspect-ratio: 876 / 731;
  }
  .quiz-box__bg { object-fit: fill; }
  .quiz-box__content {
    position: absolute;
    left: 12%;
    right: 12%;
    top: 52%;
    bottom: 10%;
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 4px;
  }
  .quiz-box__heading {
    position: absolute;
    left: 0;
    right: 0;
    top: 20.38%;
    height: 29.14%;
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    margin: 0;
    z-index: 2;
  }
  .quiz-box__title { font-size: 32px; letter-spacing: -1.5px; line-height: 1.1; }
  .quiz-box__sub { font-size: 20px; letter-spacing: -0.9px; line-height: 1.1; }
  .quiz-box__desc {
    font-size: 14px;
    letter-spacing: -0.4px;
    margin: 0;
  }
  .quiz-box__content .btn-primary { height: 60px; font-size: 20px; }
  .quiz-box__note { font-size: 13px; }

  .board { padding: 30px 16px; }
  .board__title {
    font-size: 18px;
    letter-spacing: -0.8px;
    padding-bottom: 20px;
  }
  .board__cell { font-size: 12px; padding: 16px 12px 16px 4px; }
  .board__cell--id { width: 80px; flex: 0 0 80px; font-size: 11px; padding: 16px 4px; }

  /* Consulting */
  .consulting { padding: 50px 16px; }
  .consulting__title { font-size: 20px; letter-spacing: -0.4px; }
  .consulting__sub { font-size: 13px; letter-spacing: -0.26px; }
  .consulting__row { flex-direction: column; width: 100%; }
  .consulting__box {
    width: 100%;
    padding: 20px;
    justify-content: center;
    height: 64px;
  }
  .consulting__box--link { padding: 20px; }
  .consulting__label { font-size: 18px; }
  .consulting__num { font-size: 20px; }
  .consulting__num--md { font-size: 18px; }
}

/* Ãß°¡ ÀÛÀº ¸ð¹ÙÀÏ */
@media (max-width: 380px) {
  .event__big { font-size: 36px; letter-spacing: -1.6px; }
  .event__big-line--xl { font-size: 36px; letter-spacing: -1.6px; }
  .card__big { font-size: 36px; }
  .price-new { font-size: 26px; }
  .package-pill span { font-size: 18px; }
}

/* ÈÄ±â º¸µå ·Ñ¸µ ¾Ö´Ï¸ÞÀÌ¼Ç - Á¢±Ù¼º Æú¹é */
@media (prefers-reduced-motion: reduce) {
  .board__table { height: auto; overflow: visible; }
  .board__track { transform: none !important; transition: none !important; }
}

/* ============================================
   Hero Section ¼öÁ¤_sts
   ============================================ */

/* ±âº» ½ºÅ¸ÀÏ (PC/ÅÂºí¸´ °¡·Î) */
.hero_ts {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 50px 20px; /* ¿©¹é È®º¸ */
  min-height: 400px;
  height: 870px;
}

.hero__inner_ts {
  display: flex;
  flex-direction: row; /* °¡·Î·Î ¹èÄ¡ */
  justify-content: center;
  align-items: center;
  gap: 20px; /* ÀÌ¹ÌÁö »çÀÌ °£°Ý */
  width: 100%;
  max-width: 1200px; /* ÃÖ´ë Æø ¼³Á¤ */
}

.hero__img_ts {
  max-width: 45%; /* ÀÌ¹ÌÁö°¡ ³ª¶õÈ÷ µé¾î°¥ ¼ö ÀÖ°Ô ¼³Á¤ */
  height: auto;
  object-fit: contain;
}

/* 768px ÀÌÇÏ ¹ÝÀÀÇü ¼³Á¤ */
@media (max-width: 768px) {
  .hero__inner_ts {
    flex-direction: column; /* ¼¼·Î·Î ½×±â */
    gap: 15px; /* ¼¼·Î °£°Ý Á¶Àý */
	height: 1200px;
  }
.hero_ts_img--1 {
   width: 80% !important;
   margin:  -40px auto;
  }
  .hero_ts_img--2 {
    margin: 0%;
  }
  .hero__img_ts {
    max-width: 90%; /* ¸ð¹ÙÀÏ¿¡¼­´Â È­¸é¿¡ ²Ë Â÷°Ô Á¶Àý (±âÈ£¿¡ µû¶ó º¯°æ °¡´É) */
  }
}



/* ¸®½ºÆ® ÀüÃ¼ ÄÁÅ×ÀÌ³Ê */
.notice_e5_list {
  list-style: none;
  padding: 0;
  margin: 10px 0;
}

/* ¸®½ºÆ® °³º° Ç×¸ñ */
.notice_e5_list li {
  position: relative;
  padding-left: 18px;     /* ºÒ¸´°ú ÅØ½ºÆ® »çÀÌ °£°Ý */
  margin-bottom: 6px;    /* ºí¸´°ú ºí¸´ »çÀÌÀÇ °£°Ý (ºí¸´ Çà°£ À¯Áö) */
  
  /* ÅØ½ºÆ® Çà°£ ¼³Á¤ */
  font-size: 14px;        /* ÆùÆ® Å©±â ±âÁØ */
  line-height: 16px;      /* ÅØ½ºÆ® Çà°£ 16px */
  color: #333;
  word-break: keep-all;   /* ÇÑ±Û ÁÙ¹Ù²ÞÀ» ÀÚ¿¬½º·´°Ô */
}

/* Ä¿½ºÅÒ ºÒ¸´ (°¡»ó ¿ä¼Ò) */
.notice_e5_list li::before {
  content: "";
  position: absolute;
  left: 0;
  
  /* Çà°£ÀÌ 18pxÀÏ ¶§ ºÒ¸´À» ¼¼·Î Áß¾Ó Á¤·ÄÇÏ´Â ¹ý:
     (line-height 18px - ºÒ¸´³ôÀÌ 4px) / 2 = 7px    */
  top: 7px; 
  width: 4px;
  height: 4px;
  background-color: #303030;
  border-radius: 50%;
}