/**
 * Reset & Normalize
 */

html, body, div, span, applet, object, iframe, 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 {
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
  border: 0;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {
  display: block;
}

body, html {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: 'Trebuchet MS', Tahoma, Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 0;
  line-height: 0;
}

body,
body * {
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5em;
  color: #30313d;
  box-sizing: border-box;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

hr {
  height: 0;
  box-sizing: content-box;
  overflow: visible;
}

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

a {
  color: #1870b8;
  background-color: transparent;
}

b, strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}


/**
 * Luminate DOM
 */

main .responsive .donation-form-content,
main .responsive .form-row.form-error,
main .responsive .rkd-form-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

main .responsive .rkd-form-group {
  width: 100%;
}

main .responsive .form-row.form-error {
  align-content: space-between;
}

main .responsive .form-row,
main .responsive h2.section-header-container,
main .responsive #inline-checkout,
main .responsive .button-container,
main .responsive .button-sub-container,
main .responsive .form-row.form-error,
main .responsive .rkd-form-group {
  display: flex;
  width: 100%;
}

.responsive .form-row > div,
.responsive .form-row .donation-level-container,
.responsive .generic-repeat-label-checkbox-container,
.responsive .form-row .designated-giving-recurring-row,
.responsive .form-row.form-error .ErrorMessage {
  display: inline-block;
  position: relative;
  width: 100%;
  height: auto;
}

.responsive .form-row .aural-only {
  position: absolute;
  top: auto;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.responsive .form-row small.field-note {
  display: flex;
  justify-content: flex-start;
  width: 100%;
  font-size: 14px;
  line-height: 18px;
  margin: 0 0 4px 0;
}

.responsive .form-row input[type="text"],
.responsive .form-row input[type="email"],
.responsive .form-row input[type="number"],
.responsive .form-row input[type="password"],
.responsive .form-row select,
.responsive .form-row textarea,
.responsive .form-row label {
  display: inline-block;
  position: relative;
  height: auto;
  font-size: 1rem;
  line-height: 1.5rem;
}

.responsive .form-row input[type="text"],
.responsive .form-row input[type="email"],
.responsive .form-row input[type="number"],
.responsive .form-row input[type="password"],
.responsive .form-row select,
.responsive .form-row textarea {
  width: 100%;
  margin: 0;
  padding: 4px 10px 4px 10px;
  border: 1px solid #d2d2d2;
  border-radius: 0;
  background-color: #fff;
}

.responsive .form-row.form-error input[type="text"],
.responsive .form-row.form-error input[type="email"],
.responsive .form-row.form-error input[type="number"],
.responsive .form-row.form-error input[type="password"],
.responsive .form-row.form-error select,
.responsive .form-row.form-error textarea {
  border-color: #bb230f;
}

.responsive .form-row textarea {
  resize: vertical;
}

.responsive .form-row select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0Ljk1IDEwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9LmNscy0ye2ZpbGw6IzQ0NDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPmFycm93czwvdGl0bGU+PHJlY3QgY2xhc3M9ImNscy0xIiB3aWR0aD0iNC45NSIgaGVpZ2h0PSIxMCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMiIgcG9pbnRzPSIxLjQxIDQuNjcgMi40OCAzLjE4IDMuNTQgNC42NyAxLjQxIDQuNjciLz48cG9seWdvbiBjbGFzcz0iY2xzLTIiIHBvaW50cz0iMy41NCA1LjMzIDIuNDggNi44MiAxLjQxIDUuMzMgMy41NCA1LjMzIi8+PC9zdmc+);
  background-position: right 51%;
  background-repeat: no-repeat;
}

.responsive .form-row #rkd-notification-type,
.responsive .form-row .form-input-label-block + input[type="text"],
.responsive .form-row .form-input-label-block + input[type="email"]
.responsive .form-row .form-input-label-block + input[type="number"]
.responsive .form-row .form-input-label-block + input[type="password"]
.responsive .form-row .form-input-label-block + textarea,
.responsive .form-row .form-input-label-block + select,
.responsive .form-row label + input[type="text"],
.responsive .form-row label + input[type="email"],
.responsive .form-row label + input[type="number"],
.responsive .form-row label + input[type="password"],
.responsive .form-row label + textarea,
.responsive .form-row label + select {
  margin: 4px 0 0 0;
}

.responsive .form-row label,
.responsive .form-row label.FormLabel {
  width: auto;
  min-width: unset;
}

.responsive .form-row .form-content > span.field-required + label,
.responsive .form-row .form-content > span.field-required + span.aural-only + .FormLabelText,
.responsive .form-row.required .form-content label {
  padding-left: 12px;
}

.responsive .form-row .form-content > span.field-required + label:before,
.responsive .form-row .form-content > span.field-required + span.aural-only + .FormLabelText:before,
.responsive .form-row.required .form-content label:before {
  content: '*';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  font-family: Arial, sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 24px;
  color: #96194b;
  vertical-align: top;
}

.responsive .form-input input[type="checkbox"],
.responsive .form-row input[type="checkbox"],
.responsive .form-row input[type="radio"] {
  position: absolute;
  top: 2px;
  left: 2px;
  margin: 0;
  padding: 0;
  opacity: 0;
}

/* Show native gift radio if script fails */
.responsive .form-row .donation-level-container .form-input > div {
  display: inline-block;
  padding-right: 4px;
}

.responsive .form-row .donation-level-container .form-input > div > input[type="radio"] {
  position: relative;
  top: unset;
  left: unset;
  opacity: 1;
}

.responsive .generic-repeat-label-checkbox-container input[type="checkbox"] + label,
.responsive .donation-level-container input[type="radio"] + * + label,
.responsive .form-input input[type="checkbox"] + * + label,
.responsive .form-row input[type="checkbox"] + label,
.responsive .form-row input[type="radio"] + label {
  width: auto;
  padding-left: 28px;
  cursor: pointer;
}

.responsive .generic-repeat-label-checkbox-container input[type="checkbox"] + label:before,
.responsive .generic-repeat-label-checkbox-container input[type="checkbox"] + label:after,
.responsive .donation-level-container input[type="radio"] + * + label:before,
.responsive .donation-level-container input[type="radio"] + * + label:after,
.responsive .form-input input[type="checkbox"] + * + label:before,
.responsive .form-input input[type="checkbox"] + * + label:after,
.responsive .form-row input[type="checkbox"] + label:before,
.responsive .form-row input[type="checkbox"] + label:after,
.responsive .form-row input[type="radio"] + label:before,
.responsive .form-row input[type="radio"] + label:after {
  content: '';
  position: absolute;
}

.responsive .generic-repeat-label-checkbox-container input[type="checkbox"] + label:before,
.responsive .donation-level-container input[type="radio"] + * + label:before,
.responsive .form-input input[type="checkbox"] + * + label:before,
.responsive .form-row input[type="checkbox"] + label:before,
.responsive .form-row input[type="radio"] + label:before {
  display: inline-block;
  top: 2px;
  left: 0;
  width: 17px;
  height: 17px;
  border: 1px solid #d2d2d2;
  background-color: #fff;
}

.responsive .generic-repeat-label-checkbox-container input[type="checkbox"] + label:before,
.responsive .form-input input[type="checkbox"] + * + label:before,
.responsive .form-row input[type="checkbox"] + label:before {
  border-radius: 0;
}

.responsive .donation-level-container input[type="radio"] + * + label:before,
.responsive .form-row input[type="radio"] + label:before {
  border-radius: 50%;
}

.responsive .generic-repeat-label-checkbox-container input[type="checkbox"] + label:after,
.responsive .form-input input[type="checkbox"] + * + label:after,
.responsive .form-row input[type="checkbox"] + label:after {
  display: none;
  top: 7px;
  left: 3px;
  width: 10px;
  height: 4px;
  border-width: 2px;
  border-style: solid solid none none;
  border-color: #30313d;
  transform: rotate(130deg);
}

.responsive .donation-level-container input[type="radio"] + * + label:after,
.responsive .form-row input[type="radio"] + label:after {
  display: none;
  top: 7px;
  left: 5px;
  width: 9px;
  height: 9px;
  border: none;
  border-radius: 50%;
  background-color: #30313d;
}

.responsive .generic-repeat-label-checkbox-container input[type="checkbox"]:checked + label:after,
.responsive .donation-level-container input[type="radio"]:checked + * + label:after,
.responsive .form-input input[type="checkbox"]:checked + * + label:after,
.responsive .form-row input[type="checkbox"]:checked + label:after,
.responsive .form-row input[type="radio"]:checked + label:after {
  display: inline-block;
}

.responsive .donation-level-input-container > label > .donation-level-amount-container {
  display: block;
  width: 100%;
  height: 0;
  font-size: 0;
  line-height: 0;
  opacity: 0;
  overflow: hidden;
}

.responsive #ecard_send_date_row .date-input-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
}

.responsive #ecard_send_date_row .date-input-container > select {
  margin: 4px 0 0 0;
}

.responsive .button-container button.step-button {
  font-size: 18px;
  line-height: 24px;
  color: #212327;
  padding: 8px 24px;
  border: none;
  background-image: none;
  background-color: #eeeeee;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.responsive .button-container button.step-button:disabled,
.responsive .button-container button.step-button:disabled:hover {
  color: #989898;
  background-color: #d8d8d8;
  cursor: not-allowed;
}

.responsive .hidden,
.responsive .form-row.hidden * {
  display: block;
  width: 100%;
  height: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
  visibility: hidden !important;
}