body { margin:0;padding:0;background:#fff;color:#1d252d;
}
a {color:#16315A;font-weight:bold;}
.main_content a {border-bottom:1px solid #02A84F;}
.main_content a:hover {border-bottom:none;text-decoration:none;}

a:hover {color:#02A84F;}
.mobile {display:none;}
.print_header {display:none;}
#wrapper {margin:0 auto;
	max-width:960px;
	width:100%;
	padding:0 20px;
}
@keyframes fadeInUp {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}
@keyframes fadeInRight {
  0% {
    transform: translateX(100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0%);
    opacity: 1;
  }
}

.fadeInRight-animation {
  animation: 2.5s fadeInRight;
}
.fadeInUp-animation {
  animation: 2.5s fadeInUp;
}
.fadeInUp-animation-slower {
  animation: 3.5s fadeInUp;
}
.fade-in-section {
  opacity: 0;
  transform: translateY(20vh);
  visibility: hidden;
  transition: opacity 0.6s ease-out, transform 1.2s ease-out;
  will-change: opacity, visibility;
}
.fade-in-section.is-visible {
  opacity: 1;
  transform: none;
  visibility: visible;
}
.fadein {
    opacity:0;
}
.alert {background:#02A84F;float:left;width:100%;}
nav:after, form:after, .petition_content {
	content:"";
	display:table;
	clear:both;
}
a.language {
    font-size: 14px;
    text-transform: uppercase;
    position: absolute;
    top: 5px;
    right: 5px;}
	.header_title {padding:5px 0px 20px;}
.content_area {float:left;width:100%;}
.header {padding:10px 0px;}
.logo {max-width:200px;width:20%;margin:10px auto;}
.logo img {max-width:100%;}
.footer {padding:30px 0px;font-size:13px;line-height:23px;
color:#333f48;float:left;width:100%;text-align:center;
}
.footer .social {margin:15px 0px;}
.footer span {display:block;margin:5px 0px;}
.footer .disclaimer {border:1px solid #333f48;padding:5px 5%;max-width:75%;width:max-content;margin:30px auto;}
.footer svg {height:32px;width:32px;
    fill: #16315A;
    margin: 2px;
}
.home-social svg:hover, .footer svg:hover  {fill:#02A84F;}
.home-social svg {height:32px;width:32px;
    fill: #fff;
    margin: 2px;
}

.footer a {color:#003a5d;}
.footer a:hover {color:#db0032;}
body.home .footer {padding:30px 0px 40px;font-size:15px;line-height:23px;background:#002e5d;float:left;width:100%;text-align:center;color:#fff;}
body.home  .footer .disclaimer {border:1px solid #fff;padding:5px 5%;max-width:75%;width:max-content;margin:30px auto;}
body.home  .footer a {color:#efefef;}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Desktop/Tablet iframe sizing (769px and above) */
.header-right iframe {
	position: relative;
	right: 10%;
	width: 720px;
}


	.signup-wrapper h3 {
		color: white;
		font-size: 30px !important;
	}
	.header-right iframe {
		position: relative;
		right: 10%;
		width: 600px;
		height: 315px;
	}


@media only screen and (max-width: 1024px) {
	.header-right iframe {
		width: 100%;
		right: 0;
		height: 280px;
	}
}

/* Responsive video container for YouTube videos - only on mobile */
@media only screen and (max-width: 768px) {
	.video-container {
		position: relative;
		width: 100%;
		padding-bottom: 56.25%; /* 16:9 aspect ratio */
		height: 0;
		overflow: hidden;
		max-width: 100%;
	}

	.video-container iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: 0;
	}
}

.bio {background:rgba(0, 46, 93, .3);padding:50px 0px;}
.bio-content{width:60%;margin:0 auto;font-size: calc(16px + .3vw);    line-height: 1.4em;}
.bio h2{font-size:180%;text-align:center;margin:1em 0;}
/*.header-right {width:40%;padding:0;max-width:920px;}*/
img.home-logo {max-width:300px;width:25%;margin:0 auto;}
.header-right p {text-align:right;font-size:calc(16px + .4vw);line-height:1.4em;padding:1% 0 0;clear:right;}
.header-right p:last-of-type {margin-bottom:5px;}
.header-left p {font-size:calc(40px + .85vw);line-height:1.2em;color:white;font-weight:800;letter-spacing:.04em;margin:.75em 0;}
.header-left {width:50%;background:#002e5d;padding:2% 6% 2% 3%;text-align:center;min-height:500px;}

a.home-button {text-decoration:none;-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
background: #02A84F;width:max-content;text-align:center;width:max-content;padding:20px 30px;display:block;margin:.75em auto;-webkit-appearance:none;color:#fff;font-family: 'Outfit', Arial, sans-serif;text-transform:uppercase;font-weight:900;font-size:28px;
white-space:nowrap;line-height:1em;letter-spacing:.04em;
-webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;

}
a.home-button:hover {background:#3b76b1;}

	img.sig {margin:0 0 0 90px;}

.home-top {display:flex;     align-items: center;width:100%;overflow:hidden;}
.gray-wrapper, .about-wrapper  {display:flex;     align-items: center;    justify-content: center;width:100%;}
.top-wrapper {display:flex;     align-items: top;    justify-content: center;width:100%;}
.donate-wrapper {background:#141d37;padding:60px 0px;width:100%;text-align:center;}
.donate-wrapper h2 {color:white;text-transform:capitalize;font-size:calc(36px + .85vw);}
.signup-wrapper {background:#00a851 url(../images/jason_fade_sm5.png) 0% 0% no-repeat;padding:15px 0px;display:flex;     align-items: center;    justify-content: flex-end;width:100%;height:600px;background-size:cover;background-position:top center;}
.donate-buttons {display:flex;width:80%;margin:0 auto;justify-content:center;}
.donate-wrapper p {font-size:16px;font-style:italic;color:white;line-height:1.5em;margin:10px 0px 20px;}
a.donate-button {
    background: #3b76b1;font-size:26px;
    color: white;width:105px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    padding: 18px 22px;
    margin: 10px;
}
a.donate-button:hover {background:#00a851;color:#141d37;text-decoration:none;}
.signup-wrapper h3 {color:white;font-size:calc(37px + .3vw);line-height:1.1em;}
.about-right {background:url(../images/estevesfamily.jpg) 50% 0% no-repeat;background-size:cover;width:50%;height:600px;}

	.about-left{width:40%;padding:2% 2% 2% 8%;font-size:calc(16px + .3vw);line-height:1.4em;}
	.about-left ul li {list-style-type:square;margin:0 0 2% 8%;}

	nav {margin:30px 0;}
nav:after {
	content:"";
	display:table;
	clear:both;
}

nav ul {
	padding:0;
	margin:0 auto;max-width:700px;
	list-style: none;
	position: relative;display:flex;justify-content:space-evenly;
	}

nav ul li {
	margin: 0px;
	display:inline-block;
	float: left;
	}

nav a {color:#02A84F !important;font-weight:300;padding:0px 9px;text-transform:uppercase;float:left;margin-left:0px;font-size:20px;
line-height:20px;
}

nav a:hover {
	color:#16315A !important;
}

nav ul ul {
	display: none;
	position: absolute;
	/* has to be the same number as the "line-height" of "nav a" */
	top:20px; background-color:#444;z-index:1200;width:200px;
}

nav ul li:hover > ul {
	display:inherit;
}

nav ul ul li {
	float:none;
	display:inline-block;width:100%;
	position: relative;margin:0;padding:0;
}
nav ul ul li a {color:white;font-size:13px;padding:5px 5%;width:90%;line-height:15px;margin:5px 0px;display:block;}
nav ul li ul li a:hover, nav ul li ul li a:visited:hover {background-color:#B7D77A;color:#222;font-size:13px;}

.main_content{width:80%;margin:0 auto;max-width:620px;background:rgba(22,49,90,.1);padding:30px;-webkit-border-radius: 14px;
-moz-border-radius: 14px;
border-radius: 14px;}
.header_title h1 {color:#16315A;text-align:center;}
.petition_content {
	width:80%;margin:0px auto;max-width:820px;background:rgba(51,63,72,.1);
	padding:30px;
}

.petition-title {text-align:center;padding:20px 0px;color:#003b5c;	width:80%;margin:0px auto;max-width:820px;}
.petition-title h1 {font-size:40px;}
.petition-text {float:left;width:54%;}
.ngp-form header.at-title, .ngp-form header.at-markup, legend.at-legend {display:none;}
.ngp-form section.at-inner{background:transparent;margin:0 !important;}
.at-markup.SmsLegalDisclaimer.at-legal p {color:white;font-style:italic;position:relative;top:5rem;font-size:15px;line-height:20px;}
.at-markup.SmsLegalDisclaimer.at-legal p a {color:white !important;}
.at-form-submit {
    padding: 10px;background:transparent;
}

.at input[type=text], .at input[type=password], .at input[type=date], .at input[type=datetime], .at input[type=datetime-local], .at input[type=month], .at input[type=week], .at input[type=email], .at input[type=number], .at input[type=search], .at input[type=tel], .at input[type=time], .at input[type=url], .at input[type=color], .at textarea {margin:10px 0 !important;-webkit-border-radius: 1px !important;
-moz-border-radius: 1px !important;
border-radius: 1px !important;height:50px !important;}
.signup-form {max-width:440px;text-align:center;margin:0 10%;}
.ngp-form .at-fields {background:transparent;width:430px;max-width: 100%;
	/*display:flex;flex-wrap:wrap;*/}
.at .at-fieldset {
    padding:0 !important;
    min-width: 100%;}
.at-row.FirstName.LastName {display: flex;   flex-wrap: nowrap;margin-bottom:0;}
.at-row.EmailAddress label.EmailAddress {margin-bottom:.65rem;}
#NVSignupForm2295229-ContactInformation-PostalCode {margin-bottom:10px}
::placeholder{color:black !important;}
.at-row.at-row-solo>[class^=at-] {min-width:0;}
.at-text.FirstName {max-width:160px;min-width:100px !important;margin-right:0 !important;}
.at-row.at-row-solo>[class^=at-] {
    min-width: calc(100% - 20px) !important;
}
.at-form-submit {display:flex;position:relative;top:-7.5rem;}
.at .error small.error {font-size:14px;font-style:italic !important;clear:both;line-height:1em;margin-bottom:.25rem !important;background:rgba(255,255,255,.6) !important;color:black !important;}


input[type=submit].at-submit.btn-at.btn-at-primary {text-decoration:none;-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
background: #002e5d;width:100%;text-align:center;width:max-content;padding:0px 30px;
border:none;-webkit-appearance:none;color:#fff;font-family: 'Outfit', Arial, sans-serif;text-transform:uppercase;font-weight:900;font-size:24px;
white-space:nowrap;line-height:1em;letter-spacing:.04em;height:51px;-webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}

input[type=submit].at-submit.btn-at.btn-at-primary:hover, button[type=submit].small:hover , a.button:hover{
background: #3b76b1;color:#fff;}
form#petition .form-group.submit {float:left;width:100%;margin:10px 0px;}

::placeholder {
  color: #888 !important;text-transform:uppercase;font-family: 'Outfit', Arial, sans-serif;font-size:17px;
  opacity: 1; /* Firefox */
}

::-ms-input-placeholder { /* Edge 12 -18 */
color: #888 !important;text-transform:uppercase;font-family: 'Outfit', Arial, sans-serif;font-size:17px;
}
.at input[type=text], .at input[type=password], .at input[type=date], .at input[type=datetime], .at input[type=datetime-local], .at input[type=month], .at input[type=week], .at input[type=email], .at input[type=number], .at input[type=search], .at input[type=tel], .at input[type=time], .at input[type=url], .at input[type=color], .at textarea {font-size:17px !important;}

.posted_on {
	color:#555555;
	font-size:.85em;
}
.sidebar {
	background-color:#dddddd;
	float:right;
	width:250px;
	margin:0px;
	padding:5px;
	min-height:450px;
}

.entry_image, .entry_video {
	float:right;
	margin-left:10px;
	margin-bottom:10px;
	width:300px;
}
.entry_image img {max-width:300px;}
.caption {
	font-size:11px;
	color:black;
}
.pull_quote_wrapper {
	float:right;
	width:200px;
	margin-left:15px;
	margin-bottom:10px;
}
.pull_quote {	color:#999;font-size:18px;padding-left:20px;
	font-weight:bold;
}
.close {float:right;font-size:80px;height:50px;width:50px;}
.open {font-size:80px;height:50px;width:50px;}
div.right {float:right;margin:0px 0px 10px 10px;}
div.left {float:left;margin:0px 10px 10px 0px;}
div.right img, div.left img {border:1px solid black;}
div.right p.caption, div.left p.caption {font-size:90%;color:#555;display:block;}

.facebook-box {background-color:white;width:292px;margin:10px 0px;}
.twitter-button {margin:20px 0px;}


.sharethis-inline-share-buttons { margin:30px 0px;height:34px;clear:both;float:left;width:100%;text-align:center;}
@media only screen and (max-width: 1540px) {
	.header-left {width:50%;padding:2% 8% 2% 4%;min-height:300px;}
	.header-left p {    max-width: 80%;
		margin: 10px auto 30px;
	    font-size: calc(32px + .85vw);}
			a.home-button{font-size:24px;}
	.top-wrapper .header-left {background:white;padding:5% 5% 0 0;width:42%;}

	.signup-form {
	    max-width: 30%;margin: 0px 5%;}
		 .donate-wrapper p {		padding-top:15px; padding-bottom:15px;     font-size: 14px;}
}
@media only screen and (max-width: 1440px) {
/*	.ngp-form .at-fields {	    width: 380px;}*/
.at-markup.SmsLegalDisclaimer.at-legal p {font-size:13px;line-height:18px;}
}
@media only screen and (max-width: 1280px) {
input[type=submit].at-submit.btn-at.btn-at-primary {font-size:20px;}
}
@media only screen and (max-height: 800px) {
.header-left {min-height:300px;}
}
/**@media only screen and (min-width: 1600px) {
.about-right {height:600px;}
}

@media only screen and (min-width: 1700px) {
.about-right {height:700px;}
}
@media only screen and (max-width: 1100px) {
	.header-right p {font-size:calc(12px + .4vw);}
	img.home-logo {max-width:55%;float:right;display:block;margin:3% 0;}
	 img.sig  {width:110px;}
	.header-left p {text-align:left;font-size:calc(16px + .5vw);line-height:1.4em;padding:5% 5% 1% 10%;clear:left;}
	.header-left {width:62%;padding:3% 0;}
	.header-right {width:32%;}
	.header-left .video {	    left: 4%;	}


}

/* Tablet and smaller desktop */
@media only screen and (max-width: 1024px) {
	#wrapper {max-width: 100%; padding: 0 15px;}
	.header-left {width: 50%; padding: 2% 4% 2% 2%;}

	.signup-form {max-width: 50%; margin: 0 5%;}
	.donate-buttons {width: 90%;}
}

/* Tablet portrait */
@media only screen and (max-width: 768px) {
	.home-top {flex-direction: column; text-align: center;}
	.header-left {width: 100%; padding: 5% 4%; min-height: auto;}
	.header-right {width: 100%; padding: 0 4%;}

	.header-left p {font-size: calc(28px + .5vw);}
	a.home-button {font-size: 20px; padding: 15px 25px;}
	.signup-wrapper {height: auto; padding: 40px 0;}
	.signup-form {max-width: 90%; margin: 0 auto;}
	.about-wrapper {flex-direction: column;}
	.about-left {width: 100%; padding: 5% 4%;}
	.about-right {width: 100%; height: 300px;}
	.donate-wrapper {padding: 40px 0;}
	.donate-buttons {flex-wrap: wrap; width: 95%;}
	a.donate-button {font-size: 20px; padding: 15px 20px; margin: 5px;}
	.bio-content {width: 90%;}
	nav {display: none;}
	.mobile {display: block;}
}

/* Mobile landscape */
@media only screen and (max-width: 480px) {
	#wrapper {padding: 0 10px;}
	.header-left p {font-size: calc(24px + .4vw);}
	a.home-button {font-size: 18px; padding: 12px 20px;}
	.signup-wrapper h3 {font-size: calc(28px + .3vw);}
	.donate-wrapper h2 {font-size: calc(28px + .5vw);}
	.donate-wrapper p {font-size: 14px;}
	a.donate-button {font-size: 16px; padding: 12px 15px; min-width: 80px;}
	.bio-content {width: 95%; font-size: 16px;}
	.bio h2 {font-size: 150%;}
	.footer {font-size: 12px; padding: 20px 0 40px;}
}

/* Small mobile */
@media only screen and (max-width: 320px) {
	.header-left p {font-size: 20px;}
	a.home-button {font-size: 16px; padding: 10px 15px;}
	.signup-wrapper h3 {font-size: 24px;}
	.donate-wrapper h2 {font-size: 24px;}
	a.donate-button {font-size: 14px; padding: 10px 12px; min-width: 70px;}
}

/* Additional responsive improvements for forms and content */
@media only screen and (max-width: 768px) {
	.main_content {
		width: 95%;
		padding: 20px;
		margin: 0 auto;
	}
	
	.header_title h1 {
		font-size: 28px;
		text-align: center;
	}
	
	.main_content p {
		font-size: 16px;
		line-height: 1.5;
	}
	
	/* Improve form responsiveness */
	.at input[type=text], .at input[type=password], .at input[type=date], 
	.at input[type=datetime], .at input[type=datetime-local], .at input[type=month], 
	.at input[type=week], .at input[type=email], .at input[type=number], 
	.at input[type=search], .at input[type=tel], .at input[type=time], 
	.at input[type=url], .at input[type=color], .at textarea {
		width: 100% !important;
		box-sizing: border-box;
	}
	
	/* Improve logo responsiveness */
	.logo {
		max-width: 200px;
		width: 60%;
		margin: 10px auto;
	}
	
	.logo img {
		max-width: 100%;
		height: auto;
	}
}
