/*
Theme Name: Galactic Pizza
Theme URI: 
Author: Room 34 Creative Services, LLC
Author URI: http://room34.com
Description: 
Version: 1.0
License: Unauthorized use or redistribution is prohibited
License URI: 
Tags: 
Text Domain: 
*/

/*
COLORS:

Black: rgb(0,0,0);
Blue (light): rgb(77,179,217);
Gray (text): rgb(102,102,102);
Green (dark): rgb(10,104,45);
Green (medium): rgb(75,164,100);
Green (very dark): rgb(32,75,47);
Red: rgb(227,33,52);
Yellow: rgb(241,224,0);
Yellow (light): rgb(238,245,216);

*/

/* IMPORT */

@import url('css/reset.css');
@import url('//fonts.googleapis.com/css?family=Chicle');
@import url('fonts/millar/stylesheet.css');


/* STANDARD HTML */

body {
	background: rgb(10,104,45) url('images/bkgnd.png') center top repeat;
	background-size: 1024px 820px;
	color: rgb(102,102,102);
	font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
	font-size: 80%;
	line-height: 1.5em;
}

a, a:visited {
	color: rgb(227,33,52);
	text-decoration: none;
}

a:hover {
	color: rgb(75,164,100);
}

em, i { font-style: italic; }

h1, h2, h3, h4, h5, h6 {
	color: rgb(227,33,52);
	font-family: 'millar', sans-serif;
	font-weight: normal;
	letter-spacing: 0.05em;
	margin: 1.5em 0 0.5em 0;
	text-transform: uppercase;
}

h1 *, h2 *, h3 *, h4 *, h5 *, h6 * {
	color: rgb(227,33,52) !important;
}

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
	margin-top: 0;
}

h1 {
	font-size: 150%;
	margin-bottom: 1.5em;
}
h2 { font-size: 130%; }
h3 { font-size: 120%; }
h4 { font-size: 110%; }
h5 { font-size: 100%; }
h6 { font-size: 90%; }

hr {
	background: transparent url('images/rule.png') center center no-repeat;
	background-size: contain;
	border: none;
	color: transparent;
	height: 21px;
	margin: 1em 0;
	padding: 0;
	width: 100%;
}

img {
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	height: auto;
	max-width: 100% !important;
	width: auto;
}

p, ul, ol, dl {
	margin: 0 0 1.5em 0;
}

strong, b { font-weight: bold; }

sup {
	display: inline-block;
	font-size: 70%;
	line-height: 1.5em;
	margin: 0 1px;
	vertical-align: top;
}

table {
	border-collapse: collapse;
	clear: both;
	display: table;
	table-layout: static;
	width: 100%;
}

th, td {
	display: table-cell;
	padding: 0 1em 0.25em 0;
	text-align: left;
	vertical-align: top;
	width: 25%;
}

th {
	font-weight: bold;
	white-space: nowrap;
}

/* CUSTOM CSS CLASSES */

.alignleft {
	clear: both;
	float: left;
	margin: 0 5% 1em 0;
	width: 45%;
}

.alignright {
	clear: both;
	float: right;
	margin: 0 0 1em 5%;
	width: 45%;
}

.blog-link {
	text-align: center;
}

	.blog-link img {
		display: block;
		height: 60px;
		margin: 0 auto;
		width: 143px;
	}

article.content, .woocommerce-page #content {
	margin-bottom: 3em;
}

	.entry-header { }

	.entry-header h1, h2.widgettitle {
		text-align: center;
	}

	.entry-content {
		overflow-x: hidden;
		position: relative;
	}
	
		.entry-content ol, .entry-content ul { padding-left: 2em; }
		.entry-content ol { list-style: decimal !important; }
		.entry-content ul { list-style: square !important; }
		.entry-content li {
			clear: both;
			display: block;
			margin-bottom: 0.5em;
		}
		
		.entry-content a.home_order_link {
			background: rgba(0,0,0,0);
			display: block;
			overflow: hidden;
			position: absolute; top: 30%; right: 33%; bottom: 53%; left: 33%;
			text-indent: -999px;
		}
	
	.entry-meta {
		font-size: 85%;
		line-height: 1.5em;
		margin: 0.25em 0 1.5em 0 !important;
		opacity: 0.75;
	}

.post-navigation {
	display: block;
	height: 2em;
	position: relative;
	width: 100%;
}

	.nav-previous {
		display: block;
		position: absolute; top: 0; left: 0;
	}
	
	.nav-next {
		display: block;
		position: absolute; top: 0; right: 0;
	}

.product_title { font-size: 200%; }

.stretch {
	display: inline-block;
	font-size: 160%;
	letter-spacing: 0.05em;
	line-height: 1.3em;
	transform: scale(1,0.666);
}

.widget.simple-section-nav {
	margin-bottom: 2em;
	text-align: center;
	text-transform: uppercase;
}

	.widget.simple-section-nav ul {
		list-style: none;
		margin: 1em 2em;
		padding: 0;
	}
	
	.page-template-templatespage-bottom-subnav-php .widget.simple-section-nav ul {
		margin: 2em;
	}
	
	.widget.simple-section-nav li {
		border-left: 1px solid rgb(227,33,52);
		display: inline-block;
		margin-bottom: 0.5em;
		padding-left: 0.5em;
		padding-right: 0.3em;
	}
	
	.widget.simple-section-nav li:first-child, .widget.simple-section-nav li.clear {
		border-left: none;
		padding-left: 0.3em;
	}
	
	.page-template-templatespage-bottom-subnav-php .widget.simple-section-nav li {
		border-left: none !important;
		display: block !important;
		font-size: 125%;
		margin: 1.25em auto !important;
		padding: 0 !important;
	}
	
	.widget.simple-section-nav a, .widget.simple-section-nav a:visited {
		color: rgb(102,102,102);
		font-weight: bold;
	}
	.widget.simple-section-nav a:hover {
		color: rgb(227,33,52);
	}
	
	.page-template-templatespage-bottom-subnav-php .widget.simple-section-nav a,
	.page-template-templatespage-bottom-subnav-php .widget.simple-section-nav a:visited {
		color: rgb(227,33,52);
	}
	.page-template-templatespage-bottom-subnav-php .widget.simple-section-nav a:hover {
		color: rgb(75,164,100);
	}

	
	.widget.simple-section-nav .current_page_item a {
		color: rgb(75,164,100) !important;
	}

.wp-caption {
	max-width: 100% !important;
}

.woocommerce-breadcrumb,
.variations .label,
.product_meta .sku_wrapper, 
.woocommerce-tabs .tabs,
.woocommerce-tabs #tab-description h2:first-child
{ display: none; }


/* DOM ELEMENTS */

#wrapper {
	background: transparent;
	margin: 0 auto;
	max-width: 868px;
	overflow: hidden;
	width: 100%;
}

	#masthead {
		background: transparent url('images/header_no_text.png') center top no-repeat;
		background-size: contain;
		height: 260px;
		margin: 0 auto;
		padding: 0;
		position: relative;
		width: 100%;
	}
			
		#logo {
			background: transparent url('images/logo.png') center top no-repeat;
			background-size: contain;
			font-family: sans-serif; /* Needed to override special formatting for h1 font */
			height: 105px;
			margin: 0 auto;
			max-width: 674px;
			position: absolute; top: 85px; right: 0; bottom: auto; left: 0;
			text-indent: -999px;
			width: 90%;
			z-index: 2;
		}
		
			#logo a {
				display: block;
				position: absolute; top: 0; right: 0; bottom: 0; left: 0;
			}
	
		#primary_navigation {
			height: 95px;
			margin: 0 auto;
			max-width: 580px;
			position: absolute; top: 165px; right: 0; bottom: auto; left: 0;
			text-align: center;
			z-index: 3;
		}
		
			#primary_navigation .menu_handle { display: none; }
		
			#primary_navigation ul {
				list-style: none;
				padding: 0;
				text-align: center;
			}
			
			#primary_navigation li {
				display: inline-block;
				line-height: 2.25em;
				margin: 0 0 0 0.75em;
			}
				
			#primary_navigation a {
				font-family: 'Chicle', sans-serif;
				font-size: 175%;
				font-weight: 400;
				letter-spacing: 0.1em;
     			text-transform: uppercase;
				text-shadow:
					2px 2px 0 rgb(0,0,0),
					-1px -1px 0 rgb(0,0,0),
					1px -1px 0 rgb(0,0,0),
					-1px 1px 0 rgb(0,0,0),
					1px 1px 0 rgb(0,0,0);
			}
			
			#primary_navigation a:hover,
			#primary_navigation .current-menu-item a,
			#primary_navigation .current-page-item a,
			#primary_navigation .current-page-ancestor a
			{
				color: rgb(241,224,0);
			}
		
		#auxiliary_navigation {
			display: block;
			font-size: 160%;
			font-weight: normal;
			letter-spacing: 0.05em;
			margin: 0 auto;
			max-width: 720px;
			position: absolute; top: 15px; right: 0; bottom: auto; left: 0;
			text-transform: uppercase;
			z-index: 1;
		}
		
			#auxiliary_navigation a, #auxiliary_navigation a:visited {
				color: rgb(241,224,0);
				font-family: 'millar', sans-serif;
				text-shadow: 1px 1px 0 rgb(32,75,47);
			}
			
			#auxiliary_navigation li {
				position: absolute; top: 0; right: 0; bottom: auto; left: auto;
			}
			
			#auxiliary_navigation li:first-child {
				right: auto; left: 0;
			}
		
	#page {
		background: url('images/page.png') center top no-repeat,
					url('images/page_tile.png') center top repeat-y;
		background-size: contain;
		box-sizing: border-box;
		margin: -0.5px auto 0 auto; /* Fixes half pixel gap on high res displays */
		overflow: visible;
		padding: 40px 35px 0 45px;
		position: relative;
		width: 100%;
		z-index: 2;
	}
	
	.home #page {
		padding-bottom: 70px;
	}
	
	.home #home_header {
		position: relative;
	}
	
		.home #home_header > a {
			position: relative;
		}
		
		.home #home_header > h2 {
			color: #d3df33;
			line-height: 1.5em;
			position: absolute; top: 50%; left: 50%;
			text-align: center;
			transform: translateX(-50%);
		}
	
		#page_content {
			background: rgb(238,245,216);
			border: 3px solid rgb(227,33,52);
			border-radius: 20px;
			border-bottom-right-radius: 50% 120px;
			border-bottom-left-radius: 50% 120px;
			box-sizing: border-box;
			margin: -110px auto 0 auto;
			max-width: 538px;
			min-height: 590px; /* Prevents cutting off pizza slices on edges of frame */
			padding: 40px 40px 80px 40px;
			position: relative; bottom: -70px;
			width: 100%;
		}
		
		.home #page_content {
			background: transparent;
			border: 0;
			border-radius: 0;
			max-width: 620px;
			min-height: 0;
			padding: 0;
			text-align: center;
		}
	
		#colophon {
			clear: both;
			position: relative; top: 2em;
			text-align: center;
		}
		
			#menu-social-media-links {
				background: transparent url('images/social_banner.png') center center no-repeat;
				background-size: 300px 75px;
				height: 45px;
				list-style: none;
				margin: 0 auto;
				padding: 30px 0 0 0;
				width: 300px;
			}
			
				#menu-social-media-links li {
					display: inline-block;
					margin: 0.25em;
				}
				
				#menu-social-media-links a {
					background: transparent center center no-repeat;
					background-size: 30px 30px;
					border-radius: 5px;
					display: block;
					height: 30px;
					overflow: hidden;
					text-indent: -999px;
					width: 30px;
				}
				
				#menu-social-media-links a[href*='facebook'] { background-image: url('images/facebook_64.png'); }
				#menu-social-media-links a[href*='twitter'] { background-image: url('images/twitter_64.png'); }
				#menu-social-media-links a[href*='instagram'] { background-image: url('images/instagram_64.png'); }
				#menu-social-media-links a[href*='4sq'] { background-image: url('images/foursquare_64.png'); }
		
	#bottom {
		background: url('images/bottom.png') center bottom no-repeat;
		background-size: contain;
		height: 158px;
		margin: 0 auto;
		overflow: hidden;
		position: relative;
		text-indent: -999px;
		width: 100%;
		z-index: 1;
	}
	
		#bottom a {
			display: block;
			position: absolute; top: 0; right: 0; bottom: 0; left: 0;
		}

#tinymce {
	background: white;
	padding: 1em !important;
}

	#tinymce img {
		height: auto;
		max-width: 100%;
		width: auto;
	}


/* CSS3 MEDIA QUERIES */

/* PRINT */
@media print {

	/* Basic settings */	
	* {
		background: white !important;
		border: none !important;
		-moz-box-shadow: none !important;
		-webkit-box-shadow: none !important;
		box-shadow: none !important;
		color: black !important;
		text-shadow: none !important; 
		filter: none !important; 
		-ms-filter: none !important;
	}
	@page { margin: 10% 5%; }
	h1, h2, h3, p { orphans: 3; widows: 3; }
	h1, h2, h3 { page-break-after: avoid; }

}


/* TABLETS (content area under 900 pixels) */
@media screen and (max-width: 900px) {

	#wrapper { max-width: 800px; }
	#masthead { height: 240px; }
	#logo { max-width: 612px; top: 80px; }
	#primary_navigation { top: 150px; }
	#primary_navigation a { font-size: 150%; }
	.home #page_content { max-width: 560px; }
	#bottom { height: 146px; }
	
}


/* SMALL TABLETS (content area under 840 pixels) */
@media screen and (max-width: 840px) {
	
	#wrapper { max-width: 600px; }
	#masthead { height: 180px; }
	#logo { max-width: 460px; top: 60px; }
	#primary_navigation { max-width: 360px; top: 110px; }
	#primary_navigation li { margin-left: 0.75em; }
	#primary_navigation a { font-size: 110%; }
	#auxiliary_navigation { font-size: 150%; max-width: 800px; }
	
	#page { padding-bottom: 20px; }
	
	#page_content {
		max-width: 410px;
		padding: 25px 25px 80px 25px;
	}
	.home #page_content { max-width: 420px; }
	
	.home #home_header > h2 {
		font-size: 85%;
		line-height: 1.5em;
	}
	
	#bottom { height: 110px; margin-top: -1px; }
	
}


/* PHONES (content area under 640 pixels) */
@media screen and (max-width: 640px) {

	body { font-size: 70%; }
	
	th { white-space: normal; }
	
	#wrapper { max-width: 100%; }
	
	#masthead {
		height: 156px;
		left: 50%;
		margin-left: -260px;
		width: 520px;
	}
	
		#logo {
			top: 52px;
			width: 400px;
		}
	
		#primary_navigation {
			height: 40px;
			margin-top: -15px;
			min-width: 280px;
			width: 60%;
		}

		#auxiliary_navigation {
			font-size: 110%;
			max-width: 440px;
		}
	
	#page {
		left: 50%;
		margin-left: -260px;
		padding: 40px 15px 25px 15px;
		width: 520px;
	}
	
		#page_content {
			border-bottom-right-radius: 50% 80px;
			border-bottom-left-radius: 50% 80px;
			max-width: 300px;
			width: 100%;
		}

		.home #page_content { max-width: 320px; }
	
		.home #home_header > h2 {
			font-size: 65%;
			line-height: 1.5em;
		}
	
	#bottom {
		height: 96px;
		left: 50%;
		margin-top: -2px;
		margin-left: -260px;
		width: 520px;
	}

}


/* SMALL PHONES (content area under 480 pixels) */
@media screen and (max-width: 480px) {

	#logo {
		top: 48px;
		width: 300px;
	}
	
	#primary_navigation {
		margin-top: -15px;
	}
	
	#primary_navigation li {
		margin-left: 0.75em;
	}

	#auxiliary_navigation {
		font-size: 80%;
		max-width: 300px;
		top: 10px;
	}

	#menu-social-media-links {
		background-size: 240px 60px;
		height: 36px;
		padding: 24px 0 0 0;
		width: 240px;
	}
	
		#menu-social-media-links a {
			background-size: 24px 24px;
			height: 24px;
			width: 24px;
		}

}



/* HIGH RESOLUTION IMAGE REPLACEMENTS */
@media	only screen and (-moz-min-device-pixel-ratio: 1.5),
		only screen and (-o-min-device-pixel-ratio: 3/2),
		only screen and (-webkit-min-device-pixel-ratio: 1.5),
		only screen and (min-devicepixel-ratio: 1.5),
		only screen and (min-resolution: 1.5dppx)
{

	body { background-size: 512px 410px; }

	hr { background-image: url('images/rule_x2.png'); }

	.blog-link img {
		height: 40px;
		width: 95px;
	}

	#primary_navigation a {
		letter-spacing: 0.05em;
		text-shadow:
			1px 1px 0 rgb(0,0,0),
			-0.5px -0.5px 0 rgb(0,0,0),
			0.5px -0.5px 0 rgb(0,0,0),
			-0.5px 0.5px 0 rgb(0,0,0),
			0.5px 0.5px 0 rgb(0,0,0);
	}

	#menu-social-media-links { background-image: url('images/social_banner_x2.png'); }
}