* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

body {
  /*font-family: arial,sans-serif;*/
  font-weight: 400;
  line-height: 26px;
  font-size: 16px;
  letter-spacing: 0;
  font-style: normal;
  color: #002147;
  text-rendering: optimizeLegibility
}

body,html {
  margin: 0;
  font-size: 1pc;
  /*font-family: Helvetica Neue,Helvetica,Arial,sans-serif;*/
  line-height: 1.5;
  color: #002147;
  background: #ececec
}

html,body {
  background-color: #fff
}

body {
  font-family: "DIN",arial,sans-serif;
  font-weight: 400;
  line-height: 24px;
  font-size: 16px;
  color: #002147
}


@font-face {
  font-family: 'DIN';
  font-style: normal;
  font-weight: 400;
  src: url("/fonts/DIN-OT-Reg-d64b70f35816e6658448fce3ad70e2d5.woff2") format("woff2");
}

@font-face {
  font-family: 'DIN';
  font-style: normal;
  font-weight: 700;
  src: url("/fonts/DIN-OT-Bold-bad8b136ddafe1cd9d34644e34c22fba.woff2") format("woff2");
}

img {
  border: 0;
}

.banner {
  margin: 20px 0px;
}

.banner-title {
  font-size: 40px;
  font-weight: 700;
  line-height: 52px;
}

.banner-title-center {
  font-size: 40px;
  font-weight: 700;
  line-height: 52px;
  text-align: center;
}

.banner-subtitle-center {
  font-size: 30px;
  font-weight: 700;
  line-height: 13px;
  text-align: center;
}

.banner-subtitle-center-smaller {
  font-size: 24px;
  font-weight: 700;
  line-height: 13px;
  text-align: center;
}

.banner-row {
  display: flex;
  width: 100%; 
  justify-content: space-between;
}

.banner-text {
  font-size: 12pt;
}

.banner-text.right {
  float: right;
}

.banner-text form input {
  font-family: "DIN",arial,sans-serif;
}

.banner a {
  text-decoration: underline;
}

.banner-half {
  margin: 20px 0px;
  width: 50%;
}

.banner-half-right {
  margin: 20px 0px;
  width: 50%;
  float: right;
  text-align: right;
  vertical-align: middle;
}

.banner-row-right {
  display: flex;
  width: 100%;
  justify-content: space-between;
  float: right;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-top: 5px;
  margin-right: 5px;
}

.banner-footer {
  margin: 20px;
}

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

.container {
  /** max-width: 1190px; */
  margin: 0 auto;
}

.flex-container {
  max-width: 1000px;
  margin: 0 auto;

  padding-left: 32px;
  padding-right: 32px;

  display: flex;
  flex-direction: column;
}

@media (min-width: 1190px) {
  .flex-container {
    padding-left: 0px;
    padding-right: 0px;
  }
}

.flex-container.wide {
  max-width: 1190px;
}

.row {
  padding: 0px 0px 10px 10px;
  display: flex;
}

.row-center {
  padding: 10px 10px 10px 10px;
  justify-content: center;
  display: flex;
}

.row-left {
  padding: 10px 10px 10px 10px;
  justify-content: left;
  display: flex;
}

.row-left-title {
  padding: 10px 10px 0px 10px;
  justify-content: left;
  display: flex;
}

.row-left-paragraph {
  padding: 0px 10px 10px 10px;
  justify-content: left;
  display: flex;
}

.row-left-sans-vertical-padding {
  padding: 0px 10px 0px 10px;
  justify-content: left;
  display: flex;
}

.row-center-basic {
  justify-content: center;
  display: flex;
}

.row-center-top-padding {
  padding: 10px 0px 0px 0px;
  justify-content: center;
  display: flex;
}

.col {
  width: 50%;
}

.col-quart {
  width: 25%;
}

.col-box {
  padding-left: 10%;
  padding-right: 10%;
  margin-left: 10%;
  margin-right: 10%;
  /*border: 1px solid #000000;*/
  text-align: center;
}

.col-box-sans-padding {
  margin-left: 10%;
  margin-right: 10%;
  /*border: 1px solid #000000;*/
  text-align: center;
}

@media (min-width: 768px) and (max-width: 1024px) {
  .col {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .col {
    width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .row {
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) {
  .row {
    flex-wrap: wrap;
  }
}


.col-3btn {
  min-width: 693px;
}

@media (min-width: 1190px) {
  .col-3btn {
    min-width: 756px;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .col-3btn {
    min-width: 100%;
  }
}
@media (max-width: 768px) {
  .col-3btn {
    min-width: 100%;
  }
}
@media (max-width: 768px) {
    .col-3btn > .btn-group {
      flex-wrap: wrap;
    }
}

@media (max-width: 500px) {
    .col-3btn > .btn-group {
      flex-direction: column;
    }

    .col-3btn > .btn-group > div {
      padding-bottom: 20px;
    }
}

.form {
  width: 100%;
}

.form-compact {
  max-width: 500px;
}

.form-midsize {
  max-width: 750px;
}

.form-title {
  font-weight: 700;
  font-size: 14pt;
}

.form-subtitle {
  display: block;
  line-height: 1.5;
  font-size: 12pt;
  font-weight: 700;
}

.form-text {
  line-height: 1.5;
  display: block;
  font-size: 12pt;
}

.form-subtext {
  line-height: 1.5;
  display: block;
  font-size: 10pt;
  padding-left: 12px;
}

.form label {
  display: block;
  font-size: 12pt;
  line-height: 24px;
  font-weight: normal;
  margin: 0;
}

.form label.form-label {
  line-height: 1.5;
  display: block;
}

.form label.combo-label {
  display: inline-block;
  width: 100%;
  float: left;
}

.form label.check-label {
  display: inline-block;
  padding-left: 10px;
  float: left;
}

.form label.check-label-nowrap {
  display: inline-block;
  padding-left: 10px;
  float: left;
  white-space: nowrap;
}

.form label.left-label {
  vertical-align: baseline;
}

.form input, .form select {
  background-color: #EDEDED;
  border: 1px solid #000000;
  color: #000000;
  font-size: inherit;
  font-family: Arial, Helvetica, sans-serif;
}

.form input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]), .form select {
  width: 100%;
  display: block;
  box-sizing: border-box;
  border-radius: 2px;
  padding: 5px;

  height: 2.5rem;
}

.form label.combo-label input {
  position: relative;
  vertical-align: middle;
}

label>[type="checkbox"], label>[type="radio"] {
  margin-right: 0.5rem;
}

.label-note {
  font-size: 12px;
}

.form .input-group, .btn-group, p {
  padding: 10px;
}

.form .sub-input-group {
  padding-left: 10px;
}

.form .input-group-indent {
  padding: 10px 10px 10px 15px;
}

.error-message {
  color: #FF0000;
  font-size: 12pt;
  line-height: 1.5;
  display: block;
  visibility: visible;
}

.error-message-center {
  color: #FF0000;
  font-size: 12pt;
  line-height: 1.5;
  display: block;
  visibility: visible;
  text-align: center;
}

.error-message-nowrap {
  color: #FF0000;
  font-size: 12pt;
  line-height: 1.5;
  display: block;
  visibility: visible;
  white-space: nowrap;
}

select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0;
}


.help-box {
  font-size: 12pt;
  padding: 0px 10px 20px 10px;
  max-width: 500px;
  width: 100%;
}
.help-box-inner {
  background-color: rgb(242, 242, 242);
}
.help-box p {
  padding: 10px;
}
.help-title {
  font-weight: bold;
}
.help-box a {
  text-decoration: underline;
}
.help-box p ~ p {
  margin-block-start: 10px;
}


.sso-login {
  font-size: 12pt;
  padding: 0px 10px 0px 10px;
  width: 100%;
}

.sso-login p {
  margin-block-start: 0px;
  padding: 10px;
}
.sso-login a {
  text-decoration: underline;
}

.pw-help {
  margin-block-start: 0px;
  margin-block-end: 16px;
  padding-left: 30px;
}

li, li span {
  line-height: 1.5;
  font-size: 12pt;
}

.btn-group {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.btn-secondary {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  border-width: 1px;
  border-color: rgb(0, 0, 0);
}

.btn-secondary-mfa {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  border-width: 1px;
  border-color: rgb(0, 0, 0);
  padding: 0px 10px 3px;
  border-radius: 10px;
}

.btn-secondary-mfa:hover {
  background-color: rgb(0, 0, 0);
  border-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
}

@media (max-width: 576px) {
  .btn-primary, .btn-secondary {
    padding: 12px 60px;
  }
}

button, button-mfa {
  background-color: rgb(0, 0, 0);
  background-image: none;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center center;
  color: rgb(255, 255, 255);
  border-radius: 0px;
  display: inline-block;
  text-decoration: none;
  font-size: 11pt;
  font-weight: normal;
  font-style: normal;
  border-style: solid;
  border-color: transparent;
  border-width: 0px;
  padding: 12px 70px;
}

.button-mfa:hover {
  background-color: #574F53;
}

.button-mfa-disabled {
  background-color: #574F53;
  background-image: none;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center center;
  color: rgb(255, 255, 255);
  border-radius: 0px;
  display: inline-block;
  text-decoration: none;
  font-size: 11pt;
  font-weight: normal;
  font-style: normal;
  border-style: solid;
  border-color: transparent;
  border-width: 0px;
  padding: 12px 70px;
}

.btn-fixed-small {
  width: 190px;
  padding: 12px;
}

.btn-sized {
  width: 220px;
  padding: 12px;
}

.btn-help-text {
  width: 220px;
}

/*
button:hover {
  background-color: rgb(0, 106, 142);
}
*/

button,input,optgroup,select,textarea {
  font: inherit
}

input.link-btn {
  background: none; 
  border: none; 
  text-decoration: underline;
  cursor: pointer; 
}

@media (min-width: 768px) {
  p, p a, p span a, li {
    letter-spacing: -.15px;
  }
}

p, p a, p span a {
  margin-bottom: 0;
  margin-block-start: 16px;
}


p a:active, li a:active, a:active, input.link-btn:active {
  color: #002147;
}

p a:link, li a:link, a:link, input.link-btn {
  color: #0468EC;
}

p a:hover, li a:hover, a:not(.nohover):hover, input.link-btn:hover {
  color: #8D4E7B;
}



/** carddeck **/
.c-card-deck--content-bold-noimg-nometa {
  padding: 40px 0;
}

/*.carddeck {*/
/*  margin-top: 32px*/
/*}*/

/*@media (min-width: 1024px) {*/
/*  .carddeck {*/
/*    margin-top:52px*/
/*  }*/
/*}*/

/*@media (min-width: 1600px) {*/
/*  .carddeck {*/
/*    margin-top:80px*/
/*  }*/
/*}*/

/** c-card-deck **/
.c-card-deck {
  padding: 0;
}

@media (min-width: 768px) {
  .c-card-deck {
    padding: 0;
  }
}

.c-card-deck {
  width: 100%;
  width: auto;
  max-width: 1190px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  padding-left: 32px;
  padding-right: 32px
}

@media (min-width: 768px) {
  .c-card-deck {
    padding-left:32px;
    padding-right: 32px
  }
}

@media (min-width: 1190px) {
  .c-card-deck {
    padding-left: 0;
    padding-right: 0
  }
}

.c-card-deck {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/** c-card-deck__layout */
.c-card-deck__layout {
  display: flex;
  flex-direction: column
}

@media (min-width: 768px) {
  .c-card-deck__layout {
    padding:1.5rem 0 0 0;
    flex-direction: row;
    flex-wrap: wrap
  }
}

.c-card-deck__layout {
  row-gap: 24px
}

@media (min-width: 768px) {
  .c-card-deck__layout {
    row-gap:40px
  }
}

.c-card-deck__layout {
  display: flex;
  flex-direction: column
}

@media (min-width: 768px) {
  .c-card-deck__layout {
    padding:0;
    flex-direction: row;
    flex-wrap: wrap
  }
}

/** c-card-deck__item */
.c-card-deck__item {
  display: flex;
}

@media (min-width: 768px) {
  .c-card-deck__item {
    margin-right:20px;
    width: calc(25% - 20px);
    min-width: 0
  }

  .c-card-deck__item:nth-child(4n+4) {
    margin-right: 0
  }
}

@media (min-width: 768px) {
  .c-card-deck__item {
    margin-right: 32px;
    width: calc(25% - 24px);
    min-width: 0
  }

  .c-card-deck__item:nth-child(4n+4) {
    margin-right: 0
  }
}

.c-card-deck__item a, .c-card-deck__item a p {
  text-decoration: none;
}
/* 
.c-card-deck--feature-card-dark-btn .c-card-deck__item {
  display: block;
}
*/
@media (min-width: 768px) {
  .c-card-deck--feature-card-dark-btn .c-card-deck__item {
    margin-right:32px;
    width: calc(33.333333% - 22px);
    min-width: 0
  }

  .c-card-deck--feature-card-dark-btn .c-card-deck__item:nth-child(3n+3) {
    margin-right: 0
  }
}

/** c-feature-card  */
.c-feature-card {
  width: 100%;
  background-color: rgba(0,0,0,0);
  border: 1px solid #f4f4f4;
  border: none;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 0
}

.c-feature-card {
  background-color: rgba(0,0,0,0);
  border: none;
  margin-top: 0
}

/** c-feature-card__header  */
.c-feature-card__header {
  padding: 2rem;
  text-align: center
}

.c-card-deck--feature-card-dark-btn .c-feature-card__header {
  padding: 0
}

/** c-feature-card__image */
.c-feature-card__image {
  display: block;
  width: 65%;
  margin: 1rem auto 2rem auto
}
.c-card-deck--feature-card-dark-btn .c-feature-card__image {
  aspect-ratio: 1.5/1;
  width: 100%;
  margin: 0
}


/** c-feature-card__title-1 */
.c-feature-card__title-1 {
  font-size: 28px;
  line-height: 38px;
  margin: 0 0 1rem 0;
  font-weight: bold;
  padding: 0;
}
.c-feature-card__title-1 {
  font-size: 19px;
  line-height: 29px;
  font-weight: 700;
  color: #002147;
}
.c-card-deck--feature-card-dark-btn .c-feature-card__title-1 {
  font-size: 18px;
  line-height: 28px;
  margin: 1rem 2rem 0;
  font-weight: normal;
  text-align: left
}

/** c-feature-card__title-2 */
.c-feature-card__title-2 {
  font-size: 18px;
  line-height: 28px;
  margin: 0 0 1rem 0;
  font-weight: bold;
  padding: 0
}
.c-feature-card__title-2 {
  font-size: 18px;
  line-height: 28px;
  font-weight: 700;
  padding: 0;
  color: #002147;
}
.c-card-deck--feature-card-dark-btn .c-feature-card__title-2 {
  text-align: left;
  margin: 0 2rem 1rem
}

/** c-feature-card__btn-container */
.c-feature-card__btn-container {
  padding-top: .5rem;
  padding-bottom: 0;
  text-align: center;
  display: flex;
  flex-flow: column
}
.c-feature-card__btn-container {
  padding-top: 1rem
}

/** c-feature-card__link */
.c-feature-card p.c-feature-card__link {
  margin-bottom: .5rem;
  /*-webkit-transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms;*/
  /*-moz-transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms;*/
  /*-ms-transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms;*/
  /*-o-transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms;*/
  /*transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms;*/
  /*box-shadow: 0 0 0 0 rgba(0,0,0,0);*/
  border: none;
  margin-left: 0;
  text-decoration: none;
  border-radius: 2px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  letter-spacing: -.4px;
  display: inline-block;
  text-decoration: none;
  border: 2px solid #171516;
  background-color: #171516;
  color: #ffffff;
  padding: 8px 20px;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -.3px
}

/*.c-feature-card a.c-feature-card__link:visited:hover,.c-feature-card a.c-feature-card__link:hover {*/
.c-feature-card p.c-feature-card__link.secondary{
  text-decoration: none;
  border: 2px solid #171516;
  background-color: rgba(0,0,0,0);
  color: #000;
}

.featurecard {
  display: flex;
}

.featurecard a {
  text-decoration: none;
  display: flex;
}

img.feature-inactive {
  filter: grayscale(90%);
}
p.feature-inactive {
  filter: opacity(50%);
}


/* see AEM .c-cf__filter-loader */
.c-loader.loading {
  display: block;
}
.c-loader {
  position: fixed;
  width: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: 9999;
  display: none;
}

@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0)
  }

  to {
    -webkit-transform: rotate(360deg)
  }
}

@keyframes spin {
  from {
    transform: rotate(0)
  }

  to {
    transform: rotate(360deg)
  }
}

.c-loader::after {
  content: '';
  display: block;
  position: absolute;
  margin: -40px 0 0 -40px;
  left: 50%;
  top: 50%;
  width: 40px;
  height: 40px;
  border-style: solid;
  border-color: #002c77;
  border-top-color: transparent;
  border-width: 4px;
  border-radius: 50%;
  -webkit-animation: spin .8s linear infinite;
  animation: spin .8s linear infinite
}

label.required:after {
  content:" *";
}

/* drop button */
.drop {
  color: #aaaaaa;
  float: right;
  text-align: right;
  font-size: 22px;
  font-weight: bold;
}

.drop:hover,
.drop:focus {
  color: #002147;
  text-decoration: none;
  cursor: pointer;
}

div.row > span.drop {
    margin-left: auto;
}

/* file drag & drop area */
.drop-zone {
  width: 100%;
  height: 130px;
  padding: 20px;
  text-align: center;
  background-color: #EDEDED;
  border: 1px solid #000000;
  color: #002147;
  font-size: inherit;
  font-family: Arial, Helvetica, sans-serif;
  margin: 10px;
  display: none;
}
input[type="file"] {
  display: none !important;
}
.selected-files {
  float: left;
  font-size: 18px;
  font-weight: bold;
}
.uploaded-file {
  display: none
}


.modal {
  display: none;
  position: fixed;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: auto;
}

.modal-container {
  background-color: #f2f2f2;
  margin: auto;
  padding: 20px;
  border: 4px solid #000000;
  width: 65%;
  max-width: 520px;
  min-width: 220px;
}
  
.c-env-dev {
  color: green;
}
.c-env-qa {
  color: blue;
}
.c-env-uat {
  color: red;
}

.modal-upload {
  display: none;
  position: fixed;
  z-index: 1;
  padding-top: 25vh;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
}

.file-box {
  border: 1px solid black;
  padding: 10px;
}

.drop-button {
  width: 190px;
  border: none;
  margin-left: 0;
  text-decoration: none;
  /*border-radius: 5px;*/
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  letter-spacing: -.4px;
  display: inline-block;
  text-decoration: none;
  border: 2px solid #171516;
  background-color: #171516;
  color: #ffffff;
  padding: 8px 20px;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -.3px
}


.drop-button:hover {
  background-color: #574F53;
}

.dropdown-content {
  width: 190px;
  display: none;
  
  flex-direction: column;
  text-align: center;

  position: absolute;
  background-color: #f1f1f1;
  min-width: 160px;
  overflow: auto;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  right: 0;
  z-index: 1;
}

input.dropdown-content-button, a.dropdown-content-button {
  width: 190px;
  color: black;
  padding: 12px 16px;
  background: none;
  border: none;
  text-decoration: none;
  cursor: pointer;
}

input.dropdown-content-button:hover, a.dropdown-content-button:hover {
  background-color: #DEDEDE;
  color: black;
}

a.dropdown-content-button {
  font-family: Arial, Helvetica, sans-serif;
}

th, td {
  padding: 2px 15px;
}

.modal-container-mfa {
  background-color: #f2f2f2;
  margin: auto;
  padding: 20px;
  border: 1px solid #000000;
  width: 80%;
  max-width: 624px;
  min-width: 264px;
}

.input-instruction {
  padding-left: 20px;
}

.image-info {
  cursor:pointer;
  height:1em;
  margin-top:5px;
  margin-left:5px;
}

.image-button {
  height:1em;
  margin-top:5px;
  margin-left:5px;
}

.flex {
  display: flex !important;
}

.left-text-col {
  width: 100%;
  text-align: left;
}

.banner-sub-subtitle-center {
  text-align: center;
  padding-top: 7px;
}

.form .btn-tertiary input {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  border-width: 1px;
  border-color: rgb(255, 255, 255);
  font-size: 14px;
}

.form .btn-tertiary input:hover {
  background-color: rgb(0, 0, 0);
  border-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
}

.btn-edit {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  border-width: 1px;
  border-color: rgb(255, 255, 255);
  font-size: 14px;
  padding: 0;
}

.btn-edit:hover {
  background-color: rgb(0, 0, 0);
  border-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
  padding: 0;
}

.btn-delete {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  border-width: 1px;
  border-color: rgb(255, 255, 255);
  padding: 0;
}

/*.btn-delete:hover {       Don't currently need? No reqs for?
  background-color: rgb(0, 0, 0);
  border-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
  padding: 0;
}*/

.row-edit {
  display: flex;
}

.col-box-grid {
  padding-left: 10%;
  padding-right: 10%;
  margin-left: 10%;
  margin-right: 10%;
  /*border: 1px solid #000000;*/
  text-align: center;
  display: grid;
  justify-content: center;
}

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

.tiny-row {
  display: flex;
  line-height: 0.5;
  padding-bottom: 1em;
  font-size: 8pt;
}

.tiny-row-input {
  display: flex;
  padding-bottom: 1em;
  font-size: 9pt;
}

.option-subtext {
  line-height: 1.5;
  display: block;
  font-size: 10pt;
}

.input-subtext {
  line-height: 0.5;
  padding-bottom: 1em;
  font-size: 8pt;
}

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