.nsconfirmation-details label,
.nsconfirmation-agreementpolicy label {
  margin-bottom: 10px !important;
  margin-left: 20px;
  font-family: "Titillium Web", "Open Sans", sans-serif !important;
  font-weight: 300;
}

.nsconfirmation-details label span, .nsconfirmation-agreementpolicy label span {
  color: #c4505d;
}

.nsconfirmation-form input[readonly] {
  background-color: rgba(0, 0, 0, 0.2) !important;
  border-color: rgba(0, 0, 0, 0.2) !important;
  color: rgba(0, 0, 0, 0.5) !important;
  cursor: default;
}

@media (min-width: 768px) {
  .nsconfirmation-details,
  .nsconfirmation-agreementpolicy {
    max-width: 75%;
  }
}

.nsconfirmation-agreementpolicy label {
  margin-left: 0;
}

.nsconfirmation-buttons button, .nsconfirmation-buttons a {
  display: block;
  width: 100% !important;
  margin: 0 0 20px 0;
}

@media (min-width: 576px) {
  .nsconfirmation-buttons {
    display: flex;
    align-items: flex-start;
  }
  .nsconfirmation-buttons button, .nsconfirmation-buttons a {
    margin-right: 30px;
    width: auto  !important;
  }
  .nsconfirmation-buttons button:last-child, .nsconfirmation-buttons a:last-child {
    margin-right: 0;
  }
}

.nsconfirmation-fillinformsubtitle .sub-title {
  font-size: 20px;
  font-weight: 600;
}

.nsconfirmation-detailsline {
  margin-bottom: 40px;
  color: rgba(0, 0, 0, 0.7);
}

.nsconfirmation-detailsline thead, .nsconfirmation-detailsline tbody, .nsconfirmation-detailsline tr, .nsconfirmation-detailsline td, .nsconfirmation-detailsline th, .nsconfirmation-detailsline p, .nsconfirmation-detailsline b, .nsconfirmation-detailsline div {
  color: inherit;
}

.nsconfirmation-detailsline th, .nsconfirmation-detailsline td {
  padding: 20px 15px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.nsconfirmation-detailsline th:first-child, .nsconfirmation-detailsline td:first-child {
  padding-left: 0;
}

.nsconfirmation-detailsline tr {
  border: 0;
}

.nsconfirmation-detailsline thead th {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.33;
  vertical-align: middle;
  padding-top: 0;
  color: #0D4486;
}

@media (max-width: 767px) {
  .nsconfirmation-detailsline thead th:not(:first-child) {
    display: none;
  }
}

@media (max-width: 991px) {
  .nsconfirmation-detailsline tbody tr {
    display: table-row;
  }
}

@media (max-width: 767px) {
  .nsconfirmation-detailsline tbody tr {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding: 20px 0;
  }
  .nsconfirmation-detailsline tbody tr td {
    display: flex;
    float: none;
    border: 0;
    padding: 0;
    width: auto;
  }
  .nsconfirmation-detailsline tbody tr td:not(:first-child) {
    margin-top: 15px;
  }
  .nsconfirmation-detailsline tbody tr td:not(:first-child)::before {
    content: attr(data-label) ":";
    width: 120px;
    font-size: 12px;
    padding-right: 10px;
  }
}

.nsconfirmation-detailsline tbody td {
  font-weight: 600;
}

.nsconfirmation-detailsline-productdescription {
  width: 50%;
}

.nsconfirmation-detailsline-total {
  width: 16.66667%;
}

.nsconfirmation-detailsline-qty, .nsconfirmation-detailsline-uom {
  width: 8.33333%;
}

.nsconfirmation-detailsline-productdescription div {
  margin: 0;
}

.nsconfirmation-detailsline-productdescription > div {
  display: flex;
  width: 100%;
}

.nsconfirmation-detailsline-productdescription > div > div:not(:last-child) {
  background: #F7F8F9;
  padding: 12px;
  width: 100px;
  margin-right: 20px;
  flex: 0 0 auto;
}

.nsconfirmation-detailsline-productdescription > div > div:not(:last-child) img {
  width: 100%;
  height: auto;
}

.nsconfirmation-detailsline-productdescription > div > div:last-child {
  flex: 1 1 auto;
}

.nsconfirmation-detailsline-productdescription h5 {
  font-size: 16px;
}

.nsconfirmation-detailsline-productdescription p b {
  font-weight: 600;
}

.nsconfirmation-legalnote {
  font-weight: 400;
}
