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

* > img {
  display: block;
  max-width: 100%;
}

:root {
  font-size: 10px;

  --blue100: #edeeee;
  --red500: #c41c1c;
  --red500-hover: #A11717;

  --darkblue300: #495f99;
  --darkblue400: #11357d;
  --darkBlue500: #0b2765;
  --darkBlue600: #0b235d;
  --darkBlue700: #131b3f;
  --darkBlue700-opacity30: rgba(19, 27, 63, .4);
  --darkBlue800: #05133d;
  --darkBlue900: #081231;
  
  --section-max-width: 1440px;
  --section-padding: 64px;
  --section-gap: 64px;
}

html, body {
  text-size-adjust: none;
  overflow-x: hidden;
  min-height: 100vh;
  scroll-behavior: smooth;
  scroll-snap-align: end;
  background-color: var(--blue100);
}

li {
  list-style: none;
}

a {
  text-decoration: none;
}

a, li, button {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

button, input, select, textarea {
  border: none;
}

button {
  background-color: transparent;
  cursor: pointer;
}

body, h1, h2, h3, h4, p,
figure, blockquote, dl, dd {
  margin-block-end: 0;
}

fieldset {
  border: 0;
  padding: 0.01em 0 0 0;
  margin: 0;
  min-width: 0;
}

body:not(:-moz-handler-blocked) fieldset {
  display: table-cell;
}

@font-face {
  font-family: CaviarDreams-Regular;
  src: url('../assets/fonts/caviar_dreams/Caviar\ Dreams.woff2');
  font-display: swap;
  font-weight: 400;
}

@font-face {
  font-family: CaviarDreams-Bold;
  src: url('../assets/fonts/caviar_dreams/Caviar\ Dreams\ Bold.woff2');
  font-display: swap;
  font-weight: 700;
  font-kerning: normal;
}


@font-face {
  font-family: JustSans-Regular;
  src: url('../assets/fonts/just_sans/JUST\ Sans\ Regular.woff2');
  font-display: swap;
  font-weight: 400;
}

@font-face {
  font-family: JustSans-Bold;
  src: url('../assets/fonts/just_sans/JUST\ Sans\ ExBold.woff2');
  font-display: swap;
  font-weight: 700;
}

@media(max-width: 768px) {
  :root {
    --section-padding: 36px;
  }
}

@media(max-width: 460px) {
  :root {
    --section-padding: 24px;
  }
}