* {box-sizing:border-box;}

:root {
  --main-font-family:Mulish, san-serif;
  --main-text-color:#173529;
  --main-pacoima-green:#327559;
  --main-pumpkin:#d3873c;
  --main-cucumber:#6a9f89;
  --main-grey:#666;
  --main-light-grey:#999;
  --main-lighter-grey:#ccc;
  --main-lightest-grey:#f6f6f6;
}

html {font-size:16px;}

/* Body */

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

main {
  background:var(--main-pacoima-green);
  margin:0 auto;
  width:100%;
}


/* Header */

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


/* Branding */

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

figure.branding a {padding:20px;}

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

/* Article */

main article {padding:0;}

main article figure.main-image {
  line-height:0;
  margin:0 auto;
  max-width:768px;
  width:100%;
}

main article figure.main-image img {
  height:auto;
  width:100%;
}

main article section.article-content {
  background:#fff;
  box-shadow:0 4px 4px 0 rgba(0,0,0,.5);
  padding:0 0 40px;
  width:100%;
}

main article figure.branding {display:none;}


/* Pages Styles */

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

main article .at.oa-page h1,
main article .at.oa-page h2 {
  font-weight:900;
  line-height:1.25em;
  margin:0 0 30px;
}

main article .at.oa-page h1 {
  color:var(--main-pacoima-green);
  font-size:2rem;
}

main article .at.oa-page h2 {
  font-size:1.5rem;
  margin:20px 0;
}

main article .at.oa-page a {
  color:var(--main-pacoima-green);
  font-weight:700;
  text-decoration:underline;
}


/* 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 {
  color:var(--main-pacoima-green);
  font-weight:700;
  text-decoration:underline;
}

article .at.ngp-form .FastAction p {
  align-items:center;
  display:flex;
  font-size:.8125rem;
  justify-content:space-between;
  line-height:1.15385em !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:var(--main-text-color);
  font-size:2rem;
  font-weight:700;
  line-height:1.25em;
  margin:0 0 20px;
  padding:20px 20px 0;
  text-align:left;
}

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

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

article .at.ngp-form .at-markup p,
article .at.ngp-form .content.thankYou p {
  font-size:1rem;
  line-height:1.5em;
  margin:0 0 20px;
}

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

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

article .at.ngp-form .at-markup a,
article .at.ngp-form .content.thankYou a {
  color:var(--main-pacoima-green);
  font-weight:700;
  text-decoration:none;
}

article .at.ngp-form .at-markup a,
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:10px 0;
  padding:0;
}

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

article .at.ngp-form ol.at-steps li.at-step.active {
  background:none;
  border-bottom:2.5px solid var(--main-pacoima-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:.9375rem;
  font-weight:700;
  letter-spacing:0;
  line-height:20px;
  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.5em;
  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-text-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 legend.at-legend {
  color:var(--main-pacoima-green);
  display:flex;
  font-size:1.5rem;
  font-weight:700;
  line-height:1,5em;
  margin:0 10px;
  padding:15px 0;
}

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 {
  font-size:1rem;
  font-weight:400;
  line-height:1.25em;
  margin:0 10px;
}

article .at.ngp-form .AdditionalInformation .at-row label {font-weight:700;}
article .at.ngp-form .AdditionalInformation .at-row .radios label {font-weight:400;}

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

article .at.ngp-form fieldset.TicketInformation label select {font-weight:600;}

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-lighter-grey);
  border-radius:2px;
  font-weight:700;
  font-size:1rem;
  height:40px;
  line-height:40px;
  margin:5px 0 15px;
  padding:7px 10px;
}

article .at.ngp-form .at-row label .intl-tel-input,
article .at.ngp-form .at-row label .select2-container {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-row label a.at-whatsthis {
  font-size:12px;
  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,
article .at.ngp-form .at-row.EmailAddress.PostalCode 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-pacoima-green);
  border-radius:2px;
  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-pacoima-green);
  border-color:var(--main-pacoima-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-pacoima-green);
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA007/1/88938/images/themes/images/check-mark.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:16px 16px;
  border:1px solid var(--main-pacoima-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:1rem;
  line-height:1.5em;
  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:1.5em;
}

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:15px;
  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:15px;
  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:15px;
  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: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;
}

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

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

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-pacoima-green);
  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-pacoima-green) 35%, var(--main-pacoima-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 {
  display:block;
  font-size:16px;
  font-weight:700;
  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 {
  display:block;
  font-size:16px;
  font-weight:700;
  line-height:24px;
  margin:10px 10px 0;
  padding:0;
  width:100%;
}


/* 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:20px 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-pacoima-green);
  border:0;
  border-radius:2px;
  color:#fff;
  display:flex;
  float:none;
  font-size:1.25rem;
  font-weight:700;
  justify-content:center;
  line-height:1.5em;
  margin:0 10px;
  min-height:50px;
  order:2;
  padding:10px 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:10px 20px;
}

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 {
  border-radius:0;
  color:#fff;
  float:none;
  font-size:1.5rem;
  font-weight:700;
  height:50px;
  letter-spacing:unset;
  line-height:30px;
  margin:10px;
  padding:10px 20px;
  text-shadow:unset;
  width:calc(50% - 20px) !important;
}

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

article .at.ngp-form fieldset.ContributionInformation label.label-amount input:checked + a {background-color:var(--main-pacoima-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 .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-pacoima-green);
  border-radius:0;
  color:#fff;
  font-size:24px;
  font-weight:700;
  height:50px;
  letter-spacing:unset;
  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-pacoima-green);
  font-size:24px;
  font-weight:700;
}

article .at.ngp-form fieldset.ContributionInformation input:checked + input.edit-otheramount {
  background-color:var(--main-pacoima-green);
  border-color:var(--main-pacoima-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-pacoima-green);
  display:block;
  font-size:24px;
  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;
  line-height:18px;
  margin:0;
  padding:5px 0 0;
}


/* 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: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;
  font-weight:400;
  line-height:1.5em;
  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:.875rem;
  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:700;
  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 .at-ecards .at-ecard {
  border-color:var(--main-light-grey);
  display:flex;
  flex-wrap:wrap;
  float:left;
  height:140px;
  justify-content:center;
  margin-top:10px;
  padding:0 0 10px;
}

article .at.ngp-form .at-ecards .at-ecard.selected {border-color:var(--main-pacoima-green);}
article .at.ngp-form .at-ecards .at-ecard .at-ecard-img {margin-bottom:5px;}
article .at.ngp-form .at-ecards .at-ecard input {position:relative;}

article .at.ngp-form .at-ecards button.at-preview-ecard {
  clear:left;
  font-size:16px;
  height:40px;
  line-height:20px;
  margin:20px 0;
  min-height:unset;
  padding:10px 20px;
}

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

article .at.ngp-form fieldset.TicketInformation table.at-table th {
  font-size:16px;
  font-weight:700;
}

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


/* Advocacy Styles */

article .at.ngp-form.faux-multistep-layout ol.at-steps li.at-step {width:auto;}
article .at.ngp-form fieldset.AdvocacyFields {border:0;}
article .at.ngp-form fieldset.AdvocacyFields legend.at-legend {padding:0;}

article .at.ngp-form fieldset.AdvocacyFields legend.at-legend-with-submit {
  display:flex;
  flex-direction:column-reverse;
  font-size:20px;
  margin:0;
  padding:20px 10px;
  width:100%;
}

article .at.ngp-form fieldset.AdvocacyFields legend:before {display:none;}

article .at.ngp-form legend.at-legend-with-submit input {
  float:none;
  margin:0 0 20px;
  width:100%;
}

article .at.ngp-form fieldset.AdvocacyFields .at-fields {
  background:#f1f3f5;
  margin:10px -10px;
  padding:10px;
}

article .at.ngp-form fieldset.AdvocacyFields .Subject0 .Subject {
  color:var(--main-pacoima-green);
  font-size:22px;
  font-weight:700;
  margin:20px 0 0;
}

article .at.ngp-form .Targets0 .at-targets,
article .at.ngp-form .Targets .at-targets {
  background:none;
  margin-bottom:10px !important;
  padding:0;
}

article .at.ngp-form .at-targets .at-targets-have-images figure {margin:10px 0;}
article .at.ngp-form .at-targets figure b {font-weight:700;}
article .at.ngp-form .AdvocacyFields .at-row.Outro0 {margin:0 0 20px;}



/* 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-pacoima-green);
  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-pacoima-green);
  font-weight:700;
}


/* Footer */

footer.theme-footer {
  margin:0;
  width:100%;
}

footer.theme-footer .footer-container {
  margin:0 auto;
  max-width:740px;
  padding:20px;
  text-align:center;
  width:100%;
}

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

footer.theme-footer p.share-icons {
  display:flex;
  justify-content:center;
  margin:20px 0 30px;
  width:100%;
}

footer.theme-footer p.share-icons span {
  border-radius:2px;
  background-color:none
  display:block;
  margin:0 7px;
}

footer.theme-footer p.share-icons span a,
footer.theme-footer p.share-icons span a::before {
  display:block;
  height:32px;
  width:32px;
}

footer.theme-footer p.share-icons span a {
  color:#fff;
  font-size:24px;
  line-height:32px;
  overflow:hidden;
  text-align:center;
  text-decoration:none;
}

footer.theme-footer p.share-icons span a::before {font-family:"Font Awesome 5 Brands";}
footer.theme-footer p.share-icons span a:hover {text-decoration:none;}

footer.theme-footer p.disclaimer {
  border:1.5px solid #fff;
  margin:0 auto 30px;
  max-width:300px;
  padding:15px 20px;
}

footer.theme-footer p {
  color:#fff;
  font-size:1rem;
  line-height:1.5em;
  margin:0 auto 20px;
  text-align:center;
}

footer.theme-footer p a,
footer.theme-footer p strong {font-weight:700;}

footer.theme-footer p a {
  color:#fff;
  text-decoration:none;
}

footer.theme-footer p a:hover {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 */

  header.theme-header figure.main-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:10px 30px;}

}


@media (min-width:500px) {
  
  
  /* Header */

  header.theme-header figure.main-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;}
  
  
  /* 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:768px) {
  
  
  /* Header */

  header.theme-header figure.branding a {padding:40px 20px;}
  .has-main-image header.theme-header figure.branding {display:none;}
  header.theme-header figure.main-image {height:500px;}
  
  main article {
    background:none;
    margin:0 auto;
    padding:0 0 80px;
    width:700px;
  }
  
  .has-main-image main article {margin-top:-150px;}
    
  main article section.article-content {
    background:rgba(255,255,255,.95);
    box-shadow:0 2px 4px 0 rgba(0,0,0,.5);
    padding:10px 10px 20px;
    width:100%;
  }
  
  .has-main-image  main article section.article-content {
    background:#fff;
    border-top:10px solid var(--main-pacoima-green);
  }
  
  .has-main-image main article figure.branding {display:flex;}
  
  article .at.ngp-form .FastAction .fastAction {
    background:none;
    padding:0 10px;
  }
  
  article .at.ngp-form ol.at-steps {margin:10px 20px;}

  article .at.ngp-form.multistep-layout header.HeaderHtml,
  article .at.ngp-form.multistep-layout form {
    float:none;
    width:unset;
  }
  
  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) {
  
  article .at.ngp-form .at-row.Country.PostalCode.City.StateProvince label {
    flex:1 175px;
    min-width:175px;
  }

}