@charset "utf-8";

/* ==========================================================================
   CSS 리셋
   ========================================================================== */

  * {margin: 0; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-print-color-adjust: exact !important; print-color-adjust: exact; word-break: keep-all; overflow-wrap: anywhere; white-space: normal;}
  html {width: 100%; height: 100%; font-size: 0.052vw;}
  body {position: relative; height: 100%; font-size: 16rem; line-height: 130%; color: #111; font-family: "Pretendard", sans-serif; font-weight:400; -webkit-text-size-adjust: 100%; -moz-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -webkit-overflow-scrolling: touch; overflow-x: clip;}
  body, div, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p, form, fieldset, table, tr, th, td {margin: 0; padding: 0; font-weight: normal;}
  ul, ol, li {list-style: none;}
  img, fieldset {border: none; vertical-align: top;}
  caption {overflow: hidden; position: absolute; border: 0; width: 1px; height: 1px; clip: rect(1px, 1px, 1px, 1px);}
  textarea, button {vertical-align: middle;}
  option {padding: 10px;}
  input[type="radio"], input[type="checkbox"] {border: 0; padding: 0; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none;}
  select {padding: 5rem; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
  textarea {padding: 16rem; vertical-align: middle; font-size: 20rem; line-height: 160%; letter-spacing: -0.8rem; font-family: "Pretendard", sans-serif; color: #111; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; background: #fff; border: 1px solid #8A8C8E; border-radius: 0; resize: vertical;}
  textarea:focus {border-color:var(--brandColor);  }
  textarea::placeholder {color: #6E7072;}
  textarea:disabled { background:#F8F8F8;}
  a {text-decoration: none; color: #000;}
  a:hover, a:focus, a:active {text-decoration: none;}
  table {border-collapse: collapse; width: 100%;}
  button {padding: 0; margin: 0; font-size: 16rem; font-family: "Pretendard", sans-serif; background: none; border: none; cursor: pointer; overflow: visible; white-space: nowrap;}
  /* button:active {outline: none;} */
  button::-moz-focus-inner {padding: 0; border: 0;}
  button:focus-visible, a:focus-visible { border:2px solid #000; }
  article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {display: block;}
  input {font-family: "Pretendard", sans-serif; color: #000;}
  /* input:focus, select:focus, option:focus, button:focus {outline: none;} */


/* 접근성: 포커스 스타일 유지 (outline 제거 금지) */
:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

@media (max-width: 1024px){
  html {font-size: 0.130vw;}
}
@media (max-width: 600px){
  html {font-size: 0.256vw;}
}
