* {box-sizing:border-box;}

/* Body */

body {
  color:#373d3f;
  font-family:"Raleway", 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;
}

a {
  color:#ee3624;
  text-decoration:none;
}
  
a:hover {text-decoration:underline;}

/* Header */

header.theme-header {
  background:#ee3624;
  height:500px;
  width:100%;
}

header.theme-header figure {
  line-height:0;
  margin:0;
  width:100%;
  height:500px;
}

header.theme-header figure .header-image {
  background-position:50% 0%;
  background-size:cover;
  height:100%;
  padding:20px;
  position:relative;
  width:auto;
}

.header-image .logo-container {
  height:90px;
  margin:0 auto;
  max-width:700px;
  width:100%;
}

.header-image .logo-container img {
  background:rgba(255,255,255,1);
  height:90px;
  margin:0;
  padding:10px;
  width:270px;
}


/* Content */

main.main-section {
  background:#fff;
  display:flex;
  flex-direction:column;
  margin:0 auto;
  padding:0 20px;
}

main.main-section > figure.main-image {display:none;}

main.main-section section.form {
  background:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.1), 0 0px 6px rgba(0,0,0,0.1);
  margin:-200px auto 0;
  max-width:700px;
  padding:10px;
  position:relative;
  width:100%;
}

main.main-section section.form figure.main-image {margin:0 auto 20px;}



/* Form */

aside#recurring-values {display:none;}

section.form section.at-inner {
  display:flex;
  flex-direction:column;
}

section.form .at.ngp-form header.at-title {
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/TSM/TSMEA/1/74200/images/themes/images/uscpr-logo-2020.svg);
  background-repeat:no-repeat;
  background-position:50% 20px;
  background-size:270px 56px;
  color:#373d3f;
  font-family:Raleway, sans-serif;
  font-weight:700;
  font-size:1.5em;
  line-height:1.25em;
  margin:0 auto 20px;
  min-width:270px;
  padding:108px 10px 0;
}

body.cobranding section.form .at.ngp-form header.at-title {
  background:none;
  background-size:auto;
  padding-top:20px;
}

section.form .at.ngp-form header.at-markup {
  margin:0 auto 30px;
  padding:10px 10px 0;
}

section.form .at.ngp-form header.at-markup h2 {
  color:#373d3f;
  font-family:Raleway, sans-serif;
  font-weight:700;
  font-size:1.25em;
  line-height:1.25em;
  margin:0 auto 20px;
}

section.form .at.ngp-form .at-markup,
section.form .at.ngp-form fieldset.at-fieldset .at-row label, {font-family:"Raleway", sans-serif;}


section.form .at.ngp-form .at-markup p {
  margin:0 0 20px;
  padding:0;
}
section.form .at.ngp-form .at-markup > :last-child {margin-bottom:0;}

section.form .at.ngp-form fieldset.at-fieldset legend,
section.form .at.ngp-form .at-form-submit .at-submit {font-family:"Raleway", sans-serif;}

section.form .FastAction {
  border-bottom:2px solid #fff;
  margin:0 auto;
  padding:0 10px;
}

section.form .fastAction {
  background:#f1f3f5;
  color:#444;
  padding:15px 20px;
}

section.form .at.ngp-form .fastAction p {margin-bottom:0;}

section.form .fastAction span.fa-lead,
section.form .fastAction span.fa-lead a {color:#444;}
section.form .fastAction .profile-link {background-color:#fff;}


section.form .at.ngp-form fieldset.at-fieldset legend {
  color:#373d3f;
  font-family:Raleway, sans-serif;
  font-size:1.25em;
  font-weight:700;
  line-height:1em;
  margin:0;
  padding:20px 10px 10px;
  width:100%;
}

section.form fieldset.ContributionInformation legend {display:none;}

/* Advocacy Stuff */

body.AdvocacyForm section.at-inner header.at-title {order:1;}
body.AdvocacyForm section.at-inner form {order:2;}
body.AdvocacyForm section.at-inner header.HeaderHtml {order:3;}
body.AdvocacyForm section.at-inner footer.FooterHtml {order:4;}

/* these two lines deal with second-step Advocacy postRender issues */
body.AdvocacyForm section.at-inner figure.main-image {display:none;}
body.AdvocacyForm section.at-inner figure.main-image:first-of-type {display:block;}


/* Footer */

footer.theme-footer {padding:0 20px;}

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

.donate-theme footer.theme-footer .footer-container {
  background-image:url(https://nvlupin.blob.core.windows.net/images/van/TSM/TSMEA/1/74200/images/themes/images/logo-mark.svg);
  background-position:50% 30px;
  background-repeat:no-repeat;
  background-size:50px 50px;
  padding-top:100px;
}

footer.theme-footer p {
  color:#666;
  font-size:.75em;
  font-weight:400;
  line-height:1.5em;
  margin:0 0 20px;
}

footer.theme-footer p.other-ways {
  font-size:1em;
  font-weight:700;
}

footer.theme-footer p.logo-donate {
  display:flex;
  font-size:1em;
  font-weight:700;
  height:40px;
  justify-content:space-between;
  margin:0 auto 20px;
  width:280px;
}

footer.theme-footer p.logo-donate span.footer-logo {
  font-size:0;
  height:40px;
  width:190px;
}

footer.theme-footer p.logo-donate span.footer-logo.logo-ajp {width:40px;}
footer.theme-footer p.logo-donate span.footer-logo.logo-ajp img { width:100%;}

footer.theme-footer p.logo-donate span.donate-link {
  display:block;
  line-height:40px;
  width:70px;
}


@media (min-width:900px) {

  header.theme-header figure .header-image {background-position:50%;}

  .page-ngp-multistep .header-image .logo-container {max-width:850px;}
  
  .page-ngp-multistep main.main-section section.form,
  body.AdvocacyForm main.main-section section.form {
    max-width:100%;
    width:850px;
  }
  
  .page-ngp-multistep section.form section.at-inner,
  body.AdvocacyForm section.at-inner {
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:space-between;
  }
  
  .page-ngp-multistep section.form section.at-inner:before,
  .page-ngp-multistep section.form section.at-inner:after {display:none;}
  .page-ngp-multistep section.form header.at-title,
  body.AdvocacyForm section.at-inner header.at-title {width:100%;}
  
  .page-ngp-multistep section.form .at.ngp-form header.at-markup {
    margin:unset;
    width:300px;
  }
  
  .page-ngp-multistep section.form form {width:520px;}
  
  body.AdvocacyForm section.at-inner form {
    order:3;
    width:415px;
  }
  
  body.AdvocacyForm section.at-inner header.at-markup.HeaderHtml {
    order:2;
    padding-top:0;
    width:415px;
  }
  
  body.AdvocacyForm .at.ngp-form.faux-multistep-layout ol.at-steps {padding:9px 0;}
  body.AdvocacyForm .at.ngp-form.faux-multistep-layout ol.at-steps li.at-step {width:25%;}
  body.AdvocacyForm .at.ngp-form.faux-multistep-layout ol.at-steps li.at-step:nth-of-type(2) {width:32.5%;}
  body.AdvocacyForm .at.ngp-form.faux-multistep-layout ol.at-steps li.at-step:nth-of-type(3) {width:42.5%;}
  body.AdvocacyForm .at.ngp-form.faux-multistep-layout ol.at-steps li.at-step > :before {left:10px;}
  
  body.AdvocacyForm .at.ngp-form.faux-multistep-layout ol.at-steps li.at-step b {
    padding-right:0;
    padding-left:35px;
    text-align:left;
  }

}