* {box-sizing:border-box;}

/* Body */

body {
  background:#5E245A;
  color:#222;font-family: sofia-pro-soft, sans-serif;

  font-weight:normal;
  font-size:18px;
  font-style:normal;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  font-weight:400;
  line-height:1.5em;
  margin:0;
  text-rendering:optimizelegibility;
}

.content.ngp-content {padding:10px;}


/* Header Stuff */

header.form-header {padding:20px 0 30px;}

header a.logo-container {
  display:block;
  line-height:0;
  margin:0 auto;
  max-width:300px;
  padding:10px;
  
  width:auto;
}

header a.logo-container img {line-height:0;}


/* Content Stuff */
h1,h2,h3,h4{font-family: sofia-pro, sans-serif;
font-weight: 700;
font-style: normal;}

main.main {padding:0 10px;}

main.main .container {
  background-color:#fff;
  border-radius:4px;
  margin:0 auto;
  max-width:700px;
  padding:20px 0 0;
  width:100%;
}

body.wide main.main .container {max-width:900px;}

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

.at.ngp-form section.at-inner {
  background:none;
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
  justify-content:space-between;
}

.at.ngp-form header.at-title {
  font-size:2em;
  font-weight:700;
  line-height:1em;
font-family: sofia-pro, sans-serif;
font-style: normal;
  width:100%;
}

main.main .FastAction .fastAction {padding:0 20px;font-family: sofia-pro-soft, sans-serif;}

.at.ngp-form fieldset.at-fieldset legend {
  font-size:1.5em;
  font-weight:700;
  line-height:1em;
  width:100%;
	font-family: sofia-pro, sans-serif;
font-weight: 100;
font-style: normal;
}

.at.ngp-form fieldset.at-fieldset.ContactInformation legend {display:none;}

main.main .at.ngp-form input,
main.main .at.ngp-form select,
main.main .at.ngp-form textarea {border-radius:0;}

/* Radio buttons and check boxes */

.at.ngp-form .AdditionalInformation .form-unit-radio > label,
.at.ngp-form .AdditionalInformation label.checkbox-list-label {
  font-size:16px;
font-family: sofia-pro-soft, sans-serif;
font-weight: 400;
font-style: normal;
	
}

.at.ngp-form .AdditionalInformation .radios {padding:10px 0;}

.at.ngp-form .AdditionalInformation .radios > label {
  display:flex;
  font-size:16px;
  line-height:24px;
  margin:0 0 10px;
  padding:5px 0 5px 36px;
	font-family: sofia-pro, sans-serif;
font-weight: 400;
font-style: normal;
}

.at.ngp-form .AdditionalInformation .radios > label input[type="radio"] {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  border-radius:24px;
  cursor:pointer;
  display:block;
  height:24px;
  left:0;
  margin:0 10px 0 0;
  outline:none;
  position:absolute;
  width:24px;
}

.at.ngp-form .AdditionalInformation label.checkbox-list-label {margin-bottom:5px;font-family: sofia-pro-soft, sans-serif;}

.at.ngp-form label.at-check,
.at.ngp-form .UpdateMyProfile label {
  display:flex;
  font-size:16px;
  line-height:24px;
	font-family: sofia-pro, sans-serif;
font-weight: 400;
font-style: normal;
  margin-bottom:5px;
  padding:5px 0;
}

.at.ngp-form input[type="checkbox"] + span,
.at.ngp-form input[type="checkbox"] + span:before,
.at.ngp-form input[type="checkbox"] + span:after {
  display:block;
  line-height:24px;
  transition:none;
}

.at.ngp-form input[type="checkbox"] + span {
  margin:0;
  padding-left:32px;
}

.at.ngp-form fieldset.ContactInformation input[type="checkbox"] + span {font-size:12px;font-family: sofia-pro-soft, sans-serif;}

.at.ngp-form input[type="checkbox"] + span:before,
.at.ngp-form input[type="checkbox"] + span:after {
  height:24px;
  left:0;
  top:0;
  width:24px;
}

.at.ngp-form input[type="checkbox"] + span:before,
.at.ngp-form input[type="checkbox"]:hover + span:before {border-radius:0;}

.at.ngp-form input[type="checkbox"] + span:after {
  font-size:18px;
  text-align:center;
}

/* fix for ios check mark color issue! */
.at.ngp-form input[type="checkbox"]:checked + span:after {
	content:"\2714\fe0e";
	color:#fff;
}



/* Buttons */

.at.ngp-form .at-form-submit {
  display:flex;
  justify-content:center;
  margin-bottom:5px;
  padding:20px;
}

.at.ngp-form .at-form-submit .at-submit {
  border-radius:4px;
  float:none;
  font-size:1.5em;
  font-weight:700;
  margin:unset;
  padding:10px 30px;
  transition: all 100ms ease-in-out;
  box-shadow:0px 4px 0px 0px #6D128C;
	font-family: sofia-pro-soft, sans-serif;
}

.at.ngp-form .at-form-submit .at-submit:hover {box-shadow:0px 3px 0px 0px rgba(115,8,3,.8);}

.at.ngp-form footer.at-markup.FooterHtml {
	margin:0;
	padding:0;
	width:100%;
	font-family: sofia-pro-soft, sans-serif;
}




footer.form-footer {
  padding:20px 10px;
  text-align:center;
	font-family: sofia-pro-soft, sans-serif;
}

footer p.paid-for {
  border:3px solid #fff;
  color:#fff;
  display:inline-block;
  font-size:.75em;
  padding:10px 20px;
  text-align:center;
  text-transform:uppercase;
	font-family: sofia-pro-soft, sans-serif;
}


@media (min-width:768px) {

	body.wide .at.ngp-form section.at-inner {flex-direction:row;}
  body.wide .at.ngp-form header.at-markup,
  body.wide .at.ngp-form form {width:calc(50% - 10px);}
  body.wide .at.ngp-form header.at-markup {padding-right:0;}

  footer.form-footer {padding-top:50px;}

}

/* Body Font Override */

.HeaderHtml, .FooterHtml, .MeterHtml {font-family: Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif"; font-size: 18px;}



/* Custom Fonts */

.at.ngp-form header.at-title,
.at.ngp-form fieldset.at-fieldset legend,
.at.ngp-form .at-form-submit .at-submit {font-family: sofia-pro, sans-serif;
font-weight: 700;
font-style: normal;}


/* Colors */

.at.ngp-form input[type="checkbox"] + span:before,
.at.ngp-form input[type="checkbox"]:hover + span:before,
.at.ngp-form .AdditionalInformation .radios > label input[type="radio"] {border:2px solid #9F3C97;}

.at.ngp-form input[type="checkbox"] + span:after,
.at.ngp-form .AdditionalInformation .radios > label input[type="radio"]:checked,
.at.ngp-form .at-form-submit .at-submit:hover {background-color:#9F3C97;}

.at.ngp-form .at-form-submit .at-submit {background-color:#9F3C97;}