/*Color*/
:root {
  --color-title: #181818;
  --color-text: #181818;
  --color-primary: #592987;
  --color-little: #5929871a;
  --color-sub: #214a93;
  --color-mute: #777777;
  --color-dark: #000000;
  --color-light: #ffffff;
  --color-danger: #ea1818;
  --color-warning: #e9ac00;
  --color-success: #24b020;

  --gradient-primary: linear-gradient(to right,
      var(--color-primary),
      var(--color-sub));

  --gnb-font-color: var(--color-title);
  --gnb-bg-color: #ffffff;

  --body-bg-color: var(--color-white);
}

::selection {
  background-color: var(--color-primary);
  color: #fff;
}

/*scrollbar custom*/
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 40px;
}

/*Layout*/
:root {
  --container-width: 1440px;
  --divider-gap: 150px;
}

/*button*/
:root {
  --btn-height: 60px;
  --btn-font-size: var(--font-size-default);
}

/*Grid*/
:root {
  --grid-gap: 50px;
  --grid-t-gap: 40px;
  --grid-m-gap: 30px;
  --row-gap: 50px;
  --row-t-gap: 80px;
  --row-m-gap: 50px;
}

/*Font*/
* {
  font-family: "Pretendard", "SUIT", "Noto Sans KR", sans-serif;
}

:root {
  --font-size-default: 22px;
}

html {
  font-size: var(--font-size-default);
}

p {
  font-size: var(--font-size-default);
  line-height: 1.6;
}

h1 {
  font-size: 60px;
}

h2 {
  font-size: 50px;
}

h4 {
  font-size: 28px;
}

h5 {
  font-size: 24px;
}

/* Desktop ( 1024px ~)*/
@media all and (min-width: 1024px) {}

/* Laptop ( 1024px ~ 1440px)*/
@media all and (min-width: 1024px) and (max-width: 1440px) {
  :root {
    --font-size-default: 20px;
  }

  h1 {
    font-size: 55px;
  }
}

/* Tablet ( 768px ~ 1023px)*/
@media all and (min-width: 768px) and (max-width: 1023px) {
  :root {
    --divider-gap: 100px;
    --btn-height: 55px;
    --font-size-default: 18px;
  }

  h1 {
    font-size: 46px;
  }

  h2 {
    font-size: 40px;
  }

  h4 {
    font-size: 22px;
  }

  h5 {
    font-size: 20px;
  }
}

/* Moble ( ~ 767px)*/
@media all and (max-width: 767px) {
  :root {
    --divider-gap: 60px;
    --btn-height: 48px;
    --font-size-default: 15px;
  }

  h1 {
    font-size: 35px;
  }

  h2 {
    font-size: 32px;
  }

  h4 {
    font-size: 18px;
  }

  h5 {
    font-size: 17px;
  }
}

h1,
h2,
h1 span,
h2 span {
  line-height: 1.2;
}

h1 span,
h2 span {
  font-weight: inherit;
}

h4,
h5 {
  font-weight: 500;
}