/* .
. LAYOUT STYLESHEET
. 
. Contains rules for margins, padding, widths, block, and inline elements, etc. that will be used in all themes
. */


/* General Elements */
.content p,
.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
	margin-bottom: 10px;
}

.button,
.product-button {
	padding: 10px;
}

form.wp-block-search button {
	width: auto;
}
 
 
/* Global */
.logo,
.copyright,
.menu .menu-item,
.menu .menu-item a,
.phone,
.list-social {
	display: block;
	clear: both;
	text-align: center;
}

.wrap {
	width: 90%;
	margin: 0 5%;
}

.col-left,
.col-middle,
.col-middle-full,
.col-right {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

.menu > .menu-item .sub-menu {
	width: 100%;
	position: inherit;
	left: 0;
	right: 0;
}

.menu > .menu-item a {
	padding: 0 10px;
}

.list-social li {
	display: inline-block;
	width: 32px;
	height: 32px;
}


/* Content */ 


/* Sidebar */
.widgetarea {
	padding: 1%;
	margin-bottom: 1%;
}

.widget {
	padding-bottom: 2%;
}

.widget li {
	margin-bottom: 2px;
	padding: 2px 0;
}

.widget li .children {
	margin-left: 10px;
}

form.wp-block-search .wp-block-search__inside-wrapper {
	display: flex;
	align-items: center;
	gap: 5px;
	width: auto;
	padding: 2px 10px;
}


/* Footer */
footer {
	min-height: 80px;
}


/* Responsive CSS - Tablet Only */
@media screen and (min-width: 700px) and (max-width: 960px) {	

}


/* Responsive CSS - Tablet and Desktop */
@media screen and (min-width: 700px) {
	body {
		width: 100%;
	}

	.col-left,
	.col-middle,
	.col-middle-full {
		float: left;
		padding-top: 2%;
		padding-bottom: 2%;
	}

	.col-left {
		width: 25%;
	}

	.col-faux-left {
		margin-left: 25%;
	}

	.col-middle {
		width: 50%;
	}

	.col-middle-full {
		width: 70%;
		margin-left: 2%;
		padding-left: 2%;
	}

	.col-right {
		float: right;
		width: 23%;
		margin-left: 2%;
	}
	
	.button,
	.product-button,
	.menu > .menu-item,
	.menu > .menu-item a {
		display: inline-block;
	}
	
	
	/* Header */
	#header-top-inner,
	#header-main-inner {
		display: flex;
	}

	#header-top-inner {
		padding: 1% 0;
		justify-content: flex-end;
		gap: 10px;
	}

	#header-main-inner {
		padding: 2% 0;
		align-items: flex-end;
		gap: 30px;
	}

	#mainnav a {
		margin: 0 20px;
	}


	/* Content */
	body.page-template-template-cpt-products #content-main {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
		text-align: center;
	}

	body.page-template-template-cpt-products #content-main .product-container {
		padding: 2%;
	}

	body.page-template-template-cpt-products #content-main .product-container img {
		margin: 0 auto;
	}

	body.page-template-template-cpt-products #content-main .product-sort-wrap,
	body.page-template-template-cpt-products #content-main .navigation {
		grid-column: 1 / -1; 
	}

	body.page-template-template-cpt-products #content-main .product-sort-wrap {
		display: flex;
		justify-content: flex-end; 
	}

	body.page-template-template-cpt-products #content-main .product-sort-wrap form {
		width: auto;
		display: flex;
		align-items: center;
		gap: 10px;
	}

	body.page-template-template-cpt-products #content-main .product-sort-wrap form label {
		white-space: nowrap;
	}

	body.page-template-template-cpt-products #content-main .product-sort-wrap form select {
		width: auto;
		padding: 10px 25px;
	}
	
	
	/* Sidebar */
	form.wp-block-search {
		text-align: left;
	}


	/* Footer */
	#footer-top-inner,
	#footer-bottom-inner {
		padding: 1% 0;
		display: flex;
		gap: 20px;
	}

	#footer-top-inner > div {
		flex: 1;
	}

	#footer-top-inner .list-social {
		text-align: left;
	}

	#footer-bottom-inner {
		justify-content: center;
	}
}


/* Responsive CSS - Desktop Only */
@media screen and (min-width: 960px) {
	.wrap {
		width: 96%;
		margin: 0 2%;
	}
}