@charset "UTF-8";
/* =============================================================================
   event-info — Event Information / 이벤트 참여 방법 / 당첨 확률을 높이는 팁
   Figma: 모바일 6350:4849 · PC 6350:5231
   -----------------------------------------------------------------------------
   base.css 에 없는 이 섹션 전용 색은 아래 --ei-* 로 한 번만 선언해 씁니다.
   (base.css 는 코디네이터 소유라 토큰을 추가하지 않습니다)
   ============================================================================= */

.event-info {
  --ei-bg: #f6f7ff;
  --ei-heading: #020202;      /* 대제목 */
  --ei-ink: #21212b;          /* 스텝·팁 제목 */
  --ei-label: #2c2c30;        /* dt */
  --ei-value: #3c3c3c;        /* dd */
  --ei-muted: #565961;        /* 본문 보조 */
  --ei-note: #6f6f6f;         /* 각주 */
  --ei-art-bg: #f2f2f2;       /* 스텝 아이콘 원형 배경 */
  --ei-card-shadow: #dbdef1;
  --ei-card-border: #d1d2d8;
  --ei-rule: rgba(22, 25, 30, 0.2);
  --ei-teal: #17a78f;
  --ei-gradient: linear-gradient(150deg, var(--c-sky-blue) 15%, var(--ei-teal) 97%);

  background-color: var(--ei-bg);
  padding-block: var(--s-56) var(--s-40);
  letter-spacing: var(--ls-display);
}

.event-info__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* -----------------------------------------------------------------------------
   섹션 헤더
   -------------------------------------------------------------------------- */
.event-info__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--s-4);
  text-align: center;
}

.event-info__title {
  font-family: var(--ff-display);
  font-weight: var(--fw-bold);
  font-size: 26px;
  line-height: var(--lh-snug);
  text-transform: uppercase;
  color: var(--ei-heading);
}

.event-info__subtitle {
  font-size: var(--fs-body);
  line-height: 1.5;
  color: rgba(2, 2, 2, 0.8);
}

.event-info__rule {
  display: block;
  width: 37.6px;
  height: 1px;
  margin-block: 26px;
  border-radius: 1px;
  background-color: var(--ei-rule);
}

/* -----------------------------------------------------------------------------
   1. 이벤트 정보 정의목록
   -------------------------------------------------------------------------- */
.event-info__list {
  display: flex;
  flex-direction: column;
  gap: 10px; /* Figma 실측. 4px 스케일에 없는 값 */
  width: 100%;
  max-width: 418px; /* PC 본문 폭. 768~1023 구간이 과하게 늘어나지 않도록 */
}

.event-info__row {
  display: flex;
  align-items: flex-start;
  gap: var(--s-12);
}

.event-info__term {
  position: relative;
  flex: 0 0 auto;
  width: 82px;
  padding-left: var(--s-12);
  font-size: 15px; /* PC 16px */
  font-weight: var(--fw-medium);
  line-height: 1.5;
  color: var(--ei-label);
}

.event-info__term::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 1px;
  width: var(--s-4);
  height: var(--s-4);
  background-color: var(--ei-label);
}

.event-info__desc {
  flex: 1 1 0;
  min-width: 0;
  font-size: var(--fs-body);
  font-weight: var(--fw-medium);
  line-height: var(--lh-base);
  color: var(--ei-value);
}

.event-info__desc--accent {
  font-weight: var(--fw-bold);
  color: var(--c-sky-blue);
}

.event-info__desc-line {
  display: block;
}

.event-info__desc-line + .event-info__desc-line {
  margin-top: var(--s-4);
}

/* -----------------------------------------------------------------------------
   응모 버튼 (자리표시자)
   -------------------------------------------------------------------------- */
.event-info__cta {
  width: 100%;
  max-width: 366px;
  margin-top: var(--s-32);
}

.event-info__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 58px;
  padding-inline: var(--s-32);
  background-color: var(--c-michelin-dark-blue);
  color: var(--c-white);
  font-size: 18px;
  font-weight: var(--fw-bold);
  line-height: var(--lh-snug);
  text-align: center;
  transition: background-color var(--dur-fast) var(--ease-out);
}

.event-info__submit:hover {
  background-color: var(--c-michelin-blue);
}

.event-info__notice {
  margin-top: var(--s-12);
  font-size: var(--fs-body);
  line-height: 1.5;
  text-align: center;
  color: rgba(2, 2, 2, 0.6);
}

/* -----------------------------------------------------------------------------
   블록 공통 (이벤트 참여 방법 / 당첨 확률을 높이는 팁)
   -------------------------------------------------------------------------- */
.event-info__steps,
.event-info__tips {
  width: 100%;
  margin-top: var(--s-64);
}

.event-info__block-title {
  font-size: 30px;
  font-weight: var(--fw-extrabold);
  line-height: var(--lh-snug);
  text-align: center;
  color: var(--ei-heading);
}

/* -----------------------------------------------------------------------------
   2. Tips Block 1 — 이벤트 참여 방법
   -------------------------------------------------------------------------- */
.event-info__card {
  width: 100%;
  max-width: 407px;
  margin-top: var(--s-24);
  margin-inline: auto;
  padding: var(--s-32) var(--s-16);
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 34px 0 var(--ei-card-shadow);
}

.event-info__step-list {
  display: flex;
  flex-direction: column;
  gap: var(--s-32);
}

.event-info__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--s-12);
}

/* --- 스텝 아이콘 + STEP 배지 --- */
.event-info__step-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.event-info__step-art {
  position: relative;
  display: block;
  width: 107px;
  height: 107px;
  border-radius: var(--radius-pill);
  background-color: var(--ei-art-bg);
  overflow: hidden;
}

.event-info__step-no {
  position: relative;
  margin-top: -16px;
  padding: 7px 9px;
  background-color: var(--c-michelin-dark-blue);
  color: var(--c-white);
  font-size: 12px;
  font-weight: var(--fw-bold);
  line-height: 1;
  letter-spacing: var(--ls-normal);
}

/* STEP 1 — 말풍선 칩 + 커서 */
.event-info__chip {
  position: absolute;
  top: calc(50% - 2.5px);
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 13px 11px 12px;
  border-radius: var(--radius-md);
  background-color: var(--c-white);
  box-shadow: 0 4px 13px 0 rgba(28, 28, 41, 0.18);
  color: var(--c-michelin-dark-blue);
  font-size: 13px;
  font-weight: var(--fw-bold);
  line-height: 1;
  white-space: nowrap;
}

.event-info__cursor {
  position: absolute;
  top: 51px;
  left: 63px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32.6px;
  height: 32.6px;
  transform: rotate(-45deg);
}

.event-info__cursor img {
  width: 28.58px;
  height: 28.9px;
  transform: translateY(1.1px);
}

/* STEP 2 — 인스타그램 / 네이버 / 휴대폰 */
.event-info__ig {
  position: absolute;
  top: 28px;
  left: 23px;
  width: 30px;
  height: 30px;
}

.event-info__ig img {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
}

.event-info__ig .event-info__ig-glyph {
  top: 3.9px;
  left: 3.9px;
  width: 22.2px;
  height: 22.2px;
}

.event-info__naver {
  position: absolute;
  top: 43px;
  left: 67.7px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  border-radius: 6.5px;
  background-color: var(--c-naver-bg);
  box-shadow: 0 3.5px 11.3px 0 rgba(28, 28, 41, 0.18);
}

.event-info__naver img {
  width: 10px;
  height: 10px;
  transform: scaleY(-1);
}

.event-info__phone {
  position: absolute;
  top: 53.6px;
  left: 0;
  width: 88.9px;
  height: 71.6px;
  object-fit: contain;
  transform: rotate(-21.08deg);
}

/* STEP 3 — 노란 칩 */
.event-info__chip--yellow {
  top: 50%;
  padding: 8.5px 13px;
  border-radius: 0;
  background-color: var(--c-michelin-yellow);
  box-shadow: 0 3.8px 12.2px 0 rgba(76, 69, 0, 0.3);
  color: var(--c-black);
  font-size: 12px;
  line-height: var(--lh-snug);
}

/* --- 스텝 텍스트 --- */
.event-info__step-text {
  width: 100%;
  text-align: center;
}

.event-info__step-title {
  font-size: 18px;
  font-weight: var(--fw-bold);
  line-height: var(--lh-base);
  letter-spacing: -1px;
  color: var(--ei-ink);
}

.event-info__step-title--wide {
  letter-spacing: var(--ls-display);
}

.event-info__step-lead {
  margin-top: var(--s-4);
  font-size: var(--fs-body-sm);
  font-weight: var(--fw-medium);
  line-height: var(--lh-base);
  color: var(--c-black);
}

.event-info__step-desc {
  margin-top: var(--s-4);
  font-size: var(--fs-body-sm);
  line-height: var(--lh-base);
  color: var(--ei-muted);
}

.event-info__step-desc--note {
  color: var(--ei-note);
}

.event-info__step-desc b {
  font-weight: var(--fw-bold);
}

/* --- 방법 A / 방법 B 카드 --- */
.event-info__methods {
  display: flex;
  flex-direction: column;
  gap: var(--s-4);
  margin-top: var(--s-16);
  text-align: left;
}

.event-info__method {
  position: relative;
  padding: 17px;
  border: 1px solid var(--ei-card-border);
}

.event-info__method--a {
  border-color: var(--c-sky-blue);
}

.event-info__method-title {
  font-size: 18px;
  font-weight: var(--fw-bold);
  line-height: var(--lh-base);
  color: var(--c-michelin-blue);
}

.event-info__method--a .event-info__method-title {
  background-image: var(--ei-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.event-info__method-desc {
  margin-top: 2px;
  font-size: 14px;
  line-height: var(--lh-base);
  color: var(--c-black);
}

.event-info__method-tip {
  margin-top: var(--s-8);
  font-size: 12px;
  font-weight: var(--fw-medium);
  line-height: var(--lh-base);
  text-align: center;
  color: var(--ei-note);
}

.event-info__method-flag {
  position: absolute;
  top: -13px;
  right: -4px;
  padding: 5px 10px;
  border-radius: 6px;
  background-image: linear-gradient(103deg, var(--c-sky-blue) 15%, var(--ei-teal) 97%);
  color: var(--c-white);
  font-size: 13px;
  font-weight: var(--fw-bold);
  line-height: 15px;
  letter-spacing: var(--ls-normal);
}

/* -----------------------------------------------------------------------------
   3. Tips Block 2 — 당첨 확률을 높이는 팁
   -------------------------------------------------------------------------- */
.event-info__tips-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--s-4);
  text-align: center;
}

.event-info__tips-sub {
  font-size: var(--fs-body);
  line-height: 1.5;
  color: rgba(2, 2, 2, 0.8);
}

.event-info__tip-list {
  width: 100%;
  max-width: 336px;
  margin-top: var(--s-24);
  margin-inline: auto;
  padding-bottom: var(--s-16);
}

.event-info__tip {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.event-info__tip + .event-info__tip {
  margin-top: var(--s-32);
}

/* 팁 사이 점선 구분선 (Figma: #27509b 50%, dash 1/4) */
.event-info__tip + .event-info__tip::before {
  content: "";
  align-self: stretch;
  height: 1px;
  margin-bottom: var(--s-32);
  background-image: repeating-linear-gradient(
    to right,
    color-mix(in srgb, var(--c-michelin-blue) 50%, transparent) 0 1px,
    transparent 1px 5px
  );
}

.event-info__tip-no {
  padding: 9px;
  background-color: var(--c-black);
  color: var(--c-white);
  font-size: 12px;
  font-weight: var(--fw-bold);
  line-height: 1;
  letter-spacing: var(--ls-normal);
}

.event-info__tip-title {
  margin-top: var(--s-12);
  font-size: 18px;
  font-weight: var(--fw-bold);
  line-height: 1.2;
  letter-spacing: -1px;
  color: var(--ei-ink);
}

.event-info__tip-desc {
  margin-top: var(--s-8);
  font-size: var(--fs-body-sm);
  line-height: var(--lh-base);
  color: var(--ei-muted);
}

.event-info__tip-desc + .event-info__tip-desc {
  margin-top: 0;
}

/* =============================================================================
   PC (1024px 이상)
   ============================================================================= */
@media (min-width: 1024px) {
  .event-info {
    padding-block: var(--s-80) var(--s-64);
  }

  .event-info__header {
    gap: var(--s-8);
  }

  .event-info__title {
    font-size: 34px;
  }

  .event-info__subtitle,
  .event-info__tips-sub,
  .event-info__notice {
    letter-spacing: var(--ls-normal);
  }

  .event-info__rule {
    margin-block: var(--s-32);
  }

  .event-info__row {
    gap: var(--s-16);
  }

  .event-info__term {
    width: 84px;
    font-size: var(--fs-body);
  }

  .event-info__term::before {
    left: 0;
  }

  .event-info__cta {
    margin-top: var(--s-24);
  }

  .event-info__steps,
  .event-info__tips {
    margin-top: var(--s-56);
  }

  .event-info__block-title {
    font-size: 38px;
  }

  .event-info__card {
    padding: var(--s-48) var(--s-32);
  }

  .event-info__step-title {
    font-size: 20px;
  }

  .event-info__step-desc--note {
    font-size: 13px;
  }

  .event-info__method-tip {
    text-align: left;
  }

  .event-info__method-flag {
    right: -9.5px;
  }

  .event-info__tips-head {
    gap: var(--s-8);
  }

  .event-info__tip-list {
    padding-bottom: 0;
  }

  .event-info__tip + .event-info__tip {
    margin-top: var(--s-24);
  }

  .event-info__tip + .event-info__tip::before {
    margin-bottom: var(--s-24);
  }

}
