* {box-sizing:border-box;}

/* Body */

body {
  background:#00274d;
  background-repeat:no-repeat;
  color:#333;
  font-family:"Open Sans", sans-serif;
  font-size:16px;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  font-weight:400;
  line-height:1.5em;
  margin:0;
  text-rendering:optimizelegibility;
}

body.background-color-grey {background:#ddd;}

body article a {color:#dc602f;}
body article a:hover {cursor:pointer;}


/* Main */

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

main header.theme-header {
  background:#00274d;
  margin:0;
  width:100%;
}

header.theme-header .logo-container {
  margin:0 auto;
  max-width:740px;
  padding:0;
  width:100%;
}

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

figure.branding a {padding:20px;}

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

body section.header-image {
  height:100%;
  width:100%;
}

body.image-theme-header section.header-image,
section.header-image figure.main-image {
  background-size:cover;
  background-position:50% 33%;
  margin:0;
}

body.has-main-image section.header-image figure.main-image {
  height:250px;
  width:100%;
}

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

.image-theme-header main article section.article-content {padding-top:5px;}

article figure.branding {display:none;}

article figure.main-image {
  display:none;
  line-height:0;
}

header.article-header figure.main-image {display:none;}

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

/* Form */

main section.at-inner {background:none;}
article .at.ngp-form figure.main-image {display:none;}

article .at.ngp-form header.at-title {
  color:#00274d;
  font-size:1.625em;
  font-weight:700;
  line-height:1.2em;
  margin:20px;
  padding:0;
  text-align:left;
  text-transform:uppercase;
}

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

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

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

article .at.ngp-form .at-markup a {
  color:#111;
  font-weight:700;
  text-decoration:underline;
}

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

article .at.ngp-form .content.thankYou h2 {margin:0 0 20px;}
article .at.ngp-form .thankYou .contributions p {margin:0 0 15px;}
article .at.ngp-form .thankYou button.btn-social {margin:0 15px 0 0;}


/* Progress Meter Stuff */

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

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 progress {
  appearance:none;
  background:#aaa;
  border:0;
  border-radius:0;
  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:#aaa;
  border:0;
  border-radius:0;
}
  
article .at.ngp-form figure.progress-meter progress::-moz-progress-bar {
  background-color:#00274d;
  border-radius:0;
}

article .at.ngp-form figure.progress-meter progress::-webkit-progress-value {
  background-color:#00274d;
  border-radius:0;
}

article .at.ngp-form figure.progress-meter p.progress-meter-details {
  color:#111;
  display:flex;
  font-size:1em;
  font-weight:500;
  justify-content:space-between;
  line-height:24px;
  margin:0 0 15px;
}

article .at.ngp-form figure.progress-meter progress[value="100"]::-moz-progress-bar {border-radius:5px;}
article .at.ngp-form figure.progress-meter progress[value="100"]::-webkit-progress-value {border-radius:5px;}

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

article p.attribution {
  color:#fff;
  font-size:15px;
  margin:30px auto;
  max-width:800px;
  padding:0 20px;
  text-align:center;
  width:100%;
}

body.background-color-grey article p.attribution {color:#333;}


/* FastAction */

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

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

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

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

article .at.ngp-form .FastAction p {
  color:#111;
  font-size:12px;
}

article .at.ngp-form .FastAction .profile-link {background:#fff;}

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


/* Form Steps */

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

article .at.ngp-form ol.at-steps li.at-step {
  margin:unset;
  padding:0;
}

article .at.ngp-form ol.at-steps li.at-step.active {border-bottom:2px solid #b5121b;}

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;
  color:#333;
  display:flex;
  flex-direction:column;
  font-size:.9375em;
  font-weight:400;
  letter-spacing:0;
  line-height:20px;
  justify-content: center;
  padding:15px 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:#777;
  border:0;
  font-size:14px;
  font-weight:700;
  height:24px;
  left:unset;
  line-height:24px;
  margin:0 0 5px;
  position:relative;
  right:unset;
  top:0;
  transform:none;
  width:24px;
}

article .at.ngp-form ol.at-steps li.at-step a span.step-title {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:20px !important;}
article .at.ngp-form fieldset.Interests {padding-top:10px;}

article .at.ngp-form legend.at-legend {
  color:#333;
  font-size:1.375em;
  font-weight:600;
  line-height:1em;
  padding:20px 0;
}

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

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

article .at.ngp-form .at-row label,
article .at.ngp-form fieldset.TicketInformation label {
  color:#333;
  font-size:.9375em;
  font-weight:400;
  line-height:20px;
  margin:0 10px;
}

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

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

article .at.ngp-form .at-row label input,
article .at.ngp-form .at-row 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 #999;
  border-radius:0;
  color:#111;
  font-family:"Open Sans", sans-serif;
  font-weight:600;
  font-size:1em;
  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 {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 {
  font-weight:700;
  padding-top:8px;
  text-transform:none;
}

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 {line-height:1em;}


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

article .at.ngp-form .at-markup.at-legal p {
  color:#303030;
  font-size:14px;
  margin:0 0 10px;
}

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


/* Toggle */

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

article .at.ngp-form .form-item-selectedfrequency .radios label {
  color:#333;
  display:block;
  font-size:.9375em;
  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 .radios label input[type="radio"] {
  -moz-appearance:none;
  -webkit-appearance:none;
  border:1px solid #999;
  border-radius:50%;
  content:"";
  display:block;
  height:24px;
  left:0;
  margin:0 0 7px 0;
  outline:none;
  position:absolute;
  width:24px;
}

article .at.ngp-form .form-item-selectedfrequency .radios label input[type="radio"]:checked {
  background-color:#b5121b;
  border:1px solid #b5121b;
}

article .at.ngp-form .form-item-selectedfrequency .radio-description {
  color:#111;
  display:block;
  font-size:.9375em;
  font-weight:400;
  line-height:20px;
  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/EA006/1/84651/images/themes/navy-arrow.svg);
  background-repeat:no-repeat;
  background-size:30px 35px;
  margin:10px 10px 0;
  padding:20px 0 0 35px;
}


/* Branch / Rank / Status */

article .at.ngp-form .service-branch-container small {display:none;}
article .at.ngp-form .service-branch-container .service-status,
article .at.ngp-form .service-branch-container .service-rank {display:none;}
article .at.ngp-form .service-branch-container.show-details .service-status {display:block;}


/* Checkboxes */

article .at.ngp-form label.at-check {margin:0;}
article .at.ngp-form fieldset.Interests label.at-check {margin:4px 0 12px;}
article .at.ngp-form .AdditionalInformation .at-row label.at-check {margin:4px 10px 12px;}

article .at.ngp-form .at-check.YesSignMeUpForUpdatesForBinder {
  margin:4px 10px 12px;
  position:relative;
}

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

article .at.ngp-form label.SmsSubscribeMobilePhone {padding:0 10px 10px}

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 {
  border:1px solid #999;
  border-radius:0;
  height:24px;
  left:0;
  top:0;
  width:24px;
}

article .at.ngp-form label.at-check .at-checkbox-title-container:before,
article .at.ngp-form .UpdateMyProfile 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 {
  background-color:#b5121b;
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/check-mark.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:16px 16px;
  border:1px solid #b5121b;
  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 {
  display:block;
  font-size:15px;
  line-height:24px;
  margin:0;
  padding-left:32px;
  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 {
  color:#111;
  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-check {
  line-height:24px;
  margin:5px 10px;
}

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

article .at.ngp-form fieldset.ContributionInformation .at-recurring {
  display:flex;
  flex-wrap:wrap;
  font-size:15px;
  line-height:24px;
  margin:0;
}

article .at.ngp-form .at-recurring label {line-height:24px;}

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

article .at.ngp-form .at-recurring label.IsRecurring span {
  color:#181b18;
  display:block;
  font-size:15px;
  line-height:24px;
}

article .at.ngp-form .at-recurring label select {
  border:1px solid #999;
  border-radius:0;
  color:#181b18;
  font-family:"Noto Serif", serif;
  font-size:15px;
  height:24px;
  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;
}


/* Form Control Buttons */

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

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

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 {
  align-items:center;
  background-color:#b5121b;
  border:0;
  border-radius:0;
  color:#fff;
  display:flex;
  float:none;
  font-size:22px;
  font-weight:700;
  height:50px;
  line-height:1em;
  margin:0 10px;
  order:2;
  padding:6px 30px;
  text-align:center;
  text-transform:uppercase;
  white-space:normal;
}

body.button-color-blue article .at.ngp-form .at-form-submit .at-submit,
body.button-color-blue article .at.ngp-form .at-form-submit .step-prevNext .btn-at {background-color:#00274d;}

article .at.ngp-form .at-form-submit .step-prevNext .btn-at {
  align-items:center;
  display:flex;
  justify-content:center;
}

article .at.ngp-form .at-form-submit .step-prevNext .prev .btn-at {background:#999;}

article .at.ngp-form .at-form-submit .back-link.at-submit {
  background-color:#ccc;
  order:1;
}


/* Contribution Buttons */

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

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

article .at.ngp-form fieldset.ContributionInformation label.label-amount {
  border-radius:2px;
  color:#fff;
  float:none;
  font-size:22px;
  font-weight:700;
  height:50px;
  letter-spacing:unset;
  line-height:24px;
  margin:10px;
  padding:13px 20px;
  text-shadow:unset;
  width:100% !important;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount.hidden {display:none;}

article .at.ngp-form fieldset.ContributionInformation .at-radios label.label-amount.recurring:after {
  content:"/mo";
  font-size:18px;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount input[name="SelectAmount"] {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:#00274d;
  border:0;
  border-radius:0;
  transition:all .25s ease-out;
}

article .at.ngp-form fieldset.ContributionInformation label.label-amount input:checked + a {background-color:#b5121b;}

article .at.ngp-form fieldset.ContributionInformation label.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 #00274d;
  border-radius:0;
  color:#00274d;
  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:#00274d;
  font-size:24px;
  font-weight:700;
}

article .at.ngp-form fieldset.ContributionInformation input:checked + input.edit-otheramount {
  background-color:#b5121b;
  border-color:#b5121b;
  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:#00274d;
  display:block;
  font-size:24px;
  height:50px;
  line-height:50px;
  padding:0 0 0 10px;
}

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 {
  color:#111;
  font-size:.9375em;
  line-height:24px;
  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-top:10px;}

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

article .at.ngp-form .form-item-inhonororinmemoryof .radios,
article .at.ngp-form fieldset.ContactInformation .radios,
article .at.ngp-form fieldset.AdditionalInformation .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 .form-item-inhonororinmemoryof .radios label,
article .at.ngp-form fieldset.ContactInformation .radios label,
article .at.ngp-form fieldset.AdditionalInformation .radios label {
  display:block;
  flex-wrap:wrap;
  font-weight:400;
  line-height:24px;
  margin:0 10px 10px 0;
  padding-left:34px;
}

article .at.ngp-form fieldset.AdditionalInformation .radios label {margin:8px 15px 8px 0;}

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

article .at.ngp-form .form-item-inhonororinmemoryof .radios label input[type="radio"],
article .at.ngp-form fieldset.ContactInformation .radios label input[type="radio"],
article .at.ngp-form fieldset.AdditionalInformation .radios label input[type="radio"] {
  -moz-appearance:none;
  -webkit-appearance:none;
  border:1px solid #999;
  border-radius:50%;
  content:"";
  display:block;
  height:24px;
  left:0;
  margin:0 10px 7px 0;
  outline:none;
  position:absolute;
  width:24px;
}

article .at.ngp-form .form-item-inhonororinmemoryof .radios label input[type="radio"]:checked,
article .at.ngp-form fieldset.ContactInformation .radios label input[type="radio"]:checked,
article .at.ngp-form fieldset.AdditionalInformation .radios label input[type="radio"]:checked {
  background-color:#b5121b;
  border:1px solid #b5121b;
}

article .at.ngp-form .form-item-inhonororinmemoryof .radios label label,
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.AdditionalInformation .radios label[title="Other"] label.at-text {
  margin:-5px 0;
  padding-left:10px;
  flex-grow:1;
}

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

article .at.ngp-form fieldset.RecipientInformation .at-markup.RecipientInfoHeaderHtml {
  font-size:.9375em;
  margin:10px;
}

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


/* Interests */

article .at.ngp-form .at-fields.interests-fields {margin:0;}
article .at.ngp-form .at-fields.interests-fields label.at-check {margin-bottom:10px;}
article .at.ngp-form footer.FooterHtml {display:none;}


/* Error States */

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

article .at.ngp-form .form-unit-radio small.error {padding:10px 10px 0;}
article .at.ngp-form .form-unit-radio.error small.error:before {content:"";}


/* Footer */

footer.theme-footer {
  background:#00274d;
  margin:0;
  padding:20px 0;
}

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

footer.theme-footer p {
  color:#fff;
  font-size:.875em;
  font-weight:500;
  margin:0 0 24px;
  text-align:center;
}

footer.theme-footer p.disclaimer {margin-top:10px;}

footer.theme-footer p.attribution {
  color:#fff;
  margin:20px 0 30px;
}

body.image-theme-header footer.theme-footer p.attribution {display:none;}

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

footer.theme-footer .validation-logos {
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}

footer.theme-footer .validation-logos figure {
  line-height:0;
  margin:0;
}

footer.theme-footer .validation-logos figure a {
  display:block;
  padding:15px;
}

footer.theme-footer .validation-logos figure img {height:70px;}
footer.theme-footer .validation-logos figure.short img {height:60px;}

/* Fonts */

article .at.ngp-form header.HeaderHtml,
article .at.ngp-form .FastAction,
article .at.ngp-form label.label-amount,
article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount,
article .at.ngp-form fieldset.ContributionInformation input.edit-otheramount::placeholder,
article .at.ngp-form h2.contribution-information-title,
article .at.ngp-form .toggle-container,
article .at.ngp-form .at-recurring label,
article .at.ngp-form label.at-check .at-checkbox-title-container,
article .at.ngp-form .at-check .at-checkbox-title,
article .at.ngp-form fieldset.RecipientInformation .at-recipient-info .at-title,
article .at.ngp-form .at-check .at-cover-costs-info,
article .at.ngp-form .at-markup,
article .at.ngp-form .at-row label,
article .at.ngp-form .content.thankYou,
article .at.ngp-form fieldset.TicketInformation,
article .at.ngp-form .AdvocacyFields,
article .at.ngp-form .AdvocacyFields legend input,
article .at.ngp-form ol.at-steps li.at-step span,
article .at.ngp-form small.error,
article .at.ngp-form ol.at-steps li.at-step a,
article .at.ngp-form ol.at-steps li.at-step b,
article .at.ngp-form .AdvocacyFields legend input,
article .at.ngp-form .at-form-submit .at-submit,
article .at.ngp-form .at-form-submit .step-prevNext .btn-at,
footer.theme-footer p {font-family:"Open Sans", sans-serif;}

article .at.ngp-form header.at-title {font-family:trajan-pro-3, serif;}


@media (min-width:400px) {

  figure.branding img {
    height:58px;
    width:300px;
  }
  
  body.has-main-image section.header-image figure.main-image {height:300px;}
  article .at.ngp-form fieldset.ContributionInformation .at-radios:before,
  article .at.ngp-form fieldset.ContributionInformation .at-radios:after {display:none;} 
  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc(50% - 20px) !important;}

}


@media (min-width:500px) {
  
  body.has-main-image section.header-image figure.main-image {height:350px;} 
  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;}

}


@media (min-width:768px) {
  
  main {
    background-attachment:fixed;
    background-position:50% 33%;
    background-repeat:no-repeat;
    background-size:cover;
  }
  
  body.image-theme-header header.theme-header {
    background:#00274d;
    background-position:50%;
    background-repeat:no-repeat;
    background-size:cover;
    height:598px;
  }
  
  body.image-theme-background.logo-in-form header.theme-header,
  body.image-theme-background header.theme-header section.header-image,
  body.image-theme-header section.header-image figure.main-image {display:none;}
  
  body.image-theme-header header.theme-header section.header-image {height:500px;}
  body.image-theme-header section.header-image-folded_flag {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/header-image-folded-flag.jpg);}
  body.image-theme-header section.header-image-morning_colors {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/header-image-morning-colors.jpg);}
  body.image-theme-header section.header-image-navy_coming_home {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/background-image-navy-coming-home.jpg);}
  body.image-theme-header section.header-image-norwegian_sea {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/header-image-norwegian-sea.jpg);}
  body.image-theme-header section.header-image-2021_adfd {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/header-image-2021-adfd.jpg);}
  body.image-theme-header section.header-image-disaster {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/header-image-disaster.jpg);}
  body.image-theme-header section.header-image-prepare_for_takeoff {background-image:url(https://nvlupin.blob.core.windows.net/images/van/EA/EA006/1/84651/images/themes/header-image-prepare-for-takeoff.jpg);}
  
  main article {
    background:none;
    width:700px;
  }
  
  body.image-theme-background main article {
    display:flex;
    justify-content:flex-start;
    margin:0 auto;
    width:700px;
  }

  body.image-theme-header main article {
    margin:-200px auto 40px;
    width:700px;
  }
  
  main article section.article-content {box-shadow:0 2px 4px 0 rgba(0,0,0,.5);}
  body.image-theme-header main article section.article-content {padding:10px 10px 30px;}
  
  body.image-theme-background main article section.article-content {
    background:rgba(255,255,255,.9);
    margin:40px 0;
    padding-bottom:20px;
    width:100%;
  }
  
  body.image-theme-background.has-main-image main article section.article-content {
    margin:70px 0 100px;
    width:450px;
  }

  body.logo-in-form main article figure.branding {
    display:flex;
    justify-content:flex-start;
    margin:0;
  }
  
  body.image-theme-header main article figure.branding {justify-content:center;}
  
  body.image-theme-header article .at.ngp-form figure.main-image {
    display:block;
    margin:20px;
  }
  
  body.logo-in-form article .at.ngp-form header.at-title {margin-top:0;}
  
  article .at.ngp-form .FastAction {margin:0 20px;}
  
  article .at.ngp-form .FastAction .fastAction {
    background:none;
    padding:0;
  }
  
  article .at.ngp-form ol.at-steps {margin:20px 20px 0;}
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step a,
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step b {flex-direction:column;}
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step a:before,
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step b:before {margin:0 0 5px;}

  article .at.ngp-form.multistep-layout header.HeaderHtml,
  article .at.ngp-form.multistep-layout form {
    float:none;
    width:100%;
  }
  
  /* Branch / Rank / Status */

  article .at.ngp-form .service-branch-container {display:flex;}

  article .at.ngp-form .service-branch-container > label[class^="at-"] {
    flex:0 auto;
    min-width:unset;
  }

  article .at.ngp-form .service-branch-container .service-branch {width:100%;}
  article .at.ngp-form .service-branch-container.show-details .service-branch,
  article .at.ngp-form .service-branch-container.show-details .service-status {width:calc(50% - 20px);}
  article .at.ngp-form .service-branch-container.show-details .service-rank-options {width:100%;}
  
  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc(50% - 20px) !important;}
  article .at.ngp-form .at-form-submit .step-prevNext {justify-content:space-between;}
  article .at.ngp-form .at-form-submit {justify-content:flex-end;}
  
  body.image-theme-header article .at.ngp-form .at-row.Prefix.Suffix label {
    flex-basis:80px;
    min-width:80px; 
  }
  
  body.image-theme-header article .at.ngp-form .at-row.Prefix.Suffix label.Prefix,
  body.image-theme-header article .at.ngp-form .at-row.Prefix.Suffix label.Suffix {flex:0 110px;}
  
  footer.theme-footer {border:0;}
  
  footer.theme-footer p span.divider {
    display:inline;
    font-size:1em;
    line-height:1.5em;
    padding:0 5px;
  }
  
}


@media (min-width:960px) {

  body.image-theme-background header.theme-header .logo-container {max-width:940px;}
  
  body.image-theme-background main article {
    background:none;
    display:flex;
    justify-content:flex-start;
    margin:0 auto;
  } 
  
  body.image-theme-background.has-main-image article {width:900px;} 
  body.image-theme-background main article section.article-content {padding:10px 10px 30px;}
  body.image-theme-background.has-main-image main article section.article-content {width:525px;}

  body.image-theme-header.columns-two main article {width:900px;}
  
  body.image-theme-header.columns-two main article figure.branding {
    justify-content:flex-start;
    padding:0 0 10px;
  }
    
  body.image-theme-header.columns-two .at.ngp-form section.at-inner {
    display:grid;
    grid-template-columns:400px 480px;
    padding-top:20px;
  }
  
  body.image-theme-header.columns-two .at.ngp-form figure.main-image,
  body.image-theme-header.columns-two .at.ngp-form header.at-title,
  body.image-theme-header.columns-two .at.ngp-form header.at-markup,
  body.image-theme-header.columns-two .at.ngp-form header.MeterHtml {
    grid-column:1 / 2;
    padding-right:10px; 
  }
  
  body.image-theme-header.columns-two .at.ngp-form figure.main-image {
    grid-row:1 / 2;
    margin:0 0 20px 20px;
  }

  body.image-theme-header.columns-two .at.ngp-form header.at-title {
    grid-row:2 / 3;
    margin:0 0 20px 20px;
  }
  
  body.image-theme-header.columns-two .at.ngp-form header.MeterHtml {grid-row:3 / 4;}
  
  body.image-theme-header.columns-two .at.ngp-form header.HeaderHtml {
    grid-row:4 / 5;
    padding-bottom:0;
  }
  
  body.image-theme-header.columns-two .at.ngp-form form {
    grid-column:2 / 3;
    grid-row:1 / 7;
  }
  
  article .at.ngp-form ol.at-steps li.at-step a,
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step a,
  article .at.ngp-form ol.at-steps li.at-step b,
  body.image-theme-background 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,
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step a:before,
  article .at.ngp-form ol.at-steps li.at-step b:before,
  body.image-theme-background article .at.ngp-form ol.at-steps li.at-step b:before {margin:0 10px 0 0;}
  
  body.image-theme-header.columns-two article .at.ngp-form ol.at-steps li.at-step b {flex-direction:column;}
  body.image-theme-header.columns-two article .at.ngp-form ol.at-steps li.at-step b:before {margin:0 0 5px;}
  
  
  /* Branch / Rank / Status */

  article .at.ngp-form .service-branch-container.show-details .service-branch {width:130px;}
  article .at.ngp-form .service-branch-container.show-details .service-status {width:100px}
  article .at.ngp-form .service-branch-container.show-details .service-rank-options {width:calc(100% - 290px);}

  article .at.ngp-form fieldset.ContributionInformation label.label-amount {width:calc((100% / 3) - 20px) !important;}
  
  article .at.ngp-form fieldset.AdvocacyFields {
    border:1px solid #ddd;
    margin:0 20px;
  }
  
  body.image-theme-header.columns-two article .at.ngp-form .at-row.Prefix.Suffix label {flex-basis:150px;}  

}

@media (min-width:1200px) {

  body.image-theme-background header.theme-header .logo-container {max-width:1140px;}
  body.image-theme-background.has-main-image main article,
  body.image-theme-header.columns-two main article {width:1100px;}
  body.image-theme-header.columns-two main article section.article-content {padding:10px 20px 40px;}

  body.image-theme-background main article section.article-content {padding:20px 20px 40px;}
  body.image-theme-background.has-main-image main article section.article-content {width:650px;}
  
  body.image-theme-header.columns-two .at.ngp-form section.at-inner {
    grid-template-columns:500px 560px;
    padding-top:30px;
  }
  
  body.image-theme-header.columns-two .at.ngp-form figure.main-image,
  body.image-theme-header.columns-two .at.ngp-form header.at-markup,
  body.image-theme-header.columns-two .at.ngp-form header.MeterHtml,
  body.image-theme-header.columns-two .at.ngp-form header.HeaderHtml {padding-right:20px;}
  
  
  /* Branch / Rank / Status */
  
  article .at.ngp-form .service-branch-container.show-details .service-branch {width:calc(30% - 20px);}
  article .at.ngp-form .service-branch-container.show-details .service-status {width:calc(20% - 20px);}
  article .at.ngp-form .service-branch-container.show-details .service-rank-options {width:calc(50% - 20px);}
    
  
  body.image-theme-header.columns-two article .at.ngp-form .at-row.Prefix.Suffix label {flex-basis:120px;}
  body.image-theme-header.columns-two article .at.ngp-form .at-row.Prefix.Suffix label.Prefix,
  body.image-theme-header.columns-two article .at.ngp-form .at-row.Prefix.Suffix label.Suffix {flex:0 110px;}
  
  
  
  
  body.image-theme-background article .at.ngp-form .at-row.Prefix label.FirstName,
  body.image-theme-background article .at.ngp-form .at-row.Prefix label.LastName {
    flex:0 200px;
    min-width:100px;
  }
  
  body.image-theme-background article .at.ngp-form .at-row.Prefix.Suffix label.FirstName,
  body.image-theme-background article .at.ngp-form .at-row.Prefix.Suffix label.LastName {flex:0 145px;}

}