
@font-face {
	font-family: "SubSave-Helvetica";
	src: url("/assets/fonts/HelveticaNeue-Roman.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: "Barlow";
	src: url("/assets/fonts/barlow/Barlow-Bold.ttf") format("truetype");
	font-weight: 700;
	font-style: normal;
}
@font-face {
	font-family: "Barlow";
	src: url("/assets/fonts/barlow/Barlow-SemiBold.ttf") format("truetype");
	font-weight: 600;
}

@font-face {
	font-family: "Barlow";
	src: url("/assets/fonts/barlow/Barlow-Medium.ttf") format("truetype");
	font-weight: 500;
}

@font-face {
	font-family: "Barlow";
	src: url("/assets/fonts/barlow/Barlow-Regular.ttf") format("truetype");
	font-weight: 400;
}

@font-face {
	font-family: "Barlow";
	src: url("/assets/fonts/barlow/Barlow-Light.ttf") format("truetype");
	font-weight: 200;
}


#sub_and_save_overlay {
	z-index: 1000 !important;
	position: fixed !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	background-color: #fff !important;
	opacity: .65 !important;
	-webkit-transition: all .25s ease-in;
	transition: all .25s ease-in;
}

#sub_and_save_container {
	z-index: 1001 !important;
	position: fixed !important;
	width: 634px !important;
	height: auto !important;
	max-height: 100%;
	top: 50% !important;
	left: 50% !important;
	margin-left: 0 !important;
	-webkit-transform: translate(-50%, -50%) !important;
	-moz-transform: translate(-50%, -50%) !important;
	-ms-transform: translate(-50%, -50%) !important;
	transform: translate(-50%, -50%) !important;
	overflow-x: hidden;
	overflow-y: auto;
}

#sub_and_save_contents {
	padding: 132px 0 0 0;
	font-size: 16px;
	text-align: center;
	color: #222;
	background: url("/assets/img/reticle_bg.png") no-repeat transparent center top / 100% auto;
	min-height: 568px;
	font-family: "Barlow";
}

#sub_and_save_contents h1 {
	font-weight: 700;
	font-size: 34px;
	line-height: 37px;
	color: #00265E;
	margin: 0 auto 20px;
	padding: 0;
	font-family: "Barlow";
	text-align: center;
	/*-webkit-text-stroke: 13px #fff;
	paint-order: stroke fill;
	*/background: #fff;
	width: 358px;
	margin: 0 auto;
}
#sub_and_save_contents h1.phone {
	background: none;
}

#sub_and_save_contents h1.thanks {
	margin: 40px auto 33px;
	font-size: 48px;
	width: 280px;
}

p.sub_and_save_paragraph {
	padding-top: 0; 
	/*margin-top: -2px;*/
	text-align: center; 
	font-size: 14px; 
	font-family: 'Barlow';
	/*margin-bottom: 12px;*/
}

.sub_and_save_input_container {
	position: relative;
	width: 264px;
	margin: 3px auto;
}

.sub_and_save_floating_label {
	position: absolute;
	top: 24px;
	left: 50%;
	z-index: 6;
	transform: translate(-50%, -50%);
	padding: 0 1em;
	transition: top 120ms ease-out, transform 120ms ease-out, font-size 80ms ease-out;
	pointer-events: none;
	color: #888;
	white-space: nowrap;
	font-family: "Barlow";
	font-weight: 400;
}
.sub_and_save_floating_label_focused {
	top: 1px;
	transform: translate(-50%, 0);
	font-size: 10px;
}

.sub_and_save_input {
	display: block;
	width: 100%;
	height: 48px;
	padding: 8px 1em 0;
	margin: 0 auto;
	font-family: "Barlow", sans-serif;
	font-size: 16px !important;
	font-weight: 400;
	text-align: center;
	color: #222;
	line-height: normal;
	background-color: #fff;
	border: 1px solid #C5C5C5;
	border-radius: 10px !important;
	-webkit-transition: all 0.11s linear;
	transition: all 0.11s linear;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	letter-spacing: 0;
}
input.sub_and_save_input:focus {
	outline: none !important;
	border-color: #000 !important; 
	/*box-shadow: none !important;*/
}
.sub_and_save_input_container.has_error input.sub_and_save_input:focus {
	border-color: #D13535 !important;
}

.sub_and_save_input_container.has_error .sub_and_save_floating_label {
	color: #D13535;	
}

.sub_and_save_input_container.has_error .sub_and_save_input {
	border-color: #D13535;
}


.sub_and_save_button_container {
	width: 264px;
	margin: 13px auto 0;
}

.sub_and_save_button_container.thanks {
	width: 275px;
	margin-bottom: 39px;
	margin-top: 26px;
}

button.sub_and_save_button {
	display: inline-block;
	position: relative;
	width: 100%;
	margin: auto;
	/*padding: 0 20px;*/
	vertical-align: middle;
	font-family: "Barlow",sans-serif;
	font-size: 28px;
	font-weight: 700;
	color: #fff;
	height: 48px;
	text-decoration: none;
	text-transform: uppercase;
	background-color: #8E0C18;
	border: 1px solid #8E0C18;
	border-radius: 10px !important;
	box-shadow: none !important;
	cursor: pointer;
	outline: none;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	-webkit-transition: all .25s linear;
	transition: all .25s linear;
	transition: .25s;
	overflow: hidden;
	letter-spacing: .05em;
}

button.sub_and_save_button:disabled {
	opacity: 0.5;
}

button.sub_and_save_button.thanks {
	height: 54px;
}

.sub_and_save_no_thanks_container {
	margin: 6px auto 0;
}

.sub_and_save_no_thanks_container span {
	padding: 10px 0;
	font-family: "Barlow", sans-serif;
	font-size: 12px;
}
.sub_and_save_no_thanks_container span.underline:hover {
	text-decoration: none;
}

button.sub_and_save_button:hover, button.sub_and_save_button:focus {
	color: #8E0C18;
	background-color: #fff;
	border-color: #8E0C18;
}

.sub_and_save_terms_container {
	font-family: "Barlow", sans-serif;
	font-size: 10px;
	line-height: 12px;
	text-align: center;
	margin: 0 auto;
}

.sub_and_save_terms_container.phone {
	width: 213px;
	margin-top: -9px;
	font-size: 7px;
	line-height: 8px;
	font-family: "SubSave-Helvetica", sans-serif;
}

.sub_and_save_close_button {
	position: absolute;
	right: 101px;
	top: 44px;
	margin: 0px;
	z-index: 10;
}


.sub_and_save_close_button_link {
	display: block;
	width: 20px;
	height: 20px;
	cursor: pointer;
}

.sub_and_save_close_button_link svg {
	width: 20px;
	height: 20px;
	position: relative;
	display: block;
	overflow: visible;
	stroke: #222;
	stroke-width: 4px;
	-webkit-transition: all .25s linear;
	transition: all .25s linear;
}

.sub_and_save_close_button_link svg:hover {
	stroke: #8E0C18;
}

.sub_and_save_email_error_container, .sub_and_save_name_error_container {
	font-size: 12px;
	color: #D13535;
}

@media only screen and (min-width: 1px) and (max-width: 644px) {
	#sub_and_save_container {
		width: 366px !important;
	}
	
	#sub_and_save_contents {
		float: none;
		width: 100%;
		padding: 180px 0 0;
		background-image: url("/assets/img/bgMobile.png");
		position: relative;
		min-height: 602px;
	}
	
	#sub_and_save_contents h1.thanks {
		margin-top: 25px;
	}

	#sub_and_save_contents h1 {
		width: 238px;
	}

	#sub_and_save_contents::before {
		content: "";
		display: block;
		width: 140px;
		height: 125px;
		background: url("/images2/buds-logo-blue-red.png?v=11") no-repeat transparent;
		background-size: auto;
		background-size: contain;
		position: absolute;
		top: 65px;
		left: 50%;
		transform: translate(-50%, 0);
	}
	
	.sub_and_save_close_button {
		right: 42px;
		top: 48px;
	}
}