/* BREAKPOINT */
/* $mobile: 425px;
$tablet: 768px;
$laptop: 1024px;
$desktop: 1440px; */

/* GLOBAL VARIABLES */
:root {
  --black1: #111111;
  --black2: #000000;
  --blue: #4fc3f7;
  --gray01: #90a4ae;
  --gray02: #eceff1;
  --gray03: #707070;

  --white: #fff;
  --red: #d92827;
  --bg-color01: #eceff1;
  --header-height: 66px;
  --header-zIndex: 10;

  --text-color: rgba(17, 17, 17, 0.8);
  --body-background: #fff;
  --surface-color: #eceff1;
  --border-color: #cfd8dc;
  --hamburger-color: #111111;
  --tooltip-bg-color: #707070;
}

.dark-theme {
  --text-color: #93918e;
  --surface-color: #212426;
  --body-background: #181a1b;
  --border-color: #3c4143;
  --hamburger-color: #f0f0f0;
  --tooltip-bg-color: #111111;
}

@media (min-width: 1024px) {
  :root {
    --header-height: 86px;
  }
}

/* #region FONT */
@font-face {
  font-family: Avenir Next;
  font-weight: 400;
  src: url("../fonts/AvenirNext/AvenirNext-Regular-08.ttf");
}
@font-face {
  font-family: Avenir;
  font-weight: 400;
  src: url("../fonts/AvenirNext/AvenirNext-Regular-08.ttf");
}
@font-face {
  font-family: Avenir;
  font-weight: 500;
  src: url("../fonts/Avenir/Avenir-Medium-09.ttf");
}
@font-face {
  font-family: Avenir;
  font-weight: 800;
  src: url("../fonts/Avenir/Avenir-Heavy-05.ttf");
}
@font-face {
  font-family: Avenir;
  font-weight: 900;
  src: url("../fonts/Avenir/Avenir-Black-03.ttf");
}
/* #endregion */

/* #region TYPOGRAPHY*/
p,
.body {
  font-family: Avenir Next;
  font-weight: 400;
  font-size: 0.875rem;
  letter-spacing: 0.75px;
  color: var(--text-color);
  line-height: 150%;
}

@media (min-width: 1024px) {
  p,
  .body {
    font-size: 1.125rem;

    color: var(--text-color, #111111cc);
  }
}

h1 {
  font-weight: 800;
  font-size: 3rem;
  line-height: 66px;
  letter-spacing: 0.65px;
  color: var(--text-color, #111111cc);
}
@media (min-width: 768px) {
}

h2 {
  font-weight: 800;
  font-size: 1.25rem;
  line-height: 27px;
  letter-spacing: 0.65px;
  color: var(--text-color, #111111cc);
}

h3 {
  color: var(--text-color, #111111cc);
}
/* #endregion */

/* #region BUTTON*/
.button {
  padding: 9px 20px;
  cursor: pointer;

  font-size: 1rem;
  font-weight: 900;
  font-weight: bold;
  text-align: center;
}
@media (min-width: 1024px) {
  .button {
    padding: 20px 16px;

    font-size: 1.25rem;
    font-weight: 800;
  }
}

.button--primary {
  border: 1px solid transparent;

  background-color: #4fc3f7;
  color: white;
}
.button--primary:hover {
  opacity: 0.5;
}
.button--primary:active {
  border: 1px solid #4fc3f7;

  background-color: white;
  color: var(--black1);
}

.button--outline {
  border: 1px solid #4fc3f7;

  background-color: transparent;
  color: var(--text-color, #111111cc);
  opacity: 0.6;
}
.button--outline:hover {
  opacity: 1;
}
.button--outline:active {
  background-color: #4fc3f7;
  color: white;
  border: 1px solid transparent;
  opacity: 1;
}
#applybutton {
  height: 58px;
  border: 1px solid #4fc3f7;

  color: #4fc3f7;
  background-color: white;
}

#applybutton:hover {
  background-color: #4fc3f7;
  color: white;
}
/* #endregion */

/* #region COMMON STYLES */
* {
  padding: 0;
  margin: 0;
  font-family: Avenir;
  box-sizing: border-box;
}
ul {
  list-style: none;
}

body {
  min-height: 100vh;
  width: 100vw;
  --padding-horizontal: 16px;
  background-color: var(--body-background);
  overflow-x: hidden;
}

@media (min-width: 768px) {
  body {
    --padding-horizontal: 80px;
  }
}
@media (min-width: 1024px) {
  body {
    --padding-horizontal: 160px;
  }
}

main {
  padding: var(--header-height, 86px) var(--padding-horizontal) 40px;
}

@media (min-width: 768px) {
  main {
    min-height: calc(100vh - 83px);
    padding: var(--header-height, 86px) var(--padding-horizontal) 90px;
    transition: all 0.25s ease-in;
  }
}
textarea:focus,
input:focus {
  outline: none;
}

.desktop {
  display: none;
}
.mobile {
  display: initial;
}
.not-mobile {
  display: none;
}
@media (min-width: 768px) {
  .desktop {
    display: initial;
  }
  .mobile {
    display: none !important;
  }
  .not-mobile {
    display: initial;
  }
}

/* TOOLTIP */
.tooltip {
  position: relative;
  display: inline-block;
}

.tooltip .tooltiptext {
  visibility: hidden;

  position: absolute;
  left: 50%;
  z-index: 1;
  width: 120px;
  border-radius: 4px;
  margin-left: -60px;
  padding: 8px 0;

  background-color: var(--tooltip-bg-color);
  color: #fff;
  text-align: center;

  font-weight: 500;
  font-size: 1.125rem;
  font-family: Avenir;

  transform: translateY(calc(-100% - 8px));
  opacity: 0;
  transition: opacity 1s;
}

.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: var(--tooltip-bg-color) transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}
/* #endregion */
