* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  --primary-blue: #0056b3;
  --primary-dark: #004494;
  --accent-yellow: #ffc107;
  --accent-yellow-hover: #e0a800;

  --bg-white: #ffffff;
  --bg-light: #f8f9fa;
  --bg-footer: #1a252f;

  --text-main: #333333;
  --text-sub: #666666;
  --text-white: #ffffff;

  --border-color: #e5e5e5;
  --shadow-soft: 0 4px 6px rgba(0, 0, 0, 0.05);
}

html,
body {
  height: 100%;
}

body {
  font-family:
    Pretendard,
    -apple-system,
    sans-serif;
  color: var(--text-main);
  background-color: var(--bg-white);
  line-height: 1.6;

  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
  padding-top: 80px;
}

button {
  border: none;
}

@media (max-width: 1024px) {
  main {
    padding-top: 72px;
  }
}

@media (max-width: 768px) {
  main {
    padding-top: 64px;
  }
}

a {
  text-decoration: none;
  color: inherit;
  transition: color 0.2s;
  cursor: pointer;
}

button {
  font-family: inherit;
  cursor: pointer;
}

ul {
  list-style: none;
}
