/* =========================================
   ¹è·Ð 2026 ºñÅ¸ ½á¸Ó(VITA SUMMER) ÀÌº¥Æ®
   ·¡ÆÛ (.vita-summer) ? µðÀÚÀÎ ÅäÅ« + Classic ASP »ðÀÔ °Ý¸®
   - :root ´ë½Å .vita-summer¿¡ º¯¼ö Á¤ÀÇ (ºÎ¸ð ÆäÀÌÁö Àü¿ª Ãæµ¹ ¹æÁö)
   - all: revert + ¿ä¼Ò resetÀº ·¡ÆÛ ÇÏÀ§¸¸ (Àü¿ª *, body, img »ç¿ë ¾È ÇÔ)
   - .vita-summer-event, .vita-summer-event__notice µî ¸ðµç ÄÄÆ÷³ÍÆ®´Â .vita-summer ÇÏÀ§·Î ½ºÄÚÇÁ
   ========================================= */
.vita-summer {
  /* »ö»ó */
  --color-bg: #ffffff;
  --color-text: #333333;
  --color-text-sub: #4d4d4d;
  --color-text-mute: #666666;

  /* ºê·£µå ÄÃ·¯ */
  --color-title-brown: #541f06;
  --color-sub-brown: #c46840;

  /* 15% ±×·ì (·¹µå °è¿­) */
  --color-red: #f95157;
  --color-red-dark: #f84047;
  --color-red-magenta: #a21260;
  --color-red-badge-bg: #fff0ee;

  /* 5% ±×·ì (ºí·ç °è¿­) */
  --color-blue: #5c72ff;
  --color-blue-navy: #32325e;
  --color-blue-badge-bg: #ecf5ff;

  /* ±âÅ¸ Æ÷ÀÎÆ® */
  --color-pink-hot: #de0078;
  --color-pink-label: #ff467d;
  --color-coral: #ff6368;
  --color-price-pill: #ececec;

  /* ÆäÀÌÁö Æø */
  --page-max-width: 2200px;
  --container-width: 1080px;

  /* ÆùÆ® */
  --font-paperlogy: "Paperlogy", "Pretendard Variable", sans-serif;
  --font-pretendard: "Pretendard Variable", "Pretendard", sans-serif;
  --font-cafe24: "Cafe24 PRO UP", "Ä«Æä24 ÇÁ·Î¾÷", "Paperlogy", sans-serif;

  /* ºÎ¸ð(Classic ASP) »ó¼Ó¡¤½ºÅ¸ÀÏ Â÷´Ü ÈÄ ÆäÀÌÁö ±âº»°ª Àç¼±¾ð */
  all: revert;
  font-family: var(--font-pretendard);
  color: var(--color-text);
  background: var(--color-bg);
  line-height: 1.4;
  text-align: left;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* box-sizing: Àü¿ª(*) ´ë½Å ·¡ÆÛ ÇÏÀ§·Î ÇÑÁ¤ */
.vita-summer,
.vita-summer *,
.vita-summer *::before,
.vita-summer *::after {
  box-sizing: border-box;
}

/* ¿ä¼Ò reset: Àü¿ª ´ë½Å ·¡ÆÛ ÇÏÀ§·Î ÇÑÁ¤.
   all: revert´Â ·¡ÆÛ ÀÚ½Å¿¡¸¸ Àû¿ëµÇ¹Ç·Î, ÀÚ½ÄÀÇ ºñ»ó¼Ó ¼Ó¼º(border/background/padding µî)¿¡´Â
   ºÎ¸ð ASPÀÇ Àü¿ª ¿ä¼Ò ±ÔÄ¢(img/a/ul/li...)ÀÌ ±×´ë·Î Ä§ÅõÇÒ ¼ö ÀÖ´Ù. ¡æ ´©¼ö ¼Ó¼ºÀ» ¸í½ÃÀûÀ¸·Î Â÷´ÜÇÑ´Ù. */
.vita-summer .bl_wingBn__cont img {
  max-width: 100%;
  display: block;
  border: 0;
  margin: 0; /* ºÎ¸ð img{border} Ä§Åõ Â÷´Ü */
}

.vita-summer ul,
.vita-summer ol {
  margin: 0;
  padding: 0;
  list-style: none;
  border: 0;
}

.vita-summer li {
  /* ºÎ¸ð li{color/background/border} Ä§Åõ Â÷´Ü (ÅØ½ºÆ®´Â ÄÁÅ×ÀÌ³Ê »ó¼Ó°ª »ç¿ë) */
  color: inherit;
  background: none;
  border: 0;
}

.vita-summer a {
  color: inherit;
  text-decoration: none;
  /*background: none;*/
  border: 0;
}

.vita-summer p {
  margin: 0;
  border: 0;
  color: inherit;
  /* background: none / padding: 0 ´ÜÃà ¸®¼ÂÀº ÄÄÆ÷³ÍÆ® pÀÇ background-image¡¤paddingÀ» Á¦°ÅÇÔ */
  background-color: transparent;
}

/* ºÎ¸ð ASPÀÇ button/input ±âº» ½ºÅ¸ÀÏ Ä§Åõ ¹æÁö (¼¼ºÎ ½ºÅ¸ÀÏÀº °¢ ÄÄÆ÷³ÍÆ®°¡ ´ã´ç) */
.vita-summer button {
  font-family: inherit;
  margin: 0;
  border: 0;
  background: none;
  letter-spacing: inherit;
}

.vita-summer input {
  font-family: inherit;
  border: 0;
  background: none;
  letter-spacing: inherit;
}

/* =========================================
   Layout
   ========================================= */
.vita-summer.page,
.vita-summer .page {
  width: 100%;
  max-width: var(--page-max-width);
  margin: 0 auto;
  overflow-x: hidden;
}

/* =========================================
   Hero
   ========================================= */
.vita-summer-hero {
  width: 100%;
  /* °¡·Î·Î ³ÐÀº ¹è³Ê¸¦ È®´ëÇØ °¡¿îµ¥ ÄÜÅÙÃ÷¸¦ Å©°Ô º¸ÀÌ°Ô ÇÔ (ÁÂ¿ì ¾à°£ Å©·Ó) */
  overflow: hidden;
}

.vita-summer-hero__img {
  display: block;
  /* 1.3¹è È®´ë ÈÄ °¡¿îµ¥ Á¤·Ä ¡æ ÁÂ¿ì ³¡ÀÌ ÀÚ¿¬½º·´°Ô Àß¸² */
  /* Àü¿ª img{max-width:100%}¸¦ ÇØÁ¦ÇØ¾ß 130% È®´ë°¡ Àû¿ëµÊ */
  max-width: none;
  width: 100%;
  height: auto;
  margin-left: -0%;
}

/* =========================================
   Consulting - ¹®ÀÇ / ºü¸¥»ó´ã
   ========================================= */
.consulting {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
  padding: 90px 49px;
  background: #ffffff;
  text-align: center;
}

.consulting__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.consulting__title {
  margin: 0;
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 46px;
  line-height: 1.38;
  letter-spacing: -0.92px;
  color: #000;
}

.consulting__subtitle {
  margin: 0;
  font-family: var(--font-paperlogy);
  font-weight: 300;
  font-size: 17px;
  line-height: 20px;
  letter-spacing: -0.34px;
  color: #585858;
}

.consulting__contacts {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 100%;
  flex-wrap: wrap;
}

.consulting__card {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  padding: 26px 99px;
  background: #eee;
  white-space: nowrap;
  color: #000;
  text-decoration: none;
  font-family: var(--font-paperlogy);
}

.consulting__card-label {
  font-weight: 400;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: -0.48px;
}

.consulting__card-value {
  margin: 0;
  font-weight: 300;
  font-size: 27px;
  line-height: 26px;
  letter-spacing: -0.54px;
}

.consulting__card-arrow {
  width: 13px;
  height: 22px;
  object-fit: contain;
  filter: brightness(0);
}
@media (max-width: 768px) {
    .consulting {
        padding: 60px 20px;
        gap: 18px;
    }
}
@media (max-width: 768px) {
    .consulting__contacts {
        flex-direction: column;
        gap: 8px;
        width: 100%;
        max-width: 360px;
    }
.consulting__title {
        font-size: 26px;
        letter-spacing: -0.5px;
        line-height: 1.3;
        word-break: keep-all;
    }
    .consulting__subtitle {
        font-size: 13px;
        letter-spacing: -0.26px;
        word-break: keep-all;
        padding: 0 8px;
    }
    .consulting__card {
        width: 100%;
        justify-content: center;
        padding: 18px 24px;
    }
}

 
@media (max-width: 1100px) {
  .vita-summer-hero__img {
    width: 118%;
    margin-left: -9%;
  }
}

@media (max-width: 768px) {
  .vita-summer-hero__img {
    /* ¸ð¹ÙÀÏÀº ¼¼·ÎÇü Àü¿ë ¹è³Ê(hero-bg-mobile.png)·Î ±³Ã¼µÊ ¡æ È®´ë/Å©·Ó ¾øÀÌ ²Ë Â÷°Ô */
    width: 100%;
    margin-left: 0;
  }
}

/* =========================================
   Event °øÅë
   ========================================= */
.vita-summer-event {
  position: relative;
  width: 100%;
  padding: 160px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.vita-summer-event__content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--container-width);
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* ¼½¼Çº° ¹è°æ */
.vita-summer-event--01 {
  background: linear-gradient(180deg, #d1edff 0%, #ffffff 25.5%, #fff2e0 100%);
}

.vita-summer-event--02 {
  background: linear-gradient(180deg, #f4e8f4 0%, #fff3db 25.5%, #ffc9b1 100%);
}

.vita-summer-event--03 {
  /* ÇÏ´Ü Èòºû(ÀÌ¹ÌÁö ÇÏ´Ü)À» EVENT 04 ¿¬º¸¶ó·Î ÆäÀÌµå½ÃÄÑ °æ°èÀÇ Èò»ö gap Á¦°Å */
  background-image: linear-gradient(180deg, rgba(246, 233, 243, 0) 85%, #f6e9f3 100%),
    url("../assets-vita-summer/event03-bg.jpg");
  background-size: cover, cover;
  background-position: center, center;
  background-repeat: no-repeat, no-repeat;
}

.vita-summer-event--04 {
  background: linear-gradient(180deg, #f6e9f3 0%, #f0ecf8 45%, #e8f0d8 100%);
}

/* ÀÌº¥Æ® ¶óº§ (ºñÅ¸ ÀÌº¥Æ® N) */
.vita-summer .vita-summer-event__label {
  position: relative;
  width: 549px;
  max-width: 100%;
  height: 170px;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-image: url("event-number-bg.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  padding-top: 28px;
  font-family: var(--font-paperlogy);
  font-size: 28px;
  letter-spacing: -1.12px;
  color: var(--color-pink-label);
}

.vita-summer-event__label-text {
  font-weight: 500;
}

.vita-summer-event__label-num {
  font-weight: 900;
}

/* ºòÅ¸ÀÌÆ² */
.vita-summer-event__bigtitle {
  text-align: center;
  margin-bottom: 14px;
}

.vita-summer .vita-summer-event__subtitle {
  font-family: var(--font-paperlogy);
  font-weight: 300;
  font-size: 42px;
  line-height: 1.2;
  letter-spacing: -0.84px;
  color: var(--color-title-brown);
}

.vita-summer .vita-summer-event__maintitle {
  font-family: var(--font-paperlogy);
  font-weight: 500;
  font-size: 80px;
  line-height: 1.15;
  letter-spacing: -4.8px;
  color: var(--color-title-brown);
}

.vita-summer .vita-summer-event__desc {
  text-align: center;
  font-family: var(--font-paperlogy);
  font-weight: 400;
  font-size: 22px;
  line-height: 1.3;
  letter-spacing: -0.66px;
  color: var(--color-sub-brown);
}

.vita-summer .vita-summer-event__desc--brown {
  color: var(--color-sub-brown);
}

.vita-summer-event__note-sm {
  margin-top: 14px;
  text-align: center;
  font-family: var(--font-paperlogy);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: -0.39px;
  color: #555;
}

.vita-summer-event__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

/* À¯ÀÇ»çÇ× */
.vita-summer-event__notice {
  width: 100%;
  margin-top: 40px;
}

.vita-summer-event__notice-title {
  font-family: var(--font-pretendard);
  font-weight: 500;
  font-size: 20px;
  letter-spacing: -0.8px;
  color: #000;
  margin-bottom: 12px;
}

.vita-summer ul.vita-summer-event__notice-list {
  list-style: disc;
  padding-left: 24px;
  color: var(--color-text-sub);
  font-size: 16px;
  letter-spacing: -0.4px;
  line-height: 1.5;
}

.vita-summer ul.vita-summer-event__notice-list li {
  list-style: disc;
  margin-bottom: 2px;
}

/* CTA ¹öÆ° */
.vita-summer .vita-summer-event__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 40px;
  height: 90px;
  padding: 20px 70px;
  border-radius: 5px;
  background: #70aeff;
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 28px;
  letter-spacing: -0.56px;
  color: #fff;
  white-space: nowrap;
  transition: filter 0.2s ease, transform 0.2s ease;
}

.vita-summer .vita-summer-event__cta:hover {
  filter: brightness(1.05);
  transform: translateY(-2px);
}

.vita-summer .cta__arrow {
  width: 10px;
  height: 17px;
}

/* =========================================
   Event 01 - Ä£±¸ÃßÃµ
   ========================================= */
.vita-summer .vita-summer-event--01 .vita-summer-event__desc {
  font-size: 21px;
  letter-spacing: -0.63px;
}

.vita-summer .friend {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  align-items: stretch;
  margin-top: 30px;
  width: 100%;
}

.vita-summer .friend__img {
  width: 470px;
  max-width: 100%;
  height: auto;
  border-radius: 16px;
}

.vita-summer .friend__col {
  display: flex;
  flex-direction: column;
  width: 470px;
  max-width: 100%;
  /* ¿À¸¥ÂÊ ÀÌ¹ÌÁö¸¦ Ä«µå ¹Ú½º·Î ¹­¾î ¿ÞÂÊ Ä«µå¿Í ³ôÀÌ¸¦ ¸ÂÃã */
  background-color: #dfeffa;
  border-radius: 16px;
  overflow: hidden;
}

/* ¿À¸¥ÂÊ Ä«µå ³»ºÎ ÀÌ¹ÌÁö´Â ºñÀ² À¯ÁöÇÏ¸ç »ó´Ü °íÁ¤, ¹Ú½º°¡ ¶ó¿îµå¸¦ ´ã´ç */
.vita-summer .friend__col .friend__img {
  flex: 0 0 auto;
  border-radius: 0;
}

.vita-summer .friend__note {
  /* ³ëÆ® ÅØ½ºÆ®´Â ¿À¸¥ÂÊ Ä«µå ¹Ú½º ¹Ù±ù ÇÏ´Ü¿¡ À§Ä¡ (°­Á¦ ÁÙ¹Ù²Þ + ¿À¸¥ÂÊ Á¤·Ä) */
  flex: 0 0 100%;
  box-sizing: border-box;
  width: 100%;
  max-width: 960px;
  padding-left: 490px;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: -0.56px;
  color: #555;
}

.vita-summer .review {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-top: 40px;
}

.vita-summer .review__board {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.vita-summer .review__board-img {
  width: 100%;
  height: auto;
}

/* ÈÄ±â ÀÔ·ÂÃ¢ + µî·Ï ¹öÆ° (Figma: ÇÎÅ© Å×µÎ¸® ÀÔ·ÂÃ¢ + ÇÎÅ© ¹öÆ°) */
.vita-summer .review__form {
  display: flex;
  align-items: stretch;
  width: 100%;
  height: 90px;
  border: 4px solid var(--color-pink-hot);
  overflow: hidden;
}

.vita-summer .review__input {
  flex: 1;
  min-width: 0;
  height: 100%;
  border: none;
  outline: none;
  background: #fff;
  padding: 0 28px;
  font-family: var(--font-pretendard);
  font-size: 20px;
  color: var(--color-text);
}

.vita-summer .review__input::placeholder {
  color: #b3b3b3;
}

.vita-summer .review__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-shrink: 0;
  width: 251px;
  max-width: 100%;
  height: 100%;
  padding: 20px 30px;
  white-space: nowrap;
  border: none;
  outline: none;
  cursor: pointer;
  background: var(--color-pink-hot);
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 28px;
  letter-spacing: -0.56px;
  color: #fff;
  transition: filter 0.2s ease;
}

.vita-summer .review__cta:hover {
  filter: brightness(1.08);
}

.vita-summer .review__cta:focus-visible {
  filter: brightness(1.08);
}

.vita-summer .review__panel {
  width: 100%;
  background: #fff;
  padding: 60px 70px 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}

/* ÈÄ±â ¸ñ·Ï (div ±â¹Ý µ¿Àû ·»´õ¸µ) */
.vita-summer .review__table {
  width: 940px;
  max-width: 100%;
  border-top: 1px solid #a1a1a1;
  border-bottom: 1px solid #a1a1a1;
  display: flex;
  flex-direction: column;
}

.vita-summer .review__row {
  display: flex;
  align-items: center;
  min-height: 60px;
  border-top: 1px solid #d9d9d9;
}

.vita-summer .review__row:first-child {
  border-top: none;
}

.vita-summer .review__cell {
  padding: 16px 20px;
  font-size: 16px;
  line-height: 1.3;
  word-break: break-all;
  overflow-wrap: anywhere;
}

.vita-summer .review__cell--id {
  width: 148px;
  flex-shrink: 0;
  border-right: 1px solid #d9d9d9;
  font-weight: 500;
  color: #000;
  text-align: center;
}

.vita-summer .review__cell--msg {
  flex: 1;
  min-width: 0;
  font-size: 18px;
  letter-spacing: -0.54px;
  color: var(--color-text);
}

/* ºó »óÅÂ */
.vita-summer .review__row--empty {
  justify-content: center;
}

.vita-summer .review__cell--empty {
  flex: 1;
  text-align: center;
  color: #888;
  font-size: 16px;
  padding: 28px 20px;
}

/* º»ÀÎ µî·Ï ÈÄ±â ÇÏÀÌ¶óÀÌÆ® */
.vita-summer .review__row--highlight {
  position: relative;
  background: #fff2f7;
  box-shadow:
    inset 4px 0 0 var(--color-pink-hot),
    inset 0 1px 0 #f7c2db,
    inset 0 -1px 0 #f7c2db;
  animation: reviewHighlight 1.6s ease-in-out 1;
}

@keyframes reviewHighlight {
  0%,
  100% {
    background: #fff2f7;
  }
  50% {
    background: #ffe1ee;
  }
}

/* À©µµ¿ì ÆäÀÌÁö³×ÀÌ¼Ç */
.vita-summer .pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.vita-summer .pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  border: none;
  background: transparent;
  font-family: var(--font-pretendard);
  font-size: 16px;
  color: #777;
  cursor: pointer;
  border-radius: 6px;
  transition: color 0.2s ease, background 0.2s ease;
}

.vita-summer .pagination__btn:hover:not(:disabled) {
  color: var(--color-pink-hot);
}

.vita-summer .pagination__btn.is-active {
  color: var(--color-pink-hot);
  font-weight: 700;
}

.vita-summer .pagination__btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.vita-summer .pagination__arrow {
  width: 22px;
  height: 22px;
  display: block;
  pointer-events: none;
}

.vita-summer-event--01 .vita-summer-event__notice {
  margin-top: 40px;
}

/* =========================================
   Event 02 - ½Å±Ô È¸¿ø ÆÐÅ°Áö 20%
   ========================================= */
.vita-summer .new20dc {
  width: 950px;
  max-width: 100%;
  height: auto;
  margin-top: 40px;
}

.vita-summer-event--02 .vita-summer-event__notice {
  width: 950px;
  max-width: 100%;
  margin-top: 40px;
  margin-right: auto;
}

/* =========================================
   Event 03 - ºñÅ¸ ÄíÆùÆÑ
   ========================================= */
.vita-summer-event--03 .vita-summer-event__subtitle,
.vita-summer-event--03 .vita-summer-event__maintitle {
  color: var(--color-title-brown);
}

.vita-summer .collection {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
  margin-top: 50px;
}

.vita-summer .collection__group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

/* ÄíÆù ¸®º» */
.vita-summer .ribbon {
  position: relative;
  width: 425px;
  max-width: 100%;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.25));
}

.vita-summer .ribbon--15 {
  background-image: url("../assets-vita-summer/ribbon-15.png");
}

.vita-summer .ribbon--5 {
  background-image: url("../assets-vita-summer/ribbon-5.png");
}

.vita-summer .ribbon__text {
  font-family: var(--font-paperlogy);
  font-weight: 400;
  font-size: 22px;
  letter-spacing: -1.32px;
  white-space: nowrap;
}

.vita-summer .ribbon--15 .ribbon__text {
  color: var(--color-red-magenta);
}

.vita-summer .ribbon--5 .ribbon__text {
  color: var(--color-blue-navy);
}

.vita-summer .ribbon__text strong {
  font-weight: 800;
}

/* Ä«µå ±×¸®µå */
.vita-summer .coursecard__grid {
  display: grid;
  gap: 15px;
  justify-content: center;
}

.vita-summer .coursecard__grid--15 {
  grid-template-columns: repeat(3, 256px);
}

.vita-summer .coursecard__grid--5 {
  grid-template-columns: repeat(4, 256px);
}

/* Ä«µå */
.vita-summer .coursecard {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 22px;
  width: 256px;
  min-height: 270px;
  padding: 23px 13px 19px;
  background: #fff;
  border-radius: 30px;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.06);
  transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
}

.vita-summer .coursecard__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 14px;
  text-align: center;
  white-space: nowrap;
  transition: background 0.28s ease, color 0.28s ease;
}

.vita-summer .coursecard--15 .coursecard__badge {
  background: var(--color-red-badge-bg);
  color: var(--color-red-dark);
}

.vita-summer .coursecard--5 .coursecard__badge {
  background: var(--color-blue-badge-bg);
  color: var(--color-blue);
}

.vita-summer .coursecard__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 229px;
}

.vita-summer .coursecard__name {
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 38px;
  line-height: 1.2;
  letter-spacing: -1.52px;
  text-align: center;
  color: var(--color-text);
  transition: color 0.28s ease;
}

.vita-summer .coursecard__name--sm {
  font-size: 28px;
  letter-spacing: -1.12px;
}

.vita-summer .coursecard__base {
  display: flex;
  gap: 5px;
  align-items: center;
  font-family: var(--font-pretendard);
  font-size: 16px;
  color: var(--color-text-mute);
  white-space: nowrap;
  transition: color 0.28s ease;
}

.vita-summer .coursecard__price {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 230px;
  padding: 16px 20px;
  border-radius: 999px;
  background: var(--color-price-pill);
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 30px;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
  transition: background 0.28s ease, color 0.28s ease;
}

.vita-summer .coursecard--15 .coursecard__price {
  color: var(--color-red);
}

.vita-summer .coursecard--5 .coursecard__price {
  color: var(--color-blue);
}

/* Ä«µå È£¹ö */
@media (hover: hover) {
  .vita-summer .coursecard:is(:hover, :focus-visible) {
    transform: translateY(-10px);
  }

  .vita-summer .coursecard--15:is(:hover, :focus-visible) {
    background: var(--color-red);
    box-shadow: 0 24px 44px rgba(249, 81, 87, 0.32);
  }

  .vita-summer .coursecard--5:is(:hover, :focus-visible) {
    background: var(--color-blue);
    box-shadow: 0 24px 44px rgba(92, 114, 255, 0.32);
  }

  .vita-summer .coursecard:is(:hover, :focus-visible) .coursecard__name,
  .vita-summer .coursecard:is(:hover, :focus-visible) .coursecard__base {
    color: #fff;
  }

  .vita-summer .coursecard:is(:hover, :focus-visible) .coursecard__base s {
    color: rgba(255, 255, 255, 0.85);
  }
}

/* =========================================
   Event 04 - ½æ¸Ó 0¿ø ´ëÀü
   ========================================= */
.vita-summer-event--04 .vita-summer-event__content {
  max-width: 1150px;
}

.vita-summer .zero {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  align-items: stretch;
  margin-top: 50px;
  width: 100%;
}

.vita-summer .zero__panel {
  display: flex;
  flex-direction: column;
  width: 565px;
  max-width: 100%;
  /* ¿¬ÇÑ ÇÏ´Ã»ö ¡æ ¶óº¥´õºû ±×¶óµ¥ÀÌ¼Ç ¹è°æ (Figma Event 04 Ä«µå) */
  background: linear-gradient(170deg, #dff2fb 0%, #e7f0fb 45%, #e9e9f6 100%);
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.vita-summer .zero__inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 50px 40px 30px;
  gap: 20px;
}

.vita-summer .zero__name {
  font-family: var(--font-paperlogy);
  font-weight: 700;
  font-size: 40px;
  letter-spacing: -1.6px;
  color: var(--color-text);
}

.vita-summer .zero__benefits {
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: center;
}

.vita-summer .zero__benefits li {
  position: relative;
  padding-left: 24px;
  font-size: 18px;
  color: #222;
  letter-spacing: -0.4px;
}

.vita-summer .zero__benefits li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  color: var(--color-coral);
  font-weight: 700;
}

.vita-summer .zero__pricecard {
  /* Èò ¹Ú½º´Â Ä«µå inner ³Êºñ¿Í µ¿ÀÏ (Figma 52:479 = Package Content 487px Æø) */
  width: 100%;
  display: flex;
  flex-direction: column;
  /* ³»ºÎ ¿ä¼Ò(¶óº§+ÇýÅÃ row, °¡°Ý pill)¸¦ Ä«µå Áß¾ÓÀ¸·Î ¸ðÀ½ (Figma 52:480) */
  align-items: center;
  gap: 14px;
  padding: 26px 30px 18px;
  border-radius: 10px;
  /* ±×¶óµ¥ÀÌ¼Ç Ä«µå À§¿¡¼­ ºÐ¸®µÇµµ·Ï Èò ¹Ú½º + ¿¶Àº ±×¸²ÀÚ */
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}

/* pricecard°¡ 1°³»ÓÀÎ Ä«µå(»çÈ¸º¹Áö»ç 2±Þ)´Â Èò ¹Ú½º°¡ inner ³²´Â ¼¼·Î °ø°£À» ¸ðµÎ Ã¤¿ö
   ¿À¸¥ÂÊ IT Àü°ø Ä«µå(Èò ¹Ú½º 2°³ + »çÀÌ gap)ÀÇ ÇÕ»ê ³ôÀÌ¿Í °°¾ÆÁöµµ·Ï ÇÑ´Ù.
   ÄÜÅÙÃ÷´Â À§ÂÊ¿¡ µÎ°í(Figma 52:481 y=108) ¾Æ·¡ ¿©¹éÀ» Å©°Ô È®º¸. */
.vita-summer .zero__pricecard:only-of-type {
  flex: 1;
  justify-content: flex-start;
  padding-top: 22.2%;
}

/* ¶óº§(ÁÂ) ¡ê ÇýÅÃ(¿ì) ¾çÂÊ Á¤·Ä, °íÁ¤ ÆøÀ¸·Î ¹Ú½º Áß¾Ó¿¡ ±×·ì ¹èÄ¡ (Figma 396px) */
.vita-summer .zero__pricecard-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 396px;
  max-width: 100%;
}

.vita-summer .zero__pricecard-label {
  font-family: var(--font-paperlogy);
  font-weight: 500;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -0.72px;
  color: #000;
  text-align: left;
}

.vita-summer .zero__pricecard-free {
  display: flex;
  align-items: baseline;
  gap: 8px;
  font-family: var(--font-paperlogy);
  white-space: nowrap;
}

.vita-summer .zero__cnt {
  font-family: var(--font-paperlogy);
  font-weight: 400;
  font-size: 39px;
  letter-spacing: -1.17px;
  /* »êÈ£ (ÀÌ·Ð N°ú¸ñ) */
  color: var(--color-coral);
}

.vita-summer .zero__zero {
  font-family: var(--font-paperlogy);
  font-weight: 800;
  font-size: 39px;
  letter-spacing: -1.17px;
  /* ÇÖÇÎÅ© (0¿ø °­Á¶) */
  color: var(--color-pink-hot);
}

/* °¡°Ý Á¤º¸ ¹Ú½º (Figma 52:484: 420¡¿49, bg #ecf5ff, radius 6) */
.vita-summer .zero__pricecard-base {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 420px;
  max-width: 100%;
  height: 49px;
  padding: 0 14px;
  border-radius: 6px;
  background: #ecf5ff;
  font-size: 16px;
  color: #555;
  white-space: nowrap;
}

.vita-summer .zero__pricecard-base s {
  font-size: 18px;
}

.vita-summer .zero__arrow {
  color: #333;
}

.vita-summer .zero__final {
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 28px;
  line-height: 1.2;
  color: var(--color-blue);
}

.vita-summer .zero__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 64px;
  /* Á÷°¢ ¹öÆ° + Ä«µå ÁÂ¿ì ÆÐµù(40px) ¾ÈÂÊ, ÇÏ´Ü ¿©¹é (Figma 52:491) */
  margin: 0 40px 40px;
  border-radius: 0;
  background: var(--color-pink-hot);
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 22px;
  letter-spacing: -0.44px;
  color: #fff;
  transition: filter 0.2s ease;
}

.vita-summer .zero__cta:hover {
  filter: brightness(1.08);
}

.vita-summer .zero__footnote {
  width: 100%;
  margin-top: 14px;
  text-align: right;
  font-size: 14px;
  color: #333333;
}

/* =========================================
   Event 05 - º¸À°±³»ç ¿¡³ÊÁö¾÷
   ========================================= */
.vita-summer-event--05 {
  background: linear-gradient(180deg, #f4e8f4 0%, #fff3db 25.5%, #ffe4d7 100%);
}

.vita-summer-event--05 .vita-summer-event__content {
  max-width: 1070px;
}

/* 4¹Ú½º ¿µ¿ª */
.vita-summer .energy {
  margin-top: 50px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 14px;
}

.vita-summer .energy__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  width: 100%;
}

.vita-summer .energy__box {
  position: relative;
  aspect-ratio: 260 / 257;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  /* ¾ÆÀÌÄÜ(»ó´Ü Å×µÎ¸® °ÉÄ§) ¿µ¿ªÀ» ºñ¿ì°í ÅØ½ºÆ®´Â Ä«µå Áß¾Ó¿¡ ¹èÄ¡ */
  padding: 56px 12px 16px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.12));
  text-align: center;
}

.vita-summer .energy__box--01 {
  background-image: url("../assets-vita-summer/e05-con01.png");
}

.vita-summer .energy__box--02 {
  background-image: url("../assets-vita-summer/e05-con02.png");
}

.vita-summer .energy__box--03 {
  background-image: url("../assets-vita-summer/e05-con03.png");
}

.vita-summer .energy__box--04 {
  background-image: url("../assets-vita-summer/e05-con04.png");
}

.vita-summer .energy__box-sub {
  font-family: var(--font-paperlogy);
  font-weight: 500;
  font-size: 17px;
  line-height: 1.3;
  letter-spacing: -0.51px;
  color: #532c1b;
}

.vita-summer .energy__box-main {
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -0.72px;
  color: var(--color-sub-brown);
}

.vita-summer .energy__box-main--sm {
  font-size: 22px;
}

.vita-summer .energy__hl {
  color: var(--color-pink-hot);
}

.vita-summer .energy__note {
  font-family: var(--font-pretendard);
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: -0.56px;
  color: var(--color-text);
  text-align: right;
}

/* ÄÚ¸£Å©º¸µå Æ¯°¡ 2Á¾ */
.vita-summer .special {
  margin-top: 50px;
  width: 944px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.vita-summer .special__item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

/* ÅØ½ºÆ®°¡ Æ÷ÇÔµÈ ÄÚ¸£Å©º¸µå ÀÌ¹ÌÁö (CTA¸¸ ¿À¹ö·¹ÀÌ) */
.vita-summer .special__board {
  position: relative;
  width: 100%;
  aspect-ratio: 944 / 609;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.vita-summer .special__board--01 {
  background-image: url("../assets-vita-summer/e05-special01.png");
}

.vita-summer .special__board--02 {
  background-image: url("../assets-vita-summer/e05-special02.png");
}

.vita-summer .special__cta {
  /* º¸µå ³»ºÎ Àý´ë À§Ä¡: topÀÇ %´Â º¸µå ³ôÀÌ ±âÁØ (¿øº» ¹öÆ° »ó´Ü 434/609 ? 71.3%) */
  position: absolute;
  left: 50%;
  top: 71.3%;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 42.4%;
  max-width: 400px;
  height: 13.1%;
  min-height: 56px;
  background: var(--color-pink-hot);
  font-family: var(--font-paperlogy);
  font-weight: 600;
  font-size: 28px;
  letter-spacing: -0.56px;
  color: #fff;
  white-space: nowrap;
  transition: filter 0.2s ease, transform 0.2s ease;
}

.vita-summer .special__cta:hover {
  filter: brightness(1.05);
  transform: translateX(-50%) translateY(-2px);
}

/* special ¿µ¿ª À¯ÀÇ»çÇ× (ÁÂÃø µé¿©¾²±â) */
.vita-summer .special__notice {
  margin-top: 0;
  padding-left: 40px;
}

/* =========================================
   ÁøÀÔ ¾Ö´Ï¸ÞÀÌ¼Ç
   ========================================= */
.vita-summer .reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.vita-summer .reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .vita-summer .reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* =========================================
   ¹ÝÀÀÇü - ÅÂºí¸´ (max-width: 1100px)
   ========================================= */
@media (max-width: 1100px) {
  .vita-summer-event {
    padding: 120px 20px;
  }

  .vita-summer .vita-summer-event__subtitle {
    font-size: 34px;
  }

  .vita-summer .vita-summer-event__maintitle {
    font-size: 60px;
    letter-spacing: -3px;
  }

  /* Event 03 Ä«µå: 2¿­ */
  .vita-summer .coursecard__grid--15,
  .vita-summer .coursecard__grid--5 {
    grid-template-columns: repeat(2, minmax(0, 256px));
  }

  /* 15% ±×·ìÀº Ä«µå 3°³ ¡æ 2¿­¿¡¼­ ³²´Â 3¹øÂ°(¸¶Áö¸·) Ä«µå¸¦ 2¿­¿¡ °ÉÃÄ Áß¾Ó ¹èÄ¡ */
  .vita-summer .coursecard__grid--15 .coursecard:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: 256px;
  }

  /* Event 04 ÆÐ³Î: ¼¼·Î ½ºÅÃ */
  .vita-summer .zero {
    flex-direction: column;
    align-items: center;
  }

  .vita-summer .zero__panel {
    width: 100%;
    max-width: 565px;
  }

  .vita-summer .review__panel {
    padding: 40px 24px 24px;
  }

  /* Event 05 4¹Ú½º: 2¿­ */
  .vita-summer .energy__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
  }
}

/* =========================================
   ¹ÝÀÀÇü - ¸ð¹ÙÀÏ (max-width: 768px)
   ========================================= */
@media (max-width: 768px) {
  .vita-summer-event {
    padding: 80px 16px;
  }

  .vita-summer .vita-summer-event__label {
    height: 140px;
    margin-bottom: 20px;
    padding-top: 22px;
    font-size: 22px;
  }

  .vita-summer .vita-summer-event__subtitle {
    font-size: 22px;
  }

  .vita-summer .vita-summer-event__maintitle {
    font-size: 40px;
    letter-spacing: -1.6px;
    white-space: normal;
  }

  .vita-summer .vita-summer-event__desc,
  .vita-summer .vita-summer-event--01 .vita-summer-event__desc {
    font-size: 17px;
    letter-spacing: -0.4px;
  }

  .vita-summer-event__note-sm {
    font-size: 12px;
  }

  /* Event 01 */
  .vita-summer .friend__img,
  .vita-summer .friend__col {
    width: 100%;
  }

  /* ¸ð¹ÙÀÏ¿¡¼­´Â Ä«µå°¡ ¼¼·Î·Î ½×ÀÌ¹Ç·Î ³ëÆ®ÀÇ PC¿ë Á¤·Ä°ª ¸®¼Â */
  .vita-summer .friend__note {
    max-width: 100%;
    padding-left: 0;
  }

  /* ¸ð¹ÙÀÏ: ÀÔ·ÂÃ¢°ú ¹öÆ°À» ºÐ¸®µÈ ¶ó¿îµå ¹Ú½º·Î (Âü°í ºñÀ² 938:210) */
  .vita-summer .review__form {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    height: auto;
    margin-top: 14px;
    border: none;
    overflow: visible;
  }

  .vita-summer .review__input {
    flex: 0 0 auto;
    width: 100%;
    height: 64px;
    padding: 0 20px;
    font-size: 16px;
    text-align: center;
    background: #fff;
    border: 2px solid var(--color-pink-hot);
    border-radius: 8px;
  }

  .vita-summer .review__cta {
    flex: 0 0 auto;
    width: 100%;
    height: 56px;
    font-size: 20px;
    padding: 0 20px;
    border-radius: 8px;
  }

  .vita-summer .review__panel {
    padding: 24px 14px 18px;
  }

  .vita-summer .review__cell {
    padding: 12px 10px;
  }

  .vita-summer .review__cell--id {
    width: 90px;
    font-size: 13px;
  }

  .vita-summer .review__cell--msg {
    font-size: 14px;
  }

  .vita-summer .pagination__btn {
    min-width: 32px;
    height: 32px;
    padding: 0 6px;
    font-size: 14px;
  }

  .vita-summer .pagination__arrow {
    width: 18px;
    height: 18px;
  }

  .vita-summer .vita-summer-event__cta {
    width: 100%;
    height: 70px;
    padding: 16px 24px;
    font-size: 22px;
  }

  .vita-summer-event__notice-title {
    font-size: 17px;
  }

  .vita-summer ul.vita-summer-event__notice-list {
    font-size: 13px;
  }

  /* Event 03 Ä«µå: ¸ð¹ÙÀÏ 2¿­ + Ä«µå Ãà¼Ò */
  .vita-summer .collection {
    gap: 36px;
    margin-top: 36px;
    width: 100%;
  }

  .vita-summer .collection__group {
    width: 100%;
  }

  .vita-summer .ribbon {
    width: 100%;
    max-width: 320px;
    height: 54px;
  }

  .vita-summer .ribbon__text {
    font-size: 18px;
    letter-spacing: -1px;
  }

  .vita-summer .coursecard__grid--15,
  .vita-summer .coursecard__grid--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    gap: 10px;
  }

  /* 15% ±×·ì 3¹øÂ°(¸¶Áö¸·) Ä«µå: 2¿­¿¡ °ÉÃÄ Áß¾Ó + 1¿­ ÆøÀ¸·Î Á¦ÇÑ */
  .vita-summer .coursecard__grid--15 .coursecard:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc(50% - 5px); /* 1¿­ Æø = (100% - gap 10px) / 2 */
  }

  .vita-summer .coursecard {
    width: 100%;
    min-height: 220px;
    padding: 18px 10px 16px;
    gap: 14px;
    border-radius: 20px;
  }

  .vita-summer .coursecard__badge {
    width: 100%;
    padding: 8px 10px;
    font-size: 11px;
  }

  .vita-summer .coursecard__body {
    width: 100%;
  }

  .vita-summer .coursecard__name {
    font-size: 26px;
    letter-spacing: -1px;
  }

  .vita-summer .coursecard__name--sm {
    font-size: 20px;
    letter-spacing: -0.6px;
  }

  .vita-summer .coursecard__base {
    font-size: 13px;
  }

  .vita-summer .coursecard__price {
    width: 100%;
    max-width: 200px;
    padding: 12px 16px;
    font-size: 22px;
  }

  /* Event 04 */
  .vita-summer .new20dc {
    margin-top: 24px;
  }

  .vita-summer .zero {
    margin-top: 36px;
  }

  .vita-summer .zero__inner {
    padding: 32px 22px 22px;
    gap: 16px;
  }

  /* ¸ð¹ÙÀÏ: Èò ¹Ú½º´Â inner ³Êºñ¿Í µ¿ÀÏ (À½¼ö ¸¶Áø ¾øÀ½) */
  .vita-summer .zero__pricecard {
    width: 100%;
    margin: 0;
    padding: 24px 18px 20px;
  }

  /* »çÈ¸º¹Áö»ç Ä«µå(1°³)µµ ¸ð¹ÙÀÏ¿¡¼± ÀÏ¹Ý Ä«µå¿Í µ¿ÀÏÇÑ ¿©¹éÀ¸·Î ÄÜÅÙÃ÷ Áß½É ¹èÄ¡ */
  .vita-summer .zero__pricecard:only-of-type {
    padding: 28px 18px 24px;
  }

  .vita-summer .zero__name {
    font-size: 30px;
  }

  .vita-summer .zero__benefits li {
    font-size: 14px;
  }

  .vita-summer .zero__pricecard-label {
    font-size: 15px;
  }

  .vita-summer .zero__cnt {
    font-size: 18px;
  }

  .vita-summer .zero__zero {
    font-size: 26px;
  }

  .vita-summer .zero__pricecard-base {
    font-size: 13px;
    flex-wrap: wrap;
  }

  .vita-summer .zero__cta {
    height: 58px;
    font-size: 19px;
    /* ¸ð¹ÙÀÏ: Ä«µå ÁÂ¿ì ÆÐµù(22px)¿¡ ¸ÂÃá Á÷°¢ ¹öÆ° */
    margin: 0 22px 28px;
  }

  .vita-summer .zero__footnote {
    font-size: 14px;
  }

  /* Event 05 */
  .vita-summer .energy {
    margin-top: 36px;
  }

  .vita-summer .energy__grid {
    gap: 10px;
  }

  /* ¸ð¹ÙÀÏ: Ä«µå Á¤»ç°¢ ºñÀ² À¯Áö, ÅØ½ºÆ®´Â ¾ÆÀÌÄÜ ¾Æ·¡ ¿µ¿ª ¼¼·Î Áß¾Ó¿¡ ¹èÄ¡ */
  .vita-summer .energy__box {
    justify-content: center;
    padding: 52px 8px 16px;
    gap: 6px;
  }

  .vita-summer .energy__box-sub {
    font-size: 14px;
    letter-spacing: -0.3px;
  }

  .vita-summer .energy__box-main {
    font-size: 19px;
    letter-spacing: -0.5px;
  }

  .vita-summer .energy__box-main--sm {
    font-size: 17px;
  }

  .vita-summer .energy__note {
    font-size: 11px;
    letter-spacing: -0.3px;
  }

  .vita-summer .special {
    margin-top: 36px;
    gap: 24px;
  }

  .vita-summer .special__cta {
    font-size: 18px;
    min-height: 44px;
  }

  .vita-summer .special__notice {
    padding-left: 8px;
  }
}

/* =========================================
   Classic ASP (.all) embed isolation
   ========================================= */
.all .vita-summer-div {
  width: 100%;
  margin: 0;
  padding: 0;
  float: none;
  clear: both;
  text-align: left;
}

.all .vita-summer-div .vita-summer.page {
  width: 100%;
  max-width: var(--page-max-width);
  margin-left: auto;
  margin-right: auto;
}
