html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, input[type='button'], input[type='reset'], input[type='submit'] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type='checkbox'], input[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}

input[type='number']::-webkit-inner-spin-button, input[type='number']::-webkit-outer-spin-button {
  height: auto;
}

input[type='search'] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type='search']::-webkit-search-cancel-button, input[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  -webkit-padding-start: 0;
  margin: 0;
  border: 0;
  vertical-align: baseline;
  padding: 0;
  font: inherit;
  -webkit-margin-after: 0;
  font-size: 100%;
  -webkit-margin-before: 0;
}

body {
  line-height: 1rem;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset {
  min-inline-size: 0;
}

*, *:before, *:after {
  box-sizing: border-box;
}

::selection {
  background-color: #3ec2cf;
  color: #fffefc;
}

body, html {
  width: 100%;
  height: 100%;
}

html {
  font-size: 16px;
}

body {
  background-color: #fffefc;
  color: #2d2629;
  font-family: 'Montserrat-light', Helvetica, sans-serif;
  line-height: 1.7rem;
}

#app-root, #content {
  height: 100%;
}

#content {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  height: auto;
  width: 100%;
  outline: none;
}

.flash-root {
  position: absolute;
  top: 60px;
  left: 0;
  width: 100%;
  z-index: 15;
}

main {
  margin-top: 60px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

main:before {
  width: 100%;
  top: 0;
  background-repeat: no-repeat;
  height: 100%;
  background-position-x: center;
  position: fixed;
  z-index: -1;
  content: "";
  background-size: cover;
  background-position-y: bottom;
  background-image: url('/images/backgrounds/art.jpg');
  opacity: 0.2;
  left: 0;
}

section {
  position: relative;
  width: 100%;
}

div#app-root {
  width: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.container {
  margin: 0 auto;
  position: relative;
  padding: 1rem 0;
  width: 90%;
}

.container.width-300 {
  max-width: 300px;
  width: 90%;
}

.container.width-750 {
  max-width: 750px;
  width: 90%;
}

.container.full-width {
  margin: 1.3125rem;
}

.container.full-screen {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.container.inset-0 {
  padding: 1rem;
}

.container.inset-plus-2 {
  padding: 1.8125rem;
}

.container.horizontal-inset-0 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.container.horizontal-inset-plus-1 {
  padding-left: 1.3125rem;
  padding-right: 1.3125rem;
}

.container.vertical-scroll {
  height: 100%;
  overflow-y: auto;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.container.horizontal-scroll {
  width: 100%;
  overflow-x: auto;
}

.row {
  display: flex;
  position: relative;
  width: 100%;
  margin-bottom: 1.8125rem;
}

.column {
  flex: 1;
  min-width: 0;
  position: relative;
  width: 100%;
}

.column.width-300 {
  max-width: 300px;
}

@media screen and (max-width: 500px) {

  .row {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  
  
  
  .column.half {
    float: none;
    width: 100%;
  }

}

.inliner {
  align-items: center;
  display: flex;
  flex: 0 1 auto;
  gap: 1rem;
  width: auto;
}

.inliner li {
  flex-shrink: 0;
}

.inliner.space-between {
  justify-content: space-between;
}

.flex-column {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.fieldset-group {
  display: flex;
  gap: 0.625rem;
}

.fieldset-group fieldset, .fieldset-group div {
  flex: 1;
  position: relative;
}

.fieldset-group.width-400 {
  max-width: 400px;
}

.button-group {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.button-group button, .button-group .button {
  display: inline-block;
  width: auto;
}

.button-group.centered {
  justify-content: center;
}

.button-group.full-width button, .button-group.full-width .button {
  flex: 1;
}

.desktop {
  display: block;
}

.mobile {
  display: none;
}

hr {
  background-color: #d9d9d9;
  border: 0;
  height: 2px;
  margin: 1.3125rem 0 1.3125rem;
}

.flex-1 {
  flex: 1;
}

.text-align-center {
  display: block;
  text-align: center;
}

.text-align-left {
  text-align: left;
}

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

.text-inliner {
  align-items: baseline;
  display: flex;
  gap: 0.25rem;
}

.center-div {
  display: block;
  margin: 0 auto;
}

.flex-align-center-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.no-margin {
  margin: 0;
}

.no-padding {
  padding: 0;
}

.margin-minus-1 {
  margin: 0.625rem;
}

.margin-top-minus-1 {
  margin-top: 0.625rem;
}

.margin-bottom-minus-1 {
  margin-bottom: 0.625rem;
}

.margin-left-minus-1 {
  margin-left: 0.625rem;
}

.margin-right-minus-1 {
  margin-right: 0.625rem;
}

.padding-minus-1 {
  padding: 0.625rem;
}

.padding-top-minus-1 {
  padding-top: 0.625rem;
}

.padding-bottom-minus-1 {
  padding-bottom: 0.625rem;
}

.padding-left-minus-1 {
  padding-left: 0.625rem;
}

.padding-right-minus-1 {
  padding-right: 0.625rem;
}

.gap-minus-1 {
  gap: 0.625rem;
}

.margin-default {
  margin: 1rem;
}

.margin-top-default {
  margin-top: 1rem;
}

.margin-bottom-default {
  margin-bottom: 1rem;
}

.margin-left-default {
  margin-left: 1rem;
}

.margin-right-default {
  margin-right: 1rem;
}

.padding-default {
  padding: 1rem;
}

.padding-top-default {
  padding-top: 1rem;
}

.padding-bottom-default {
  padding-bottom: 1rem;
}

.padding-left-default {
  padding-left: 1rem;
}

.padding-right-default {
  padding-right: 1rem;
}

.gap-default {
  gap: 1rem;
}

.margin-minus-4 {
  margin: 0.25rem;
}

.margin-top-minus-4 {
  margin-top: 0.25rem;
}

.margin-bottom-minus-4 {
  margin-bottom: 0.25rem;
}

.margin-left-minus-4 {
  margin-left: 0.25rem;
}

.margin-right-minus-4 {
  margin-right: 0.25rem;
}

.padding-minus-4 {
  padding: 0.25rem;
}

.padding-top-minus-4 {
  padding-top: 0.25rem;
}

.padding-bottom-minus-4 {
  padding-bottom: 0.25rem;
}

.padding-left-minus-4 {
  padding-left: 0.25rem;
}

.padding-right-minus-4 {
  padding-right: 0.25rem;
}

.gap-minus-4 {
  gap: 0.25rem;
}

.margin-plus-2 {
  margin: 1.8125rem;
}

.margin-top-plus-2 {
  margin-top: 1.8125rem;
}

.margin-bottom-plus-2 {
  margin-bottom: 1.8125rem;
}

.margin-left-plus-2 {
  margin-left: 1.8125rem;
}

.margin-right-plus-2 {
  margin-right: 1.8125rem;
}

.padding-plus-2 {
  padding: 1.8125rem;
}

.padding-top-plus-2 {
  padding-top: 1.8125rem;
}

.padding-bottom-plus-2 {
  padding-bottom: 1.8125rem;
}

.padding-left-plus-2 {
  padding-left: 1.8125rem;
}

.padding-right-plus-2 {
  padding-right: 1.8125rem;
}

.gap-plus-2 {
  gap: 1.8125rem;
}

.margin-minus-2 {
  margin: 0.5rem;
}

.margin-top-minus-2 {
  margin-top: 0.5rem;
}

.margin-bottom-minus-2 {
  margin-bottom: 0.5rem;
}

.margin-left-minus-2 {
  margin-left: 0.5rem;
}

.margin-right-minus-2 {
  margin-right: 0.5rem;
}

.padding-minus-2 {
  padding: 0.5rem;
}

.padding-top-minus-2 {
  padding-top: 0.5rem;
}

.padding-bottom-minus-2 {
  padding-bottom: 0.5rem;
}

.padding-left-minus-2 {
  padding-left: 0.5rem;
}

.padding-right-minus-2 {
  padding-right: 0.5rem;
}

.gap-minus-2 {
  gap: 0.5rem;
}

.margin-plus-4 {
  margin: 3.975rem;
}

.margin-top-plus-4 {
  margin-top: 3.975rem;
}

.margin-bottom-plus-4 {
  margin-bottom: 3.975rem;
}

.margin-left-plus-4 {
  margin-left: 3.975rem;
}

.margin-right-plus-4 {
  margin-right: 3.975rem;
}

.padding-plus-4 {
  padding: 3.975rem;
}

.padding-top-plus-4 {
  padding-top: 3.975rem;
}

.padding-bottom-plus-4 {
  padding-bottom: 3.975rem;
}

.padding-left-plus-4 {
  padding-left: 3.975rem;
}

.padding-right-plus-4 {
  padding-right: 3.975rem;
}

.gap-plus-4 {
  gap: 3.975rem;
}

.margin-plus-1 {
  margin: 1.3125rem;
}

.margin-top-plus-1 {
  margin-top: 1.3125rem;
}

.margin-bottom-plus-1 {
  margin-bottom: 1.3125rem;
}

.margin-left-plus-1 {
  margin-left: 1.3125rem;
}

.margin-right-plus-1 {
  margin-right: 1.3125rem;
}

.padding-plus-1 {
  padding: 1.3125rem;
}

.padding-top-plus-1 {
  padding-top: 1.3125rem;
}

.padding-bottom-plus-1 {
  padding-bottom: 1.3125rem;
}

.padding-left-plus-1 {
  padding-left: 1.3125rem;
}

.padding-right-plus-1 {
  padding-right: 1.3125rem;
}

.gap-plus-1 {
  gap: 1.3125rem;
}

.margin-minus-3 {
  margin: 0.375rem;
}

.margin-top-minus-3 {
  margin-top: 0.375rem;
}

.margin-bottom-minus-3 {
  margin-bottom: 0.375rem;
}

.margin-left-minus-3 {
  margin-left: 0.375rem;
}

.margin-right-minus-3 {
  margin-right: 0.375rem;
}

.padding-minus-3 {
  padding: 0.375rem;
}

.padding-top-minus-3 {
  padding-top: 0.375rem;
}

.padding-bottom-minus-3 {
  padding-bottom: 0.375rem;
}

.padding-left-minus-3 {
  padding-left: 0.375rem;
}

.padding-right-minus-3 {
  padding-right: 0.375rem;
}

.gap-minus-3 {
  gap: 0.375rem;
}

.margin-plus-5 {
  margin: 6rem;
}

.margin-top-plus-5 {
  margin-top: 6rem;
}

.margin-bottom-plus-5 {
  margin-bottom: 6rem;
}

.margin-left-plus-5 {
  margin-left: 6rem;
}

.margin-right-plus-5 {
  margin-right: 6rem;
}

.padding-plus-5 {
  padding: 6rem;
}

.padding-top-plus-5 {
  padding-top: 6rem;
}

.padding-bottom-plus-5 {
  padding-bottom: 6rem;
}

.padding-left-plus-5 {
  padding-left: 6rem;
}

.padding-right-plus-5 {
  padding-right: 6rem;
}

.gap-plus-5 {
  gap: 6rem;
}

.margin-plus-3 {
  margin: 2.625rem;
}

.margin-top-plus-3 {
  margin-top: 2.625rem;
}

.margin-bottom-plus-3 {
  margin-bottom: 2.625rem;
}

.margin-left-plus-3 {
  margin-left: 2.625rem;
}

.margin-right-plus-3 {
  margin-right: 2.625rem;
}

.padding-plus-3 {
  padding: 2.625rem;
}

.padding-top-plus-3 {
  padding-top: 2.625rem;
}

.padding-bottom-plus-3 {
  padding-bottom: 2.625rem;
}

.padding-left-plus-3 {
  padding-left: 2.625rem;
}

.padding-right-plus-3 {
  padding-right: 2.625rem;
}

.gap-plus-3 {
  gap: 2.625rem;
}

h1 {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 2.625rem;
  line-height: 2.625rem;
}

h2 {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 1.8125rem;
  line-height: 2.625rem;
}

h3, legend {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 1.3125rem;
  line-height: 1.8125rem;
}

h4 {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 1.3125rem;
  line-height: 1.7rem;
}

h5 {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 1rem;
  line-height: 1.7rem;
}

h6, label, th {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.5px;
  line-height: 0.85rem;
  text-transform: uppercase;
}

h6 span, label span, th span {
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  font-size: 1rem;
  line-height: 1.7rem;
  text-transform: none;
}

h6 {
  margin-bottom: 0.375rem;
}

p {
  font-size: 14px;
  line-height: 1.3125rem;
}

.small-caps {
  font-size: 0.75rem;
  line-height: 1.3125em;
  text-transform: uppercase;
}

small {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.15em;
}

a {
  color: #3ec2cf;
  text-decoration: none;
}

a:hover {
  color: #3ec2cf;
  cursor: pointer;
  text-decoration: underline;
}

b, strong {
  font-family: 'Montserrat-extrabold', Helvetica, sans-serif;
}

em {
  font-family: 'open-sans-regular-italic', Helvetica, sans-serif;
}

article {
  margin-bottom: 2.625rem;
}

small {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.15em;
}

.overflow-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}

.nowrap {
  white-space: nowrap;
}

.blue {
  background-color: #3ec2cf;
  border-radius: 6rem;
  color: #fffefc;
  display: inline-block;
  margin-left: 40%;
  padding: 1rem 0.625rem;
  text-align: center;
}

@media screen and (max-width: 500px) {

  h1 {
    font-size: 1.8125rem;
    line-height: 1.8125rem;
  }

}

.uppercase {
  text-transform: uppercase;
}

.text-align-center {
  text-align: center;
}

fieldset {
  margin-bottom: 0.625rem;
}

fieldset.radio, fieldset.checkbox {
  margin: 1.3125rem 0;
}

fieldset.validation-message-container input {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

fieldset.validation-message-container .validation-message {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

input, textarea, .select-menu > span {
  line-height: 1.7rem;
  width: 100%;
  font-family: 'Montserrat-light', Helvetica, sans-serif;
  border: 1px solid #d9d9d9;
  padding: 0.5rem 1rem 0.5rem;
  position: relative;
  background-color: #fffefc;
  border-radius: 5px;
  display: inline-block;
  color: #2d2629;
}

input:focus, textarea:focus, .select-menu > span:focus {
  box-shadow: 0 0.5px 3px 3px #3ec2cf;
  outline: none;
  z-index: 12;
}

input::placeholder, textarea::placeholder, .select-menu > span::placeholder {
  color: #d9d9d9;
  font-family: 'Montserrat-regular-italic', Helvetica, sans-serif;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .select-menu > span::-webkit-input-placeholder {
  color: #d9d9d9;
  font-family: 'Montserrat-regular-italic', Helvetica, sans-serif;
}

input::-moz-placeholder, textarea::-moz-placeholder, .select-menu > span::-moz-placeholder {
  color: #d9d9d9;
  font-family: 'Montserrat-regular-italic', Helvetica, sans-serif;
}

input:-moz-placeholder, textarea:-moz-placeholder, .select-menu > span:-moz-placeholder {
  color: #d9d9d9;
  font-family: 'Montserrat-regular-italic', Helvetica, sans-serif;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder, .select-menu > span:-ms-input-placeholder {
  color: #d9d9d9;
  font-family: 'Montserrat-regular-italic', Helvetica, sans-serif;
}

input:disabled, input.disabled, textarea:disabled, textarea.disabled, .select-menu > span:disabled, .select-menu > span.disabled {
  color: #d9d9d9;
  cursor: not-allowed;
}

button, .button {
  line-height: 1.3125rem;
  font-family: 'Montserrat-light', Helvetica, sans-serif;
  border: none;
  padding: 0.5rem 1rem 0.5rem;
  text-align: center;
  white-space: nowrap;
  position: relative;
  text-decoration: none;
  background-color: #d9d9d9;
  border-radius: 5px;
  display: inline-block;
  color: #2d2629;
}

button .fas, .button .fas {
  font-size: 0.85em;
}

button:focus, .button:focus {
  box-shadow: 0 0.5px 3px 3px #3ec2cf;
  outline: none;
  z-index: 12;
}

button:hover, .button:hover {
  background-color: #d9d9d9;
  color: #fffefc;
  cursor: pointer;
  text-decoration: none;
}

button.primary, .button.primary {
  background-color: #3ec2cf;
  color: #fffefc;
}

button.primary:hover, .button.primary:hover {
  background-color: #78cfcf;
  color: #fffefc;
}

button:disabled, button.disabled, .button:disabled, .button.disabled {
  background-color: #d9d9d9;
  border-color: #d9d9d9;
  color: #fffefc;
}

button:disabled:hover, button.disabled:hover, .button:disabled:hover, .button.disabled:hover {
  background-color: #d9d9d9;
  border-color: #d9d9d9;
  cursor: not-allowed;
}

button.centered, .button.centered {
  margin-left: auto;
  margin-right: auto;
  max-width: 320px;
  text-align: center;
}

button.full-width, .button.full-width {
  max-width: 100%;
  width: 100%;
}

button.large, .button.large {
  font-size: 1.3125rem;
  max-width: 450px;
  padding: 0.625rem 1.8125rem;
}

button.small, .button.small {
  height: 34px;
  line-height: 1rem;
  padding: 0.375rem 1rem;
}

input[type=checkbox], input[type=radio] {
  vertical-align: middle;
  height: auto;
  width: auto;
}

label.inline-checkbox, label.inline-radio {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}

label.inline-checkbox:hover, label.inline-radio:hover {
  cursor: pointer;
}

label.inline-checkbox p, label.inline-radio p {
  font-size: 1rem;
  text-transform: none;
}

.validation-message {
  background-color: #d9d9d9;
  border-radius: 5px;
  color: #fffefc;
  padding: 0.625rem 1rem;
}

.validation-message.error {
  background-color: #ca4753;
}

.validation-message.success {
  background-color: #479aca;
}

.flash-message {
  background-color: #d9d9d9;
}

.flash-message.error {
  background-color: #ca4753;
  color: #fffefc;
}

.flash-message.success {
  background-color: #3ec2cf;
  color: #fffefc;
}

.flash-message.warn {
  background-color: #f24dba;
  color: #fffefc;
}

.flash-message .container {
  padding: 0.5rem 1.3125rem;
}

.flash-message span {
  margin-right: 1rem;
}

.flash-message span a {
  display: inline;
  padding: 0;
}

.flash-message span:hover {
  cursor: pointer;
}

.flash-message a {
  color: #fffefc;
}

.flash-message a:hover {
  color: #fffefc;
}

.site-spinner {
  width: 46px;
  right: 0;
  top: 0;
  height: 30px;
  border-bottom-right-radius: 5px;
  position: fixed;
  border-bottom-left-radius: 5px;
  z-index: 40;
  box-shadow: 2px 2px 8px #d9d9d9;
  margin-left: -50px;
  background-color: #3ec2cf;
  left: 50%;
}

.site-spinner:after {
  width: 1.3125rem;
  background-repeat: no-repeat;
  height: 1.3125rem;
  position: fixed;
  margin-top: 4px;
  content: '';
  background-size: 1.3125rem 1.3125rem;
  margin-left: -22px;
  display: inline-block;
  background-image: url('/images/gifs/spinner-white.gif');
  left: calc(50% - 1rem);
}

.spinner {
  background-image: url('/images/gifs/spinner-white.gif');
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
  content: '';
  width: 1rem;
  height: 1rem;
  display: inline-block;
  margin-bottom: -2px;
}

ol, ul, li {
  position: relative;
}

img, video {
  display: block;
  max-width: 100%;
}

.object-fit-contain-container, .object-fit-cover-container {
  overflow: hidden;
  position: relative;
}

.object-fit-contain-container.width-20, .object-fit-cover-container.width-20 {
  width: 20px;
  height: 20px;
}

.object-fit-contain-container img, .object-fit-cover-container img {
  width: 100%;
  height: 100%;
}

.object-fit-contain-container img {
  object-fit: contain;
}

.object-fit-cover-container img {
  object-fit: cover;
}

table {
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  padding: 1rem;
  width: 100%;
}

th, td {
  padding: 0.625rem;
  text-align: left;
}

.user-menu-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
  display: flex;
  justify-content: center;
}

.user-menu-backdrop .user-menu {
  max-width: 960px;
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  margin-top: 60px;
}

.user-menu-backdrop .user-menu ul {
  background-color: #fffefc;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  box-shadow: 0 3px 8px #d9d9d9;
  text-align: left;
  position: relative;
  margin-top: -2px;
}

.user-menu-backdrop .user-menu li {
  background-color: #fffefc;
  color: #2d2629;
  text-align: left;
  border-bottom: 1px solid #d9d9d9;
}

.user-menu-backdrop .user-menu li a {
  width: auto;
  gap: 0.5rem;
  font-family: 'Montserrat-regular', Helvetica, sans-serif;
  align-items: center;
  padding: 1rem 1.3125rem;
  text-decoration: none;
  display: flex;
  flex: 0 1 auto;
  color: #2d2629;
}

.user-menu-backdrop .user-menu li a:hover {
  background-color: #3ec2cf;
  color: #fffefc;
}

.user-menu-backdrop .user-menu li:first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.user-menu-backdrop .user-menu li:last-child {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.user-menu-backdrop .user-menu li:last-child a {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.user-menu-backdrop .user-menu li.menu-header {
  padding: 1rem;
}

.user-menu-backdrop .user-menu li.menu-header .avatar {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}

.user-menu-backdrop .user-menu li.menu-header .avatar img {
  width: 40px;
  height: 40px;
}

.user-menu-backdrop .user-menu li.menu-header span {
  color: #787878;
}

@media screen and (max-width: 1000px) {

  .user-menu-backdrop {
    background-color: hsla(334.2857, 8.433735%, 16.27451%, 0.796875);
    justify-content: flex-start;
  }
  
  .user-menu-backdrop .user-menu {
    margin-top: 0;
    flex-direction: row;
    align-items: stretch;
    width: 300px;
  }
  
  .user-menu-backdrop .user-menu ul {
    margin-top: 0;
    width: 100%;
    border-radius: 0;
    border: 0;
    box-shadow: 0 0 0 #d9d9d9;
  }
  
  .user-menu-backdrop .user-menu ul li {
    border-radius: 0;
    border-bottom: 1px solid #d9d9d9;
  }
  
  .user-menu-backdrop .user-menu ul li:first-child {
    border-radius: 0;
  }
  
  .user-menu-backdrop .user-menu ul li:last-child {
    border-radius: 0;
  }
  
  .user-menu-backdrop .user-menu ul li a {
    padding: 1.8125rem;
  }

}

.insights-container {
  margin-top: 10px;
}

.insights-container li {
  background: #d9d9d9;
}

.insights-container li:nth-child(even) {
  background: #fffefc;
}

header {
  border-bottom: 1px solid #d9d9d9;
  width: 100%;
  top: 0;
  justify-content: center;
  height: 60px;
  position: fixed;
  z-index: 16;
  background-color: hsla(320, 100%, 99.411766%, 0.8984375);
  display: flex;
}

header nav {
  align-items: center;
  display: flex;
  width: 100%;
  max-width: 960px;
  padding: 1.2rem 0;
  position: relative;
}

header nav ul.inline-nav {

}

header nav ul.inline-nav li {
  display: inline-block;
  margin-left: 1.3125rem;
  position: relative;
}

header nav ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  list-style: none;
  width: 100%;
}

header nav a {
  color: #2d2629;
  display: inline-block;
  vertical-align: middle;
}

header nav a:hover {
  color: #3ec2cf;
  text-decoration: none;
}

header nav .logo {
  padding: 0 1.3125rem;
}

header nav .logo a {
  background-image: url('/images/icons/logo.png');
  background-size: 42px 40px;
  width: 42px;
  height: 40px;
  margin: 0.625rem 0;
}

header nav .logo a:hover {
  background-image: url('/images/icons/logo-hover.png');
}

@media screen and (max-width: 1000px) {

  header nav .logo {
    display: inline-block;
    flex: 1;
    padding-left: 0;
    padding-right: 1.5rem;
    text-align: center;
  }

}

header nav .user-menu-toggle, header nav .mobile-menu-toggle {
  font-size: 1.8125rem;
  padding: 1.3125rem;
}

header nav .user-menu-toggle:hover, header nav .user-menu-toggle.active, header nav .mobile-menu-toggle:hover, header nav .mobile-menu-toggle.active {
  color: #3ec2cf;
  cursor: pointer;
}

@media screen and (min-width: 1001px) {

  header nav .mobile-menu-toggle {
    display: none;
  }

}

@media screen and (max-width: 1000px) {

  header nav .user-menu-toggle {
    display: none;
  }

}

footer {
  background-color: #2d2629;
  color: #fffefc;
  flex: 0 0 3.4rem;
  width: 100%;
}

footer .column:last-child {
  text-align: right;
}

footer li {
  display: inline-block;
  margin-left: 1.3125rem;
}

footer li:first-child {
  margin-left: 0;
}

@media screen and (max-width: 500px) {

  
  
  footer .row {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }

}

.modal-background {
  right: 0;
  top: 0;
  justify-content: center;
  align-items: center;
  padding: 2.625rem;
  flex-direction: row;
  position: fixed;
  z-index: 30;
  inset: 0;
  overflow: auto;
  background-color: hsla(334.2857, 8.433735%, 16.27451%, 0.796875);
  display: flex;
  bottom: 0;
  max-height: calc(var(--vh, 1vh) * 100);
  left: 0;
}

.modal-background.small-width .modal {
  max-width: 400px;
}

.modal-background.width-450 .modal {
  max-width: 450px;
}

.modal-background.width-600 .modal {
  max-width: 600px;
}

.modal-background.width-750 .modal {
  max-width: 750px;
}

.modal-background.width-1000 .modal {
  max-width: 1000px;
}

.modal-background.full-width .modal {
  max-width: 100%;
}

.modal-background.black .modal {
  background-color: #2d2629;
}

.modal-background.black .modal-header {
  color: white;
}

.modal-background.black .modal-header .border-bottom {
  border-color: #fffefc;
}

.modal-background.black .modal-header .fas {
  color: #fffefc;
}

.modal-background .modal {
  width: 100%;
  padding-bottom: 1rem;
  max-width: 100%;
  border: 2px solid #d9d9d9;
  flex-direction: column;
  position: relative;
  background-color: #fffefc;
  border-radius: 5px;
  display: flex;
  max-height: 100%;
}

.modal-background .modal-header {
  align-items: center;
  color: #2d2629;
  display: flex;
  flex: 0 0 auto;
  flex-direction: row;
  justify-content: space-between;
  padding: 1rem 1.8125rem;
  border-bottom: 1px solid #d9d9d9;
}

.modal-background .modal-header .fas {
  display: inline-block;
}

.modal-background .modal-header .fas:hover {
  color: #3ec2cf;
  cursor: pointer;
}

.modal-background .modal-header .fa-chevron-left {
  font-size: 0;
}

.modal-background .modal-header .fa-times {
  font-size: 1rem;
  justify-self: flex-end;
}

.modal-background .vertical-scroll {
  flex: 1 1 auto;
  padding: 1.8125rem;
  width: 100%;
}

.modal-background .button-group button, .modal-background .button-group .button {
  width: auto;
}

.modal-background video {
  max-height: calc(100vh - 150px);
  max-width: 96%;
  margin: 0 auto;
}

@media screen and (max-width: 1000px) {

  
  
  .modal-background.full-width {
    padding: 1rem;
  }
  
  .modal-background.width-1000 {
    padding: 0;
  }
  
  .modal-background.width-1000 .modal {
    border: 0;
    height: 100%;
  }
  
  .modal-background.width-1000 .modal-header {
    text-align: left;
  }
  
  .modal-background.width-1000 .modal-header .fa-times {
    font-size: 0;
  }
  
  .modal-background.width-1000 .modal-header .fa-chevron-left {
    font-size: 1rem;
  }

}

@media screen and (max-width: 600px) {

  .modal-background {
    padding: 0.625rem 0 0 0;
  }
  
  .modal-background .modal {
    border: 0;
    height: 100%;
  }
  
  .modal-background .modal-header {
  
  }
  
  .modal-background .modal-header .fa-times {
    font-size: 0;
  }
  
  .modal-background .modal-header .fa-chevron-left {
    font-size: 1rem;
  }

}

.floating-panel {
  width: 90%;
  max-width: 300px;
  margin-right: auto;
  border: 1px solid garden.color.CSSColor@ee50e332;
  padding: 2rem;
  position: relative;
  margin-top: 6rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  margin-left: auto;
  background-color: hsla(320, 100%, 99.411766%, 0.8984375);
  border-radius: 5px;
  backdrop-filter: blur(10px);
}

#marketing {
  display: flex;
  flex-direction: column;
}

#marketing .container {
  max-width: 960px;
}

#marketing section {
  padding: 4rem 0;
  border-bottom: 1px solid #d9d9d9;
}

#marketing section.home {
  background: linear-gradient(
                        rgba(255, 255, 255, 0.2),
                        rgba(255, 255, 255, 0.2)
                        ),
                    url('/images/backgrounds/home.jpg');
  background-position: center top;
  background-repeat: no-repeat;
  height: 40rem;
  background-size: cover;
}

#marketing .hero {
  background-size: cover;
}

#marketing .call-to-action {
  background-color: hsla(320, 100%, 99.411766%, 0.796875);
  border-radius: 3px;
  margin: 7rem auto 0;
  max-width: 550px;
  padding: 1.8125rem;
  text-align: center;
}

#marketing .call-to-action img {
  height: auto;
  margin-bottom: 1.3125rem;
  width: 100%;
}

#marketing .call-to-action h4.subtitle {
  text-align: center;
  position: relative;
  top: -2.5rem;
}

#marketing .call-to-action button, #marketing .call-to-action a.button {
  padding: 0.625rem 1.8125rem;
}

#marketing .call-to-action p {
  margin: 1rem 0 0;
}

#marketing .social {
  margin-top: 6rem;
  text-align: center;
}

#marketing .social a {
  display: inline-block;
}

#marketing .social a:hover {
  cursor: pointer;
  opacity: 0.7;
}

#marketing .social .facebook {
  background-image: url('/images/icons/facebook.png');
  background-repeat: no-repeat;
  background-size: 30px 30px;
  width: 30px;
  height: 30px;
  margin-right: 0.625rem;
}

#marketing .social .twitter {
  background-image: url('/images/icons/twitter.png');
  background-repeat: no-repeat;
  background-size: 30px 30px;
  width: 30px;
  height: 30px;
}

#marketing section.tutorial {
  background-color: #fffefc;
  background-image: url('/images/elements/pattern.jpg');
}

#marketing section.tutorial h1 {
  font-family: 'Montserrat-Medium', Helvetica, sans-serif;
  letter-spacing: 0;
  margin-bottom: 0;
  text-transform: none;
}

#marketing section.tutorial .column {
  margin-right: 1.8125rem;
}

#marketing section.tutorial .column:last-child {
  margin-right: 0;
}

#marketing section.tutorial img {
  background-repeat: no-repeat;
  border: 1px solid #d9d9d9;
  height: auto;
  margin-bottom: 1.8125rem;
  width: 100%;
}

#marketing section.tutorial h4 {
  font-family: 'Montserrat-Medium', Helvetica, sans-serif;
  margin-bottom: 0.625rem;
}

@media screen and (max-width: 600px) {

  #marketing section.tutorial > .container {
    overflow-x: scroll;
  }
  
  #marketing section.tutorial > .container .row {
    width: 300%;
  }

}

@media screen and (max-width: 500px) {

  
  
  #marketing section.tutorial .row {
    -webkit-flex-direction: row;
    ms-flex-direction: row;
    flex-direction: row;
  }

}

#marketing section.timeline {
  background-color: #fffefc;
  background-image: url('/images/elements/pattern.jpg');
}

#marketing section.timeline .container {
  max-width: 540px;
}

#marketing section.timeline .column:first-child {
  display: flex;
  justify-content: center;
}

#marketing section.timeline h1 {
  font-family: 'Montserrat-Medium', Helvetica, sans-serif;
  letter-spacing: 0;
  text-transform: none;
}

#marketing section.timeline li {
  position: relative;
}

#marketing section.timeline h4 {
  background-color: #f2edf0;
  border: 2px solid #2d2629;
  border-radius: 3rem;
  left: 0.8rem;
  padding: 0.6rem 1rem 0.4rem;
  position: absolute;
  top: 0.8rem;
}

#marketing section.timeline img {
  height: auto;
  width: 250px;
}

#marketing section.timeline img.round {
  width: 220px;
}

#marketing section.timeline .trail {
  background-color: #2d2629;
  bottom: -98px;
  height: 100px;
  left: 135px;
  position: absolute;
  width: 2px;
}

#marketing section.timeline h3 {
  margin: 1rem 0;
}

@media screen and (max-width: 600px) {

  
  
  #marketing section.timeline h4 {
    left: 1.4rem;
  }

}

@media screen and (max-width: 500px) {

  
  
  #marketing section.timeline .trail {
    display: none;
  }

}

#marketing section.mailing-list {
  background-color: #fffefc;
  background-image: url('/images/elements/pattern.jpg');
}

#marketing section.mailing-list .container {
  max-width: 500px;
}

#marketing section.mailing-list .badge {
  background-image: url('/images/elements/mailing-list.png');
  background-repeat: no-repeat;
  background-size: 250px 250px;
  margin: 0 auto 2.625rem;
  position: relative;
  width: 250px;
  height: 250px;
}

#marketing section.mailing-list h4 {
  margin-bottom: 1rem;
  text-align: center;
}

#marketing section.mailing-list p {
  text-align: center;
}

main#not-found {
  background: url('/images/backgrounds/not-found.jpg') no-repeat center bottom;
  background-size: cover;
}

main#not-found .message {
  width: 90%;
  max-width: 300px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 2rem;
  margin-top: 6rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  background-color: hsla(320, 100%, 99.411766%, 0.8984375);
  border-radius: 12px;
  backdrop-filter: blur(10px);
}

@media screen and (max-width: 400px) {

  main#not-found .hero {
    background-position: -300px bottom;
  }

}

main#signin, main#signup, main#signup-success {
  background-image: url('/images/backgrounds/home.jpg');
  background-size: cover;
}

main#signin .auth-panel, main#signup .auth-panel, main#signup-success .auth-panel {
  width: 90%;
  max-width: 300px;
  margin-right: auto;
  border: 1px solid garden.color.CSSColor@ee50e332;
  padding: 2rem;
  position: relative;
  margin-top: 6rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  margin-left: auto;
  background-color: hsla(320, 100%, 99.411766%, 0.8984375);
  border-radius: 5px;
  backdrop-filter: blur(10px);
}

main#signin .alternatives, main#signup .alternatives, main#signup-success .alternatives {
  margin-top: 1rem;
  padding-top: 1rem;
  border-width: 1px 0px 0px 0px;
  border-style: solid;
  border-color: #d9d9d9;
}

main#signin .oauth, main#signup .oauth, main#signup-success .oauth {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-width: 0px 0px 1px 0px;
  border-style: solid;
  border-color: #d9d9d9;
}

main#signin .g_id_signin .placeholder, main#signin .apple-signin .placeholder, main#signin .oauth-button .placeholder, main#signup .g_id_signin .placeholder, main#signup .apple-signin .placeholder, main#signup .oauth-button .placeholder, main#signup-success .g_id_signin .placeholder, main#signup-success .apple-signin .placeholder, main#signup-success .oauth-button .placeholder {
  width: 100%;
  border-width: 1px;
  border-color: #2d2629;
  height: 40px;
  margin: 20px auto;
  vertical-align: center;
  text-align: center;
  border-style: solid;
  cursor: pointer;
  background-color: #fffefc;
  border-radius: 5px;
  display: block;
  color: #787878;
  padding-top: 5px;
}

main#signin .apple-signin, main#signup .apple-signin, main#signup-success .apple-signin {
  display: block;
  margin: 20px auto;
  width: 100%;
  height: 40px;
  cursor: pointer;
}

main#terms {
  padding-top: 3.975rem;
}

main#terms .container {
  background-color: #fffefc;
  padding: 2.625rem;
  margin-bottom: 1.8125rem;
  max-width: 960px;
  border-radius: 5px;
}

main#terms .hgroup {
  margin-bottom: 1.3125rem;
}

main#terms p {
  margin-bottom: 1rem;
}

main#terms h5 {
  text-transform: uppercase;
}

main#terms ul, main#terms ol {
  list-style: none;
  margin-left: 1rem;
  margin-bottom: 1rem;
}

main#terms ul li, main#terms ol li {
  font-size: 14px;
  line-height: 1.3125rem;
}

main#terms ul li {
  list-style-type: disc;
}

main#terms ol li {
  list-style-type: decimal;
  margin-bottom: 1rem;
}

main#memory {
  padding-top: 3.975rem;
  height: calc(100% - 60px - 3.4rem - 5px);
}

main#memory .container {
  position: relative;
  background-color: #fffefc;
  padding: 0;
  margin-bottom: 1.8125rem;
  max-width: 960px;
  height: calc(100% - 1.8125rem);
  border-radius: 5px;
}

main#memory .tabs {
  display: flex;
  justify-content: center;
  height: calc(1rem + 1rem + 1.3125rem + 5px);
}

main#memory .tabs ul {
  position: relative;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: start;
  margin: 0 auto;
  width: 100%;
}

main#memory .tabs ul li {
  position: relative;
  display: block;
  text-align: center;
  margin: 0;
  flex: 1;
  border-right: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
  background-color: #f2edf0;
}

main#memory .tabs ul li a, main#memory .tabs ul li span {
  position: relative;
  display: block;
  padding: 1rem 1rem;
  color: #787878;
  font-size: 1.3125rem;
}

main#memory .tabs ul li a i, main#memory .tabs ul li span i {
  padding-right: 0.5rem;
}

main#memory .tabs ul li a:before, main#memory .tabs ul li span:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: #d9d9d9;
  content: '';
}

main#memory .tabs ul li a:hover, main#memory .tabs ul li span:hover {
  text-decoration: none;
  color: #3ec2cf;
}

main#memory .tabs ul li:last-child {
  border-right: 0;
}

main#memory .tabs ul li.active {
  border-bottom: 0;
  background-color: #fffefc;
}

main#memory .tabs ul li.active a, main#memory .tabs ul li.active span {
  color: #3ec2cf;
}

main#memory .tabs ul li.active a:before, main#memory .tabs ul li.active span:before {
  background: #3ec2cf;
}

main#memory .tabbed-container {
  padding: 1rem;
  height: calc(100% - calc(1rem + 1rem + 1.3125rem + 5px));
}

main#memory .subtabs {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  border-bottom: 1px solid #d9d9d9;
}

main#memory .subtabs ul {
  position: relative;
  list-style: none;
  display: flex;
  justify-content: flex-start;
}

main#memory .subtabs ul li {
  position: relative;
  display: block;
  margin: 0;
  flex: 1;
}

main#memory .subtabs ul li a, main#memory .subtabs ul li span {
  position: relative;
  display: block;
  padding-bottom: 0.375rem;
  margin: 0 1rem;
  color: #787878;
}

main#memory .subtabs ul li a i, main#memory .subtabs ul li span i {
  padding-right: 0.5rem;
}

main#memory .subtabs ul li a:hover, main#memory .subtabs ul li span:hover {
  text-decoration: none;
  color: #3ec2cf;
}

main#memory .subtabs ul li:last-child {
  border-right: 0;
}

main#memory .subtabs ul li.active {
  border-bottom: 0;
  background-color: #fffefc;
}

main#memory .subtabs ul li.active a, main#memory .subtabs ul li.active span {
  color: #2d2629;
  font-family: 'Montserrat-bold', Helvetica, sans-serif;
}

main#memory .subtabs ul li.active a:before, main#memory .subtabs ul li.active span:before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: #3ec2cf;
  content: '';
}

main#memory .memories {
  overflow-y: auto;
  height: calc(100% - 6rem - calc(1px + 1rem + 1rem + 0.375rem));
  padding-top: 1rem;
}

main#memory .memories .day {
  margin-bottom: 1.8125rem;
}

main#memory .memories .day h6 {
  font-family: 'Montserrat-bold', Helvetica, sans-serif;
}

main#memory .memories .day .memory {
  display: flex;
  justify-content: center;
  border-radius: 5px;
  border: 1px solid transparent;
  margin: 0 0 0.5rem 0;
  padding: 0;
}

main#memory .memories .day .memory .content {
  flex: 1;
}

main#memory .memories .day .memory .content .timestamp {
  font-size: 0.75rem;
  line-height: 1.15em;
}

main#memory .memories .day .memory .content .timestamp .occurred-at {
  color: #787878;
}

main#memory .memories .day .memory .buttons {
  display: none;
  align-items: center;
}

main#memory .memories .day .memory .buttons a {
  display: inline-block;
  padding-left: 0.5rem;
  font-size: 1.3125rem;
  color: #d9d9d9;
}

main#memory .memories .day .memory .buttons a:hover {
  color: #3ec2cf;
}

main#memory .memories .day .memory:hover {
  border-color: #3ec2cf;
}

main#memory .memories .day .memory:hover .buttons {
  display: flex;
}

main#memory .memories .day .memory.selected {
  border-color: #3ec2cf;
}

main#memory .memories .day .memory.selected .buttons {
  display: flex;
}

main#memory .form {
  position: relative;
  height: 6rem;
  border-top: 1px solid #d9d9d9;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

main#memory .form textarea {
  flex: 1;
  margin-right: 1rem;
}

main#memory .form button {
  width: 2.625rem;
  height: 2.625rem;
  border-radius: 1rem;
}

main#memory .conversation {
  overflow-y: auto;
  height: calc(100% - 6rem);
}

main#memory .conversation .bubble {
  padding: 1rem;
  margin: 1rem 0;
  border-radius: 10px;
  background-color: #d9d9d9;
  max-width: 80%;
}

main#memory .conversation .bubble ul {

}

main#memory .conversation .bubble ul li {
  list-style-type: disc;
  margin-left: 1rem;
}

main#memory .conversation .timestamp {
  text-align: center;
  color: #3c3c3c;
  font-size: 0.75rem;
}

main#memory .conversation .leo {

}

main#memory .conversation .leo .evidence {

}

main#memory .conversation .leo .evidence a {
  color: #2d2629;
  text-decoration: none;
  font-size: 0.75rem;
}

main#memory .conversation .leo .evidence a:hover {
  color: #3ec2cf;
}

main#memory .conversation .user {
  background-color: #3ec2cf;
  color: #fffefc;
  margin-left: auto;
}

.source-memories {
  margin-top: 1rem;
}

.source-memories .memory {
  margin-bottom: 1rem;
}

.source-memories .memory .timestamp {
  font-size: 0.75rem;
  line-height: 1.15em;
}

.source-memories .memory .timestamp .occurred-at {
  color: #787878;
}

@media screen and (max-width: 1000px) {

  main#memory {
    margin: 0;
  }
  
  main#memory .container {
    margin: 0;
    width: 100%;
    height: 100%;
  }
  
  main#memory .container .memories {
  
  }
  
  main#memory .container .memories .day {
  
  }
  
  main#memory .container .memories .day .memory {
  
  }
  
  main#memory .container .memories .day .memory .buttons {
  
  }
  
  main#memory .container .memories .day .memory .buttons a {
    padding-left: 1rem;
    padding-right: 1rem;
    color: #3ec2cf;
  }

}

@font-face {
  font-family: 'open-sans-bold';
  src: url('/fonts/open-sans-bold.woff2') format('woff2'), url('/fonts/open-sans-bold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-bold-italic';
  src: url('/fonts/open-sans-bold-italic.woff2') format('woff2'), url('/fonts/open-sans-bold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-extrabold';
  src: url('/fonts/open-sans-extrabold.woff2') format('woff2'), url('/fonts/open-sans-extrabold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-extrabold-italic';
  src: url('/fonts/open-sans-extrabold-italic.woff2') format('woff2'), url('/fonts/open-sans-extrabold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-light';
  src: url('/fonts/open-sans-light.woff2') format('woff2'), url('/fonts/open-sans-light.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-light-italic';
  src: url('/fonts/open-sans-light-italic.woff2') format('woff2'), url('/fonts/open-sans-light-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-regular';
  src: url('/fonts/open-sans-regular.woff2') format('woff2'), url('/fonts/open-sans-regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-regular-italic';
  src: url('/fonts/open-sans-regular-italic.woff2') format('woff2'), url('/fonts/open-sans-regular-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-semibold';
  src: url('/fonts/open-sans-semibold.woff2') format('woff2'), url('/fonts/open-sans-semibold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open-sans-semibold-italic';
  src: url('/fonts/open-sans-semibold-italic.woff2') format('woff2'), url('/fonts/open-sans-semibold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat-black';
  src: url('/fonts/Montserrat-black.woff2') format('woff2'), url('/fonts/Montserrat-black.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat-bold';
  src: url('/fonts/Montserrat-bold.woff2') format('woff2'), url('/fonts/Montserrat-bold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat-hairline';
  src: url('/fonts/Montserrat-hairline.woff2') format('woff2'), url('/fonts/Montserrat-hairline.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat-light';
  src: url('/fonts/Montserrat-light.woff2') format('woff2'), url('/fonts/Montserrat-light.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat-regular';
  src: url('/fonts/Montserrat-regular.woff2') format('woff2'), url('/fonts/Montserrat-regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}