:root {
  --color-highlight: #fbce46;
  /**/
  --color-primary-dark: #44362F;
  --color-primary-darker: #100C08;
  --color-primary-light: #FCF5E5;
  --color-secondary-dark: #9F8170;
  --color-secondary-light: #D2B48C;
  --color-tertiary-light: #EFDFBB;

  /*
  --color-highlight: #F9A983;
  --color-primary-dark: #5D8282;
  --color-primary-darker: #125E63;
  --color-primary-light: #FFD3AC;
  --color-secondary-light: #FEECCB;
  
  */

  --spacing-mega: 120px;
  --spacing-jumbo: 96px;
  --spacing-x-lg: 60px;
  --spacing-lg: 48px;
  --spacing-md-lg: 36px;
  --spacing-md: 24px;
  --spacing-sm: 12px;
  --spacing-tiny: 4px;

  --box-radius: 50% 50% 0 0;
  --btn-radius: var(--spacing-sm) var(--spacing-sm) 0 0;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

body {
  font-family: 'Montserrat';
  background-color: var(--color-primary-light);
  font-size: 1rem;
  max-width: 1800px;
  margin: 0 auto;
}

h1 {
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: clamp(2rem, 4vw, 4rem);
}

h2 {
  font-size: clamp(1.2rem, 2vw, 2.4rem);
}

h3 {
  font-size: clamp(1.2rem, 1.6vw, 2rem);
}

section {
  background-color: var(--color-primary-light);
  color: var(--color-secondary-dark);
}

section>* {
  max-width: 1200px;
  margin: 0 auto;
}

img {
  display: block;
}

a,
a:visited {
  color: var(--color-dark);
  text-decoration: none;
}

li {
  list-style: none;
}

.cta {
  background-color: rgb(0, 0, 0, 0);
  color: var(--color-primary-dark);
  border: 0;
}

.cta a {
  font-size: 1.2rem;
  text-decoration: underline;
  display: flex;
  gap: var(--spacing-tiny);
  align-items: center;
  transition: 0.4s;
}

.cta img {
  width: 52px;
  height: 52px;
}

.cta a:hover {
  cursor: pointer;
  text-decoration: none;
  color: var(--color-highlight);
  gap: var(--spacing-sm);
}

textarea:focus {
  outline: none;
}


input[type="submit"],
input[type="button"] {
  padding: 12px 20px;
  font-size: 1rem;
  background-color: var(--color-highlight);
  color: var(--color-primary-dark);
  border: 0;
  transition: 0.4s;
  border-radius: var(--btn-radius);
}

input[type="submit"]:hover,
input[type="button"]:hover {
  cursor: pointer;
  background-color: var(--color-secondary-light);
  color: white;
}

input,
select {
  vertical-align: middle;
}

/* SCROLL ANIMATIONS */

.anim-up {
  animation: 1.2s cardFadeUp 1 forwards;
}

.fade-up {
  animation: 1.2s fadeUp 1 forwards;
}

.anim-left {
  animation: 1.2s slideLeft 1 forwards;
}

.text-left {
  animation: 1.2s textLeft 1 forwards;
}

.anim-right {
  animation: 1.2s slideRight 1 forwards;
}

@keyframes cardFadeUp {
  from {
    bottom: -300px;
    opacity: 0;
  }

  to {
    bottom: 0;
    opacity: 1;
  }
}

@keyframes fadeUp {
  from {
    transform: translate(-50%, 0);
    opacity: 0;
  }

  to {
    transform: translate(-50%, -50%);
    opacity: 1;
  }
}