/* 이용약관 · 개인정보처리방침 · 이용안내 — 공통 문서형 레이아웃 */
.policy-page {
  padding: calc(var(--header-height) + 64px) 0 120px;
  background: var(--white);
  color: var(--black);
}

.policy-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 48px;
  border-bottom: 1px solid var(--line);
}

.policy-tabs a {
  padding: 14px 4px;
  margin-right: 24px;
  font-size: 16px;
  color: var(--gray);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
}

.policy-tabs a.active {
  color: var(--black);
  font-weight: 700;
  border-bottom-color: var(--black);
}

.policy-body {
  max-width: 880px;
}

.policy-body h1 {
  font-size: 34px;
  font-weight: 700;
  margin: 0 0 36px;
}

.policy-body h2 {
  font-size: 18px;
  font-weight: 700;
  margin: 40px 0 14px;
  padding-left: 12px;
  border-left: 3px solid var(--accent);
  line-height: 1.4;
}

.policy-body p {
  font-size: 15px;
  line-height: 1.8;
  color: #333;
  margin: 0 0 10px;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.policy-body p.clause {
  padding-left: 1.4em;
  text-indent: -1.4em;
}

.policy-body p.item {
  padding-left: 2.2em;
  text-indent: -1.2em;
  color: #444;
}

.policy-body p.note {
  font-size: 14px;
  color: var(--gray);
}

@media (max-width: 767px) {
  .policy-page {
    padding: calc(var(--header-height) + 32px) 0 80px;
  }

  .policy-tabs {
    margin-bottom: 32px;
  }

  .policy-tabs a {
    margin-right: 12px;
    font-size: 15px;
  }

  .policy-body h1 {
    font-size: 26px;
    margin-bottom: 24px;
  }

  .policy-body h2 {
    font-size: 16px;
    margin-top: 32px;
  }

  .policy-body p {
    font-size: 14px;
  }
}
