/* Start modal solution */
.sr-only {
  visibility: hidden;
  height: 0px;
  margin: 0;
}
body.body-modal-open {
  overflow: hidden;
}

.modal-trigger a:focus, .modal-trigger span:focus {
  outline: 2px solid black;
}

.hiddenspanstart {
  width: 1px;
  height: 1px;
  display: block;
  position: absolute;
  outline: none !important;
}

.modal-cover {
  background: #121212;
  opacity: 0;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  transition: opacity 0.25s ease;
  visibility: hidden;
}

.dialog-label {
  outline: none;
}

.modal-cover.modal-cover-open {
  display: block;
  opacity: 0.75;
  visibility: visible;
  z-index: 100;
}

.modal-dialog {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border: 0;
  opacity: 0;
  transition: opacity 0.25s ease;
  visibility: hidden;
  height: fit-content;
  z-index: 999;
  overflow-y: auto;
  max-height: 100%;
  display: block;
}
.modal-dialog .modal-dialog-wrap {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.modal-dialog.modal-open {
  align-items: center;
  opacity: 1;
  visibility: visible;
  margin-left: 1rem;
  margin-right: 1rem;
  max-width: 100%;
}
@media only screen and (min-width: 40.0625em) {
  .modal-dialog.modal-open {
    margin-left: 3.25rem;
    margin-right: 3.25rem;
  }
}
@media only screen and (min-width: 64.0625em) {
  .modal-dialog.modal-open {
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (min-width: 64.0625em) {
  .modal-dialog.modal-open.modal-large .modal-dialog-wrap {
    max-width: 778px;
  }
}
@media only screen and (min-width: 64.0625em) {
  .modal-dialog.modal-open.modal-large-video .modal-dialog-wrap {
    max-width: 1440px;
    width: 80vw;
  }
}
@media only screen and (min-width: 64.0625em) {
  .modal-dialog.modal-open.modal-medium .modal-dialog-wrap {
    max-width: 568px;
  }
}
@media only screen and (min-width: 64.0625em) {
  .modal-dialog.modal-open.modal-small .modal-dialog-wrap {
    max-width: 368px;
  }
}

.modal-dialog-content {
  background: white;
  padding: 3em;
  position: relative;
  border-radius: 4px;
}
.modal-dialog-content iframe {
  width: 100%;
  height: 45vw;
}
@media only screen and (min-width: 64.0625em) {
  .modal-dialog-content iframe {
    height: 384px;
  }
}

.modal-dialog-content h2, .modal-dialog-content h3 {
  margin-top: 0px;
}
.modal-dialog-content h2:focus-visible, .modal-dialog-content h2:focus, .modal-dialog-content h3:focus-visible, .modal-dialog-content h3:focus {
  outline: none;
}

.modal-close {
  position: absolute;
  top: 1.0625rem;
  right: 1.0625rem;
  width: 1rem;
  height: 1rem;
  z-index: 210;
  text-indent: -9999px;
  background: url(https://www.canadapost-postescanada.ca/cpc/assets/cpc/img/icons/Cancel_mobile.svg) 50% 50% no-repeat transparent !important;
  border: none;
  outline-offset: 3px;
  min-width: unset;
  padding: 0;
  margin: 0;
  cursor: pointer;
}

/* End campaign library modal solution */