/* PRODUCT IMAGE FIX FOR PRESS-FASTENERS */

li.post-51597, li.post-33473, li.post-33475 {
    display: flex!important;
    flex-direction: column!important;
    justify-content: space-between!important;
    align-items: center!important;

}

li.post-51597 h2.woocommerce-loop-product__title {
    height: auto!important;
}


/* GUTENBERG */
html .has-white-color {
	color: #FFFFFF;
}
	html .has-white-color a,
	html .has-white-color .highlight {
		color: inherit;
		text-decoration: underline;
	}
	html .has-white-color .wp-block-button.is-style-outline .wp-block-button__link,
	html .has-white-color .outline,
	html .has-white-color .pagination .prev,
	html .has-white-color .pagination .next,
	html .has-white-color .wp-block-button.is-style-inline .wp-block-button__link::after {
		border-color: #FFFFFF;
		color: #FFFFFF !important;
	}
html .has-light-grey-color {
	color: #f7f7f7 !important;
}
html .has-dark-grey-color {
	color: #333333 !important;
}
html .has-dark-blue-color {
	color: #313646 !important;
}
html .has-bronze-color {
	color: #c39876 !important;
}
html .has-violet-color {
	color: #677192 !important;
}

html .has-white-background-color {
	background-color: #FFFFFF !important;
}
html .has-light-grey-background-color {
	background-color: #f7f7f7 !important;
}
html .has-dark-grey-background-color {
	background-color: #333333 !important;
}
html .has-dark-blue-background-color {
	background-color: #313646 !important;
}
html .has-bronze-background-color {
	background-color: #c39876 !important;
}
html .has-violet-background-color {
	background-color: #677192 !important;
}


html .has-small-font-size,
html .has-medium-font-size,
html .has-large-font-size,
html .has-huge-font-size {
	
}
html .has-small-font-size {
	
}
html .has-medium-font-size {
	/*font-size: 1.3em;*/
}
html .has-large-font-size {
	font-size: 1.7em;
}
html .has-huge-font-size {
	font-size: 2.2em;
}


html .highlight {
	color: #00AA00;
}


blockquote {
	
}
	blockquote cite {
		font-style: normal;
	}


/* near-full page content */
.fullpage {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-top: 2em; padding-bottom: 2em;
	min-height: 50vh;
}
	.fullpage > div {
		width: 100%;
	}


.wp-block-button {
	margin: 0 0 1em;
}

html .wp-block-button .wp-block-button__link,
html .wp-block-image figcaption a,
html input[type="submit"],
html input[type="button"],
html button[type="submit"],
html form button,
.woocommerce div.product form.cart .button,
.pagination .prev,
.pagination .next,
.block-link,
.hint-link {
	background: #313646;
	border: 0;
	border-radius: 0;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block;
	font-size: .9em;
	font-weight: normal;
	letter-spacing: .1em !important;
	line-height: 1.5em;
	padding: .6em 1.5em .6em;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: all .3s ease;
	width: auto;
}
	html .wp-block-button .wp-block-button__link img,
	html .wp-block-image figcaption a img,
	html button[type="submit"] img,
	html form button img,
	.woocommerce div.product form.cart .button img,
	.pagination .prev img,
	.pagination .next img,
	.block-link img {
		display: inline-block;
		margin: 0 .1em;
		filter: brightness(0) invert(1);
		vertical-align: middle;
		width: auto !important; height: 1em !important;
	}
.hint-link { /* changed to not be the all caps style late in dev */
	background-color: #f7f7f7;
	color: inherit;
	display: block;
	letter-spacing: 0 !important;
	margin: 0 0 1.5em;
	padding-right: 3em;
	position: relative;
	text-align: left;
	text-transform: none !important;
}
	.hint-link img {
		display: block;
		margin: 0 0 0 .5em;
		position: absolute; top: 50%; right: 1em;
		transform: translateY(-50%);
		vertical-align: middle;
		width: auto; height: 1.4em !important;
	}

html .wp-block-button.is-style-outline .wp-block-button__link,
.outline,
.pagination .prev,
.pagination .next {
	background: transparent;
	border: 1px solid #313646;
	color: #313646;
}
.pagination .prev {
	position: absolute; left: 0;
}
.pagination .next {
	position: absolute; right: 0;
}
html .wp-block-button.is-style-outline .wp-block-button__link:hover,
html .wp-block-button.is-style-outline .wp-block-button__link:focus,
.outline:hover,
.outline:focus,
.pagination .prev:hover,
.pagination .prev:focus,
.pagination .next:hover,
.pagination .next:focus {
	/*color: #313646 !important;*/
}

/* make image overlay links bordered instead! */
html .wp-block-image figcaption a {
	background: transparent;
	border: 1px solid #FFFFFF;
	font-weight: 500;
}



html .wp-block-button.is-style-inline {
	color: inherit;
	display: inline;
	margin: 0 0 1em;
}
	html .wp-block-button.is-style-inline .wp-block-button__link {
		background: transparent;
		border: none;
		color: inherit;
		font-size: inherit;
		font-weight: bolder;
		letter-spacing: 0 !important;
		margin: 0;
		padding: 0;
		position: relative;
		text-transform: none;
	}
	html .wp-block-button.is-style-inline .wp-block-button__link:hover,
	html .wp-block-button.is-style-inline .wp-block-button__link:focus {
		background: transparent;
		color: inherit;
	}
		html .wp-block-button.is-style-inline .wp-block-button__link::after {
			content: '';
			border-bottom: 1px solid #313646;
			position: absolute; top: 100%; left: 50%;
			transform: translateX(-50%);
			transition: all .3s ease;
			width: 0; height: 0;
		}
		html .wp-block-button.is-style-inline .wp-block-button__link:hover::after,
		html .wp-block-button.is-style-inline .wp-block-button__link:focus::after {
			width: 100%;
		}



.alignleft {
	float: left;
	margin: 0 1em 0 0;
}
.aligncenter {
	display: block;
	margin-right: auto; margin-left: auto;
	text-align: center;
}
.alignright {
	float: right;
	margin: 0 0 0 1em;
}



table.wp-block-table,
table.data {
	border: 1px solid #f2f2f2;
	border-collapse: collapse;
	margin: 0 0 1em;
}
	table.wp-block-table tr,
	table.data tr {
		
	}
		table.wp-block-table th,
		table.wp-block-table td,
		table.data th,
		table.data td {
			padding: .2em .4em;
			text-align: left;
		}
		table.wp-block-table th,
		table.data th {
			background: rgba(255,255,255,.5);
			color: #FFFFFF;
			border: 1px solid #FFFFFF;
			font-weight: inherit;
		}
		table.wp-block-table td,
		table.data td {
			border: 1px solid #cccccc;
		}


.wp-block-columns {
	margin: 0 -16px;
	text-align: initial;
}
	.wp-block-columns .wp-block-column {
		margin: 0 16px;
	}
	.wp-block-columns.nogutters .wp-block-column {
		margin: 0;
	}


.wp-block-source-container {
	padding: 0 0;
	position: relative;
}
	.wp-block-source-container .container > p:last-child {
		margin-bottom: 0;
	}


.text-column {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	-ms-flex-item-align:stretch!important;align-self:stretch!important;
	padding: 10%;
	text-align: center;
}
	.text-column > div {
		width: 100%;
	}


.wp-block-embed-vimeo {
	
}
	.wp-block-embed-vimeo iframe {
		margin-right: auto; margin-left: auto;
	}


/* --------------- IMAGE --------------- */
.wp-block-image {
	margin: 0 0;
	position: relative;
}
/*.format-basic .wp-block-image {
	margin-bottom: 0;
}*/
	.wp-block-image img {
		display: block;
		width: 100%;
	}
	.wp-block-image figcaption {
		text-align: center;
	}

.wp-block-image + p, .wp-block-image + h1, .wp-block-image + h2, .wp-block-image + h3, .wp-block-image + h4, .wp-block-image + h5, .wp-block-image + h6 {
	margin-top: 2rem;
}

.video-link {
	
}
	.video-link a:after {
		background: url('images/play.svg') center/contain no-repeat transparent;
		content: '';
		display: block;
		position: absolute; top: 50%; left: 50%;
		margin: -2rem 0 0 -3rem;
		transition: all .3s ease;
		width: 6rem; height: 4rem;
	}
	.video-link a:hover:after,
	.video-link a:focus:after {
		transform: scale(1.1);
	}

/* overlay caption text */
.wp-block-image.is-style-overlay figcaption {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: absolute; top: 0; right: 0; bottom: 0; left: 0;
	
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.45+100 */
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.45) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.45) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.45) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#73000000',GradientType=0 ); /* IE6-9 */
	
	color: #FFFFFF;
	font-size: inherit;
	margin: 0;
	padding: 0 8%;
	text-align: center;
	z-index: 2;
}
.wp-block-image.is-style-overlay img[src*="-1500x"] + figcaption {
    font-size: 2.25em;
    letter-spacing: .2em;
    text-transform: uppercase;
}
	.wp-block-image.is-style-overlay figcaption strong + br {
		display: none;
	}
	.wp-block-image.is-style-overlay figcaption strong {
		font-size: 1.5rem;
	}
	.wp-block-image.is-style-overlay figcaption a {
		font-size: 1rem;
		margin: 1em 0;
	}
	.wp-block-image.is-style-overlay figcaption a:last-child {
		margin-bottom: 0;
	}
	.wp-block-image.is-style-overlay figcaption h1, .wp-block-image.is-style-overlay figcaption h2, .wp-block-image.is-style-overlay figcaption h3, .wp-block-image.is-style-overlay figcaption h4, .wp-block-image.is-style-overlay figcaption h5, .wp-block-image.is-style-overlay figcaption h6 {
		font-family: inherit;
		font-size: 1em;
		font-weight: inherit;
		letter-spacing: inherit;
		margin: 0;
		text-transform: inherit;
	}

/* c ircle icons */
[class*="is-style-circle-icon"] {
	/*padding: 0 10%;*/
	position: relative;
}
	html [class*="is-style-circle-icon"] img {
		/*background: #FFFFFF;*/
		border: 1px solid #c39876;
		border-radius: 50%;
		margin: 0 auto 1em;
		width: auto; height: 12vw; max-height: 8em;
		transition: all .3s ease;
	}
	[class*="is-style-circle-icon"] a:hover img,
	[class*="is-style-circle-icon"] a:focus img {
		transform: scale(1.1);
	}
		[class*="is-style-circle-icon"] figcaption {
			color: inherit;
			font-size: 1em;
		}
			[class*="is-style-circle-icon"] figcaption b, 
			[class*="is-style-circle-icon"] figcaption strong {
				font-weight: 700;
				text-transform: uppercase;
			}

.is-style-circle-icon-bronze {
	
}
	html .is-style-circle-icon-bronze img {
		border: 0;
		filter: brightness(0) invert(1);
	}
	html .is-style-circle-icon-bronze:before {
		background: #c39876;
		border-radius: 50%;
		content: '';
		position: absolute; top: 0; left: 50%;
		transform: translateX(-50%);
		transition: all .3s ease;
		width: 12vw; max-width: 8em; height: 12vw; max-height: 8em;
	}



.wp-block-source-carousel .wp-block-source-carousel-slide {
	outline: 0 !important;
}

.wp-block-source-carousel.team {
	padding: 0 8%;
	text-align: center;
}
	.wp-block-source-carousel.team .wp-block-source-carousel-slide {
		padding: 0 .5em;
	}
	.wp-block-source-carousel.team h3 + h4 {
		color: #c39876;
		margin-top: -1em;
	}
	.wp-block-source-carousel.team .slick-arrow {
		border: 1px solid #e2e2e2;
		border-radius: 50%;
		filter: brightness(1) invert(0);
		top: 36%;
		max-width: 5vw; max-height: 5vw;
	}
		.wp-block-source-carousel.team .slick-arrow:before {
			background-position: center;
			max-height: 2.5vw;
		}
	.wp-block-source-carousel.team .slick-arrow.slick-prev {
		left: 0;
	}
		.wp-block-source-carousel.team .slick-arrow.slick-prev:before {
			background-image: url('images/chevron-left.svg');
		}
	.wp-block-source-carousel.team .slick-arrow.slick-next {
		right: 0;
	}
		.wp-block-source-carousel.team .slick-arrow.slick-next:before {
			background-image: url('images/chevron-right.svg');
		}


.intro {
	background: #FFFFFF;
	font-family: 'Butler', Georgia, Times, serif;
	margin: -4em auto 0;
	padding: 3em 10% 2em;
	position: relative;
	text-align: center;
	max-width: 80%;
	z-index: 501;
}


a:first-child:last-child {
	text-decoration: none;
}


p.is-style-uppercase {
	font-weight: bolder;
	letter-spacing: .1em;
	text-transform: uppercase;
}



.container-narrow > div {
	padding-right: 10%; padding-left: 10%;
}


.is-style-fullwidth {
	position: relative; left: 50%;
	transform: translateX(-50%);
	width: 100vw; max-width: none !important;
}
	.is-style-fullwidth iframe {
		width: 100%;
	}
	.is-style-fullwidth.wp-embed-aspect-4-3 iframe {
		height: 75vw;
	}
	.is-style-fullwidth.wp-embed-aspect-16-9 iframe {
		height: 56.3vw;
	}


.background-darken {
	position: relative;
}
	.background-darken > * {
		position: relative;
		z-index: 1;
	}
	.background-darken:after {
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.45+100 */
		background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.45) 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.45) 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.45) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#73000000',GradientType=0 ); /* IE6-9 */
		
		content: '';
		pointer-events: none;
		position: absolute; top: 0; right: 0; bottom: 0; left: 0;
		z-index: 0;
	}


@media only screen and (min-width: 767.98px) {
.path-bg,
.path-bg-2 {
	position: relative;
}
	.path-bg > *,
	.path-bg-2 > * {
		position: relative;
		z-index: 1;
	}
	.path-bg:after,
	.path-bg-2:after {
		background: url('images/path.svg') center/auto 100% no-repeat transparent;
		content: '';
		display: block;
		position: absolute; top: -20%; right: 0; bottom: -20%; left: 0;
		z-index: 0;
	}
	.path-bg-2:after {
		background-image: url('images/path_2.svg');
	}
}


/* vertical spacing */
html .padded,
.pagination {
	margin: 0;
	padding-top: 2rem; padding-bottom: 2rem;
}
html .padded-top {
	padding-top: 2rem;
}
html .padded-bottom {
	padding-bottom: 2rem;
}

html .padded.more {
	padding-top: 3rem; padding-bottom: 3rem;
}
html .padded.more-top,
html .padded-top.more-top {
	padding-top: 3rem;
}
html .padded.more-bottom,
html .padded-bottom.more-bottom {
	padding-bottom: 3rem;
}

html .padded.less {
	padding-top: 1rem; padding-bottom: 1rem;
}
html .padded.less-top,
html .padded-top.less-top {
	padding-top: 1rem;
}
html .padded.less-bottom,
html .padded-bottom.less-bottom {
	padding-bottom: 1rem;
}

html .padded.yield + .padded,
html .padded-bottom.yield + .padded,
html .padded.yield + .pagination,
html .padded-bottom.yield + .pagination {
	padding-top: 0 !important;
}


@media only screen and (min-width: 767.98px) {

html .padded,
.pagination {
	padding-top: 4rem; padding-bottom: 4rem;
}
html .padded-top {
	padding-top: 4rem;
}
html .padded-bottom {
	padding-bottom: 4rem;
}

html .padded.more {
	padding-top: 6rem; padding-bottom: 6rem;
}
html .padded.more-top,
html .padded-top.more-top {
	padding-top: 6rem;
}
html .padded.more-bottom,
html .padded-bottom.more-bottom {
	padding-bottom: 6rem;
}

html .padded.less {
	padding-top: 2rem; padding-bottom: 2rem;
}
html .padded.less-top,
html .padded-top.less-top {
	padding-top: 2rem;
}
html .padded.less-bottom,
html .padded-bottom.less-bottom {
	padding-bottom: 2rem;
}

.container-fluid-narrow {
	padding: 0 10%;
}

}




/* DEVELOPER'S EDITOR PREFERENCE */
.block-editor .block-editor-default-block-appender {
	background-color: rgba(100,100,100,.03);
}
.block-editor .wp-block-source-container,
.block-editor .wp-block-source-carousel,
.block-editor .wp-block-source-carousel-slide {
	/*padding-top: .5em; padding-bottom: .5em;*/
	padding-right: 3em; padding-left: 3em;
}

.block-editor .wp-block > .editor-block-list__block-edit {
	background-color: rgba(0,0,0,.03);
}
.block-editor .wp-block.is-hovered > .editor-block-list__block-edit {
	background-color: rgba(0,0,0,.04);
}
.block-editor .wp-block.is-selected > .editor-block-list__block-edit {
	background-color: none;
}
.block-editor .wp-block-shortcode {
	color: initial;
}

	/* if images have overlaid text */
	.block-editor .wp-block-image.is-style-overlay .editor-rich-text.block-editor-rich-text {
		position: absolute; top: 0; right: 0; bottom: 0; left: 0;
	}


li.post-51597, li.post-33473, li.post-33475 {
	display: flex!important;
    flex-direction: column!important;
    justify-content: space-between!important;
    align-items: center!important;
}

.term-press-fasteners .woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
	height: auto!important;
}