/*
Theme Name:		saner-sa
Theme URI:		https://www.wcd.ch
Author:			weiss communication+design ag
Author URI:		https://www.wcd.ch/agentur/
Version:		5.2
Description:	saner-sa
License:		GNU General Public License v2.0 & Apache License 2.0
License URI:	http://www.gnu.org/licenses/gpl-2.0.html http://www.apache.org/licenses/LICENSE-2.0
Text Domain:	saner-sa
*/

body{
	overflow-y: scroll;
}
p:empty,
p:empty:before{
	display: none;
}
img{
	max-width: 100%;
	height: auto;
}

/* contact form 7 */
.wpcf7{
	position: relative;
}
.wpcf7-not-valid-tip{
	display: none !important;
}
div.wpcf7 .ajax-loader{
	position: absolute;
}
.wpcf7-spinner{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: auto;
	height: auto;
	border-radius: 0;
	margin: 0;
	background: none;
}
.wpcf7-spinner::before{
	z-index: 2;
	top: calc( 50% - 8px );
	left: calc( 50% - 8px );
}
.wpcf7-spinner::after{
	content: '';
	width: 24px;
	height: 24px;
	background: rgb(35 40 45 / 75%);
	display: block;
	position: absolute;
	z-index: 1;
	top: calc( 50% - 12px );
	left: calc( 50% - 12px );
	border-radius: 50%;
}
.wpcf7 form .wpcf7-response-output{
	margin: 24px 0 0;
	padding: 11px 16px;
	background: #F2F2F2;
	border: 0;
	border-left: 1px solid #DA3832 !important;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2143;
	color: var(--wp--preset--color--red-500);
}
.wpcf7 form.sent .wpcf7-response-output{
	display: none;
}
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output{
	color: #f00;
}
.wpcf7 form.spam .wpcf7-response-output{
	color: #f56e28;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output{
	color: #f00;
}
.wpcf7 .after-send{
	display: none;
}

header.wp-block-template-part{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1020;
	padding: 0;
	transition: transform .3s ease;
}
.scrolled header.wp-block-template-part{
	transform: translateY(-101%);
}
.scrolled.scrolling-up header.wp-block-template-part{
	transform: translateY(0%);
}
.scrolled.menu-open header.wp-block-template-part{
	transform: none;
}

#blog-filter{
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	margin-left: var(--snap);
	padding-left: var(--bs-offset);
	flex-wrap: wrap;
	background: #fff;
	font-size: 14px;
}
#blog-filter .count{
	padding: 10px 0;
}
#blog-filter .label{
	margin-right: 12px;
}
#blog-filter .dropdown + .dropdown{
	margin-left: 2px;
}
#blog-filter .dropdown .btn{
	padding: 20px 14px 19px;
	min-width: 120px;
	background: var(--wp--preset--color--gray-200);
	color: var(--wp--preset--color--gray-600);
}
#blog-filter .dropdown-toggle{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#blog-filter .dropdown-toggle::after{
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="7" fill="none" viewBox="0 0 14 7"><path stroke="%233d3d3d" stroke-linecap="square" d="M3.5 2.25 7 5.75l3.5-3.5"/></svg>');
	font-size: 0;
	line-height: 1;
	margin: 0;
	vertical-align: middle;
	border: 0;
}
#blog-filter .dropdown-menu{
	--bs-dropdown-link-active-bg: var(--bs-dropdown-link-hover-bg);
	min-width: 100%;
	background: var(--wp--preset--color--gray-200);
	border: 0;
	border-radius: 0;
}
#blog-filter .dropdown-item{
	font-size: 14px;
	color: var(--wp--preset--color--gray-600);
}

a.article-item{
	display: block;
	padding: 48px 0;
	border-bottom: 1px solid var(--wp--preset--color--gray-100);
	color: var(--wp--preset--color--gray-600);
	text-decoration: none;
}
a.article-item:last-child{
	border: 0;
}
a.article-item .category{
	font-size: 14px;
	color: var(--wp--preset--color--gray-500);
}
a.article-item h4{
	margin: 14px 0;
	color: var(--wp--preset--color--gray-700);
}
a.article-item .fake-link{
	display: inline-block;
	margin-top: 30px;
}

.author_info a{
	color: inherit;
}

.properties-filter{
	display: flex;
	align-items: center;
	margin: 0 0 8px;
	padding: 0 48px;
	background: var(--wp--preset--color--gray-200);
}
.properties-filter a{
	padding: 22px 24px;
	font-size: 20px;
	line-height: 1.3;
	color: var(--wp--preset--color--gray-700);
	text-decoration: none;
}
.properties-filter a.active{
	margin-top: -6px;
	background: #fff;
	border-top: 6px solid #fff;
}

a.property-item{
	display: block;
	padding: 30px 0;
	border-bottom: 1px solid var(--wp--preset--color--gray-100);
	color: #646464;
	text-decoration: none;
}
.property-item:last-child{
	border-bottom: 0;
}
.property-item .inner{
	padding: 18px 0;
	transition: background-color .3s ease;
}
.property-item h4{
	margin-bottom: 7px;
	color: var(--wp--preset--color--gray-600);
}

#propertyModal .modal-dialog{
	max-width: 1504px;
}
#propertyModal .modal-content{
	border: 0;
	border-radius: 0;
}
#propertyModal .modal-body{
	padding: 64px 48px;
}
#propertyModal button.btn-close{
	position: absolute;
	z-index: 10;
	top: 24px;
	right: 24px;
	opacity: 1;
	width: 6px;
	height: 6px;
}
#propertyModal h3{
	margin-bottom: 10px;
	color: var(--wp--preset--color--gray-700);
}

.swiper.gallery-main{
	margin-top: 24px;
	aspect-ratio: 1408/592;
	overflow: hidden;
}
.swiper.gallery-main .swiper-slide{
	background: #F2F2F2;
	text-align: center;
}
.swiper.gallery-main .swiper-slide img{
	width: auto;
	height: 100%;
}
.swiper.gallery-thumbs{
	height: 86px;
	margin-top: 8px;
	overflow: hidden;
}
.swiper.gallery-thumbs .swiper-slide{
	width: 132px;
	cursor: pointer;
}

@media( min-width: 992px ){
	.property-item:hover .inner{
		background-color: var(--wp--preset--color--gray-200);
	}
}

@media (max-width: 991px){
	.properties-filter{
		padding: 0 16px;
	}
	.properties-filter a{
		padding: 16px;
		font-size: 16px;
	}
	#blog-listing.latest .article-item:nth-child(3){
		display: none;
	}
}

@media (min-width: 768px) and (max-width: 991px){
	#blog-listing{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 30px;
	}
	a.article-item:nth-last-child(2):nth-child(odd){
		border: 0;
	}

	.properties-listing{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 30px;
	}
	a.property-item:nth-last-child(2):nth-child(odd){
		border: 0;
	}
}

@media (max-width: 767px){
	#blog-filter .count{
		width: 100%;
	}
	.properties-filter{
		overflow: auto;
		white-space: nowrap;
		margin: 0 var(--snap);
	}
	#propertyModal .modal-body{
		padding: 48px 24px;
	}
	.swiper.gallery-thumbs{
		height: 43px;
	}
	.swiper.gallery-thumbs .swiper-slide{
		width: 66px;
	}
	#propertyModal .modal-dialog{
		margin: 0;
	}
	.swiper.gallery-main,
	.swiper.gallery-thumbs{
		margin-left: -24px;
		margin-right: -24px;
	}
}