* {box-sizing:border-box;}

:root {
  --main-font-family: 'Lato', Arial, Helvetica, sans-serif;
  --main-text-color:#404040;
  --main-blue:#11ade4;
  --main-green:#73b850;
  --main-grey:#777;
  --main-light-grey:#999;
  --main-lighter-grey:#ccc;
  --main-lightest-grey:#f1f1f1;
}

html {font-size:16px;}


/* Body */

body {
  background:#fff;
  background-repeat:no-repeat;
  color:var(--main-text-color);
  font-family:var(--main-font-family);
  font-size:16px;
  font-variant-numeric:lining-nums;
  font-feature-settings:"lnum";
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  font-weight:400;
  line-height:1.5em;
  margin:0;
  text-rendering:optimizelegibility;
}

main {
  margin:0 auto;
  width:100%;
}


/* Theme Header */

figure.branding {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  line-height:0;
  margin:0 auto;
  width:100%;
}

figure.branding a {padding:25px 20px;}
header.theme-header figure.branding a {padding:20px;}
header.theme-header figure.branding a.logo-on-dark {display:none;}

figure.branding img {
  height:56px;
  width:250px;
}

header.theme-header section.header-image {
  background-position:50% 33%;
  background-size:cover;
  height:250px;
  margin:0;
}

main article section.article-content {
  background:#fff;
  padding:0 0 40px;
  width:100%;
}

main article section.article-content {background:#fff;}
section.article-content .visual-elements,
article.two-columns .article-content > .visual-elements {display:none;}


/* FastAction */

article .at.ngp-form .FastAction {
  margin:0;
  padding:0;
}

article .at.ngp-form .FastAction .fastAction {
  background:#f6f6f6;
  padding:10px;
}

article .at.ngp-form .FastAction p a {
  color:var(--main-blue);
  font-weight:400;
  text-decoration:underline;
}

article .at.ngp-form .FastAction p {
  align-items:center;
  display:flex;
  font-size:13px;
  justify-content:space-between;
  line-height:15px !important;
  margin:0;
  padding:0 5px;
}
article .at.ngp-form .FastAction .profile-link {background:#fff;}

article .at.ngp-form .FastAction p > span {
  margin:0;
  padding:5px;
}

article .at.ngp-form .FastAction .fa-cta span a {
  color:#fff;
  text-decoration:none;
}

article .at.ngp-form .FastAction .fa-lead {
  display:block;
  order:1;
}

article .at.ngp-form .FastAction .fa-lead br {display:none;}
article .at.ngp-form .FastAction .fa-cta {order:2;}


/* Form */

article .at.ngp-form {
  max-width:unset;
  width:100%;
}

article .at.ngp-form.multistep-layout {
  min-width:unset;
  overflow:unset;
}

main section.at-inner {background:none;}
article .at.ngp-form .at-form * {color:var(--main-text-color);}

article .at.ngp-form header.at-title {
  color: #7268bd;
  font-size:2.25rem;
  font-weight:400;
  line-height:1.111111em;
  margin:0 0 10px;
  padding:20px 20px 0;
  text-align:left;
}

.no-main-image article .at.ngp-form header.at-title {padding-top:0;}

article .at.ngp-form header.HeaderHtml {
  padding:0 0 20px;
  margin:10px 20px 0;
}

article .at.ngp-form header.HeaderHtml h2 {
  font-size:20px;
  font-weight:700;
  margin:0 0 15px;
}

article .at.ngp-form header.HeaderHtml p {
  font-size:1.125rem;
  line-height:1.444444em;
  margin:0 0 15px;
  padding:0;
}

article .at.ngp-form header.HeaderHtml p:last-child {margin:0;}

article .at.ngp-form .content.thankYou {
  margin:0 auto;
  padding:30px;
  width:100%;
}

article .at.ngp-form .content.thankYou h2 {
  font-size:24px;
  font-weight:700;
  margin:0 0 20px;
}

article .at.ngp-form .content.thankYou p {
  font-size:1.125rem;
  line-height:1.444444em;
  margin:0 0 15px;
}

article .at.ngp-form header.HeaderHtml a,
article .at.ngp-form .content.thankYou a {
  color:var(--main-blue);
  font-weight:700;
}

article .at.ngp-form header.HeaderHtml a:hover,
article .at.ngp-form .content.thankYou a:hover {text-decoration:underline;}
article .at.ngp-form .content.thankYou table {width:100%;}

article .at.ngp-form .content.thankYou button.btn-social {
  color:#fff;
  font-weight:700;
  margin:0 15px 0 0;
}

article .at.ngp-form .ngp-deactivation-message {
  padding:20px 20px 0;
  text-align:center;
}

article .at.ngp-form .ngp-deactivation-message p  {
  line-height:24px;
  margin:0 0 15px;
}

/* Form Steps */

article .at.ngp-form ol.at-steps {
  background:none;
  border-radius:0;
  display:flex;
  margin:0;
  padding:0;
}

article .at.ngp-form ol.at-steps li.at-step {
  color:var(--main-grey);
  margin:unset;
  padding:0;
}

article .at.ngp-form ol.at-steps li.at-step.active {
  background:none;
  border-bottom:2px solid var(--main-green);
}

article .at.ngp-form ol.at-steps li.at-step a,
article .at.ngp-form ol.at-steps li.at-step b {
  align-items:center;
  display:flex;
  flex-direction:column;
  font-size:1rem;
  font-weight:400;
  line-height:1em;
  justify-content: center;
  padding:15px 10px 10px;
}

article .at.ngp-form ol.at-steps li.at-step a:before,
article .at.ngp-form ol.at-steps li.at-step b:before {
  background:var(--main-grey);
  border:0;
  display:flex;
  font-size:1rem;
  font-weight:700;
  height:24px;
  justify-content:center;
  left:unset;
  line-height:1.375em;
  margin:0 0 5px;
  padding:0;
  position:relative;
  right:unset;
  top:0;
  transform:none;
  width:24px;
}

article .at.ngp-form ol.at-steps li.at-step a span.step-title {
  color:var(--main-font-color);
  display:block;
}


/* Form Elements */

article .at.ngp-form fieldset.at-fieldset {
  padding:0 10px;
  min-width:unset;
}

article .at.ngp-form fieldset.AdditionalInformation.hide-additional-information legend {display:none;}
article .at.ngp-form fieldset.ContributionInformation {padding-top:10px !important;}
article .at.ngp-form.multistep-layout fieldset.PaymentInformation {padding-bottom:10px;}

article .at.ngp-form legend.at-legend {
  color:var(--main-blue);
  display:flex;
  font-size:1.125rem;
  font-weight:700;
  line-height:1.333333em;
  margin:0 10px;
  padding:15px 0;
  text-transform:uppercase;
}

article .at.ngp-form fieldset.ContributionInformation legend.at-legend {padding-bottom:0;}
article .at.ngp-form fieldset.Interests legend.at-legend {padding:10px 0;}

article .at.ngp-form .at-row label,
article .at.ngp-form fieldset.TicketInformation label {
  color:var(--main-text-color);
  font-size:1rem;
  font-weight:400;
  line-height:1.25em;
  margin:0 10px;
}

article .at.ngp-form .AdditionalInformation .at-row label {font-weight:600;}
article .at.ngp-form fieldset.TicketInformation label {margin:0;}

article .at.ngp-form fieldset.TicketInformation label span {color:var(--main-text-color);}

article .at.ngp-form .at-row label input,
article .at.ngp-form .at-table label input,
article .at.ngp-form .at-row label select,
article .at.ngp-form .at-table label select,
article .at.ngp-form .at-row label .select2-selection,
article .at.ngp-form .at-row label textarea,
article .at.ngp-form .at-row label .vgs-input-container iframe {
  border-radius:2px;
  font-feature-settings:"lnum";
  font-size:1.125rem;
  font-variant-numeric:lining-nums;
  font-weight:700;
  height:40px;
  line-height:40px;
  margin:5px 0 15px;
  padding:7px 10px;
}

article .at.ngp-form .at-row label .intl-tel-input {margin:5px 0 15px;}
article .at.ngp-form .at-row label .intl-tel-input input {padding-left:46px;}

article .at.ngp-form .at-row label select,
article .at.ngp-form .at-table label select {padding:0 10px;}

article .at.ngp-form .at-recurring label select {
  border-width:2px;
  height:36px;
  margin:0 5px 0 0;
  padding:0 20px 0 5px;
}

article .at.ngp-form .at-row label .select2-selection {
  color:var(--main-text-color);
  font-weight:700;
  padding-top:10px;
  text-transform:none;
}

article .at.ngp-form .at-row label .select2-selection__rendered {color:var(--main-text-color);}

article .at.ngp-form .at-row label textarea {
  height:auto;
  line-height:1.5em;
  min-height:200px;
}

article .at.ngp-form .at-row label small,
article .at.ngp-form .at-table label small,
article .at.ngp-form .at-row label a.at-whatsthis {
  color:var(--main-text-color);
  font-size:.875rem;
  font-weight:400;
  line-height:1em;
}

article .at.ngp-form .at-row.PostalCode.City.StateProvince label,
article .at.ngp-form .at-row.EmailAddress.HomePhone.MobilePhone label {
  flex:1 120px;
  min-width:120px;
}

article .at.ngp-form .at-row.FirstName.LastName label,
article .at.ngp-form .at-row.Country.PostalCode.City.StateProvince label,
article .at.ngp-form .at-row.EmailAddress.HomePhone label,
article .at.ngp-form .at-row.EmailAddress.MobilePhone label {
  flex:1 150px;
  min-width:150px;
}

article .at.ngp-form .at-row.Prefix.FirstName.LastName label.Prefix {
  flex:1 110px;
  min-width:110px;
}

article .at.ngp-form input::placeholder {opacity:.5;}



/* Checkboxes */

article .at.ngp-form label.at-check {margin:7px 10px;}
article .at.ngp-form .at-recipient-msg label.at-check.NotificationSendCopy {margin:7px 0 10px;}

article .at.ngp-form .at-row.UpdateMyProfile {margin:5px 0;}
article .at.ngp-form .updateMyProfileSection > label {margin:0;}

article .at.ngp-form label.at-check .at-checkbox-title-container:before,
article .at.ngp-form label.at-check .at-checkbox-title-container:after,
article .at.ngp-form .UpdateMyProfile label > span:before,
article .at.ngp-form .UpdateMyProfile label > span:after,
article .at.ngp-form label.at-check.authorize-payment-label > span:before,
article .at.ngp-form label.at-check.authorize-payment-label > span:after {
  border:1px solid var(--main-green);
  border-radius:0;
  height:24px;
  left:0;
  top:0;
  width:24px;
}

article .at.ngp-form input[type="checkbox"]:focus + span:before {
  box-shadow:0 0 4px 0 var(--main-green);
  border-color:var(--main-green);
}

article .at.ngp-form label.at-check .at-checkbox-title-container:before,
article .at.ngp-form .UpdateMyProfile label > span:before,
article .at.ngp-form label.at-check.authorize-payment-label > span:before {background:none;}

article .at.ngp-form label.at-check .at-checkbox-title-container:after,
article .at.ngp-form .UpdateMyProfile label > span:after,
article .at.ngp-form label.at-check.authorize-payment-label > span:after {
  background-color:var(--main-green);
  background-image:url(https://www.thdincdigital.com/clients/faf/2024/EveryactionTheme/faf-checkmark.png);
  background-position:center;
  background-repeat:no-repeat;
  background-size:16px 16px;
  border:1px solid var(--main-green);
  content:"";
  font-size:16px;
  line-height:16px;
  text-align:center;
}

article .at.ngp-form label.at-check .at-checkbox-title-container,
article .at.ngp-form .UpdateMyProfile label > span,
article .at.ngp-form fieldset.ContributionInformation label.at-select.SelectedFrequency span.at-select,
article .at.ngp-form label.at-check.authorize-payment-label > span {
  display:block;
  font-size:16px;
  line-height:24px;
  margin:0;
  padding-left:35px;
  text-transform:none;
}

article .at.ngp-form fieldset.ContributionInformation label.at-select.SelectedFrequency span.at-select {padding-left:0;}

article .at.ngp-form label.at-check .at-checkbox-title,
article .at.ngp-form label.at-check .at-cover-costs-info,
article .at.ngp-form label.at-select .select-collapse,
article .at.ngp-form .UpdateMyProfile label > span {
  font-weight:400;
  line-height:24px;
}

article .at.ngp-form .at-row label.multi-select .select2-selection {
  height:auto;
  line-height:30px;
  min-height:40px;
  padding:0;
}

article .at.ngp-form .at-row label.multi-select .select2-container--default .select2-selection--multiple {margin:0;}

article .at.ngp-form .select2-container--default .select2-selection--multiple .select2-selection__choice {
  line-height:30px;
  white-space:normal;
}

article .at.ngp-form .at-row label.multi-select .select2-container--default li.select2-search--inline input {
  border:0;
  height:30px;
  margin:0;
  padding:0;
}

article .at.ngp-form fieldset.ContributionInformation label.at-select.SelectedFrequency,
article .at.ngp-form fieldset.ContributionInformation label.at-select.SelectedDuration {margin:0 0 0 4px;}
article .at.ngp-form fieldset.ContributionInformation label.at-select.SelectedFrequency.select-collapse {margin:5px;}

article .at.ngp-form fieldset.ContributionInformation .at-recurring {
  display:flex;
  flex-wrap:wrap;
  font-size:16px;
  line-height:20px;
  margin:0 0 10px;
  padding:0 10px;
}

article .at.ngp-form fieldset.ContributionInformation.forced-recurring .at-recurring {display:none;}

article .at.ngp-form .at-recurring label {
  font-size:16px;
  line-height:20px;
}

article .at.ngp-form .at-recurring label.IsRecurring {
  display:flex;
  margin:5px 0;
}

article .at.ngp-form .at-recurring label.IsRecurring span {
  display:block;
  font-size:16px;
  line-height:20px;
}

article .at.ngp-form .at-recurring label select,
article .at.ngp-form .at-recurring label input {
  border:1px solid var(--main-grey);
  border-radius:0;
  color:var(--main-text-color);
  font-size:56px;
  font-weight:600;
  height:34px;
  line-height:22px;
  margin:0 5px 0 0;
  padding:0 20px 0 5px;
}

article .at.ngp-form fieldset.ContributionInformation .at-recurring .at-check {
  display:block;
  margin-right:0;
}

article .at.ngp-form fieldset.AdditionalInformation .other-option > label.at-text {
  margin:-1px 10px 0 0;
  flex-grow:1;
  flex-basis:unset;
}

article .at.ngp-form fieldset.AdditionalInformation .other-option label.at-text input {
  height:34px;
  line-height:34px;
  margin:0;
}

article .at.ngp-form .at-row.SmsLegalDisclaimer {
  margin:0;
  padding:0;
}

article .at.ngp-form .at-row.SmsLegalDisclaimer .at-markup.SmsLegalDisclaimer,
article .at.ngp-form .at-row.LegalHeaderHtml .at-markup.LegalHeaderHtml {padding:0;}

article .at.ngp-form .at-row.LegalHeaderHtml .at-markup.LegalHeaderHtml {margin-top:10px;}

article .at.ngp-form .at-row.SmsLegalDisclaimer .at-markup.SmsLegalDisclaimer p,
article .at.ngp-form .at-row.LegalHeaderHtml .at-markup.LegalHeaderHtml p {
  font-size:13px;
  line-height:1rem;
  margin:0 0 10px;
}

article .at.ngp-form .at-row.SmsLegalDisclaimer .at-markup.SmsLegalDisclaimer p a {
  font-weight:700;
  text-decoration:underline;
}

article .at.ngp-form .at-row.SmsLegalDisclaimer .at-markup.SmsLegalDisclaimer p:last-child {margin-bottom:5px;}


/* Radio Buttons + Toggle */

article .at.ngp-form .radios label input[type="radio"],
article .at.ngp-form .at-ecards input[type="radio"] {
  -moz-appearance:none;
  -webkit-appearance:none;
  border:1px solid var(--main-grey);
  border-radius:50%;
  content:"";
  display:block;
  height:24px;
  left:0;
  margin:0;
  padding:0;
  outline:none;
  position:absolute;
  width:24px;
}

article .at.ngp-form .radios label input[type="radio"]:checked {
  background:radial-gradient(transparent 0%, transparent 34.9%, var(--main-green) 35%, var(--main-green));
  border:0;
}

article .at.ngp-form .form-item-selectedfrequency .radios {
  display:flex;
  flex-wrap:wrap;
}

article .at.ngp-form.multistep-layout .form-item-selectedfrequency .radios {margin:10px 0 0;}

article .at.ngp-form .form-item-selectedfrequency .radios label {
  color:var(--main-text-color);
  display:block;
  font-size:1rem;
  font-weight:400;
  line-height:1.5em;
  height:34px;
  margin:0 0 0 10px;
  padding:5px 10px 5px 30px;
  position:relative;
  text-decoration:none;
}

article .at.ngp-form .form-item-selectedfrequency .radio-description {
  color:var(--main-text-color);
  display:block;
  font-size:1rem;
  font-weight:400;
  line-height:1.333333em;
  margin:5px 10px;
  padding:0;
  width:100%;
}

article .at.ngp-form .form-item-selectedfrequency .radio-description-value-0 {
  background-image:url(https://www.thdincdigital.com/clients/faf/2024/EveryactionTheme/faf-arrow.png);
  background-repeat:no-repeat;
  background-size:30px 35px;
  padding:20px 0 5px 35px;
  margin-left: 130px;
}

/* Form Control Buttons */

article .at.ngp-form .at-form-submit {
  display:flex;
  justify-content:center;
  margin:20px 10px 0;
  padding:0 0 10px;
}

article .at.ngp-form.multistep-layout .at-form-submit {
  flex-wrap:wrap;
  margin:10px 0 0;
  padding:0 10px 10px;
}

article .at.ngp-form .at-form-submit .step-prevNext {
  display:flex;
  justify-content:space-between;
  padding:10px 0 0;
  width:100%;
}

article .at.ngp-form .at-form-submit .step-prevNext .prevNext {padding:0 10px;}

article .at.ngp-form .at-form-submit .step-prevNext:before,
article .at.ngp-form .at-form-submit .step-prevNext:after {display:none;}
article .at.ngp-form .at-form-submit .step-prevNext .next {order:2;}
article .at.ngp-form .at-form-submit .step-prevNext .prev {order:1;}

article .at.ngp-form .at-form-submit .at-submit,
article .at.ngp-form .at-form-submit .step-prevNext .btn-at,
article .at.ngp-form legend.at-legend-with-submit input,
.lightbox-modal.at-modal button.lightbox-accept-button,
article .at.ngp-form .at-ecards button.at-preview-ecard {
  align-items:center;
  background-color:var(--main-green);
  border:0;
  border-radius:0;
  color:#fff;
  display:flex;
  float:none;
  font-feature-settings:"lnum";
  font-size:1.5rem;
  font-variant-numeric:lining-nums;
  font-weight:700;
  justify-content:center;
  line-height:1em;
  margin:0 10px;
  min-height:60px;
  order:2;
  padding:6px 30px;
  text-align:center;
  white-space:normal;
}

article .at.ngp-form .at-form-submit .step-prevNext .btn-at {
  align-items:center;
  display:flex;
  justify-content:center;
  margin:0;
  padding:6px 10px;
}

article .at.ngp-form .at-form-submit .step-prevNext .prev .btn-at,
article .at.ngp-form .at-form-submit .back-link.at-submit {background-color:var(--main-light-grey);}
article .at.ngp-form .at-form-submit .back-link.at-submit {order:1;}


/* Contribution Buttons */

article .at.ngp-form fieldset.ContributionInformation .at-radio {margin:0 -10px;}

article .at.ngp-form fieldset.ContributionInformation .at-radios {
  display:flex;
  flex-wrap:wrap;
  margin:0 10px 5px;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount {
  align-items:center;
  border-radius:0;
  color:#fff;
  display:flex;
  float:none;
  font-size:1.5rem;
  font-weight:700;
  height:50px;
  justify-content:center;
  line-height:1.166667em;
  margin:10px;
  padding:10px;
  text-shadow:unset;
  width:calc(50% - 20px) !important;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount.incrediblyLong,
article .at.ngp-form fieldset.ContributionInformation label.label-amount.veryLong,
article .at.ngp-form fieldset.ContributionInformation label.label-amount.tooLong {
  font-size:1rem;
  white-space:normal;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount input[name="SelectAmount"] {
  height:0 !important;
  left:0;
  position:absolute;
  top:0;
  width:1px !important;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount a,
article .at.ngp-form fieldset.ContributionInformation label.label-amount a:hover,
article .at.ngp-form fieldset.ContributionInformation label.label-amount:hover a {
  background:var(--main-grey);
  border:0;
  border-radius:0;
  height:50px;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount input:checked + a {background-color:var(--main-green);}

article .at.ngp-form fieldset.ContributionInformation label.label-amount.label-otheramount {
  background:transparent;
  font-size:0;
  height:auto;
  line-height:50px;
  margin-bottom:10px;
  padding:0;
  position:relative;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount.label-otheramount.error {padding-bottom:40px;}

article .at.ngp-form fieldset.ContributionInformation .at-radios.recurring-options label.label-otheramount:after {
  content:"";
  font-size:0;
}

article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount,
article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount:required::selection {
  background:none;
  border:1px solid var(--main-grey);
  border-radius:0;
  color:#fff;
  font-size:1.5rem;
  font-weight:700;
  height:50px;
  line-height:50px;
  margin:0;
  padding:0 20px 0 25px;
  position:absolute;
  top:0;
  transition:background-color .25s ease-in-out, border-color .25s ease-in-out;
  width:100%;
}

article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount::placeholder {
  color:var(--main-grey);
  font-size:1.5rem;
  font-weight:700;
}

article .at.ngp-form fieldset.ContributionInformation input:checked + input.edit-otheramount {
  background-color:var(--main-green);
  border-color:var(--main-green);
  color:#fff;
  padding:0 20px 0 25px;
}

article .at.ngp-form fieldset.ContributionInformation input:checked + input.edit-otheramount::placeholder {color:#fff;}

article .at.ngp-form fieldset.ContributionInformation label.label-otheramount span,
article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount:required + span {
  border:0;
  color:var(--main-grey);
  display:block;
  font-size:1.5rem;
  height:50px;
  line-height:50px;
  padding:0 0 0 13px;
}

article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount:required + span {
  color:#fff;
  font-weight:700;
}

article .at.ngp-form fieldset.ContributionInformation label.label-otheramount .error {
  display:block;
  font-size:14px;
  left:0;
  line-height:18px;
  margin:0;
  padding:5px 0 0;
  position:absolute;
  top:50px;
}


/* In Honor / Memory of */

article .at.ngp-form fieldset.at-fieldset.TributeGift {padding:0 20px !important;}
article .at.ngp-form fieldset.TributeGift label.EnableTributeGift {margin:5px 0;}

article .at.ngp-form .at-tribute-gift,
article .at.ngp-form .at-tribute-gift label {
  line-height:20px;
  margin:0;
}

article .at.ngp-form .at-tribute-gift label.HonoreeName {font-weight:400;}
article .at.ngp-form .at-check.IncludeRecipient {margin:5px 10px;}
article .at.ngp-form fieldset.RecipientInformation {padding:0 10px !important;}
article .at.ngp-form .form-item-inhonororinmemoryof {margin:5px 0;}

article .at.ngp-form .form-item-inhonororinmemoryof > label {
  font-weight:700;
  margin:10px 0;
  width:100%;
}

article .at.ngp-form .form-item-inhonororinmemoryof .radios label {font-size:16px;}

article .at.ngp-form fieldset .radios {
  display:flex;
  flex-wrap:wrap;
  margin:0;
}

article .at.ngp-form fieldset.ContactInformation .radios,
article .at.ngp-form fieldset.AdditionalInformation .radios {padding:10px;}
article .at.ngp-form fieldset.AdditionalInformation .radios {flex-direction:column;}

article .at.ngp-form .radios label {
  display:block;
  flex-wrap:wrap;
  font-weight:400;
  line-height:24px;
  margin:5px 10px 5px 0;
  padding-left:32px;
  padding-right:10px;
}

article .at.ngp-form fieldset.ContactInformation .radios label,
article .at.ngp-form fieldset.AdditionalInformation .radios label {
  flex:unset;
  min-width:50px;
  padding-right:0;
}

article .at.ngp-form.form-item-inhonororinmemoryof .radios label label input {
  flex:unset;
  margin:0;
  min-width:30px;
}

article .at.ngp-form fieldset.RecipientInformation .at-recipient-info .at-title {
  font-size:1rem;
  font-weight:700;
  margin:10px 10px 0;
}

article .at.ngp-form fieldset.RecipientInformation .at-markup.RecipientInfoHeaderHtml {
  font-size:1rem;
  line-height:1.25em;
  margin:10px;
}

article .at.ngp-form fieldset.RecipientInformation label.notificationsenddate,
article .at.ngp-form fieldset.RecipientInformation label.NotificationMessage {margin:0;}


/* Additional Information / Custom Stuff */

article .at.ngp-form fieldset.AdditionalInformation .at-row-full > label.at-text,
article .at.ngp-form fieldset.AdditionalInformation .at-row-full > label.at-check,
article .at.ngp-form fieldset.AdditionalInformation .at-row-full > label.at-select,
article .at.ngp-form fieldset.AdditionalInformation .at-row-full > div > label.checkbox-list-label,
article .at.ngp-form fieldset.AdditionalInformation .at-row-full > .form-unit-radio {
  font-weight:600;
  margin-top:10px;
}

article .at.ngp-form fieldset.AdditionalInformation label.at-area textarea {margin-top:10px;}

article .at.ngp-form fieldset.AdditionalInformation .at-row-full > label.at-check {margin-top:5px;}
article .at.ngp-form fieldset.AdditionalInformation .radios label {margin:5px 15px 5px 0;}

article .at.ngp-form fieldset.AdditionalInformation .radios label[title="Other"],
article .at.ngp-form fieldset.AdditionalInformation .other-option label.at-check {
  display:flex;
  margin-right:0;
}

article .at.ngp-form fieldset.AdditionalInformation .radios label[title="Other"] label.at-text,
article .at.ngp-form fieldset.AdditionalInformation div.other-option label.at-text {
  margin-top:0;
  padding-left:10px;
  flex-grow:1;
}

article .at.ngp-form fieldset.AdditionalInformation .radios label[title="Other"] label.at-text {margin:-5px 0;}

article .at.ngp-form fieldset.AdditionalInformation .radios label[title="Other"] label.at-text input,
article .at.ngp-form fieldset.AdditionalInformation div.other-option label.at-text input {
  height:34px;
  line-height:34px;
  margin:0;
}

article .at.ngp-form .at-fields.interests-fields {margin:0;}
article .at.ngp-form fieldset.ContributionInformation .gift-support {margin-top:10px;}
article .at.ngp-form fieldset.Interests .InterestsHeaderHtml p {margin-top:0;}


article .at.ngp-form fieldset.PaymentInformation .at-fields {
  padding-bottom:35px;
  position:relative;
}

article .at.ngp-form fieldset.PaymentInformation .at-fields:before,
article .at.ngp-form fieldset.PaymentInformation .at-fields:after {
  bottom:0;
  display:block;
  font-size:1rem;
  position:absolute;
}



article .at.ngp-form fieldset.PaymentInformation .at-fields:before {
  content:"\f023";
  font-family:"Font Awesome 5 Free";
  font-weight:900;
  left:10px;
}

article .at.ngp-form fieldset.PaymentInformation .at-fields:after {
  content:"Your donation will be securely processed.";
  left:30px;
}


.secure-processing-single-step-div {
  display: none !important;
}


/*
.glyphicons {
  font-family: "Glyphicons Regular" !important;
}
*/



article .at.ngp-form fieldset.TicketInformation .at-fields {padding:0 10px;}

article .at.ngp-form fieldset.TicketInformation table {
  background:none;
  border-collapse:collapse;
}

article .at.ngp-form fieldset.TicketInformation table tr {background:none;}
article .at.ngp-form fieldset.TicketInformation table th,
article .at.ngp-form fieldset.TicketInformation table td {padding:15px;}

article .at.ngp-form fieldset.TicketInformation table.at-table th,
article .at.ngp-form fieldset.TicketInformation table.at-table tr.ticketTotals td,
article .at.ngp-form fieldset.TicketInformation table.at-table tr.ticketTotals td b {
  background:var(--main-lightest-grey);
  color:var(--main-grey);
  font-size:1rem;
  font-weight:700;
  line-height:1.333333em;
}

article .at.ngp-form fieldset.TicketInformation table tr td {border-bottom:1px solid var(--main-lighter-grey);}
article .at.ngp-form fieldset.TicketInformation table tr.ticketTotals td {border:0;}
article .at.ngp-form fieldset.TicketInformation table td select {margin:0;}

article .at.ngp-form footer.FooterHtml {
  margin:0;
  padding:0;
}

article .at.ngp-form footer.FooterHtml p {
  font-size:.75em;
  margin:0 0 15px;
}

article .at.ngp-form footer.FooterHtml p:last-child {margin:0;}


/* EFT Section */

article .at.ngp-form fieldset.PaymentInformation .at-eft-accepted-here {
  display:flex;
  flex-wrap:wrap;
  margin:0;
}

article .at.ngp-form fieldset.PaymentInformation .at-eft-accepted-here > label,
article .at.ngp-form fieldset.PaymentInformation .at-eft-accepted-here > label.authorize-payment-label {width:100%;}

article .at.ngp-form fieldset.PaymentInformation .at-eft-accepted-here select.eft-input {width:100% !important;}
article .at.ngp-form .at-row label a.at-whatsthis {line-height:20px;}


/* Error States */

article .at.ngp-form label small.error {
  font-size:14px;
  font-weight:700;
  line-height:20px;
  margin-bottom:10px;
  padding:0;
}


/* Lightbox */

.lightbox-modal.at-modal .at-modal-inner {
  border-radius:25px;
  max-width:520px;
}

.lightbox-modal.at-modal header a.lightbox-close {
  display:block;
  top:10px;
  right:15px;
}

.lightbox-modal.at-modal .at-modal-inner header > div {
  color:var(--main-text-color);
  font-size:24px;
  font-weight:700;
  line-height:36px;
  max-width:100%;
  text-align:center;
}

.lightbox-modal.at-modal .at-lightbox-content-wrapper p {
  font-size:16px;
  line-height:24px;
  margin:0 auto 15px;
  max-width:400px;
  text-align:center;
}

.lightbox-modal.at-modal button.lightbox-accept-button {
  font-weight:700;
  line-height:26px;
  margin:0 auto;
  max-width:300px;
  padding:10px 20px;
  text-transform:none;
}

.lightbox-modal.at-modal footer a.lightbox-decline-button {
  color:var(--main-text-color);
  font-weight:700;
}


/* Footer */

footer.theme-footer {
  background-color:var(--main-blue);
  color:#fff;
  margin:0;
  padding:0;
  width:100%;
}

footer.theme-footer .footer-container {
  margin:0 auto;
  max-width:700px;
  padding:20px 20px 10px;
  width:100%;
}

footer.theme-footer p {
  font-size:.875rem;
  line-height:1.125em;
  margin:0 auto 20px;
  text-align:center;
}

footer.theme-footer p a {color:#fff;}
footer.theme-footer p.attribution {margin:20px 0 10px;}
footer.theme-footer .branding a {padding:20px;}

footer.theme-footer .branding img {
  height:56px;
  width:250px;
}

footer.theme-footer p.validation-details a {text-decoration:none;}

footer.theme-footer .accreditation-logos {
  display:flex;
  justify-content:center;
  margin:0 0 10px;
}

footer.theme-footer .accreditation-logo {
  display:flex;
  line-height:0;
  margin:0;
}

footer.theme-footer .accreditation-logo a {
  display:flex;
  padding:10px;
}

footer.theme-footer .accreditation-logo img {height:40px;}
footer.theme-footer p.copyright-privacy {line-height:1.428571em;}

footer.theme-footer p.copyright-privacy a {
  color:#fff;
  font-weight:400;
  text-decoration:underline;
}


/* Fonts */

article .at.ngp-form .at-form *,
.lightbox-modal.at-modal * { font-family:var(--main-font-family); }


@media (min-width:360px) {
  
  header.theme-header section.header-image {height:300px;}
  
  /* Form Control Buttons */
  
  article .at.ngp-form .at-form-submit .at-submit,
  article .at.ngp-form .at-form-submit .step-prevNext .btn-at {padding:6px 15px;}

}

@media (min-width:400px) {

  /* Form Control Buttons */
  
  article .at.ngp-form .at-form-submit .at-submit,
  article .at.ngp-form .at-form-submit .step-prevNext .btn-at {padding:6px 20px;}

}


@media (min-width:500px) {
  
  article figure.branding img {
  height:56px;
  width:250px;
  } 
  
  header.theme-header section.header-image {height:350px;}
 
  /* Form */
  
  article .at.ngp-form ol.at-steps li.at-step a,
  article .at.ngp-form ol.at-steps li.at-step b {flex-direction:row;}
  article .at.ngp-form ol.at-steps li.at-step a:before,
  article .at.ngp-form ol.at-steps li.at-step b:before {margin:0 10px 0 0;}
  article .at.ngp-form .at-form-submit .step-prevNext .btn-at {padding:0 30px;}
  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc((100% / 3) - 20px) !important;}
  
  /* Form Control Buttons */
  
  article .at.ngp-form .at-form-submit .at-submit,
  article .at.ngp-form .at-form-submit .step-prevNext .btn-at {padding:6px 30px;}
  
  /* EFT Section */

  article .at.ngp-form fieldset.PaymentInformation .at-eft-accepted-here > label {width:calc(50% - 20px);}
  
  article .at.ngp-form fieldset.PaymentInformation .at-fields:before,
  article .at.ngp-form fieldset.PaymentInformation .at-fields:after {font-size:16px;}
  article .at.ngp-form fieldset.PaymentInformation .at-fields:after {left:32px;}
  
}

@media (min-width:600px) {
  
  header.theme-header section.header-image {height:450px;}
  
}


@media (min-width:768px) {

  body.background-blue {background:var(--main-blue);}
  body.background-green {background:var(--main-green);}
  body.image-header {background:var(--main-lightest-grey);}
  
  
  .image-background main > section.background-image {
    background-attachment:scroll;
    background-color:#fff;
    background-position:50% 33%;
    background-repeat:no-repeat;
    background-size:cover;
    min-height:100%;
    position:fixed;
    width:100%;
    z-index:-999;
  }
  
  .image-background header.theme-header {background:#fff;}
  .image-background header.theme-header.dark {background:var(--main-blue);}
  .image-foreground header.theme-header,
  .no-main-image header.theme-header {display:none;}
  
  .image-background header.theme-header .branding {
    justify-content:flex-start;
    width:740px;
  }
  
  .image-background header.theme-header .branding .logo-on-dark,
  .image-background header.theme-header.dark .branding .logo-on-light {display:none;}
  .image-background header.theme-header.dark .branding .logo-on-dark {display:flex;}
  .logo-inside header.theme-header .logo-container,
  .image-header header.theme-header .logo-container {display:none;}
  .has-main-image header.theme-header section.header-image {display:none;}
  
  .has-main-image.image-header header.theme-header section.header-image {
    background-position:50% 33%;
    display:block;
    height:400px;
  }
  
  main article {
    background:none;
    display:flex;
    justify-content:flex-start;
    margin:0 auto;
    padding:90px 0;
    width:700px;
  }
  
  .logo-top.image-foreground main article,
  .logo-top.no-main-image main article {padding-top:20px;}
  
  .image-header main article {
    margin-top:-150px;
    padding-top:0;
  }
  
  .background-blue.image-foreground main article,
  .background-blue.no-main-image main article {padding-bottom:0;}
  
  main article section.article-content {
    background:#fff;
    box-shadow:0 2px 4px 0 rgba(0,0,0,.5);
    padding:0 0 10px;
    width:100%;
  }
  
  .image-background main article section.article-content {
    background:rgba(255,255,255,.95);
    width:450px;
  }
  
  .logo-top.image-foreground main article section.article-content,
  .logo-top.no-main-image main article section.article-content {padding-top:20px;}
  main article.two-columns section.article-content {padding-bottom:0;}
  
  section.article-content .visual-elements {display:block;}
  
  section.article-content .visual-elements figure.branding {
    display:flex;
    justify-content:flex-start;
  }
  
  .image-foreground main article section.article-content figure.foreground-image {
    display:block;
    margin:0 20px;
  }
  
  .image-foreground main article section.article-content figure.foreground-image img {width:100%;}
   
  article.two-columns .at.ngp-form section.at-inner {
    background:var(--main-lightest-grey);
    display:grid;
    grid-template-columns:340px 360px;
    grid-auto-rows:minmax(min-content, max-content);
  }

  article.two-columns .at.ngp-form .visual-elements {
    grid-column:1 / 2;
    grid-row:1 / 2;
  }
  
  article.two-columns .at.ngp-form .visual-elements figure.branding img {
     height:56px;
     width:250px;
  }
  
  article.two-columns .at.ngp-form header.at-title {
    grid-column:1 / 2;
    grid-row:2 / 3;
  }
  
  .image-header article.two-columns .at.ngp-form header.at-title {padding-top:0;}
  
  article.two-columns .at.ngp-form header.HeaderHtml {
    grid-column:1 / 2;
    grid-row:3 / 4;
  }
  
  article.two-columns .at.ngp-form form {
    align-self:start;
    background:#fff;
    grid-column:2 / 3;
    grid-row:1 / 7;
    height:100%;
    padding:20px 0 10px;
  }

  article .at.ngp-form .FastAction .fastAction {
    background:none;
    padding:0 10px;
  }

  article.two-columns .at.ngp-form .FastAction .fastAction {
    background:var(--main-lightest-grey);
    margin:0 20px;
    padding:10px;
  }
  
  article .at.ngp-form ol.at-steps {margin:0 20px;}

  article .at.ngp-form.multistep-layout header.HeaderHtml,
  article .at.ngp-form.multistep-layout form {
    float:none;
    width:unset;
  }
  
  article .at.ngp-form ol.at-steps li.at-step a,
  article .at.ngp-form ol.at-steps li.at-step b {flex-direction:column;}
  article .at.ngp-form ol.at-steps li.at-step a:before,
  article .at.ngp-form ol.at-steps li.at-step b:before {margin:0 0 5px;}
  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc(50% - 20px) !important;}
  
  article .at.ngp-form fieldset.AdvocacyFields .at-fields {margin:20px 10px 10px;}
  article .at.ngp-form .at-form-submit .step-prevNext {justify-content:space-between;}
  article .at.ngp-form .at-form-submit {justify-content:flex-end;}
  
}


@media (min-width:960px) {
  
	
  .image-background header.theme-header .branding {width:940px;}
  
  main article {
    background:none;
    display:flex;
    justify-content:flex-start;
    margin:0 auto;
    width:840px;
  }
  
  .image-background main article {width:900px;}  
  main article section.article-content {padding:10px 10px 20px;}
  .image-background main article section.article-content {width:550px;}
  .image-foreground main article section.article-content,
  .no-main-image main article section.article-content {padding:10px 20px 30px;}
  .logo-top.image-foreground main article section.article-content,
  .logo-top.no-main-image main article section.article-content {padding-top:30px;}
  main article.two-columns section.article-content {padding:0;}
  .image-foreground main article section.article-content figure.foreground-image {margin:10px 20px;}
  
  
  article.two-columns .at.ngp-form section.at-inner {grid-template-columns:400px 440px;}
  article.two-columns .at.ngp-form .visual-elements {padding:10px;}
  
  article.two-columns .at.ngp-form .visual-elements figure.branding img {
  height:56px;
  width:250px;
  }
  
  article.two-columns .at.ngp-form header.at-title {padding:0 30px;}
  article.two-columns .at.ngp-form header.HeaderHtml {padding:0 10px 30px;}
  article.two-columns .at.ngp-form form {padding:35px 10px 20px;}
  
  article .at.ngp-form .at-row.Country.PostalCode.City.StateProvince label {
    flex:1 175px;
    min-width:175px;
  }
  
  article .at.ngp-form ol.at-steps li.at-step a,
  article .at.ngp-form ol.at-steps li.at-step b {flex-direction:row;}
  article .at.ngp-form ol.at-steps li.at-step a:before,
  article .at.ngp-form ol.at-steps li.at-step b:before {margin:0 10px 0 0;}
  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc((100% / 3) - 20px) !important;}

}


@media (min-width:1200px) {

  .image-background header.theme-header .branding {width:1140px;}
  
  .image-background main article,
  main article.two-columns {width:1100px;}
  .image-background main article section.article-content {width:620px;}
  
  article.two-columns .at.ngp-form section.at-inner {grid-template-columns:500px 600px;}
  article.two-columns .at.ngp-form .visual-elements {padding:10px;}
  
  article.two-columns .at.ngp-form .visual-elements figure.branding img {
     height:56px;
     width:250px;
  }
	

}




