/* RESET RULES
–––––––––––––––––––––––––––––––––––––––––––––––––– */
:root {
  --lightgray: #efefef;
  --blue: steelblue;
  --white: #fff;
  --black: rgba(0, 0, 0, 0.8);
  --bounceEasing: cubic-bezier(0.51, 0.92, 0.24, 1.15);
}

/* MODAL
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.sqe-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: var(--black);
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
  transition: all 0.35s ease-in;
  z-index: 9999999;
  text-align: left;
}

.sqe-modal.is-visible {
  visibility: visible;
  opacity: 1;
  display: flex !important;
}

.sqe-modal-dialog {
  position: relative;
  max-width: 800px;
  max-height: 80vh;
  background: var(--white);
  overflow: auto;
  cursor: default;
}

.sqe-modal-dialog:not(.sqe-modal-dialog--img) > * {
  padding: 1rem;
}

.sqe-modal-header {
  background: var(--lightgray);
}

.sqe-modal-footer {
  left: 2rem;
  right: 2rem;
  padding-bottom: 2rem;
}

.sqe-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.5rem;
  float: none !important;
  border: 0 none !important;
}

.sqe-modal-heading {
  flex: 1 1 0%;
}

.sqe-modal-close-wrapper {
  flex-shrink: 0;
  font-size: 2rem;
  position: absolute;
  top: 1rem;
  right: 1rem;
}

.sqe-modal-close-wrapper button {
  background-color: transparent !important;
  padding: 0 !important;
  color: white !important;
  cursor: pointer;
}

.sqe-modal-header .close-sqe-modal {
  font-size: 1.5rem;
  cursor: pointer;
  background-color: transparent !important;
  border: 0 none;
  margin: 0;
  padding: 0;
}

.sqe-modal-content a {
  text-decoration: underline;
}

.sqe-modal-footer .button {
  font-size: 1.2rem;
  padding: 0.5rem 0.75rem;
}

.sqe-modal p + p {
  margin-top: 1rem;
}

/* SLIDE LEFT ANIMATION
–––––––––––––––––––––––––––––––––––––––––––––––––– */
[data-animation='slideInOutLeft'] .sqe-modal-dialog {
  opacity: 0;
  transform: translateX(-100%);
  transition: all 0.5s var(--bounceEasing);
}

[data-animation='slideInOutLeft'].is-visible .sqe-modal-dialog {
  opacity: 1;
  transform: none;
  transition-delay: 0.2s;
}

/* FOOTER
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.page-footer {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
}

.page-footer span {
  color: #e31b23;
}

/* BANNER
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.sqe-banner {
  width: 100%;
  padding: 1rem;
  text-align: center;
}

.sqe-banner-text a {
  text-decoration: underline;
}

.sqe-banner-text a:hover {
  text-decoration: none;
}

.sqe-banner-text p:last-child {
  margin-bottom: 0;
}
