/* ============================================================
 * HOMI CLUB — Minimal Reset (globals/reset.css)
 * ============================================================
 * 표준 리셋 + body 기본 설정 (호미클럽 페이지 톤·종이 배경)
 * tokens.css 가 먼저 로드되어 있어야 함.
 * ============================================================ */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-height: 100vh;
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--ink-900);
  background: var(--bg-page);
  background-image:
    radial-gradient(rgba(60, 40, 20, .022) 1px, transparent 1px),
    radial-gradient(rgba(60, 40, 20, .018) 1px, transparent 1px);
  background-size: 3px 3px, 7px 7px;
  background-position: 0 0, 1px 2px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: var(--tracking-normal);
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-family: var(--font-heading);  /* 제목 — 고딕 */
}

p, ul, ol, figure, blockquote, dl, dd {
  margin: 0;
  padding: 0;
}

/* 본문 paragraph — 명조 + 1.9 행간 + 한국어 단어 단위 줄바꿈 (긴 단어 잘림 방지) */
p {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  letter-spacing: var(--tracking-relax);
  line-height: var(--lh-body);
  word-break: keep-all;
  overflow-wrap: break-word;
}

ul, ol {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
  color: inherit;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}

img,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

input,
textarea,
select {
  font: inherit;
  color: inherit;
}

textarea {
  resize: vertical;
}

table {
  border-collapse: collapse;
}

/* 모바일 탭 하이라이트 제거 */
a, button {
  -webkit-tap-highlight-color: transparent;
}

/* 접근성: 시각 가림 (스크린 리더만 읽음) */
.sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
