/************************************************
	Columns
************************************************/

.pwp-column {
	float: left;
	min-height: 1px;
	position: relative;
	box-sizing: border-box;
}
.pwp-columns-1 { width: 100%; float: none; }
.pwp-columns-2 { width: 50%; }
.pwp-columns-3 { width: 33.33%; }
.pwp-columns-4 { width: 25%; }
.pwp-columns-5 { width: 20%; }
.pwp-columns-6 { width: 16.66%; }

.pwp-columns-2:nth-child(2n+2),
.pwp-columns-3:nth-child(3n+2),
.pwp-columns-4:nth-child(4n+2),
.pwp-columns-5:nth-child(5n+2),
.pwp-columns-6:nth-child(6n+2) {
	clear: both;
}
.pwp-columns-2:nth-child(2n+2) article,
.pwp-columns-3:nth-child(3n+3) article,
.pwp-columns-4:nth-child(4n+4) article,
.pwp-columns-5:nth-child(5n+5) article,
.pwp-columns-6:nth-child(6n+6) article {
	margin-right: 0px !important;
}
.pwp-columns-2:nth-child(2n+1) article,
.pwp-columns-3:nth-child(3n+1) article,
.pwp-columns-4:nth-child(4n+1) article,
.pwp-columns-5:nth-child(5n+1) article,
.pwp-columns-6:nth-child(6n+1) article {
	margin-left: 0px !important;
}
.pwp-grid-spacer {
	width: 24px;
}
.pwp-masonry-wrapper.pwp-columns-2 {
	width: calc(50% - ( 24px * 1 / 2 ));
}
.pwp-masonry-wrapper.pwp-columns-3 {
	width: calc(33.33% - ( 24px * 2 / 3 ));
}
.pwp-masonry-wrapper.pwp-columns-4 {
	width: calc(25% - ( 24px * 3 / 4 ));
}
.pwp-masonry-wrapper.pwp-columns-5 {
	width: calc(20% - ( 24px * 4 / 5 ));
}
.pwp-masonry-wrapper.pwp-columns-6 {
	width: calc(16.66% - ( 24px * 5 / 6 ));
}

/************************************************
	Global
************************************************/

/* Micro Clearfix */
.clearfix:before, .clearfix:after { content: ''; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

.pwp-block > :first-child {
    margin-top: 0;
}
.pwp-block > :last-child {
    margin-bottom: 0;
}
.pwp-bg-overlay {
	position: absolute;
	top: 0; left: 0;
	pointer-events: none;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.pwp-featured-img {
	display: block;
	background-size: cover;
	background-position: center;
}
.pwp-featured-img .pwp-hide-img {
	display: block;
}
.pwp-featured-img .pwp-hide-img img {
	display: block;
	line-height: 0;
	opacity: 0;
}
.pwp-card {
	padding: 24px;
	box-sizing: border-box;
	overflow: hidden;
}
.pwp-columns-1 .pwp-card,
.pwp-columns-2 .pwp-card,
.pwp-columns-3 .pwp-card {
	padding: 36px;
}
.pwp-card > :first-child {
	margin-top: 0px;
}
.pwp-card > :last-child {
	margin-bottom: 0px;
}
.pwp-content .pwp-title {
	line-height: 1.2;
	margin-top: 0px;
	margin-bottom: 0px;
}
.pwp-content .pwp-title a {
	text-decoration: none;
}
.pwp-content .pwp-title a:hover {
	text-decoration: underline;
}
.pwp-content .pwp-text {
	position: relative;
	z-index: 6;
}
.pwp-content .pwp-excerpt {
	line-height: 1.65;
}
.pwp-content .pwp-excerpt:last-child > :last-child {
	margin-bottom: 0px;
}
.pwp-content .pwp-button a,
.pwp-content .pwp-button a:hover {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}
.pwp-content .post-edit-link {
	margin-bottom: 0px;
}
.pwp-pagination {
	display: inline-block;
	text-align: center;
	width: 100%;
}
.pwp-pagination .pagination {
	float: none;
	display: block;
	width: 100%;
	font-weight: bold;
	text-align: center;
	line-height: 36px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 12px auto;
	padding: 0px;
	position: relative;
	border: 1px solid rgba(0, 0, 0, 0.12);
	overflow: hidden;
	z-index: 7;
}
.pwp-pagination .pagination .page-numbers {
	float: left;
	background: #ffffff;
	color: #666666;
	min-height: 36px;
	min-width: 36px;
	line-height: 36px;
	text-decoration: none;
	margin: 0px;
	padding: 0px;
	border-radius: 0px;
	box-shadow: none;
	border-left: 1px solid #dddddd;
	border-left: 1px solid rgba(0, 0, 0, 0.12);
	border-right: none;
	border-top: none;
	border-bottom: none;
}
.pwp-pagination .pagination .page-numbers:first-child {
	border-left: none;
}
.pwp-pagination .pagination .page-numbers:hover,
.pwp-pagination .pagination .page-numbers:active,
.pwp-pagination .pagination .page-numbers.current {
	background: #eeeeee;
	color: #333333;
	min-height: 36px;
	min-width: 36px;
	line-height: 36px;
	padding: 0px;
	box-shadow: none;
}
.pwp-block .pwp-filter-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap-reverse;
	margin-top: 24px;
	margin-bottom: 24px;
}
.pwp-filter-buttons {
	display: flex;
	flex-wrap: wrap;
}
.pwp-filter-nav .pwp-button {
	margin: 2px;
	border: none;
}
.pwp-filter-nav .pwp-button:first-child {
	margin-left: 0px;
}
.pwp-filter-search input[type="text"] {
	background: rgba(0, 0, 0, 0.04);
	width: 100%;
	min-width: 180px;
	margin: 0px;
	padding: 12px;
	box-sizing: border-box;
}
.pwp-block .sharedaddy {
	display: none;
}

@media screen and (max-width: 768px) {
	.pwp-filter-nav {
		display: block;
	}
	.pwp-filter-buttons {
		font-size: 0.9rem;
		max-width: 100%;
		margin-bottom: 12px;
	}
	.pwp-filter-search {
		max-width: 100%;
		margin-bottom: 12px;
	}
}

/************************************************
	Style Presets
************************************************/

/* Orientation Style */

.pwp-orientation-horizontal .pwp-content {
	display: flex;
}
.pwp-orientation-horizontal .pwp-card {
	width: 100%;
}
.pwp-orientation-horizontal .pwp-featured-img {
	width: 100%;
	max-width: 50%;
}
.pwp-orientation-horizontal .pwp-featured-img .pwp-hide-img {
	margin: 0px;
	opacity: 0;
}

/************************************************
	Portfolio Block
************************************************/

.pwp-portfolio-item {
	display: flex;
	position: relative;
	line-height: 0;
	overflow: hidden;
}
.pwp-portfolio-item .pwp-content {
	display: flex;
	align-items: center;
	position: absolute;
	line-height: 1.4;
	width: 100%;
	height: 100%;
	padding: 24px;
	border: none;
	border-radius: 0;
	box-shadow: none;
	box-sizing: border-box;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
	-o-transition: all .25s ease-in-out;
	opacity: 0;
}
.pwp-portfolio-item:hover .pwp-content,
.pwp-portfolio-item .pwp-content:hover,
.pwp-portfolio-item:hover .pwp-pin-link {
	opacity: 1;
}
.pwp-portfolio-item .pwp-content .pwp-categories {
	margin: 6px 0 0 0;
}
.pwp-portfolio-item .pwp-content .pwp-categories > a {
	font-size: 75%;
	text-decoration: none;
	opacity: 0.6;
}
.pwp-portfolio-item .pwp-content .pwp-categories > a {
	opacity: 1;
}
.pwp-portfolio-item .pwp-portfolio-link,
.pwp-portfolio-item .pwp-portfolio-link:hover,
.pwp-portfolio-item:hover .pwp-portfolio-link {
	text-decoration: none;
}
.pwp-portfolio-item .pwp-featured-img {
	width: 100%;
	max-width: 100%;
}
.pwp-portfolio-item .pwp-featured-img img {
	width: 100%;
	height: auto;
}
.pwp-portfolio-item .pwp-pin-link {
	display: block;
	position: absolute !important;
	top: 12px; right: 12px;
	line-height: 0;
	margin: 0px;
	padding: 6px;
	z-index: 8 !important;
	cursor: pointer;
	overflow: hidden;
	transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
	-o-transition: all .25s ease-in-out;
	opacity: 0;
}
.pwp-portfolio-item .pwp-pin-link:hover {
	transform: scale(1.2);
}
.pwp-portfolio-item .pwp-pin-icon {
	position: relative;
	pointer-events: none;
	max-width: 18px;
}
.pwp-columns-3 .pwp-portfolio-item .pwp-excerpt {
	font-size: 90%;
}
.pwp-columns-4 .pwp-portfolio-item .pwp-excerpt,
.pwp-columns-5 .pwp-portfolio-item .pwp-excerpt,
.pwp-columns-6 .pwp-portfolio-item .pwp-excerpt {
	font-size: 80%;
}
.pwp-portfolio-item .pwp-content .pwp-excerpt p {
	margin-top: 8px;
	margin-bottom: 8px;
}
.pwp-masonry-off .pwp-masonry-container {
	height: auto !important;
}

/* Content Layout */

.pwp-content-position-below-image .pwp-portfolio-item {
	display: flex;
	flex-direction: column-reverse;
}
.pwp-content-position-above-image .pwp-portfolio-item {
	display: flex;
	flex-direction: column;
}
.pwp-content-position-above-image .pwp-portfolio-item .pwp-content,
.pwp-content-position-below-image .pwp-portfolio-item .pwp-content {
	display: block;
	position: relative;
	height: auto;
	opacity: 1;
}
.pwp-content-position-top .pwp-portfolio-item .pwp-pin-link,
.pwp-content-position-above-image .pwp-portfolio-item .pwp-pin-link {
	top: auto;
	bottom: 12px;
}

/* Content Alignment */

.pwp-portfolio.pwp-position-center-center .pwp-content {
	align-items: center;
	justify-content: center;
}
.pwp-portfolio.pwp-position-center-left .pwp-content {
	align-items: center;
	justify-content: flex-start;
}
.pwp-portfolio.pwp-position-center-right .pwp-content {
	align-items: center;
	justify-content: flex-end;
}

.pwp-portfolio.pwp-position-top-left .pwp-content {
	align-items: flex-start;
	justify-content: flex-start;
}
.pwp-portfolio.pwp-position-top-center .pwp-content {
	align-items: flex-start;
	justify-content: center;
}
.pwp-portfolio.pwp-position-top-right .pwp-content {
	align-items: flex-start;
	justify-content: flex-end;
}

.pwp-portfolio.pwp-position-bottom-left .pwp-content {
	align-items: flex-end;
	justify-content: flex-start;
}
.pwp-portfolio.pwp-position-bottom-center .pwp-content {
	align-items: flex-end;
	justify-content: center;
}
.pwp-portfolio.pwp-position-bottom-right .pwp-content {
	align-items: flex-end;
	justify-content: flex-end;
}

/************************************************
	Mobile Styles
************************************************/

@media screen and (max-width: 768px) {
	.pwp-columns-2,
	.pwp-columns-3,
	.pwp-columns-4,
	.pwp-columns-5,
	.pwp-columns-6,
	.pwp-masonry-wrapper.pwp-columns-2,
	.pwp-masonry-wrapper.pwp-columns-3,
	.pwp-masonry-wrapper.pwp-columns-4,
	.pwp-masonry-wrapper.pwp-columns-5,
	.pwp-masonry-wrapper.pwp-columns-6 {
		float: none;
		width: 100% !important;
	}
	.pwp-columns-2 .pwp-content,
	.pwp-columns-3 .pwp-content,
	.pwp-columns-4 .pwp-content,
	.pwp-columns-5 .pwp-content,
	.pwp-columns-6 .pwp-content {
		margin-left: 0px !important;
		margin-right: 0px !important;
	}
}
