:root {
    --primary: #5A65EC;
    --secondary: #F3F3F3;
    --text: #222222;
    --secondary-text: #333333;
}
* {
    font-family: 'Open Sans', sans-serif;
    color: var(--text);
}

body {
    margin: 0;
    min-width: 100vw;
    min-height: 100vh;
}

main {
    display: flex;
    justify-content: center;
    min-height: 100vh;
}

main div.content-wrapper {
    align-self: center;
    text-align: center;
    max-width: 680px;
    width: 80%;
}

h2 {
    font-weight: 400;
    font-size: 1.5em;
    line-height: 33px;
}

p.body {
    opacity: 0.8;
    line-height: 22px;
}

.bolder {
    font-weight: 600;
}

strong {
    font-weight: 600;
}

.link {
    text-decoration: underline;
    margin-top: 1.5em;
    margin-bottom: 3em;
    font-size: 14px;
    opacity: 0.8;
}

button:hover, .link:hover {
    cursor: pointer;
    opacity: 0.8;
}

button {
    font-weight: 400;
    font-size: 1em;
    background-color: var(--primary);
    border: none;
    padding: 15px 4em;
    color: white;
    border-radius: 2px;
    margin: 5px;
}

button.secondary {
    color: var(--secondary-text);
    background-color: var(--secondary);
}

button a {
    color: white;
    text-decoration: none;
}

button.secondary a {
    color: var(--secondary-text);
}

.open-modal{
    cursor: pointer;
    margin-bottom: 3rem;
    display: block;
}

.modal-overlay{
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.5);
}

.modal-content{
  background-color: #fff;
  margin: 20% auto;
  padding: 2vw 3.5vw;
  width: 90%;
  max-width: 720px;
  box-shadow: 0 5px 8px 0 rgba(0,0,0,0.2),0 7px 20px 0 rgba(0,0,0,0.17);
}


.modal-body{
    padding: 1vw;
    text-align: left;
}

.modal-footer{
  text-align: right;
}
