html,body,div,span,object,iframe,										
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,cite,em,img,strong
dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	overflow-wrap: break-word;
}

html{
	height:100%;
	overflow-y:scroll; /* force scrollbar for short pages */
}

table{
	border-collapse:collapse;
	width:100%;
} 

th,td{
	vertical-align:top;
	text-align:left;
}

div{
	box-sizing:border-box;
}

img{
	display:block;
	width:100%;
	height:auto;
	aspect-ratio: attr(width) / attr(height);
}


/******** type **************/

*{
	font-family:opensans,Sans-Serif;
}

h1,h1 *, h2,h2 *, h3, h3 *, h4, h4 *{
	font-family:cabin,Sans-Serif;
}

.fbi, .fbi *{
	font-family:sourcecodepro,monospace;
	text-transform:uppercase;
}

textarea{
	font-family:sourcecodepro,monospace;
}
	form textarea{
		font-family:opensans,Sans-Serif;
	}

h1{
	font-weight:800;
	font-size:2.5em;
	line-height:1.2em;
	text-transform:uppercase;
	border-bottom:.05em solid;
	padding-bottom:.7em;
}
	.content__samples h1{
		border-bottom:none;
	}
	
	h1 a.edit{
		font-size:.6em;
		text-transform:none;
	}
	
h2{
	font-weight:600;
	font-size:1.5em;
	line-height:1.3em;
}
	h2 a.edit{
		font-size:.7em;
		text-transform:none;
	}

h3{
	font-weight:500;
	font-size:1.4em;
}
	h3.fbi{font-size:1.7em;font-weight:600;}
	
h4{
	font-size:1.15em;
}	
	.split_heading .line1{
		font-size:1.5em;
		font-weight:700;
		text-transform:uppercase;
	}
	.split_heading .line2{
		font-size:.8em;
		text-transform:uppercase;
		font-family:sourcecodepro,monospace;
		font-weight:600;
		letter-spacing:.02em;
	}	
	
h5{
	thing:asdf;
}

p{
	line-height:1.7em;
	max-width:58em;
	font-family:cabin,Sans-Serif;
	font-weight:500;
}
	main p{
		max-width:42em;
	}

li{line-height:1.5em;}

.free li{
	max-width:36em;
	font-family:cabin,Sans-Serif;
	font-weight:500;	
}

.index li{max-width:100%;}

td,th{line-height:1.35em;}

.cart .total strong{
	font-size:2em;
}

.cart main a.button{
	font-size:1.3em;
}

a.button, .errorbox,.error_msg,
input[type="submit"], input[type="button"], 
.cart #progress_bar, td.price,
dt{
	font-weight:bold;
}

.cart .price, 
h2 .count, h2 a.edit,h1 a.edit{
	font-weight:normal;
	text-decoration:none;
}

/* no underline ******/
a.button{
	text-decoration:none;
}

header nav.main a,
footer nav.main a{
	font-weight:700;
}

header nav.main{
		text-transform:uppercase;
}

form .expl_text{
	display:none;
}


/************* Margins/Padding/Borders *************/

h1,h2,h3,h4,h5,h6{
	margin:1.5em 0 .8em 0;
}
	h1{
		margin-top:.6em;
	}

li{
	margin-bottom:.7em;
}

p,ul,ol,dl,.t,
ul.index li{
	margin-bottom:1.4em;
}
	
div.pair,div.button{
	margin-bottom:1em;
}
	
ul.attr > li{
	border-bottom:.1em solid;
	padding-bottom:1.5em;
}
	ul.attr > li:first-child{
		border-top:.1em solid;
		padding-top:1.5em;
	}
	
	ul.condensed{
		max-width:40em;
	}
	
	ul.condensed li{
		border-bottom:.05em dotted;
		padding-bottom:.5em;
		margin-bottom:.5em;
	}
	
		ul.condensed li:first-child{
			border-top:.05em dotted;
			padding-top:.5em;		
		}	
	

	

input,textarea,select	{ /* keep these the same */
	padding:.4em .7em	}
label					{
	padding:.4em 0;		}

th,td{
	border-bottom:.1em solid;
	padding:.8em .8em;
}
	th{border-bottom:.15em solid;}

	@media screen and (max-width:400px){
		th,td{padding:.2em .2em;}
	}
	@media screen and (max-width:500px){
		th,td{padding:.3em .3em;}
	}		
	@media screen and (max-width:600px){
		th,td{padding:.5em .5em;}
	}

td:last-child,th:last-child{
	padding-right:0;
}

td:first-child,th:first-child{
	padding-left:0;
}

th.price, th.numeric, td.price, td.numeric{
	text-align:right;
}


/***************** Overall Layout *******************/

.page{
	min-width:14em;
}


header{
	overflow:auto;
}

.content{
	padding:1.5em 0 5em 0;
	overflow:auto;
	/*
	border-left:1px #ddd solid;
	background-color:white;
	*/
	border-right:0;
}

.c{
	padding:0 7%;	
	margin: 0 auto;
}

footer{
	padding:3em 0 4em 0;
	clear:both;
	max-width:2200px;
}

.block{
	display:block;
	overflow:auto;
	clear:both;
	padding-top:1em;
	padding-bottom:1em;	
	padding-bottom:1em;
}

	div.major{
		padding-top:2em;
		padding-bottom:2em;
	}
	
	div.minor{
		padding-top:1.5em;
		padding-bottom:1.5em;
	}
	

/*************** Header/footer/navs **************/

header{
	overflow:auto;
	padding:1.5em 0 0 0;
}

.logo{
	max-width:100%;
	width:9.5em;
	margin:auto;
	margin-bottom:1em;
}
	
footer .logo{
	width:7em;
}

.tagline{
	margin:auto;
	text-align:center;
	margin-bottom:1.5em;
	font-weight:bold;
	font-size:1.15em;
}

header .text{
	margin-bottom:1em;
}

header .text1{
	
}
header .text2{
	font-size:.9em;
	vertical-align:middle;
}

header a, footer a, nav a{
	text-decoration:none;
}

footer nav.compliance-menu li{
	padding-right:1em;
	border-right:.1em solid;
}
	footer nav.compliance-menu li:last-child{
		border-right:none;
	}

nav{
	clear:both;
	overflow:auto;
}

header .top .c{
	/*border:.1em blue dashed;*/
	overflow:visible;
	box-sizing:border-box;
	padding-right:7%;
	padding-left:7%;
	padding-top:0;
	padding-bottom:0;
	margin-bottom:0;
	margin-top:0;
}							  

nav.admin{
	padding:.4em 0;
}

nav ul{
	margin-bottom:0;
	text-align:center;
	padding-top:1em; /* prevent scrollbars */
	padding-bottom:1em;  /* prevent scrollbars */
}


nav li{
	display:inline;
	text-align:center;
	margin:0;
	line-height:3em;
}

nav a{	
	display:inline;
	padding:1.2em 1em 1em 1em;
	white-space:nowrap;
}
	nav li:first-child a{
		padding-left:0;
	}

header .social{
	/*border:.1em yellow dashed;*/
	overflow:visible;
	box-sizing:border-box;
	float:right;
	margin-top:1.5em;
}

header .social a{
	width:1.4em;
	display:block;
	float:right;
	margin-left:.7em;
}

header .social a img{
	width:100%;
	opacity:.8;
}

header .account{
	float:right;
	text-align:right;
	margin-bottom:1.5em;
}

header .cart_total{
	float:right;
	text-align:right;
	line-height:3em;
	margin-right:1em;
	margin-bottom:1.5em;
	margin-left:1em;
}

header .cart_icon{
	width:2.5em;
	height:2.5em;
	display:inline;
	vertical-align:middle;
}

header .dark_light_toggle{
	float:left;
	text-align:left;
	clear:none;
	margin-right:1em;
	margin-bottom:1.5em;
}

header .order{
	float:left;
	text-align:left;
	margin-right:1em;
	margin-bottom:1.5em;
}

header .order a.button{
	padding-left:1.6em;
	padding-right:1.6em;
}

header .order a .extra_text{
	display:none;
}


/* hide the non-important pages at low screen size */

nav li.menu_item__about{
	display:none;
}


nav.mobile{display:none;}
footer nav.full{display:none;}


@media screen and (min-width:580px){
	
	nav li.menu_item__about{
		display:inline;
	}
}



@media screen and (min-width:1050px){
	
	header .order a .extra_text{
		display:inline;
	}
	
	header .logo_with_tagline{
		overflow:auto;
		float:left;
		width:28em;
	}
	
	header .logo{
		float:left;
		clear:none;
		margin-right:1.7em;
		margin-left:0;
	}
		header .dark_light_toggle{
			float:right;
			text-align:right;
			clear:none;
		}
		header .order{
			float:right;
			text-align:right;
			clear:none
		}
	
	footer .logo{
		float:right;
		margin-left:1.7em;
		margin-right:0;
		
	}	
		footer nav{
			clear:none;
		}
		
	.tagline{
		float:left;
		text-align:left;
		margin-right:5%;
		margin-left:0;
		margin-top:5.6em;
	}
	
	header .cart_total{
		margin-left:0;
	}
	
	nav ul{
		text-align:left;
		padding-top:0;
		padding-bottom:0;
	}
	
	nav li{
		margin:0 0 0 0;
		display:block;
		line-height:1.5em;
		float:left;
		text-align:left;
	}
	nav a{
		display:block;
		line-height:1.5em;
		padding:1.7em .8em 1.5em .8em;
		text-align:left;
	}
	
}


.contact .rfi_form, .sidebar{
	border-top-right-radius:1.5em;
	border:.05em solid;
	padding:2em 2em 3em 2em;
	border-bottom:.3em solid;
}

.contact .rfi_form h3{
	padding-bottom:1em;
	border-bottom:.1em solid;
	font-size:1.5em;
	margin-top:0;
	text-transform:uppercase;
}


@media screen and (min-width:700px){
	
	.contact .rfi_form h3{
		margin-top:0;
	}
}


/****** drop-down nav menu ********/

header nav li ul{
	position:absolute;
	visibility:hidden;
	margin:auto 0;
	padding:auto 0;
	padding-bottom:1.3em;
	z-index:999;
}
	@media screen and (min-width:601px){
		header li:hover ul,
		header li:focus ul{
			visibility:visible;
		}
	}
	
	header nav li ul li{
		float:none;
		font-size:.8em;
		padding-left:1em;
		padding-right:1em;
		list-style-type:square;
	}
		header nav li ul li a{
			text-transform:none;
		}


/**************** Content area general style ***************/

main li,
main dd,
textarea li{
	margin-left:2.8em;
}

main li, textarea li{
	padding-left:.4em;
}


.photos img{
	margin-bottom:1.5em;
}

.plopbox{
	padding:1.2em 1.5em;
}

.textbox{
	border:.05em solid;
	border-bottom:.3em solid;
	padding:2em;
	border-top-right-radius:1.5em;
	margin-bottom:2em;
}
	.textbox *:first-child{
		margin-top:0;
	}
	.textbox h2, .textbox h3, .textbox h4{
		text-transform:uppercase;
	}
	.textbox.keepitsolid{
		padding:0;
	}
		.textbox.keepitsolid .head{
			padding:2em 2.5em 1em 2.5em;
			border-bottom:.1em solid;
		}
			.textbox.keepitsolid .head h2{
				padding:0;
				margin:0;
			}
		.textbox.keepitsolid .stuff{
			padding:1.5em 2.5em 2em 2.5em;
		}
	
	.textbox *:last-child{
		margin-bottom:0;
	}
	
@media screen and (min-width:320px){
	
	.parallel .photos{
		float:right;
		width:45%;
		margin:0 0 3em 8%;
	}
	
	.parallel ul.index.subpages,
	.parallel ul.index.subpages li{
		clear:none;
	}
	
	.parallel ul.index.subpages li .text{
		width:auto;
	}
}
@media screen and (min-width:640px){
	
	.parallel .photos{
		width:40%;
		float:right;
		margin:0 0 3em 8%;		
	}
	.parallel table{
		display:table;
		width:52%;
		clear:none;
	}
}
	

dl.contact{
	font-size:1.1em;
	overflow:auto;
	line-height:3em;
	width:100%;
	margin-bottom:2em;
}
	dl.contact dt{
		font-weight:bold;
		width:20%;
		min-width:4em;
		border-bottom:1px #bbb solid;
		float:left;
		clear:left;
	}
	dl.contact dd{
		width:80%;
		min-width:7.5em;
		float:left;
		margin-left:0;
		padding-left:0;
		border-bottom:1px #bbb solid;
	}


.major:first-child{
	margin-top:0;
}

ol.major{
	font-size:1.8em;
	font-weight:500;
}
	ol.major li{
		margin-left:1.8em;
	}
	ol.major li h3{
		font-size:1em;
		margin-bottom:0;
	}
	ol.major li p{
		font-size:.55em;
		font-weight:normal;
		line-height:1.4em;
	}
		ol.major li p.fbi{
			font-size:.7em;
		}
	

.full.major{
	border-top:.3em solid;
}

.major.k100black{
	padding-top:3em;
	padding-bottom:3em;

}
.major.k100white{
	padding-top:3em;
	padding-bottom:3em;
}	


@media screen and (min-width:800px){
		
	.contact .rfi_form{
		float:right;
		width:45%;
		margin-left:5%;
		font-size:.85em;
	}
	.contact .main_text{
		float:left;
		width:50%;
	}
}

@media screen and (min-width:1000px){
	
	.split .supporting{
		float:right;
		width:30%;
		padding-left:4%;
	}
	.split .primary{
		float:left;
		width:66%;
	}	
}


/*****	related links menus/sidebars		***/

/* mobile */
.parallel .dup-top{display:none;}
.parallel .dup-bottom{display:block;}

/* inline/horizontal nav unless parallel */

.content nav ul{
	overflow:auto;
}

.content nav li{
	float:left;
	border-left:.1em dashed black;
	margin-right:0;
}

.content nav li a{
	padding:0 .8em;
	display:block;
}

.content__samples .full.feat.major{
	padding-top:6em;
}

@media screen and (min-width:640px){
	
	/* vertical nav if parallel */
	main .parallel nav ul li{
		float:none;
	}
	
	.parallel .dup-top{display:block;} /* duplicated content for desktop vs mobile display */
	.parallel .dup-bottom{display:none;}
	
	.parallel div.related{
		float:right;
		width:25%;
		min-width:7em;
		font-size:.85em; 
		padding-left:4%; 
		margin-left:4%; 
		margin-bottom:2em;
		border-left:.1em black solid;
		border-bottom:.1em black solid;
	}
}

@media screen and (min-width:800px){
	
	.split .supporting{
		float:right;
		width:30%;
		padding-left:4%;
	}
	
	.split .primary{
		float:left;
		width:66%;
	}	
}


/************	ul index	*********/

ul.index,
ul.attr,
ul.grid,
ul.index > li,
ul.attr > li, 
ul.grid > li, 
header li, footer li, nav li{
	margin-left:0;
	padding-left:0;
	list-style:none;
	overflow:auto;
}

ul.index a, ul.grid a{
	text-decoration:none;
}

ul.index{
	clear:both;
	padding:0;
}

ul.index > li{
	clear:both; 
	border-bottom:.15em solid;
	margin-bottom:0;
	padding: 1.5em 0 2em 0;
}
	ul.grid > li{
		border-bottom:none;
	}
	ul.index.locs > li{
		border-bottom:none;
		padding-bottom:0;
		padding-top:0;
		margin-top:0;
		border-top:0; 					 
	}
	
	ul.index > li:first-child{
		border-top:.15em solid;
	}
		ul.grid > li:first-child{
			border-top:0;
		}	
		ul.grid > li:first-child,
		.contact ul.index.locs li:first-child{
			border-top:0; 
			padding-top:0;
		}	

h2 .view_all{
	font-weight:normal;
	font-size:.8em;
}
@media screen and (min-width:700px){
	
	ul.index.listview .image				{ /* 2-col layout */
		float:left;
		width:26%;
		margin-right:4%;			}
	ul.index.listview .text					{
		float:left;			
		width:66%;		
										}
}

ul.index .text h2{
	margin-top:0;
}	

ul.grid li{
	margin-bottom:2em;
}

@media screen and (min-width:400px) and (max-width:599.99999px){
	
	ul.grid li{
		font-size:.95em;
		margin-bottom:3.5%;
		float:left;
		clear:none;
		width:47.5%;
		margin-right:5%;
	}
		ul.grid  li:nth-child(2n){
			margin-right:0;
		}
		ul.grid  li:nth-child(2n+1){
			clear:left;
		}
		ul.grid  li:nth-child(-n+2){
			border-top:0;
			padding-top:0;
		}
}

@media screen and (min-width:600px) /*and (max-width:999.99999px)*/{ 	/* 3-column grid */
	
	ul.grid  li{
		font-size:.85em;
		margin-bottom:5%;
		float:left;
		clear:none;
		width:31.5%;
		margin-right:2.75%;
		padding-left:0;
		padding-right:0;
		padding-top:0;
	}
		ul.grid li:first-child{
			/*margin-top:1%;*/
		}
		ul.grid  li:nth-child(3n){
			margin-right:0;
		}
		ul.grid  li:nth-child(3n+1){
			clear:left;
		}
		ul.grid  li:nth-child(3n-1){
		}
}

/*
@media screen and (min-width:1000px) and (max-width:1399.99999px){ 	 4-column grid 
 	
	ul.grid  li{
		font-size:.75em;
		float:left;
		clear:none;
		width:23.5%;
		margin-right:2%;
		padding-left:0;
		padding-right:0;
	}

		ul.grid li:nth-child(4n+1){
			clear:left;
		}
		
		ul.grid li:nth-child(4n){
			margin-right:0;
		}
		
		ul.grid li:nth-child(-n+4){
			border-top:0;
			padding-top:0;
		}
}

/******** equal height gallery ***************/

ul.eqh{
	overflow:auto;
}

ul.eqh, ul.eqh li{
	margin:0;
	padding:0;
	list-style:none;
}

ul.eqh li{
	float:left;
}

ul.eqh li a{
	margin-bottom:0;
	margin-top:0;
	padding-bottom:0;
}


/********************** Forms ****************************/


form.tcn_order .sidebar{
	padding:3em;
}
	form.tcn_order .sidebar > *:first-child{margin-top:0;}
	form.tcn_order .sidebar > *:last-child{margin-bottom:0;}
	
form.tcn_order h3{
	margin-top:0;
	margin-bottom:.2em;
}

form.tcn_order div.loc{
	margin-bottom:1.3em;
}

@media screen and (min-width:1100px){
	form.tcn_order .sidebar{
		float:right;
		width:40%;
		margin-left:3%;
		padding:3%;
		margin-bottom:3em;
		font-size:.8em;
	}
	form.tcn_order .subf,
	form.tcn_order > .field,
	form.tcn_order > h2,
	form.tcn_order > h3,
	form.tcn_order > p,
	form.tcn_order > div{
		float:left;
		width:55%;
		clear:left;
	}
		form.tcn_order .subf .subf{
			width:100%;
		}
	form.tcn_order input[type=submit]{
		clear:left;
		float:left;
		display:block;
	}
}

form.tcn_order input[type=submit]{
	margin-top:1em;
}
	
.order_items.condensed,
.order_items.condensed li{
	list-style:none;
	margin-left:0;
	padding-left:0;
	overflow:auto;
}
.order_items.condensed li .price{
	float:right;
	margin-left:2em;
}
.order_items.condensed li .desc{
	
}

.button input,
input.button{
	font-weight:bold;
	padding:.4em 1em;
	margin-bottom:2em;
}	

.field.file .thumb{
	display:block;
	max-width:260px;
}

input,textarea,select{
	font-size:1em;
}

input[type=text]{
	min-width:2em;	
}

div.pair{
	overflow:auto;
}

.wysiwyg{
	overflow:visible;
}

.pair label{
	display:block;
}

	.pair.checkbox label{
		display:inline;
	}

input.zip{
	width:5em;
}

.pair label,
.pair input{
	display:block;
}

.help_text{
	font-size:.95em;
}

.controls_group{
	overflow:auto;
}

form .expansion{display:none;}
form .expansion.expanded{display:block;}
form .expansion_control.activated{display:none;}

form .expansion.other_please_spec{
	padding-left:2em;
	max-width:25em;
	margin-top:-1.5em;
}

ul.radios,
ul.checkboxes{
	margin:-.4em 0 1.5em 0;
}

ul.radios li,
ul.checkboxes li{
	list-style:none;
	margin:0 5% .3em 0;
	padding-left:0;
}

ul.radios .input,
ul.checkboxes .input{
	float:left;
	margin-top:0;
}

ul.radios label,
ul.checkboxes label{
	margin-left:2em;
	display:block;
	padding-top:0;
	/*margin-top:-.1em;*/
}

li .expansion.major{
	margin-left:5%;
}

.edit_page .attr .pair{
	overflow:auto;
}

form .attr .pair label		{
	float:left;
	width:11em;
	margin-right:1em;		}
form .attr .pair input		{
	float:left;
	width:12em;				}

form attr select{
	min-width:10em;
	width:100%;
	box-sizing:border-box;
}

	form .attr .numeric input{ /* make the numeric inputs smaller */
		width:4em;
	}

.pair label,.file label,.submit,
.file_input_wrapper,
.pair input,.pair textarea, .pair select,
.attr div.pair,.edit_page div.select_ymm{
	width:100%;
	box-sizing:border-box;
}

div.pair label,
div.pair input,
div.submit input,
div.pair textarea,
div.pair select{
	display:block;
}

.pair.checkbox input, 
.pair.checkbox label,
.pair.radio input,
.pair.radio label{
	display:inline;
	width:auto;
}

.tinymce_container textarea{
	padding:0;
	width:100%;
}

div.pair input,
div.pair select,
div.pair textarea{
	max-width:50em;
}

li form a.button{
	margin-right:.3em;
}

form .images li{
	list-style:none;
	clear:both;
	overflow:auto;
	border-bottom:1px solid;
	margin-bottom:2.5em;
	padding-bottom:2.5em;
}

form .images img{
	border:1px solid;
}

form .images li .s{
	float:left;
}

/*form .images li .sort_order{width:80px;}*/
form .images li .options{width:320px;}
form .images li .img{width:300px;}

form .images li img{width:92%;}


@media screen and (min-width:800px){
	
	form .images_existing{
		padding-top:3em;
	}
	
	form .images_existing .subf.image{
		overflow:auto;
		padding-bottom:1em;
	}
	
	form .images_existing .subf.image .field.pair.file{
		overflow:initial;
	}
	
	form .images_existing .subf.image .field.file .thumb{
		float:left;
		width:20em;
		margin-right:1.5em;
		min-height:17em;
	}
	
	form .images_existing .subf.image .file_input_wrapper input{
		clear:none;
		width:20em;
		/*float:left;*/
	}
	
	form .images_existing .subf.image div.pair.sort_order,
	form .images_existing .subf.image div.unassign{
		/*float:left;*/
	}
	
	form .images_existing .subf.image div.pair.sort_order input{
		width:5em;
	}
}

input.smallnum{
	width:1.5em;
}

.sort_order input{
	font-size:1.7em;
	padding:.2em .3em;
	font-weight:bold;
}

li fieldset{
	margin-bottom:2em;
}

.images li div.pair input{
	width:90%;
}

.checkbox_tree li{
	list-style:none;
}


.subcontent_sort_order input.sort_order{
	width:1.5em;
	text-align:right;
	margin-right:.5em;
}



input[type=submit]:hover{
	cursor:pointer;
	
}


.alert{
	padding:1.7em;
}

.alert p, p.alert{
	line-height:1.4em;
}


li .controls_group{
	font-size:.9em;
}

/******** editing pages **********/

h1 .edit, h2 .edit, h3 .edit, h4 .edit{
	font-weight:normal;
	text-transform:none;
}

h1 .edit{
	font-size:.7em;
}

.section_nav li{
	display:inline;
	border-right:1px solid;
	padding-right:.8em;
	margin-right:.8em;
}
	.section_nav li.last{
		border:0;
		margin:0;
		padding:0;
	}


/******* Shopping Cart ************/

td.qty input{
	width: 2.5em;
	padding: .3em .2em .3em .2em;
	border:1px solid;
	border-radius:.3em;
	text-align:center;
}

div.add_to_cart{
	padding-bottom:1.5em;
}
td.uom,th.uom,
td.qty,th.qty{
	text-align:center;
}

.cart .total{
	text-align:right;
	float:right;
}

.quote_buttons_end{
	float:right;
	overflow:auto;
	clear:right;
}
.quote_buttons_end .button{
	float:right;
	overflow:auto;
	margin-left:1em;
}
.quote_buttons_end .button input{
	display:block;
	margin-bottom:0;
}
.shipping_and_total{
	clear:both;
	overflow:auto;
}
.quote_total div{
	margin-bottom:.5em;
}
.quote_total{
	text-align:right;
	float:right;
	clear:both;
	padding-top:1em;
	padding-bottom:1em;
}
.quote_total .number{
	font-weight: 600;
	font-size: 2em;
	margin-left: .3em;
}

.detailed_quote .submit_button{
	float: right;
	clear: right;
	padding-top: .7em;
}


/*********** Buttons, Tabs, Padded Boxes ************/

button{
	line-height:1em;
}

a.button,button{
	line-height:3em;
	padding:.7em 1.1em;
	text-decoration:none;
	white-space:nowrap;
	border-radius:.5em;
}
	button:hover,button:focus,
	a.button:hover,a.button:focus{
		text-decoration:none;
	}
	
.errorbox,
.error_msg,
.alert_msg{
	display: block;
	padding: 1em 2.5em 1.4em 2.5em ;
}

.alert{
	padding:2em;
}

input[type=submit],
button[type=submit]{
	font-weight:600;
	padding:.7em 1.5em;
	font-size:1.05em;
	border-radius:.5em;
}

button{
	line-height:1.3em;
}


.price_sheet li{
	min-height:17em;
}

.price_sheet .package_desc_qty{
	text-align:center;
	font-family:sourcecodepro,monospace;
	font-size:1.7em;
	text-transform:uppercase;
	display:block;
}

.price_sheet .package_desc_deliv{
	text-align:center;
	text-transform:uppercase;
	display:block;
	margin-top:.4em;
}

.price_sheet button{
	display:block;
	padding:.8em 1.5em .8em 1.5em;
	margin-left:auto;
	margin-right:auto;
	margin-top:1em;
}

.price_sheet .price{
	display:block;
	font-size:2em;
	font-weight:500;
	text-align:center;
	margin:auto;
	margin-top:.5em;
}

	
.price_sheet button .a2c{
	display:block;
}



/************ color base ***************/


input,textarea,select,option{
	background-color:transparent;
	color:inherit;
}


a:hover,a:active,a:focus{
	text-decoration:underline;
}


@media screen and (max-width:299.9999px){	header,footer{font-size:.65em;}	}
@media screen and (min-width:300px){		header,footer{font-size:.65em;}	}
@media screen and (min-width:350px){		header,footer{font-size:.7em;}	}
@media screen and (min-width:380px){		header,footer{font-size:.75em;}	}
@media screen and (min-width:400px){		header,footer{font-size:.82em;}	}
@media screen and (min-width:430px){		header,footer{font-size:.86em;}	}
@media screen and (min-width:470px){		header,footer{font-size:.89em;}	}
@media screen and (min-width:500px){		header,footer{font-size:.92em;}	}
@media screen and (min-width:700px){		header,footer{font-size:.95em;}}
@media screen and (min-width:850px){		header,footer{font-size:.97em;}}
@media screen and (min-width:900px){		header,footer{font-size:1em;}}
@media screen and (min-width:1000px){		header,footer{font-size:1.1em;}}
@media screen and (min-width:1050px){		header,footer{font-size:1em;}}
@media screen and (min-width:1300px){		header,footer{font-size:1.05em;}}
@media screen and (min-width:1600px){		header,footer{font-size:1.1em;}}
@media screen and (min-width:2000px){		header,footer{font-size:1.1em;}}

/*
	NAV SHOULD HAVE IT'S OWN DEDICATED FONT SCALING SECTION !!!!!!!!!!!!!!!!
	NAV SHOULD HAVE IT'S OWN DEDICATED FONT SCALING SECTION !!!!!!!!!!!!!!!!
	NAV SHOULD HAVE IT'S OWN DEDICATED FONT SCALING SECTION !!!!!!!!!!!!!!!!
*/


@media screen and (max-width:299.9999px){	main{font-size:.7em;}	}
@media screen and (min-width:300px){		main{font-size:.71em;}	}
@media screen and (min-width:400px){		main{font-size:.81em;}	}
@media screen and (min-width:525px){		main{font-size:.85em;}	}
@media screen and (min-width:650px){		main{font-size:.9em;}	}
@media screen and (min-width:775px){		main{font-size:.95em;}	}
@media screen and (min-width:900px){		main{font-size:1.1em;}	}
@media screen and (min-width:1100px){		main{font-size:1.3em;}	}
@media screen and (min-width:1300px){		main{font-size:1.45em;}	}
@media screen and (min-width:1500px){		main{font-size:1.55em;}	}
@media screen and (min-width:1700px){		main{font-size:1.7em;}	}



@media screen and (max-width:399.9999px){	input[type=checkbox],input[type=radio]{transform: scale(.9);}	}
@media screen and (min-width:400px){		input[type=checkbox],input[type=radio]{transform: scale(.95);}	}
@media screen and (min-width:500px){		input[type=checkbox],input[type=radio]{transform: scale(1.0);}	}
@media screen and (min-width:600px){		input[type=checkbox],input[type=radio]{transform: scale(1.05);}	}
@media screen and (min-width:700px){		input[type=checkbox],input[type=radio]{transform: scale(1.1);}	}
@media screen and (min-width:800px){		input[type=checkbox],input[type=radio]{transform: scale(1.2);}	}
@media screen and (min-width:900px){		input[type=checkbox],input[type=radio]{transform: scale(1.3);}	}
@media screen and (min-width:1100px){		input[type=checkbox],input[type=radio]{transform: scale(1.4);}	}
@media screen and (min-width:1300px){		input[type=checkbox],input[type=radio]{transform: scale(1.5);}	}
@media screen and (min-width:1500px){		input[type=checkbox],input[type=radio]{transform: scale(1.5);}	}
@media screen and (min-width:1700px){		input[type=checkbox],input[type=radio]{transform: scale(1.5);}	}


@media screen and (max-width:400px){	h1{font-size:1.3em;}	}
@media screen and (min-width:400px){	h1{font-size:1.4em;}	}
@media screen and (min-width:600px){	h1{font-size:1.5em;}	}
@media screen and (min-width:800px){	h1{font-size:1.6em;}	}
@media screen and (min-width:1000px){	h1{font-size:1.7em;}	}
@media screen and (min-width:1400px){	h1{font-size:1.7em;}	}
@media screen and (min-width:1800px){	h1{font-size:1.7em;}	}



main th, main td{
	
	font-size:.8em;
	
}

