/* ============================================================
   Reset CSS
   ============================================================ */

/* 박스모델 & 탭 하이라이트 제거 */
*, *::before, *::after { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }

/* 문서 기본값 */
html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
  margin: 0;
  padding: 0;
}

body {
  min-height: 100%;
  font-size: 16px;
  font-family: 'Montserrat', 'Pretendard', sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #333;
  word-break: keep-all;
  overflow-wrap: break-word;
  margin: 0;
  padding: 0;
}

/* 여백 초기화 */
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
dl, dd, ol, ul,
figure, hr,
fieldset, legend { margin: 0; padding: 0; }

/* 제목 */
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }

/* 리스트 */
ol, ul, li { list-style: none; margin: 0; padding: 0; }

/* 링크 */
a { display: inline-block; color: inherit; text-decoration: none; }

/* 텍스트 */
em, i { font-style: inherit; }
b, strong { font-weight: inherit; }
del, s, u { text-decoration: none; }
small { font-size: inherit; }
sub, sup { font-size: 11px; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -6px; }
sub { bottom: -3px; }
abbr[title] { text-decoration: none; border-bottom: 0; }

/* 미디어 */
img, picture, video, canvas, svg, iframe { display: block; max-width: 100%; }
img { border: 0; vertical-align: middle; }
svg { fill: currentColor; }

/* 테이블 */
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
th { font-weight: inherit; text-align: left; }
th, td { padding: 0; vertical-align: top; }

/* 폼 */
input, textarea, select, button {
  margin: 0;
  padding: 0;
  font: inherit;
  font-size: 16px;
  color: inherit;
  letter-spacing: inherit;
  background: none;
  border: 0;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
input[type='password']::-ms-reveal,
input[type='password']::-ms-clear { display: none; }
input[type='date'] { background: #fff; }
input::-ms-clear { display: none; }
select::-ms-expand { display: none; }
textarea { resize: vertical; overflow: auto; }
button { cursor: pointer; }
fieldset { border: 0; margin: 0; padding: 0; }
legend { display: table; max-width: 100%; white-space: normal; }
label { cursor: pointer; }

/* 기타 */
pre { white-space: pre-line; font: inherit; }
hr { border: 0; border-top: 1px solid currentColor; margin: 0; }
address { font-style: inherit; }
q { quotes: none; }
q::before, q::after { content: ''; }