* {box-sizing:border-box;}

:root {
  --main-font-family:Montserrat, san-serif;
  --glyphicons-font-family:"Glyphicons Regular";
  --font-awesome-brands:"Font Awesome 6 Brands";
  --font-awesome-solid:"Font Awesome 6 Free";
  --main-text-color:#323135;
  --main-blue:#003a70;
  --main-green:#215b41;
  --main-orange:#e87200;
  --main-purple:#3e2b56;
  --main-red:#ca3727;
  --main-dark-grey:#676767;
  --main-grey:#808184;
  --main-light-grey:#ccc;
  --main-lighter-grey:#e1e1e1;
  --main-lightest-grey:#f4f3f3;
}

html {font-size:18px;}


/* Body */

body {
  background:var(--main-lightest-grey);
  background-repeat:no-repeat;
  color:var(--main-text-color);
  font-family:var(--main-font-family);
  font-size:18px;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  font-weight:400;
  line-height:1.5em;
  margin:0;
  text-rendering:optimizelegibility;
}

body.background-blue {background:var(--main-blue);}
body.background-green {background:var(--main-green);}
body.background-orange {background:var(--main-orange);}
body.background-purple {background:var(--main-purple);}
body.background-red {background:var(--main-red);}

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

main.theme-content a,
main.theme-content a:hover {
  font-weight:700;
  color:var(--main-blue);
  text-decoration:underline;
}


/* Theme Header */

header.theme-header {background:#fff;}
.no-main-image header.theme-header {border-bottom:1px solid var(--main-light-grey);}

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

figure.branding a {padding:30px 20px;}

figure.branding img {
  height:81px;
  width:280px;
}

figure.branding img.reverse {display:none;}

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

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

article .article-content > .logo-container,
article .article-content > .inline-elements,
article .article-content > .explainers {display:none;}


/* FastAction */

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

article .at.ngp-form .FastAction .fastAction {
  background:var(--main-lightest-grey);
  padding:10px;
}

article .at.ngp-form .FastAction p a {
  font-weight:700;
  text-decoration:none;
}

article .at.ngp-form .FastAction p a:focus,
article .at.ngp-form .FastAction p a:hover {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 b {font-weight:700;}
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;
  padding-top:24px;
}

article .at.ngp-form form {padding-top:24px;}
article section.has-read-more header.HeaderHtml.show-all ~ form {padding-top:9px}
article .at.ngp-form .at-form * {color:var(--main-text-color);}
article .at.ngp-form form a {text-decoration:none;}

article .at.ngp-form header.at-title {
  color:var(--main-blue);
  font-family:var(--secondary-font-family);
  font-size:2rem;
  font-weight:700;
  line-height:1.125em;
  margin:0;
  padding:0 20px 16px;
  text-align:left;
}

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

article .at.ngp-form header.MeterHtml + header.HeaderHtml {padding-top:16px;}

article .at.ngp-form header.HeaderHtml h2,
article .at.ngp-form .content.thankYou h2 {
  font-size:1.5rem;
  font-weight:700;
  line-height:1.5em;
  margin:0 0 15px;
}

article .at.ngp-form p,
article .at.ngp-form header.HeaderHtml p,
article .at.ngp-form .content.thankYou p {
  margin:0 0 15px;
  padding:0;
}

article .at.ngp-form header.HeaderHtml strong,
article .at.ngp-form header.HeaderHtml b {font-weight:700;}

article .at.ngp-form.multistep-layout header.HeaderHtml p {
  font-size:1.125rem;
  line-height:1.5em;
}

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

article .at.ngp-form .content.thankYou {
  background:#fff;
  border-radius:16px;
  margin:0 auto;
  max-width:840px;
  padding:20px;
  width:100%;
}

article.two-columns .at.ngp-form .content.thankYou {max-width:unset;}

article .at.ngp-form header.HeaderHtml a,
article .at.ngp-form .at-markup a,
article .at.ngp-form .content.thankYou a {
  color:var(--main-text-color);
  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;
}

article .at.ngp-form .at-inner h2 {
  font-size1.5rem;
  font-weight:700;
  line-height:1.5em;
  margin:20px 0 5px;
}

article .at.ngp-form header.HeaderHtml p.disclaimer {
  font-size:.777778rem;
  font-style:italic;
}

/* Read More Styles */

article .at.ngp-form header.HeaderHtml > span.show-full-body {display:none;}


/* Blockquote Stuff */

article .at.ngp-form  .HeaderHtml blockquote {
  border-top:2px solid var(--main-text-color);
  border-bottom:2px solid var(--main-text-color);
  margin:20px 0;
  padding:20px 0;
}

article .at.ngp-form .HeaderHtml blockquote > *:not(blockquote) {display:none;}
article .at.ngp-form .HeaderHtml blockquote.expanded > *:not(blockquote) {display:block;}

article .at.ngp-form .HeaderHtml blockquote h2 {
  display:flex;
  flex-direction:row-reverse;
  font-size:1.25rem;
  font-weight:700;
  justify-content:space-between;
  margin-bottom:0;
}

article .at.ngp-form .HeaderHtml blockquote.expanded h2 {
  display:flex;
  margin-bottom:15px;
}

article .at.ngp-form .HeaderHtml blockquote h2:before {
  content:"\f055";
  font-family:var(--font-awesome-solid);
  font-size:1.25rem;
  font-weight:700;
  padding-left:20px;
}

article .at.ngp-form .HeaderHtml blockquote.expanded h2:before {content:"\f056";}


/* 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-dark-grey);
  margin:unset;
  padding:0;
}

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

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;
  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-dark-grey);
  border:0;
  display:flex;
  font-size:.888889rem;
  height:24px;
  justify-content:center;
  left:unset;
  line-height:24px;
  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;
}


/* Progress Meter Stuff */

article .at.ngp-form header.MeterHtml {
  margin:0;
  padding:0 20px;
  width:100%;
}

article .at.ngp-form header.at-title + header.MeterHtml {padding-top:12px;}

article .at.ngp-form header.MeterHtml iframe {display:none;}

article .at.ngp-form figure.progress-meter {
  margin:0;
  padding:0;
}

article .at.ngp-form figure.progress-meter strong {
  display:block;
  font-size:1rem;
  font-weight:600;
}

article .at.ngp-form figure.progress-meter progress {
  appearance:none;
  background:var(--main-lighter-grey);
  border:0;
  border-radius:15px;
  display:block;
  height:30px;
  margin:0 0 10px;
  padding:0;
  position:relative;
  -webkit-appearance:none;
  width:100%;
  box-shadow:unset;
  z-index:3;
}

article .at.ngp-form figure.progress-meter progress::-webkit-progress-bar {
  background:var(--main-lighter-grey);
  border:0;
  border-radius:15px;
}
  
article .at.ngp-form figure.progress-meter progress::-moz-progress-bar {
  background-color:var(--main-blue);
  border-radius:15px;
}

article .at.ngp-form figure.progress-meter progress::-webkit-progress-value {
  background-color:var(--main-blue);
  border-radius:15px;
}

article .at.ngp-form figure.progress-meter p.progress-meter-details {
  display:flex;
  justify-content:space-between;
  margin:0;
  text-transform:uppercase;
}

article .at.ngp-form figure.progress-meter p.progress-meter-details span.progress-meter-goal {
  padding-left:10px;
  text-align:right;
}


/* 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.multistep-layout fieldset.Interests {padding-top:0 !important;}

article .at.ngp-form legend.at-legend {
  display:flex;
  font-size:1.25rem;
  font-weight:700;
  line-height:1.25em;
  margin:0 10px;
  padding:20px 0 10px;
}

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

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

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:1px solid var(--main-grey);
  border-radius:0;
  font-size:1.125rem;
  font-weight:700;
  height:46px;
  line-height:46px;
  margin:5px 0;
  padding: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 {
  background-position:right 15px center;
  padding:0 15px;
}

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);
  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:.764706rem;
  line-height:1em;
}

article .at.ngp-form .at-row.PostalCode.City.StateProvince 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  {
  flex:1 150px;
  min-width:150px;
}

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

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

article .at.ngp-form input::placeholder {opacity:.5;}
article .at.ngp-form hr {border-bottom:1px solid var(--main-grey);}


/* Checkboxes */

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

article .at.ngp-form .at-row .UpdateMyProfile b {font-weight:700;}
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-text-color);
  border-radius:0;
  height:24px;
  left:0;
  top:0;
  width:24px;
}

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

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-orange);
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA005/1/79456/images/themes/2024/check-mark.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:14px 14px;
  border-color:var(--main-orange);
  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:1rem;
  line-height:1.333333em;
  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 {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:1rem;
  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:1rem;
  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:1rem;
  line-height:24px;
}

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:700;
  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 0 0 35px;
}

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:none;
}

article .at.ngp-form .at-row.SmsLegalDisclaimer .at-markup.SmsLegalDisclaimer p a:focus,
article .at.ngp-form .at-row.SmsLegalDisclaimer .at-markup.SmsLegalDisclaimer p a:hover {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"] {
  -moz-appearance:none;
  -webkit-appearance:none;
  border:1px solid var(--main-text-color);
  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:var(--main-orange);
  border-color:var(--main-orange);
}

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;
  line-height:1.333333em;
  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-style:italic;
  line-height:1.333333em;
  margin:5px 10px 5px 14px;
  padding:0;
  width:100%;
}

article .at.ngp-form .form-item-selectedfrequency .radio-description-value-0 {
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA005/1/79456/images/themes/2024/orange-arrow.svg);
  background-repeat:no-repeat;
  background-size:24px 30px;
  padding:17px 0 5px 30px;
}

/* Form Control Buttons */

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

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

article .at.ngp-form.multistep-layout .at-form-submit .secure-processing-div,
article .at.ngp-form .at-form-submit .secure-processing-single-step-div  {
  float:unset;
  margin:20px 0 0;
  padding:0 10px;
  order:5;
  width:100%;
}

article .at.ngp-form.multistep-layout .at-form-submit .secure-processing-div label,
article .at.ngp-form .at-form-submit .secure-processing-single-step-div label {
  display:flex;
  float:unset;
  justify-content:flex-end;
  width:100%;
}

article .at.ngp-form .at-form-submit .step-prevNext {
  display:flex;
  flex-wrap:wrap;
  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-orange);
  border:0;
  border-radius:0;
  color:#fff;
  display:flex;
  float:none;
  font-size:1.333333rem;
  font-weight:700;
  height:auto;
  justify-content:center;
  letter-spacing:unset;
  line-height:1.2em;
  margin:0 10px;
  order:2;
  padding:16px 48px;
  text-align:center;
  text-transform:uppercase;
  transition:.2s ease-out;
  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:16px 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);
  color:var(--main-text-color);
}

article .at.ngp-form .at-form-submit .back-link.at-submit {order:1;}

article .at.ngp-form.multistep-layout .at-form-submit .secure-processing-div,
article .at.ngp-form .at-form-submit .secure-processing-single-step-div  {
  float:unset;
  margin:20px 0 0;
  padding:0 10px;
  order:5;
  width:100%;
}

article .at.ngp-form.multistep-layout .at-form-submit .secure-processing-div label,
article .at.ngp-form .at-form-submit .secure-processing-single-step-div label {
  display:flex;
  float:unset;
  justify-content:flex-end;
  width:100%;
}

/* 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.333333rem;
  font-weight:700;
  height:50px;
  justify-content:center;
  letter-spacing:.5px;
  line-height:1em;
  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;
  width:100% !important;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount.chosen-option {color:#fff;}

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-blue);
  border:0;
  border-radius:0;
  height:50px;
}

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

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;
  font-family:var(--secondary-font-family);
  font-size:1.333333rem;
  font-weight:700;
  height:50px;
  letter-spacing:.3px;
  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-weight:700;
}

article .at.ngp-form fieldset.ContributionInformation input:checked + input.edit-otheramount {
  background-color:var(--main-orange);
  border-color:var(--main-orange);
  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-family:var(--secondary-font-family);
  font-weight:700;
  height:50px;
  line-height:50px;
  padding:0 0 0 11px;
}

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 {
  color:red;
  display:block;
  font-size:.777778rem;
  font-weight:500;
  left:0;
  line-height:1.142857em;
  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-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:1rem;}

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;
  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.411765em;
  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-markup h2 {
  font-size:1.25rem;
  font-weight:700;
  margin:10px 0;
}

article .at.ngp-form fieldset.AdditionalInformation .at-markup p {line-height:1.25em;}

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 > label {
  font-weight:500;
  margin-top:10px;
}

article .at.ngp-form fieldset.AdditionalInformation label.at-area {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.ContributionInformation .gift-designation select,
article .at.ngp-form fieldset.ContributionInformation .other-designation input {margin-bottom:5px;}
article .at.ngp-form fieldset.ContributionInformation label.other-designation.hidden {display:none;}

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-lightest-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;
  width:100%;
}

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;}


/* Advocacy Stuff */

article .at.ngp-form section.logo-container + section.logo-container,
article .at.ngp-form .inline-elements + .inline-elements,
article .at.ngp-form .inline-elements + figure.progress-meter {display:none;} /* Advocacy Override */

article .at.ngp-form fieldset.at-fieldset.AdvocacyFields {padding:0 10px 20px}

article .at.ngp-form fieldset.AdvocacyFields .at-legend-with-submit {
  display:flex;
  flex-direction:column;
  padding:20px 0 10px 0;
  width:calc(100% - 20px);
}

article .at.ngp-form fieldset.AdvocacyFields .at-legend-with-submit .at-secondary-submit {
  margin:0 0 20px;
  order:0;
  width:auto;
}

article .at.ngp-form fieldset.AdvocacyFields .Subject0 .Subject {
  border-top:1px solid var(--main-grey);
  font-weight:700;
  margin-top:10px;
  padding-top:20px;  
}

article .at.ngp-form fieldset.AdvocacyFields .Subject0 .Subject:before {
  content:"Subject:";
  padding-right:5px;
}

article .at.ngp-form .at-targets {background-color:var(--main-lightest-grey);}
article .at.ngp-form .at-targets {padding:10px;}
article .at.ngp-form .at-targets figure {margin:10px;}
article .at.ngp-form .at-targets .at-target-image {border-radius:0;}

article .at.ngp-form fieldset.AdvocacyFields .Message0 textarea {
  background:var(--main-lightest-grey);
  padding:15px;
}


/* Impact Statements */

article .at.ngp-form fieldset.ContributionInformation .form-type-radios.form-item-selectamount {width:100%;}

article .at.ngp-form .explainers {
  padding:0 10px;
  width:100%;
}

article .at.ngp-form .explainers .explainer {
  background:var(--main-lightest-grey);
  border-top:2px solid var(--main-purple);
  border-bottom:2px solid var(--main-purple);
  color:var(--main-red);
  display:none;
  font-size:1rem;
  font-style:italic;
  font-weight:700;
  line-height:1.666667em;
  padding:24px 16px 24px 92px;
  position:relative;
  width:100%;
}

article .at.ngp-form .explainers .explainer.displayed {display:block;}

article .at.ngp-form .explainers .explainer.displayed:before {
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA005/1/79456/images/themes/2024/logo-mark.svg);
  background-repeat:no-repeat;
  background-size:60px;
  content:"";
  display:block;
  height:60px;
  left:16px;
  position:absolute;
  top:24px;
  width:60px;
}


/* eCard Stuff */

article .at.ngp-form .at-ecards .at-ecard {
  border:0;
  border-radius:0;
  display:block;
  height:unset;
  margin:0 0 20px;
  width:100% !important;
}

article .at.ngp-form .at-ecards .at-ecard .at-ecard-img {
  border:5px solid var(--main-lightest-grey);
  border-radius:0;
  height:auto;
  overflow:auto;
}

article .at.ngp-form .at-ecards .at-ecard.selected .at-ecard-img {border:5px solid var(--main-red);}

article .at.ngp-form .at-ecards .at-ecard-img img {
  left:unset;
  max-height:unset;
  position:relative;
  top:unset;
  transform:none;
  width:100%;
}

article .at.ngp-form .at-ecards .at-ecard input {display:none;}

article .at.ngp-form .at-ecards button.at-preview-ecard {
  font-size:1rem;
  margin:0 0 20px;
  min-height:48px;
  width:100%;
}


/* 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;}


/* Payment Method Buttons */

article .at.ngp-form .PaymentMethodSection .at-payment-method-buttons .at-btn-radio-wrapper label {
  align-items:center;
  display:flex;
  height:60px;
  justify-content:center;
}

article .at.ngp-form .PaymentMethodSection .at-payment-method-buttons .at-apple-pay-button-wrapper label {border:0;}


/* Error States */

article .at.ngp-form label small.error {
  color:red;
  font-size:.875rem;
  font-weight:500;
  line-height:1.285714em;
  margin-bottom:10px;
  padding:0;
}

article .at.ngp-form label.error select,
article .at.ngp-form label.error input:required::placeholder {color:var(--main-grey);}


/* Pages Content */

article .at.oa-page {padding:20px;}


/* Lightbox */

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

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

.lightbox-modal.at-modal .at-modal-inner header > div {
  color:var(--main-text-color);
  font-size:1.5rem;
  font-weight:700;
  line-height:1.125em;
  max-width:100%;
  padding:20px 35px;
  text-align:center;
}

.lightbox-modal.at-modal .at-lightbox-content-wrapper p {
  font-size:1rem;
  line-height:1.5em;
  margin:0 auto 15px;
  text-align:center;
}

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

.lightbox-modal.at-modal .at-modal-inner footer .at-footer-content {padding:10px 20px;}

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


/* Footer */

footer.theme-footer {
  background-color:var(--main-lightest-grey);
  color:var(--main-text-color);
  margin:0;
  padding:0;
  width:100%;
}

footer.theme-footer .footer-container {
  margin:0 auto;
  padding:20px 0 20px;
  position:relative;
  width:100%;
}

footer.theme-footer.footer-decoration .footer-container {padding-top:0;}

footer.theme-footer.footer-decoration .footer-container:before,
footer.theme-footer.footer-decoration .footer-container.expanded:after {
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA005/1/79456/images/themes/2024/unrolled-logo.svg);
  background-position:center;
  background-repeat:repeat-x;
  content:"";
  display:block;
  height:15px;
  margin:0 0 40px;
  padding:0;
  width:100%;
}

footer.theme-footer.footer-decoration .footer-container.expanded:before {margin-bottom:20px;}

footer.theme-footer.footer-decoration .footer-container.expanded:after {
  margin:30px 0 0;
  transform: rotate(180deg);
}

footer.theme-footer .footer-container.expanded + .footer-container {padding-top:40px;}
footer.theme-footer.footer-decoration .footer-container.expanded + .footer-container:before {display:none;}

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

footer.theme-footer figure.branding {margin-bottom:4px;}
footer.theme-footer figure.branding a {padding:20px;}

footer.theme-footer figure.branding img {
  height:100px;
  width:100px;
}

footer.theme-footer p {
  font-size:.888889rem;
  line-height:1.5em;
  margin:0 auto 16px;
  text-align:center;
}

footer.theme-footer p a {
  color:var(--main-blue);
  font-weight:700;
  text-decoration:underline;
}

footer.theme-footer p a:focus,
footer.theme-footer p a:hover {
  cursor:pointer;
  text-decoration:underline;
}

footer.theme-footer .ein .ein-number {pointer-events:none;}

footer.theme-footer .ein .ein-number > a {
  color:inherit;
  text-decoration:none;
}

footer.theme-footer p.copyright {
  font-size:.777778rem;
  line-height:1.428571em;
}


/* Expanded Footer */

footer.theme-footer .footer-container.expanded {
  background:var(--main-lighter-grey);
  background-position:center;
  background-size:cover;
  max-width:unset;
  padding-bottom:0;
}

footer.theme-footer h2.expanded-footer-title {
  color:var(--main-purple);
  font-family:var(--secondary-font-family);
  font-size:2rem;
  line-height:1.25em;
  margin:20px 0;
  text-align:center;
}

footer.theme-footer figure.icon-container {
  margin:0;
  padding:20px 0;
  text-align:center;
}

footer.theme-footer figure.icon-container a {text-decoration:none;}

footer.theme-footer figure.icon-container span {
  color:var(--main-red);
  display:block;
  font-size:2rem;
  margin:0 auto 20px;
}

footer.theme-footer figure.icon-container a figcaption p {
  color:var(--main-text-color);
  font-size:1rem;
  text-decoration:none;
}

footer.theme-footer figure.icon-container p.caption-title {
  color:var(--main-blue);
  font-size:1rem;
  font-weight:700;
  line-height:1.333333em;
  margin:0 0 4px;
  text-underline-offset:2px;
}

footer.theme-footer figure.icon-container a:hover p.caption-title,
footer.theme-footer figure.icon-container a:focus p.caption-title {text-decoration:underline 1.5px;}


/* Fonts */

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

article .at.ngp-form .at-form strong,
.lightbox-modal.at-modal strong {font-weight:700;}

article .at.ngp-form .at-form .glyphicons {font-family:var(--glyphicons-font-family);}


@media (min-width:360px) {
  
  header.theme-header section.header-image {height:250px;}
  
  /* Form Control Buttons */
  
  article .at.ngp-form .at-form-submit .at-submit,
  article .at.ngp-form .at-form-submit .step-prevNext .btn-at {padding:16px 15px;}
  
  
  /* eCard Stuff */
  
  article .at.ngp-form .at-ecards {
    display:flex;
    flex-wrap:wrap;
    margin:0 -5px;
  }

  article .at.ngp-form .at-ecards .at-ecard {
    margin:5px;
    width:calc(50% - 10px) !important;
  }

  article .at.ngp-form .at-ecards .at-ecard .at-ecard-img {
    border:5px solid var(--main-lightest-grey);
    height:auto;
    overflow:auto;
  }

  article .at.ngp-form .at-ecards button.at-preview-ecard {margin:20px 5px 20px;}

}

@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:16px 20px;}

}


@media (min-width:500px) {
 
  /* 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:16px 20px;}
  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc((100% / 3) - 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 {width:calc(50% - 20px) !important;}
  
  /* eCard Stuff */
  
  article .at.ngp-form .at-ecards .at-ecard {width:calc((100% / 3) - 10px) !important;}
  article .at.ngp-form .at-ecards button.at-preview-ecard {width:auto}
  
  /* 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:400px;}
  
}

@media (max-width:767px) {
 
  article .article-content .at-inner .logo-container,
  article .article-content .at-inner .inline-elements {display:none;}


  /* Read More Option */

  article .has-read-more .at.ngp-form header.HeaderHtml > *,
  article .has-read-more .at.ngp-form header.HeaderHtml.show-all span.show-full-body {display:none;}
  article .has-read-more .at.ngp-form header.HeaderHtml.show-all > *,
  article .has-read-more .at.ngp-form header.HeaderHtml > p:first-child,
  article .has-read-more .at.ngp-form header.HeaderHtml > span.show-full-body {display:block;}
  article .has-read-more .at.ngp-form header.HeaderHtml > span.show-full-body:nth-last-child(2) {display:none;} /* Advocacy double load */

  article .has-read-more .at.ngp-form header.HeaderHtml > span.show-full-body {
    color:var(--main-dark-green);
    font-weight:700;
  }
  
  .image-background footer.theme-footer .footer-container.expanded {border-top:1px solid var(--main-dark-green);}
  
}


@media (min-width:768px) {
  
  .logo-accent main {
    background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA005/1/79456/images/themes/2024/logo-mark-white.svg);
    background-position:center -100px;
    background-size:1000px;
    background-repeat:no-repeat;
  }
  
  .has-main-image 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;
  }
  
  header.theme-header .logo-container {display:none;}
  header.theme-header.logo .logo-container {display:block;}
  
  .no-main-image header.theme-header {border:0;}
  header.theme-header section.header-container {display:none;}
  
  main.theme-content figure.branding {justify-content:flex-start;}
  
  .image-inline .theme-header.logo,
  .image-none .theme-header.logo {background:none;}
  
  .image-inline .theme-header.logo figure.branding,
  .image-none .theme-header.logo figure.branding {
    justify-content:center;
    padding:56px 0 0;
  }
  
  main.theme-content figure.branding a {padding:24px 40px;}
  main.theme-content article figure.branding a {padding:0;}
  
  .image-inline .theme-header.logo figure.branding img,
  .image-none .theme-header.logo figure.branding img {
    height:109px;
    width:380px;
  }
  
  .image-inline[class*="background-"] .theme-header.logo figure.branding img.default,
  .image-none[class*="background-"] .theme-header.logo figure.branding img.default {display:none;}
  .image-inline[class*="background-"] .theme-header.logo figure.branding img.reverse,
  .image-none[class*="background-"] .theme-header.logo figure.branding img.reverse {display:block;}
  
  main article {
    background:none;
    display:flex;
    justify-content:center;
    margin:0 auto;
    max-width:1240px;
    padding:80px 40px;
    width:100%;
  }
  
  .image-background main article {padding-top:160px;}
    
  main article.two-columns {
    padding-left:20px;
    padding-right:20px;
  }
  
  main.form-left article {justify-content:flex-start;}
  main.form-right article {justify-content:flex-end;}
  
  .image-inline .theme-header.logo + article,
  .image-none .theme-header.logo + article {padding-top:40px}
  
  .logo-accent main article {padding:80px 40px;}
    
  main article section.article-content {
    background:#fff;
    max-width:840px;
    padding:0;
    position:relative;
    width:100%;
  }
  
  main article.two-columns section.article-content {max-width:1160px;}
  
  main article.two-columns section.article-content:before {
    background:var(--main-lighter-grey);
    content:"";
    height:100%;
    left:0;
    margin:0 auto;
    position:absolute;
    right:0;
    top:0;
    width:1px;
    z-index:10;
  }

  main.form-left article section.article-content,
  main.form-right article section.article-content {width:450px;}
  main.form-center article.two-columns section.article-content {max-width:1160px;}
  
  article .at.ngp-form section.at-inner {padding-top:0;}

  article .at.ngp-form div.inline-elements {padding:20px;}
  
  article .at.ngp-form figure.inline-image {
    line-height:0;
    margin:0;

    position:relative;
    width:100%;
  }
  
  article .at.ngp-form .inline-elements .logo-container + figure.inline-image {padding-top:20px;}
  
  article .at.ngp-form figure.inline-image img {
    height:auto;
    width:100%;
  }
  
  article .article-content > .logo-container {display:block;}
  
  article .at.ngp-form header.at-title {font-size:2.444444rem;}  
  .no-main-image article .at.ngp-form header.at-sr-only + header.HeaderHtml {padding-top:20px;}
  
  article.two-columns .at.ngp-form section.at-inner {
    align-items:start;
    display:grid;
    grid-template-columns:50% 50%;
    grid-auto-rows:minmax(min-content, max-content);
  }
    
  article.two-columns .at.ngp-form header.at-title,
  article.two-columns .at.ngp-form div.inline-elements,
  article.two-columns .at.ngp-form header.MeterHtml,
  article.two-columns .at.ngp-form header.HeaderHtml {grid-column:1 / 2;}
  
  article.two-columns .at.ngp-form div.inline-elements {grid-row:1 / 2;}
  article.two-columns .at.ngp-form header.at-title {grid-row:2 / 3;}
  article.two-columns .at.ngp-form div.inline-elements .inline-image:first-child,
  article.two-columns .at.ngp-form header.at-sr-only + header.MeterHtml {padding-top:20px;}
  article.two-columns .at.ngp-form header.MeterHtml,
  article.two-columns .at.ngp-form header.HeaderHtml {grid-row:3 / 4;}
  article.two-columns .at.ngp-form header.MeterHtml + header.HeaderHtml {grid-row:4 / 5;}
  article.two-columns .at.ngp-form header.HeaderHtml {padding-bottom:20px;}
  
  article.two-columns .at.ngp-form form {
    background:#fff;
    grid-column:2 / 3;
    grid-row:1 / 8;
    padding:20px 0 0;
  }
  
  article.two-columns section.has-read-more header.HeaderHtml ~ form {padding-top:20px}
  
  article .at.ngp-form .FastAction {padding:0 20px;}
  article .at.ngp-form .FastAction .fastAction {padding:10px 5px;}
  
  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 0 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;}
  
  article.two-columns .at.ngp-form .content.thankYou section.contributions {width:calc(50% - 30px);}
  
  footer.theme-footer {border-top:0;}

  /* Expanded Footer */

  footer.theme-footer h2.expanded-footer-title {
    margin:20px 0 40px;
    width:100%;
  }
  
  footer.theme-footer .expanded-footer-container {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    margin:0 auto;
    max-width:1200px;
    padding:0;
  }

  footer.theme-footer figure.icon-container {
    margin:0;
    max-width:400px;
    padding:0 20px;
    width:calc(100% / 3);
  }
  
  
  /* Footer */
  
  footer.theme-footer .validation-logo img {height:60px;}
  footer.theme-footer .validation-logo a {padding:16px;}
  
}


@media (min-width:1000px) {

  .logo-accent main {background-size:1200px;}
  .logo-accent main article {padding:160px 40px 80px;}
  
  
  main article section.article-content {padding:20px;}
  .image-background main:not(.form-center) article section.article-content {width:680px;}
  
  article.two-columns .at.ngp-form div.inline-elements,
  article.two-columns .at.ngp-form header.at-title,
  article.two-columns .at.ngp-form header.MeterHtml,
  article.two-columns .at.ngp-form header.HeaderHtml {padding-right:40px;}
  article.two-columns .at.ngp-form form {padding-left:20px;}
  
  article .at.ngp-form .at-row.Country.PostalCode.City.StateProvince label {
    flex:1 175px;
    min-width:175px;
  }
  
  article .at.ngp-form:not(.faux-multistep-layout) ol.at-steps li.at-step a,
  article .at.ngp-form:not(.faux-multistep-layout) ol.at-steps li.at-step b {flex-direction:row;}
  article .at.ngp-form:not(.faux-multistep-layout) ol.at-steps li.at-step a:before,
  article .at.ngp-form:not(.faux-multistep-layout) ol.at-steps li.at-step b:before {margin:0 10px 0 0;}
  article .at.ngp-form fieldset.ContributionInformation label.label-amount,
  article:not(.two-columns) .at.ngp-form fieldset.ContributionInformation label.label-amount.incrediblyLong,
  article:not(.two-columns) .at.ngp-form fieldset.ContributionInformation label.label-amount.veryLong,
  article:not(.two-columns) .at.ngp-form fieldset.ContributionInformation label.label-amount.tooLong {width:calc((100% / 3) - 20px) !important;}
  
  article.two-columns .at.ngp-form fieldset.ContributionInformation label.label-amount.incrediblyLong + label.label-amount.label-otheramount,
  article.two-columns .at.ngp-form fieldset.ContributionInformation label.label-amount.veryLong + label.label-amount.label-otheramount,
  article.two-columns .at.ngp-form fieldset.ContributionInformation label.label-amount.tooLong + label.label-amount.label-otheramount {width:calc(50% - 20px) !important;}
  
  article.two-columns .at.ngp-form .content.thankYou {padding:10px;}

}


@media (min-width:1200px) {
  
  .logo-accent main {background-size:1500px;}
  article.two-columns .at.ngp-form .visual-elements {padding:20px 20px 0;}

}