/*////////////////////////////////////////////////////////
/// BEGIN: Global
////////////////////////////////////////////////////////*/
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	color: #333;
	font-family: 'EB Garamond', serif;
	font-size: 16px;
}

a {
	outline: none;
	color: inherit;
	text-decoration: none;
}

a:hover,
abbr {
	text-decoration: none;
}

h1,h2,h3 {
	color: #000;
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	text-transform: uppercase;
}

h1 {
	font-size: 72px;
	font-weight: 700;
}

h2 {
	margin-bottom: 0.5%;
	font-size: 36px;
	letter-spacing: .5px;
}

h2.hidden {
	display: none;
}

h3 {
	margin-bottom: 2%;
	font-size: 24px;
	line-height: 29px;
}

h4 {
	margin-bottom: 5%;
	font-family: 'EB Garamond', serif;
	font-size: 14px;
	font-style: italic;
	text-transform: none;
}

img {
	max-width: 100%;
}

input {
	outline: none;
}

input[type='text'],
input[type='email'] {
	display: block;
	width: 100%;
	max-width: 302px;
	max-width: 400px;
	/*margin: 0 0 15px;*/
	margin: 0 auto 15px;
	/*padding: 4.5% 7%;*/
	padding: 3% 7%;
	background: #ebebeb;
	border: 0;
	border-radius: 0;
	color: #000;
	font-size: 12px;
	-ms-appearance: none;
	-o-appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}

input[type='checkbox'] {
	width: 20px;
	height: 20px;
	background: #fff;
	border: 2px solid #000;
	border-radius: 0;
	cursor: pointer;
	-ms-appearance: none;
	-o-appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}

input[type='checkbox']:checked:after {
	content: '';
	display: block;
	width: 4px;
	height: 12px;
	margin: 0 auto;
	border: solid #000;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

input[type='submit'],
.button {
	display: block;
	width: 120px;
	height: 40px;
	padding: 5px;
	background: #fff;
	border: 3px solid #000;
	border-radius: 0;
	cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: bold;
	line-height: 24px;
	text-decoration: none;
	text-transform: uppercase;

	-ms-appearance: none;
	-o-appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}

input[type='submit']:hover,
.button:hover {
	background: #e93231;
	border: 3px solid #e93231;
	color: #fff;
}

input[type='submit'] {
	width: 180px;
	/*margin-top: 50px;*/
	margin: 50px auto 0;
	padding: 5px 20px;
}

label {
	display: none;
	font-family: 'EB Garamond', serif;
	font-size: 14px;
}

::placeholder {
	color: rgba(0,0,0,0.5);
	text-transform: uppercase;
}

p {
	margin-bottom: 3%;
}

p > input + label {
	display: inline;
}

section {
	width: 100%;
	max-width: 752px;
	margin: 0 auto;
}

ul, ol, li {
	list-style: none;
}


/* BEGIN: Shared Styles
-----------------------------------*/
body .mobile {
	display: none;
}

.flexitall {
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	margin: 0 auto;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
	align-items: flex-start;
	align-content: space-between;
}

/* BEGIN: Section - Header
-----------------------------------*/
header {
	position: relative;
	width: 100%;
	height: 1870px;
	margin-bottom: 2%;
	overflow: hidden;
}

.bottom {
	position: absolute;
	bottom: -70px;
	left: 0;
	width: 180vw;
	background: #fff;
	transform: translateX(-23%);
}

.icon-pattern_full {
	position: relative;
	width: 160vw;
	height: 1950px;
	transform: rotate(-15deg) translateX(-500px) translateY(-25%);
	background: url('../images/pattern/background_break-the-pattern-seamless.png') repeat center bottom / 350px #fff;
	text-align: center;
	margin-bottom: 65px;
}

/* Icon Pattern */
header .icon-pattern {
	display: inline-block;
	position: relative;
	width: 800px;
	margin-right: 0;
	text-align: right;
}

header .icon-pattern img {
	margin: 9px 25px;
}

header .icon-pattern img.icon-pattern_argument {
	width: 65px;
}

header .icon-pattern img.icon-pattern_bullet {
	width: 42px;
}

header .icon-pattern img.icon-pattern_tears {
	width: 46px;
}

header .icon-pattern img.icon-pattern_time {
	width: 29px;
}

header #type-text {
	display: inline-block;
	width: 600px;
}

header #type-text h1 {
	position: relative;
	display: inline-block;
	float: left;
	overflow: hidden;
	line-height: 0.95;
	text-align: left;
	white-space: nowrap;
}

header #type-text h1.mobile {
	display: none;
}

header #type-text h1 span { /*Kerning Fix */
	margin-right: 4px;
	letter-spacing: -5px;
}

/* BEGIN: Section - Information
-----------------------------------*/
#section_body {
	margin-bottom: 4%;
	text-align: center;
}

/* Eyebrow Text */
#section_body li {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

#section_body li:not(:last-child):after {
	content: '|';
	display: inline-block;
	margin: 0 10px;
}

#section_body p {
	width: 100%;
	max-width: 535px;
	margin: 0 auto 3%;
}


/* BEGIN: Section - Learn More
-----------------------------------*/
#section_learn-more {
	margin-bottom: 10%;
	text-align: center;
}

#section_learn-more nav {

}

#section_learn-more ol {
	align-items: flex-start;
}

#section_learn-more nav li {
	width: 20%;
	max-width: 120px;
	flex-basis: 20%;
}

#section_learn-more nav li img {
	display: block;
	width: 75px;
	height: 100%;
	max-height: 60px;
	margin: 0 auto 25px;
}

#section_learn-more nav li strong {
	display: block;
	max-width: 90%;
	height: 50px;
	margin: 0 auto 35px;
	font-family: 'Oswald', sans-serif;
	line-height: 20px;
	text-transform: uppercase;
}


/* BEGIN: Section - Learn More Modals
-----------------------------------*/
#section_learn-more-modals {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	background: rgba(38,38,38,0.85);
}

#section_learn-more-modals.active {
	display: block;
}

#section_learn-more-modals article {
	display: none;
	position: absolute;
	top: 20px;
	left: 50%;
	width: 620px;
	min-height: 505px;
	margin: 5% auto 0;
	transform: translateX(-50%);
}

#section_learn-more-modals.active article.active {
	display: table;
}

#section_learn-more-modals .learn-more-modal_image,
#section_learn-more-modals .learn-more-modal_content {
	display: table-cell;
	vertical-align: middle;
}

#section_learn-more-modals .learn-more-modal_image {
	width: 38%;
	background: no-repeat center center / 50% #000;
}

#section_learn-more-modals #step-1 .learn-more-modal_image {
	background-image: url('../images/action-plan/icon-white_a-better-background-check-system.svg');
}

#section_learn-more-modals #step-2 .learn-more-modal_image {
	background-image: url('../images/action-plan/icon-white_protecting-kids-and-communities.svg');
}

#section_learn-more-modals #step-3 .learn-more-modal_image {
	background-image: url('../images/action-plan/icon-white_disarming-domestic-abusers.svg');
}

#section_learn-more-modals #step-4 .learn-more-modal_image {
	background-image: url('../images/action-plan/icon-white_combating-daily-gun-violence.svg');
}

#section_learn-more-modals #step-5 .learn-more-modal_image {
	background-image: url('../images/action-plan/icon-white_holding-the-gun-industry-accountable.svg');
}

#section_learn-more-modals .learn-more-modal_image svg {
	fill: #fff;
}

#section_learn-more-modals .learn-more-modal_content {
	position: relative;
	width: 62%;
	padding: 5% 10%;
	background: #fff;
}

#section_learn-more-modals .learn-more-modal_content p {
	font-size: 14px;
}

#section_learn-more-modals .button_close {
	position: absolute;
	top: 0;
	right: -10%;
	width: 25px;
	height: 25px;
	text-indent: -9999px;
	background: url('../images/general/icon_button-close.svg') no-repeat center center / 25px transparent;
}

#section_learn-more-modals .button_close:hover {
	opacity: .7;
}

/* BEGIN: Section - Social Share & Newsletter
-----------------------------------*/
/*#section_share,
#section_join {
	width: 50%;
	flex-grow: 1;
	flex-basis: 50%;
}*/

/* BEGIN: Share GIF */
#section_share {
	display: none;
}

#section_share img {
	max-width: 367px;
	margin-bottom: 25px;
}

#section_share p,
#section_share ul {
	float: left;
	width: 60%;
	font-size: 14px;
}

#section_share ul {
	width: 37%;
}

#section_share li {
	display: inline-block;
	margin: 0 10px;
}

#section_share li a {
	display: block;
	width: 24px;
	height: 24px;
	text-indent: -9999px;
	background: no-repeat center center / 24px transparent;
}

#section_share li a:hover {
	opacity: 0.7;
}

#section_share li.icon_fb a {
	background-image: url('../images/general/icon_social-facebook.svg');
}

#section_share li.icon_ig a {
	background-image: url('../images/general/icon_social-instagram.svg');
}

#section_share li.icon_tw a {
	background-image: url('../images/general/icon_social-twitter.svg');
}

/* BEGIN: Join Mailing List */
#section_join {
	/*max-width: 310px;*/
	text-align: center;
}

#section_join h2 {
	/*margin-bottom: 13%;*/
	margin-bottom: 5%;
	line-height: 0.75;
}

#section_join input + label {
	display: inline-block;
	/*width: 70%;*/
	width: 35%;
	margin-left: 12px;
	vertical-align: top;

	text-align: left;
}


/* BEGIN: Footer
-----------------------------------*/
footer {
	width: 100%;
	height: 98px;
	margin-top: 130px;
	padding: 30px 20px;
	background: #ebebeb;
	text-align: center;
}

footer img {
	width: 85px;
}

/*////////////////////////////////////////////////////////
/// BEGIN: Media Queries
////////////////////////////////////////////////////////*/

/* BEGIN: Responsive */
@media screen and (max-width: 1280px) {


}

/* BEGIN: iPad Portrait */
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) {

	h3 {
		font-size: 5vw;
		line-height: 1.2;
	}

	h4 {
		font-size: 3vw;
		line-height: 1.2;
	}

	input[type='checkbox']:checked:after {
		width: 1vw;
		height: 3vw;
	}

	#section_learn-more-modals .learn-more-modal_content p {
		font-size: 3vw;
	}

	#section_learn-more-modals .button_close {
		height: 10vw;
		background-size: 10vw;
	}
}

/* BEGIN: iPad Landscape */
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {

	h4 {
		font-size: 16px;
	}

	#section_learn-more-modals article {
		width: 670px;
	}

	#section_learn-more-modals .learn-more-modal_content {
		padding: 5%;
	}

	#section_learn-more-modals .learn-more-modal_content p {
		font-size: 16px;
	}
}

/* BEGIN: Mobile */
@media screen and (max-width: 809px) {

	body {
		overflow-x: hidden;
	}

	h1 {
		font-size: 15vw;
	}

	h2 {
		margin-bottom: 5%;
		font-size: 10vw;
		line-height: 1.1;
	}

	h3 {
		font-size: 7.5vw;
		line-height: 1.2;
	}

	h4 {
	    font-size: 4.75vw;
    }

	input[type='text'],
	input[type='email'] {
		max-width: none;
		font-size: 3vw;
	}

	input[type='checkbox'] {
		width: 6vw;
		height: 6vw;
		border: 0.75vw solid #000;
	}

	input[type='submit'], .button {
		width: 70%;
		height: 10vw;
		margin: 0 auto;
		padding: 0;
		font-size: 3vw;
		line-height: 3;
	}

	input[type='submit'] {
		width: 100%;
		margin-top: 15%;
		background: #000;
		color: #fff;
	}

	section {
		max-width: 95%;
	}
	
	body .mobile {
		display: block;
	}
	
	body .desktop {
		display: none;
	}

	/* BEGIN: Section - Header
	-----------------------------------*/
	header {
		height: 475vw;
		margin-bottom: 20%;
	}

	.icon-pattern_full {
		width: 1024vw;
		height: 450vw;
		text-align: left;
		transform: rotate(-15deg) translateX(-9.5%) translateY(-25%);
		background-size: 9%;
		margin-bottom: 0;
	}

	.bottom {
		left: auto;
		right: -5%;
		bottom: 0;
		margin-right: 0;
		width: 100%;
		transform: translateX(0);
	}

	header .icon-pattern {
		width: auto;
		height: 100%;
		margin-right: 0;
		vertical-align: top;
	}

	header .icon-pattern img {
		display: none;
		margin: 9px 2.5vw;
	}

	header .icon-pattern img.icon-pattern_argument {
		width: 16vw;
	}
	
	header #type-text {
		display: inline-block;
		width: 75vw;
		height: 37vw;
		overflow: hidden;
		word-break: break-all;
	}

	header #type-text h1.mobile {
		display: block;
		max-width: 100%;
		max-height: 100%;
		float: none;
		line-height: 1.2;
		word-break: break-all;
	}
	
	header #type-text h1.desktop {
		display: none;
	}
	
	header #type-text h1.second {
		max-width: 72%;
	}
	
	header #type-text h1 div {
		max-width: 100%;
	}

	header .icon-pattern img:last-child {
		display: block;
	}

	/* BEGIN: Section - Information
	-----------------------------------*/
	#section_body {
		margin-bottom: 15%;
	}

	#section_body ul {
		margin-bottom: 3%;
	}

	#section_body li {
		display: block;
		margin-bottom: 1%;
		font-size: 3.5vw;
	}

	#section_body li:not(:last-child):after {
		display: none;
	}

	#section_body p {
		max-width: 93%;
		margin-bottom: 7%;
		font-size: 5vw;
	}

	/* BEGIN: Section - Learn More
	-----------------------------------*/
	#section_learn-more ol {
		flex-direction: row;
		justify-content: center;
	}

	#section_learn-more nav li {
		width: 50%;
		max-width: none;
		margin-bottom: 10vw;
		flex-basis: 50%;
	}

	#section_learn-more nav li img {
		width: 42%;
		max-height: 150px;
	}

	#section_learn-more nav li:nth-child(3) img {
		width: 34%;
	}

	#section_learn-more nav li strong {
		height: auto;
		max-width: 60%;
		font-size: 4vw;
		line-height: 1.2;
	}

	/* BEGIN: Section - Learn More Modals
	-----------------------------------*/
	#section_learn-more-modals article {
		width: 90%;
		min-height: 0;
		text-align: center;
	}

	#section_learn-more-modals .learn-more-modal_image {
		display: none;
	}

	#section_learn-more-modals .learn-more-modal_content {
		padding: 5% 10% 25%;
	}

	#section_learn-more-modals .learn-more-modal_content p {
		font-size: 4vw;
	}

	#section_learn-more-modals .button_close {
		top: auto;
		bottom: 0;
		right: 0;
		width: 100%;
		height: 10vw;
		margin: 10% auto;
		background-image: url('../images/general/icon_button-close_black.svg');
		background-size: 10vw;
	}

	/* BEGIN: Section - Social Share & Newsletter
	-----------------------------------*/
	#section_share,
	#section_join {
		width: 100%;
		max-width: 95%;
		flex-basis: 100%;
	}

	/*#section_share {
		margin-bottom: 30vw;
	}*/

	#section_share img {
		max-width: 100%;
		margin-bottom: 5%;
	}

	#section_share p,
	#section_share ul {
		float: none;
		width: 100%;
		text-align: center;
	}

	#section_share p {
		margin-bottom: 10%;
		font-family: 'Montserrat', sans-serif;
		font-size: 4.25vw;
		letter-spacing: 0.45vw;
		text-transform: uppercase;
	}

	#section_share ul {
		width: 100%;
		margin: 0 auto;
	}

	#section_share li {
		margin: 0 5%;
	}

	#section_share li a {
		width: 10vw;
		height: 10vw;
		background-size: 10vw;
	}

	#section_join {
		margin-bottom: 15vw;
	}

	#section_join h2 {
		text-align: center;
	}


	#section_join p {
		margin-bottom: 5%;
	}

	#section_join input + label {
		width: 86%;
		margin-left: 5%;
		font-size: 4.2vw;
	}

	/* BEGIN: Footer
	-----------------------------------*/
	footer {
		display: table;
			padding: 10%;
	}

	footer a {
		display: table-cell;
		vertical-align: middle;
	}

	footer img {
		width: 25vw;
	}
}
/* FIN */
