@font-face 
{
    font-family: Circular;
    src: url('../fonts/CircularStd-Bold.otf');
}


*
{
	padding:0px;
	margin:0px;
	border:0px;
	font-family: Circular;
	box-sizing: border-box;
}

html, body
{
	height:100%;

}

body
{
	font-size:16px;
	color:black;
}

ul li
{
	list-style-position: inside;
	text-align:left;
}

ol li
{
	list-style-position: inside;
	text-align:left;
}


a
{
	text-decoration: none;
}

p a
{
	text-decoration: underline;
	color:inherit;
}

.grid
{
	background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAAUdEVYdENyZWF0aW9uIFRpbWUAOS80LzE0YEWSlAAAAB9JREFUCJljYGBgMGZgYDD+//8/AxMDEmD8//8/nAMAhRYGZLv3ueUAAAAASUVORK5CYII=);
}

.shallow-margin
{
	margin:0px 0px 20px 0px;
}

#content a
{
	color:#fc0000;
}

a.shipping
{
	color:black !important;
	text-decoration: underline;
}

h1
{
	margin-bottom:20px;
}


/*mailchip*/
#mc_embed_signup
{
	background-color:white;
	margin:0px !important;
	clear:left;
	font-size:14px !important;
}

#mc_embed_signup label
{
	font-size:2.5em !important;
	padding-bottom:2% !important;
}


#mc_embed_signup .button
{
	background-color:#fe0000 !important;
}



.last
{
	margin-bottom:70px !important;
}

.left
{
	text-align:left;
}

.float-left
{
	float:left;
}

.float-right
{
	float:right;
}

.float-overflow
{
	display:block !important;
	overflow:hidden;
	clear:left;
}



.red
{
	color:#fc0000 !important;
}

.right
{
	text-align:right;
}

.center
{
	text-align: center;
}

.noborder
{
	border:0px !important;
}

.nobreak
{
	display:inline-block;
	width:100%;
}

.interpunct-break
{
	text-align:center;
	font-size:3em;
	margin:25px 0px 75px 0px;
}

.nip
{
	margin: 0px 4%;
}

/***************************************************************/


/*#lid
{
	height:80%;
	overflow:auto;
	position:relative;
	z-index:-999;
}*/

#logo
{
	display:inline-block;
	//float:right;
	max-width:250px;
}

#logo-wrapper
{
	display:block;
	overflow:auto;
	margin:0% 4%;
	text-align:center;
}


#content
{
	text-align:left;
	overflow:auto;
	font-size:1em;
	background-color:white;
	padding-bottom:40px !important;
}

#content header
{
	font-size:2em;
	margin:4%;
	border-bottom:5px solid black;
	padding-bottom:2%;
}

#content header.general
{
	display:block;
	font-size:1.5em;
	margin:0px 0px 20px 0px;
	color:#fc0000;
}

#content p.title
{
	display:inline-block;
	font-size:1.75em;
	margin-bottom:20px;
	padding:10px 0px;
	border-bottom:3px solid #fc0000;
	color:#fc0000;
	text-align:left;
	width:100%;
}


#content p.ad-title
{
	display:inline-block;
	font-size:0.8em;
	margin-bottom:20px;
	padding:10px 0px;
	border-bottom:3px solid #000000;
	color:#000000;
	text-align:left;
	width:100%;
}

#content p.title_long
{
	margin-top:30px;
	font-size:1.75em;
	margin-bottom:20px;
	padding:10px 0px;
	border-bottom:3px solid #fc0000;
	color:#fc0000;
	text-align:left;
	
}

#content .showcase
{
	margin-left:4%;
	margin-right:4%;
	width:92%;
	background-color:black;

}


.columns
{
    -webkit-column-gap: 3em; /* Chrome, Safari, Opera */
    -moz-column-gap: 3em; /* Firefox */
    column-gap: 3em;

    margin:2% 4%;
    margin-bottom:0px;

    webkit-column-count: 1; /* Chrome, Safari, Opera */
   	moz-column-count: 1; /* Firefox */
    column-count: 1;

    text-align:justify;
}

.columns p
{
	margin-bottom:20px;
}

.columns.single
{
	-webkit-column-count: 1 !important; /* Chrome, Safari, Opera */
    -moz-column-count: 1 !important; /* Firefox */
    column-count: 1 !important;
}

.columns.triple
{
	-webkit-column-count: 3; /* Chrome, Safari, Opera */
    -moz-column-count: 3; /* Firefox */
    column-count: 3;
}


.interpunct
{
	font-size:3em; 
	margin-bottom:20px; 
	display:block;
	text-align:center;
	color:#666;
}

/******************************************************************/

#menu
{
	//max-height:70px;
	position:fixed;
	bottom:0px;
	left:0px;
	right:0px;
	background-color:rgba(0,0,0,0.96);
	border-top:2px solid #444;
	z-index: 999;
	box-shadow: 0px -2px 3px 2px rgba(0,0,0,0.3);
	box-sizing: border-box;
	text-align:center; 
}


#menu a
{
	display:inline-block;
	margin:1.5%;
	width:20%;
	text-align:center;
	border-top:1px solid #222;
	border-bottom:1px solid black;
	border-radius:3px;
	padding:0.5%;
	box-sizing: border-box;
	background-color:#0f0f0f;
	color:white;
}



#menu-top
{
	box-shadow: 0px 2px 3px 2px rgba(0,0,0,0.1);
	position:fixed;
	height:82px;
	top:50px;
	background-color:white; 
	width:100%;
	overflow:auto;
	border-bottom:2px solid #ccc;
	z-index:999;
}

#warning
{
	position:fixed;
	top:0px;
	width:100%;
	height:50px;
	color:white;
	padding:5px;
	background-color:#fc0000;
	z-index:998;
	text-align:center;
}

#menu-top .icon
{
	display: inline-block;
	margin:10px;
	position:relative;
}

#menu-top .icon img
{
	display:block;
	margin:auto;
}


#menu-top .icon span
{
	color:#fc0000;
	text-align: center;
}

#menu-top .icon a
{
	color:black;
}



#menu-top .icon .snipcart-total-items
{
	position:absolute;
	top:-3px;
	right:-3px;
	border-radius:22px;
	height:21px;
	width:21px;
	background-color:#fc0000;
	color:white;
	line-height:22px;
	vertical-align: middle;
	text-align:center;
}

#menu-top .icon	.snipcart-total-price
{
	display: block;
}	

.snipcart-add-item:active
{
	background-color:#ac0000;
}

.snipcart-add-item:focus 
{
	outline:0;
}

.buy-message
{
	display:none;
}

#added-cart
{
	position:relative;
	box-sizing:border-box;
	padding:60px;
	font-size:2em;
	position:fixed;
	top:81px;
	right:0px;
	background:white;
	overflow:auto;
	text-align:right;
	border-left:1px solid #ccc;
	border-bottom:1px solid #ccc;
	box-shadow: 0px 2px 3px 2px rgba(0,0,0,0.1);
	display:none;
	z-index:777;

}

#added-cart-close
{
	position:absolute;
	top:15px;
	left:15px;
	cursor:pointer;
}

.price
{
	font-size:2em;
	color:black;
}

#copynote
{
	padding:40px 4% 100px 4%;
	font-size:0.8em;
	text-align:right;
	display: block;
	background-color:white;
}

.shout
{
	color:#fc0000;
	border-top:5px solid #fe0000; 
	border-bottom:5px solid #fe0000;
	padding:20px 0px;
	margin:40px auto 20px auto;
	overflow:auto;
}

span.highlight
{
	background-color:#fc0000;
	color:white;
	padding:5px;
}

p.share iframe
{
	float:right;
	margin:0px 0px 5px 5px;
}


p.share
{
	overflow:auto;
}

p.quote
{
	font-style:italic;
	color:#fc0000;
	padding:0% 4% 4% 4%;
	text-align:left;
	font-size:0.8em !important;
}

span.quote
{
	color:gray;
	font-size:normal;
}



.kitlist
{
	margin-bottom:40px;
}

figure
{
	margin:20px 0px 40px 0px;
	text-align: center;
	overflow:auto;
}

figure table
{
	max-width:100%;
	margin:auto;
	border:1px solid black;
	font-size:1.5em;
	border-collapse: collapse;

}

figure table td
{
	border:1px solid black;
	padding:10px 20px;
}

figure img
{
	margin:auto;
	max-width:100%;
}

figure figcaption
{
	margin-top:10px;
	color:#fc0000;
	font-size:1.2em;
}

figure.video
{
	display:block; 
	margin:40px auto 40px auto !important;
}

.videoWrapper 
{
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
	margin:auto;
	background-color:gray;
}
.videoWrapper iframe 
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.featured
{
		text-align:center;
		padding:4%;
		font-size:1.6em;
		color:gray;
}

.featured img
{
	display:inline-block;
	vertical-align:middle;
	margin:15px;
}

.featured-text
{
	display:block;
	text-align:center;
}

.buynow
{
	font-size:2em; 
	color:white !important;
	background-color:#fc0000;
	padding:20px;
	border-radius:10px;
	cursor:pointer !important;
}

.parts-add
{
	display:inline-block;
	margin:20px 20px 20px 0px;

}

.quote-big
{
	margin:75px 4%; 
	padding:50px 2%;
}

.quote-p
{
	font-size:2em !important;
	text-align:center;
}

/******************************************************************/
header.main
{
	margin-left:4%;
	margin-top:150px;
	font-size:4em;
}

/******************************************************************/


.panel
{
	box-sizing:border-box;
	border-top:5px solid black;
	font-size:2em;
	padding:4%;
	margin:4%;
	text-align:right;
}


.panel-no-border
{
	box-sizing:border-box;
	font-size:2em;
	padding:4%;
	margin:4%;
	text-align:right;
}

.question
{
	font-size:0.8em !important;
	color:#fc0000;
	text-align: left;
}


.answer
{
	font-size:0.8em !important;
	margin-bottom:1em;
	text-align: left;
}

.breadcrumb
{
	font-size:2em;
	text-align:left;
	padding:20px 0px;
	border-bottom:5px solid black;
	margin:4% 4%;
}

.breadcrumb a
{
	color:#fc0000;
}


/*********************** PRODUCTS ********************************/


.product-list
{
	text-align:left;
	margin:2% 3.333%;
}

.product-category-title
{
	font-size:2em;
	text-align:left;
	padding:20px 0px;
	//border-top:5px solid black;
	border-bottom:5px solid black;
	margin:4% 1%;
}

.product-wrapper
{
	display:inline-block;
	vertical-align: bottom;
	width:100%;

}

.product-image
{
	width:100%;
	display:block;
	background-color:gray;
}

.product-image-wrapper
{
	overflow:auto;
	position:relative;
}

.product-info
{
	background-color:black;
	overflow:auto;
	padding:10px;
	border-top:5px solid white;
}

.product-price
{
	color:white;
	float:left;
}

.product-status
{
	color:white;
	float:right;
}

.product-description
{
	border-bottom:5px solid black;
	height:150px;
	overflow:auto;
	padding:10px;
	background-color:white;
	position:relative;	
}

.product-title
{
	float:left;
	color:black;
	font-size:1.5em;
	text-align:left;
}

button.product
{
	font-size:1em;
	padding:10px;
	position:absolute;
	bottom:10px;
	right:10px;
}

.product-buy img
{
	width:100%;
	display:block;
}

.product-stock-info
{
	padding:20px;
}

.product-feature
{
	position:absolute;
	top:20px;
	left:20px;
	background-color:red;
	padding:10px;
	font-size:1.2em;
	color:white;
}


/*********************** NOTES ********************************/


.note-list
{
	text-align:left;
	margin:2% 3.33%;
}

.note-category-title
{
	font-size:2em;
	text-align:left;
	padding:20px 0px;
	//border-top:5px solid black;
	border-bottom:5px solid black;
	margin:4% 1%;
}


.note-wrapper
{
	display:inline-block;
	width:100%;

}

.note-image
{
	width:100%;
	display:block;
	background-color:gray;
}

.note-image-wrapper
{
	overflow:auto;
	min-height:200px;
}

.note-info
{
	background-color:#000000;
	overflow:auto;
	padding:10px;
	border-top:5px solid white;
}

.note-number
{
	color:white;
	float:left;
}

.note-description
{
	border-bottom:5px solid black;
	height:150px;
	overflow:auto;
	padding:10px;
	background-color:white;
	position:relative;	
}

.note-title
{
	float:left;
	color:black;
	font-size:1.5em;
	text-align:left;
}


/*****************************************************************/

@media screen and (min-width: 1025px) /* Desktop */ 
{
	.columns
	{
  		webkit-column-count: 3; /* Chrome, Safari, Opera */
    	moz-column-count: 3; /* Firefox */
    	column-count: 3;
    }

    #content
    {
    	padding-bottom:100px !important;
    }

    #content header
    {
    	font-size:4em;
    	margin:5% 4%;
    }

    #content p
    {
    	font-size:1.2em;
    	line-height:1.5em;
    }

    .shelf
    {
    	min-height:500px;
    }

    .shelf span.top
	{
		font-size:3.5em;
		
	}

	.shelf span.bottom
	{
		font-size:3em;
	}

	#menu a
	{
		font-size:1.5em;
	}

	.columns.double
	{
		-webkit-column-count: 2 !important; /* Chrome, Safari, Opera */
	    -moz-column-count: 2 !important; /* Firefox */
	    column-count: 2 !important;
	}


	.columns ul li, .columns ol li
	{
		font-size:1.2em;
		line-height:2em;
	}

	.float-overflow
	{
		clear:none;
	}

	.product-wrapper
	{
		width:31.3%;
		margin:1%;
	}

	.note-wrapper
	{
		width:31%;
		margin:1%;
	}
}

@media screen and (min-width:600px) and (max-width: 1024px) /* Tablet */ 
{
	.columns
	{
  		webkit-column-count: 2; /* Chrome, Safari, Opera */
    	moz-column-count: 2; /* Firefox */
    	column-count: 2;
    }

    #content header
    {
    	font-size:3em;
    	margin:5% 4%;
    }

    #content
    {
    	padding-bottom:60px !important;
    }

    .shelf
    {
    	min-height:350px;
    }

    .shelf span.top
	{
		font-size:2.5em;
		
	}

	.shelf span.bottom
	{
		font-size:2em;
	}

	#menu a
	{
		font-size:1.5em;
	}

	.columns ul li, .columns ol li
	{
		font-size:1em;
		line-height:1.7em;
	}

	.last
	{
		margin-bottom:75px !important;
	}

	.columns.double
	{
		-webkit-column-count: 2 !important; /* Chrome, Safari, Opera */
	    -moz-column-count: 2 !important; /* Firefox */
    	column-count: 2 !important;
	}

	.product-wrapper
	{
		width:47.5%;
		margin:1%;
	}

	.note-wrapper
	{
		width:47.5%;
		margin:1%;
	}

}