:root {
	--post-side-margin: 40px;
	--testimonial-avatar-size: 50px;
}

#page-wrapper {
	padding: 60px 80px 120px;
	margin: 0 auto;
	max-width: 1600px;
}	
#page-wrapper::after {
	content: '';
	display: block;
	clear: both;
}

	/*------------*/
	/*MOBILE MENU*/
	/*----------*/
	#mobile-menu-toggle {
		position: fixed;
		top: 30px;
		right: 30px;
		width: 30px;
		height: 30px;
		cursor: pointer;
		z-index: 101;
		display: none;
	}
		#menu-icon {
			position: absolute;
			top: 50%;
			left: 0;
			width: 100%;
			height: 2px;
			background: var(--text-color);
			transform: translate3d(0,-50%,0);
			border-radius: 25px;
			transition: background .3s;
		}
			/*CLOSE*/
			body.mobile-menu-open #menu-icon {
				background: transparent;	
			}
		#menu-icon::before {
			content: '';
			display: block;
			position: absolute;
			bottom: 9px;
			left: 0;
			width: 100%;
			height: 2px;
			background: var(--text-color);
			border-radius: 25px;
			transition: bottom .3s, transform .3s;
		}
			/*CLOSE*/
			body.mobile-menu-open #menu-icon::before {
				bottom: 0px;
				transform: rotate(45deg);
			}
		#menu-icon::after {
			content: '';
			display: block;
			position: absolute;
			top: 9px;
			left: 0;
			width: 100%;
			height: 2px;
			background: var(--text-color);
			border-radius: 25px;
			transition: top .3s, transform .3s;
		}
			/*CLOSE*/
			body.mobile-menu-open #menu-icon::after {
				top: 0px;
				transform: rotate(-45deg);
			}
			
	#mobile-menu {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 100;
		background: var(--bg-color);
		text-align: center;
		padding: 12vh 0 10vh;
		height: 100%;
		overflow: hidden;
		box-sizing: border-box;
		display: none;
	}
	
		#mobile-menu a {
			color: var(--text-color);
			text-decoration: none;
		}
		
			/*SHOP*/ /*EMAIL*/ /*PHONE*/
			#mobile-shop-link,
			#mobile-mailto-link,
			#mobile-phone-text-link {
				display: block;
				font-size: 26px;
				padding: 10px 0;
				opacity: .85;
				transition: opacity .3s, transform .6s;
				transform: translate3d(0, -20px,0);
			}
			#mobile-shop-link:hover,
			#mobile-mailto-link:hover,
			#mobile-phone-text-link:hover {
				opacity: 1;	
			}
			
			body.mobile-menu-open #mobile-shop-link,
			body.mobile-menu-open #mobile-mailto-link,
			body.mobile-menu-open #mobile-phone-text-link {
				transform: translate3d(0,0,0);	
			}
			
				/*SHOP ARROW*/
				#mobile-shop-link span {
					font-size: 60%;
					vertical-align: middle;
					padding-left: 5px;
					margin-right: -2em;
				}

			/*SOCIAL*/
			#mobile-social {
				margin: 40px 0;
			}
				#mobile-social a {
					font-size: 26px;
					padding: 0 12px;
					opacity: .85;
					transition: opacity .3s, padding .6s;
				}
				#mobile-social a:hover {
					opacity: 1;		
				}
				body.mobile-menu-open #mobile-social a {
					padding: 0 10px;
				}
				
		/*MOBILE WEATHER + LOCATION*/
		#mobile-weather-location-time {
			position: fixed;
			bottom: 5vh;
			left: 0;
			width: 100%;
			transition: transform .6s;
		}
		body.mobile-menu-open #mobile-weather-location-time {
			transform: translate3d(0,-5vh,0);	
		}
			/*TOP + BOTTOM TEXT*/
			#mobile-weather-location-time .weather-head-feet {
				display: block;
				opacity: .5;
				font-size: 16px;
				padding: 10px 0;
			}
			
			/*LOCATION*/
			#mobile-location-span {
				display: block;
				font-size: 22px;
			}
			
			/*WEATHER*/
			#mobile-weather-span {
				font-size: 22px;
				padding-right: 10px;
			}
				#mobile-weather-span sup {
					font-size: 50%;
				}
			
			/*TIME*/
			.time-span {
				font-size: 22px;
			}

	/*AVATAR + NAME*/
	#avatar_name {	
	    line-height: 44px;
	    height: 44px;
	    display: inline-block;
	}
		#avatar_name img {
			display: inline-block;
			width: 44px;
			height: 44px;
			border-radius: 50%;
			margin-right: 12px;
			vertical-align: top;
		}
		#avatar_name h3 {
			font-size: 24px;
			display: inline-block;
			vertical-align: baseline;
			font-weight: 500;
			color: var(--text-color);
		}
		#avatar_name img.image-based-name {
			width: auto;
			border-radius: 0;
		}
	
	/*SOCIAL + SHOP*/
	#social-shop {
		float: right;
	}
	
		#social-shop a {
			color: var(--text-color);
			display: inline-block;
			font-size: 22px;
			padding: 0 12px;
			line-height: 40px;
			text-decoration: none;
			position: relative;
			width: 25px;
			text-align: center;
		}
			#social-shop a:not(#shop-link):after  {
				content: '';
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate3d(-50%,-50%,0) scale(0);
				width: 100%;
				height: 0;
				padding-bottom: 100%;
				background: var(--bg-color);
				z-index: -1;
				border-radius: 50%;
				transition: transform .3s;
			}
			#social-shop a:not(#shop-link):hover:after  {
				transform: translate3d(-50%,-50%,0) scale(1);	
			}
			
		#social-shop #shop-link {
			background: var(--text-color);
			color: var(--bg-color);
			border-radius: 25px;
			font-size: 16px;
			line-height: 40px;
			padding: 0 18px;
			letter-spacing: .5px;
			margin-left: 18px;
			vertical-align: top;	
			transition: background .3s, color .3s;
			width: auto;
			text-align: left;
		}
		#social-shop #shop-link:hover {
			background: var(--bg-color);
			color: var(--text-color);
		}
			#social-shop #shop-link span {
				display: inline-block;
				padding: 0 0 0 22px;
				font-size: 80%;
				line-height: 1em;
			}
		
		
	/*TITLE + SUBTITLE*/
	#title-subtitle {
		margin-top: 60px;
		max-width: 600px;
		
		margin-top: 55px; /*adjusted for line-height*/
	}
		#title-subtitle h1 {
			font-size: 42px;
			font-weight: 400;
			line-height: 1.22em;
			
			font-size: 48px;
			
			width: 660px;
		}
		
			.alternating-text {
				display: none;
			}
			.alternating-text.active-text {
				display: inline-block;
				position: relative;
			}
			.alternating-text.active-text:after {
				content: '';
				display: block;
				position: absolute;
				top: 100%;
				left: 0;
				width: 100%;
				height: 3px;
				border-radius: 25px;
				background: var(--text-color);
			}
			.typed_cursor {
				font-weight: lighter;
			}
		
		#title-subtitle p {
			margin-top: 25px;
			opacity: .85;
			letter-spacing: .5px;
			font-size: 16px;
			line-height: 1.5em;
		}
		
		#title-subtitle a {
			color: var(--text-color);
			text-decoration: none;
			border-bottom: 1px dotted var(--text-color);
		}
		#title-subtitle a:hover {
			color: var(--text-color);
			border-bottom: 1px solid var(--text-color);
		}
		
	
	/*WEATHER + LOCATION + TIME*/
	#weather-location-time {
		float: right;
		text-align: right;
		font-size: 22px;
		letter-spacing: .5px;
		margin: 60px 0 0;
		clear: right;
	}	
		#weather-location-time span {
			padding-left: .25ch;
		}
	
		#weather-location-time .weather-head-feet {
			display: block;
			opacity: .85;
			font-size: 16px;
			line-height: 2.25em;	
		}
		#weather-location-time img {
			width: 30px;
			height: 30px;
			display: inline-block;
			object-fit: cover;
			border-radius: 50%;
			vertical-align: top;
			margin-right: 8px;
			transform: translate3d(0,-2px,0);
		}
		#weather-location-time sup {
			font-size: 12px;
			font-weight: 500;
		}		
		
		
		
	/*CONTACT INFO*/
	#contact-info {
		margin-top: 40px;
	}
	
		#mailto-link {
			text-decoration: none;
			color: var(--bg-color);
			background: var(--text-color);
			display: inline-block;
			border-radius: 25px;
			padding: 0 30px;
			line-height: 50px;
			font-weight: 500;
			margin-right: 30px;
			transition: background .3s, color .3s;
		}
		#mailto-link:hover {
			background: var(--bg-color);
			color: var(--text-color);
		}
		#phone-text-link {
			display: inline-block;
			line-height: 50px;
			color: var(--text-color);
			text-decoration: none;
		}
		
		
	/*AVAILABILITY*/
	#availability {
		margin-top: 20px;
		font-size: 12px;
	}
		#availability span {
			opacity: .85;
		}
		
		#availability.yes:before,
		#availability.no:before {
			content: '';
			display: inline-block;
			width: 10px;
			height: 10px;
			border-radius: 50%;
			margin-right: 10px;
		}	
		
		#availability.yes:before {
			background: #95cd71;
		}	
		#availability.no:before {
			background: #cd7171;
		}	
	
		#availability a {
			color: var(--text-color);
			text-decoration: none;
			border-bottom: 1px dotted var(--text-color);
		}
		#availability a:hover {
			border-bottom: 1px solid var(--text-color);
		}

/*------------------------*/ /*----------------------------------------------------*/
/*--ORGANIZE MODE STUFF--*/ /*----------------------------------------------------*/
/*----------------------*/ /*----------------------------------------------------*/
#organize-mode {
	float: right;
	color: var(--text-color);
	text-decoration: none;
	font-weight: 600;
	letter-spacing: .25px;
	margin-top: 130px;
	line-height: 28px;
	display: block;
	font-size: 14px;
}
	#organize-mode span {
		display: inline-block;
		background: var(--text-color);
		color: var(--bg-color);
		border-radius: 25px;
		height: 28px;
		width: 60px;
		vertical-align: top;
		margin-left: 10px;
		position: relative;
		transition: color .3s, background .3s;
	}
	#organize-mode.orgainze-off span {
		background: var(--bg-color);
		color: var(--text-color);
	}
	/*LABEL*/
	#organize-mode.orgainze-on span::before {
		content: 'On';
		position: absolute;
		top: 0;
		left: 8px;
		font-size: 12px;
		font-weight: 500;
	}
	#organize-mode.orgainze-off span:before {
		content: 'Off';
		position: absolute;
		top: 0;
		right: 9px;
		font-size: 12px;
		font-weight: 500;
	}
	/*INDICATOR*/
	#organize-mode span::after {
		content: '';
		display: block;
		width: 22px;
		height: 22px;
		background: var(--bg-color);
		border-radius: 50%;
		position: absolute;
		top: 3px;
		left: calc(100% - 25px);
		transition: left .3s, background .3s;
	}
		#organize-mode.orgainze-off span:after {
			left: 4px;	
			background: var(--text-color);
		}


/*--------------------*/ /*----------------------------------------------------*/
/*-- FILTERS STUFF --*/ /*----------------------------------------------------*/
/*------------------*/ /*----------------------------------------------------*/
#filters-container {
	margin: 130px 0 0;
	margin-bottom: -150px;
	padding-bottom: 50px;
}

	#filters-container .filter-avatar,
	#scroll-filters-container .filter-avatar {
		border-radius: 50%;
		width: 44px;
		height: auto;
		object-fit: cover;
		display: none;
		margin: 3px;
		float: left;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
		transition: all .3s;
		transform: scale(.5);
		opacity: 0;
	}
	
	#filters-container ul {
		list-style: none;
		margin-left: -10px;
	}	
		#filters-container li {
			display: inline-block;
			margin: 0 10px;
		}
			#filters-container li a {
				text-decoration: none;
				color: var(--text-color);
				opacity: .8;
				transition: opacity .3s;
				border-bottom: 1px solid transparent;	
				padding-bottom: 3px;
			}
			
			#filters-container ul li a:hover {
				opacity: 1;	
			}
			#filters-container ul li a.active-filter {
				opacity: 1;
				border-bottom-color: var(--text-color);
			}
		
		
	/*SCROLL FILTERS*/
	#scroll-filters-container {
		position: fixed;
		top: 30px;
		left: 30px;
		margin: 0;
		background: var(--text-color);
		border-radius: 25px;
		color: var(--bg-color);
		z-index: 2;
		padding: 0;
		cursor: pointer;
		transition: transform .3s;
		transform: translate3d(calc((100% + 30px) * -1),0,0);
	}
	body.show-scroll-tools #scroll-filters-container {
		transform: translate3d(0,0,0);
	}
		/*IMG*/
		#scroll-filters-container .filter-avatar {
			display: block;
		}
		#scroll-filters-container.closed .filter-avatar {
			transform: scale(1);
			opacity: 1;
		}
		
		/*UL*/
		#scroll-filters-container ul {
			/*
			width: calc(100% - 44px - 6px);
			float: left;
			*/
			margin: 0;
			padding:0 56px 20px 12px;
			box-sizing: border-box;
			transition: padding .3s;
			padding: 0 0 20px;
			max-height: 90vh;
			overflow: scroll;
			-webkit-overflow-scrolling: touch;
		}
		/*FILTER TEXT*/
		#scroll-filters-container ul::before {
			content: 'Filter Content';
			line-height: 50px;
			height: 50px;
			font-size: 16px;
			padding: 0 25px 0 60px;
			transition: all .3s;
			overflow: hidden;
			display: block;
			white-space: nowrap;
			text-overflow: ellipsis;
			background-image: url('../images/mobile-filter-close.svg');
			background-repeat: no-repeat;
			background-position: 15px;
			background-size: 21px;
		}
		#scroll-filters-container.closed ul::before {
			height: 0;
			width: 0;
			background-size: 0px;
		}
		
		/*BORDER LINE*/
		#scroll-filters-container ul::after {
			background: #e5e5e5;
			content: '';
			display: block;
			position: absolute;
			top: 50px;
			left: 0;
			width: 100%;
			height: 1px;
			transition: height .3s;
		}
		#scroll-filters-container.closed ul {
			padding: 0;
		}
		#scroll-filters-container.closed ul::after {
			height: 0;
		}
				
			/*LI*/	
			#scroll-filters-container li {
				display: block;
				margin: 0;
				padding: 0;
			}
			
				/*a*/
				#scroll-filters-container li a {
					color: var(--bg-color);
					font-size: 30px;
					padding: 0 62px;
					line-height: 56px;
					height: 56px;
					opacity: 1;
					position: relative;
					transition: all .3s;
					overflow: hidden;
					white-space: nowrap;
					text-overflow: ellipsis;
					display: block;
					border: none;
					text-decoration: none;
				}
				/*RIGHT ARROW*/
				#scroll-filters-container ul li a.active-filter::before,
				#scroll-filters-container ul li a:hover:before {
					content: '';
					display: block;
					width: 62px;
					height: 56px;
					position: absolute;
					left: 0;
					top: 0;
					background-image: url('../images/mobile-filter-right-arrow.svg');
					background-repeat: no-repeat;
					background-position: 21px center;
				}
				/*CLOSED*/
				#scroll-filters-container.closed li a:not(.active-filter) {
					height: 0;
					width: 0;
					padding: 0;
				}
				#scroll-filters-container.closed li a.active-filter {
					background-image: url('../images/mobile-filter-down-arrow.svg');
					background-repeat: no-repeat;
					background-position: calc(100% - 20px) center;
					font-size: 16px;
					padding: 0 42px 0 62px;
					height: 50px;
					line-height: 50px;
				}
				#scroll-filters-container.closed ul li a.active-filter::before,
				#scroll-filters-container.closed ul li a:hover:before {
					display: none;
				}
		
/*-----------------*/ /*----------------------------------------------------*/
/*-- POST STUFF --*/ /*----------------------------------------------------*/
/*---------------*/ /*----------------------------------------------------*/
.results-list {
	padding: 150px 0;
}	
	
	.inner-results-list {
	    margin-left: calc(var(--post-side-margin) * -1);
	    width: calc(100% + (var(--post-side-margin) * 2));
	}
	
	
	.inner-results-list .post,
	.inner-results-list .grid-sizer {
		width: 33.33%;
	}

	.inner-post {
		padding: var(--post-side-margin);
	}
	
		/*ORG OFF IMGS*/
		.org-off-link img {
			border-radius: 3px;
			height: auto;
			width: 100%;
		}
		
		/*ORG OFF VIDEOS*/
		.org-off-link video {
			border-radius: 3px;
			height: auto;
			width: 100%;
			background-color: #000;
		}
	
		/*COMPANY DETAILS*/
		.company-details {
			display: block;
		}
			.company-name {
				color: var(--text-color);
			}
		
		.inner-results-list .post:nth-child(1) .company-details,
		.inner-results-list .post:nth-child(2) .company-details,
		.inner-results-list .post:nth-child(3) .company-details {
			margin-top: -59px;
		}
		
		
	
		/*IMAGE GALLERY*/
		.small-image-gallery {
			width: 100%;
		}
			.main-preview {
				width: 100%;
				height: 0;
				padding-bottom: 80%;
				margin-bottom: 20px;
				position: relative;
				overflow: hidden;
			}
				.main-preview img {
					border-radius: 3px;
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					object-fit: contain;
					height: auto;
				}
				.main-preview img.cover {
					height: 100%;
				}
				
				.main-preview video {
					border-radius: 3px;
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					object-fit: contain;
					height: auto;
					background-color: #000;
				}
				.main-preview video.cover {
					height: 100%;
				}
				
			.gallery-thumbs {
				white-space: nowrap;
				overflow: scroll;
				padding-bottom: 1px;
			}
				.gallery-thumbs a {
					display: inline-block;
					width: 55px;
					height: 42px;
					margin: 0 8px 0 0;
					padding-bottom: 7px;	
					border-bottom: 1px solid transparent;
					overflow: hidden;
					cursor: default;
				}
				.gallery-thumbs a.active-gallery-link {
					border-bottom: 1px solid #fff;
				}
				
					.gallery-thumbs img {
						display: inline-block;
						width: 55px;
						height: 42px;
						object-fit: cover;
						border-radius: 3px;
					}
					
			/*PLUS MORE*/
			.plus-more {
				display: inline-block;
				width: 55px;
				height: 42px;
				line-height: 42px;
				text-align: center;
				vertical-align: top;
				text-decoration: none;
				color: var(--text-color);
				font-weight: 500;
				opacity: .5;
				transition: opacity .3s;
			}
			.plus-more:hover {
				opacity: 1;	
			}

				
				
		/*TITLE*/
		.small-post-title {
			font-size: 24px;
			font-weight: 400;
			letter-spacing: .5px;
			margin: 10px 0 20px;
			line-height: 1.2em;
		}
			.small-post-title a {
				text-decoration: none;
				color: var(--text-color);
			}
	
		
		/*TAGS*/
		.post-tag-list {
			opacity: .5;
		}
	
	
	/*-------------------------------*/ /*----------------------------------------------------*/	
	/*-- EXTERNAL LINK POST STUFF --*/ /*----------------------------------------------------*/
	/*-----------------------------*/ /*----------------------------------------------------*/
	a.link-container {
		display: block;	
		color: var(--text-color);
		text-decoration: none;
	}
		
		a.link-container video {
			width: 100%;
			display: block;
			background-color: #000;
		}

		a.link-container img {
			display: block;
		}
		
		.link-content-container {
			background: var(--bg-color);
			padding: 30px;
			position: relative;
			line-height: 1.5em;
		}
		.link-content-container > * {
			position: relative;
			z-index: 1;
		}
		
		.link-content-container::after {
			content: '';
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 0;
			background: var(--opacity-bg);
			background: var(--post-bg-color);
		}
			
		
			.external-link-meta {
				font-size: 13px;
				margin-bottom: 10px;
			}
				.external-link-title {
					line-height: 1.1em;				
				}
				.external-link-date {
					opacity: .5;
				}
				
			.link-content-container .small-post-title {
				margin-bottom: 10px;
			}
				.link-content-container .small-post-title span {
					font-size: 80%;
					vertical-align: middle;
					padding-left: 5px;
				}
				.link-content-container .small-post-title svg {
					font-size: 50%;
					vertical-align: middle;
					padding-left: 5px;
				}
	
			.link-content-container p {
				opacity: .5;
				margin-bottom: 10px;
			}
			.link-content-container a {
				color: inherit;
				text-decoration: none;
			}
			
			.link-content {
				margin-bottom: 15px;
				position: relative;
				z-index: 1;
			}
	
	/*-----------------------*/ /*----------------------------------------------------*/	
	/*-- ABOUT POST STUFF --*/ /*----------------------------------------------------*/
	/*---------------------*/ /*----------------------------------------------------*/
	.about-container {
		border-radius: 3px;
		overflow: hidden;
	}
		.about-iframe-container {
			position: relative;
			width: 100%;
			height: 0;
			padding-bottom: 56.25%;
			overflow: hidden;
			border-radius: 3px 3px 0 0;
			cursor: pointer;
		}
			.about-iframe-container iframe,
			.about-iframe-container img {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;	
				transition: transform .3s;
				object-fit: cover;
			}
			.about-iframe-container:hover img {
				transform: scale(1.1);
			}
			
			.watch-video {
				position: absolute;
				z-index: 1;
				top: 0;
				left: 0;
				padding: 15px 20px 15px 30px;
				color: var(--bg-color);
				border-radius: 0 0 3px 0;
				font-size: 14px;
				background-color: var(--text-color);
				background-image: url('../images/play-arrow.svg');
				background-repeat: no-repeat;
				background-position: 15px 19px;
			}
			
		.about-content {
			background: var(--bg-color);
			padding: 30px;
			position: relative;
			line-height: 1.5em;
		}
			
			.about-content > h2 {
				font-size: 13px;
				font-weight: 500;
				line-height: 1.3em;
			}
			.about-content > h1,
			.about-content > h3,
			.about-content > h4,
			.about-content > h5,
			.about-content > h6 {
				font-size: 13px;
				font-weight: 500;
				line-height: 1.3em;
				margin: 0 0 15px;
			}

			
			.has-small-font-size {
			    line-height: 1.3em;
			}
			
			.about-content p {
				margin-bottom: 0;
				margin-top: 10px;
			}			
			.about-content h2 + p {
				margin-top: 0;
			}
			
			.about-content ul,
			.about-content ol {
				padding: 0 0 0 15px;
				margin-bottom: 30px;
			}
				.about-content li {
					margin-bottom: 3px;
				}
			
			.about-content a {
				color: var(--text-color);
				border-bottom: 1px dotted var(--text-color);
			}
			.about-content a:hover {
				color: var(--text-color);
				border-bottom: 1px solid var(--text-color);
			}

		
		.about-content:after {
			content: '';
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 0;
			background: var(--opacity-bg);
			background: var(--post-bg-color);
		}
			.about-content > * {
				position: relative;
				z-index: 1;
			}
		
			.about-content p {
				padding-bottom: 10px;	
			}
	
	
	/*-----------------------------*/ /*----------------------------------------------------*/	
	/*-- TESTIMONIAL POST STUFF --*/ /*----------------------------------------------------*/
	/*---------------------------*/ /*----------------------------------------------------*/
	.testimonial-container {
		background: var(--bg-color);
		padding: 30px;
		border-radius: 3px;
		position: relative;
		overflow: hidden;
	}
	.testimonial-container:after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 0;
		background: var(--opacity-bg);
		background: var(--post-bg-color);
	}
	.testimonial-container > * {
		position: relative;
		z-index: 1;
	}
		.testimonial-content {
			font-size: 26px;
			font-style: italic;
			font-weight: 300;
			margin-bottom: 30px;
			line-height: 1.35em;
			z-index: 1;
			position: relative;
		}
			.testimonial-content a {
				color: var(--text-color);
				text-decoration: none;
				border-bottom: 1px dotted var(--text-color);
			}
			.testimonial-content a:hover {
				border-bottom: 1px solid var(--text-color);
			}
		
		.testimonial-details:after {
			content: '';
			display: block;
			clear: both;
		}
			.testimonial-avatar {
				display: block;
				border-radius: 50%;
				width: var(--testimonial-avatar-size);
				height: var(--testimonial-avatar-size);
				object-fit: cover;
				margin-right: 10px;
				float: left;
			}
			.testimonial-title {
				display: block;
				float: left;
				font-weight: 400;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
				width: calc(100% - var(--testimonial-avatar-size) - 10px);
				letter-spacing: .25px;
			}
			
			.testimonial-job-title {
				float: left;
				font-size: 95%;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
				font-weight: 400;
				opacity: .5;
				letter-spacing: .25px;
				line-height: 1.7em;
				width: calc(100% - var(--testimonial-avatar-size) - 10px);
			}
			.testimonial-projects {
				margin-top: 30px;
				line-height: 1.5em;
			}
				.testimonial-projects span {
					opacity: .5;
				}


/*----------------------*/ /*----------------------------------------------------*/
/*-- LOAD MORE STUFF --*/ /*----------------------------------------------------*/
/*--------------------*/ /*----------------------------------------------------*/
.loadMore {
	text-align: center;
	padding: 30px;
}
	.loadMore a {
		color: var(--text-color);
		text-decoration: none;
	}
	
.loadMore.back-to-top {
	display: none;
}
	
/*--------------------*/ /*----------------------------------------------------*/
/*-- OVERLAY STUFF --*/ /*----------------------------------------------------*/
/*------------------*/ /*----------------------------------------------------*/
#project-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: var(--opacity-65);
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
}


	.lds-ellipsis {
	  display: inline-block;
	  position: relative;
	  width: 80px;
	  height: 80px;
	  
	   position: fixed;
	  bottom: 10vh;
	  left: 50%;
	  transform: translate3d(-50%,0,0);
	}
	.lds-ellipsis div {
	  position: absolute;
	  top: 33px;
	  width: 13px;
	  height: 13px;
	  border-radius: 50%;
	  background: #fff;
	  animation-timing-function: cubic-bezier(0, 1, 1, 0);
	}
	.lds-ellipsis div:nth-child(1) {
	  left: 8px;
	  animation: lds-ellipsis1 0.6s infinite;
	}
	.lds-ellipsis div:nth-child(2) {
	  left: 8px;
	  animation: lds-ellipsis2 0.6s infinite;
	}
	.lds-ellipsis div:nth-child(3) {
	  left: 32px;
	  animation: lds-ellipsis2 0.6s infinite;
	}
	.lds-ellipsis div:nth-child(4) {
	  left: 56px;
	  animation: lds-ellipsis3 0.6s infinite;
	}
	@keyframes lds-ellipsis1 {
	  0% {
	    transform: scale(0);
	  }
	  100% {
	    transform: scale(1);
	  }
	}
	@keyframes lds-ellipsis3 {
	  0% {
	    transform: scale(1);
	  }
	  100% {
	    transform: scale(0);
	  }
	}
	@keyframes lds-ellipsis2 {
	  0% {
	    transform: translate(0, 0);
	  }
	  100% {
	    transform: translate(24px, 0);
	  }
	}


/*--------------------*/
/*-- NOTHING FOUND --*/
/*------------------*/
#nothing-found {
	text-align: center;
	width: 100%;
	padding: 10vw;
	box-sizing: border-box;
	font-size: 22px;
}
	#nothing-found span {
		display: block;
		font-size: 14px;
		opacity: .65;
		padding-top: 5px;
	}
	
	
	
/*-------------------*/ /*----------------------------------------------------*/
/*-- FOOTER STUFF --*/ /*----------------------------------------------------*/
/*-----------------*/ /*----------------------------------------------------*/
	
	/*FOOTER AVAILABILITY*/
	#footer-availability {
		margin-top: 20px;
		font-size: 48px;
		max-width: 600px;
		padding-left: 36px;
		position: relative;
		float: left;
		clear: left;
	}
		#footer-availability.yes::before, 
		#footer-availability.no::before {
			content: '';
			display: inline-block;
			width: 21px;
			height: 21px;
			border-radius: 50%;
			margin-left: 0;
			position: absolute;
			top: 20px;
			left: 0;
		}
		
		#footer-availability.yes:before {
			background: #9cd976;
		}	
		#footer-availability.no:before {
			background: #cd7171;
		}	

	/*FOOTER MESSAGE*/
	#footer-message {
		max-width: 600px;
		margin-top: -15px;
		float: left;
		clear: left;
	}
		#footer-message p {
			margin-top: 25px;
			opacity: .85;
			letter-spacing: .5px;
			font-size: 16px;
			line-height: 1.5em;
		}

		#footer-message a {
			color: var(--text-color);
			text-decoration: none;
			border-bottom: 1px dotted var(--text-color);
		}
		#footer-message a:hover {
			color: var(--text-color);
			border-bottom: 1px solid var(--text-color);
		}
		
	/*FOOTER CONTACT INFO*/
	#footer-contact-info {
		margin-top: 40px;
		float: left;
		clear:left;
	}
	
		#footer-mailto-link {
			text-decoration: none;
			color: var(--bg-color);
			background: var(--text-color);
			display: inline-block;
			border-radius: 25px;
			padding: 0 30px;
			line-height: 50px;
			font-weight: 500;
			margin-right: 35px;
			transition: background .3s, color .3s;
		}
		#footer-mailto-link:hover {
			background: var(--bg-color);
			color: var(--text-color);
		}
		#footer-phone-text-link {
			display: inline-block;
			line-height: 50px;
			color: var(--text-color);
			text-decoration: none;
		}
		
	/*FOOTER SOCIAL*/
	#footer-social {
		float: right;
		margin-top: 40px;
	}
	
		#footer-social a {
			color: var(--text-color);
			display: inline-block;
			font-size: 22px;
			padding: 0 12px;
			line-height: 40px;
			text-decoration: none;
			position: relative;
			width: 25px;
			text-align: center;
			transition: color .3s;
		}
			#footer-social a:after {
				content: '';
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate3d(-50%,-50%,0) scale(0);
				width: 100%;
				height: 0;
				padding-bottom: 100%;
				background: var(--text-color);
				z-index: -1;
				border-radius: 50%;
				transition: transform .3s;
			}
			#footer-social a:hover {
				color: var(--bg-color);
			}
			#footer-social a:hover:after {
				transform: translate3d(-50%,-50%,0) scale(1);	
			}
			

	
/*--------------------*/ /*----------------------------------------------------*/
/*-- MEDIA QUERIES --*/ /*----------------------------------------------------*/
/*------------------*/ /*----------------------------------------------------*/
	
@media only screen and (max-width: 1250px) {

	.inner-results-list .post,
	.inner-results-list .grid-sizer {
		width: 50%;
	}
	
	.inner-results-list .post:nth-child(3) .company-details {
		margin-top: 0;
	}
	
}

@media only screen and (max-width: 1200px) {
	
	:root {
    	--post-side-margin: 15px;
    }
    
    #page-wrapper {
		padding: 30px 40px 60px;
	}
	
	#title-subtitle {
		margin-top: 40vh;
	}
		#title-subtitle h1 {
			font-size: 44px;
		}
		
	#filters-container {
		margin: 100px 0 0;
		margin-bottom: -120px;
		padding-bottom: 50px;
	}
	
	#organize-mode {
		margin-top: 97px;
	}
}

@media only screen and (max-width: 960px) {
	
	#organize-mode {
		display: none;
	}
	
	#footer-availability {
		font-size: 30px;
	}
	#footer-availability.yes::before, 
	#footer-availability.no::before {
		width: 15px;
		height: 15px;
		top: 12px;
		left: 5px;
	}
	
	#footer-social {
		float: left;
		margin-top: 40px;
		clear: both;
		margin-bottom: 20px;
	}
}

@media only screen and (min-width: 880px) {

	/*SCROLL MAILTO (DESKTOP)*/
	#scroll-mailto-link {
		color: var(--text-color);
		text-decoration: none;
		position: fixed;
		top: 30px;
		right: 30px;
		background: var(--bg-color);
		border-radius: 25px;
		padding: 0 30px;
		line-height: 50px;
		transition: background .3s, color .3s, transform .3s;
		border: 2px solid var(--opacity-35);
		z-index: 2;
		box-shadow: 0 5px 10px rgba(0,0,0,.2);
		transform: translate3d(calc(100% + 30px),0,0);
	}
	body.show-scroll-tools #scroll-mailto-link {
		transform: translate3d(0,0,0);
	}
		#scroll-mailto-link:hover {
			color: var(--bg-color);
			background: var(--text-color);	
		}
		
}

@media only screen and (max-width: 880px) {
	
	#page-wrapper {
		padding: 30px 30px 60px;
	}
	
	#mobile-menu-toggle {
	 	display: block;   
	}
	
	#contact-info,
	#social-shop,
	#weather-location-time {
		display: none;
	}
	
	#scroll-filters-container,
	#scroll-mailto-link {
		display: none !important;
	}
}


@media only screen and (max-width: 800px) {
	
	
	#page-wrapper {
		padding: 15px 15px 20px;
	}
	
	
	#contact-info,
	#avatar_name,
	#social-shop,
	#weather-location-time {
		display: none;
	}
	
	
	#title-subtitle {
		margin-top: 50vh;
	}
		
	/*FILTERS*/
	#filters-container {
		position: fixed;
		top: 20px;
		margin: 0;
		background: var(--text-color);
		border-radius: 25px;
		color: var(--bg-color);
		z-index: 2;
		padding: 0;
		cursor: pointer;
	}
		/*IMG*/
		#filters-container .filter-avatar {
			display: block;
		}
		#filters-container.closed .filter-avatar {
			transform: scale(1);
			opacity: 1;
		}
		
		/*UL*/
		#filters-container ul {
			/*
			width: calc(100% - 44px - 6px);
			float: left;
			*/
			margin: 0;
			padding:0 56px 20px 12px;
			box-sizing: border-box;
			transition: padding .3s;
			padding: 0 0 20px;
			max-height: 90vh;
			overflow: scroll;
			-webkit-overflow-scrolling: touch;
		}
		/*FILTER TEXT*/
		#filters-container ul::before {
			content: 'Filter Content';
			line-height: 50px;
			height: 50px;
			font-size: 16px;
			padding: 0 25px 0 60px;
			transition: all .3s;
			overflow: hidden;
			display: block;
			white-space: nowrap;
			text-overflow: ellipsis;
			background-image: url('../images/mobile-filter-close.svg');
			background-repeat: no-repeat;
			background-position: 15px;
			background-size: 21px;
		}
		#filters-container.closed ul::before {
			height: 0;
			width: 0;
			background-size: 0px;
		}
		
		/*BORDER LINE*/
		#filters-container ul::after {
			background: #e5e5e5;
			content: '';
			display: block;
			position: absolute;
			top: 50px;
			left: 0;
			width: 100%;
			height: 1px;
			transition: height .3s;
		}
		#filters-container.closed ul {
			padding: 0;
		}
		#filters-container.closed ul::after {
			height: 0;
		}
				
			/*LI*/	
			#filters-container li {
				display: block;
				margin: 0;
				padding: 0;
			}
			
				/*a*/
				#filters-container li a {
					color: var(--bg-color);
					font-size: 30px;
					padding: 0 62px;
					line-height: 56px;
					height: 56px;
					opacity: 1;
					position: relative;
					transition: all .3s;
					overflow: hidden;
					white-space: nowrap;
					text-overflow: ellipsis;
					display: block;
					border: none;
				}
				/*RIGHT ARROW*/
				#filters-container ul li a.active-filter::before,
				#filters-container ul li a:hover:before {
					content: '';
					display: block;
					width: 62px;
					height: 56px;
					position: absolute;
					left: 0;
					top: 0;
					background-image: url('../images/mobile-filter-right-arrow.svg');
					background-repeat: no-repeat;
					background-position: 21px center;
				}
				/*CLOSED*/
				#filters-container.closed li a:not(.active-filter) {
					height: 0;
					width: 0;
					padding: 0;
				}
				#filters-container.closed li a.active-filter {
					background-image: url('../images/mobile-filter-down-arrow.svg');
					background-repeat: no-repeat;
					background-position: calc(100% - 20px) center;
					font-size: 16px;
					padding: 0 42px 0 62px;
					height: 50px;
					line-height: 50px;
				}
				#filters-container.closed ul li a.active-filter::before,
				#filters-container.closed ul li a:hover:before {
					display: none;
				}
				
	.results-list {
		padding: 80px 0;
	}
}


@media only screen and (max-width: 800px) {
 
	#title-subtitle {
		margin-top: 50vh;
		max-width: 400px;
	}
		#title-subtitle h1 {
			font-size: 30px;
			max-width: 100%;
		}

	
	
	#footer-mailto-link {
		margin-right: 15px;
	}
	
}

@media only screen and (max-width: 650px) {
	
	.inner-results-list .post,
	.inner-results-list .grid-sizer {
		width: 100%;
	}
	
	.inner-results-list .post:nth-child(2) .company-details {
		margin-top: 0;
	}
}

@media only screen and (max-width: 600px) {

	#footer-availability {
		padding-left: 0;
	}
	#footer-availability.yes::before, 
	#footer-availability.no::before {
		width: 12px;
		height: 12px;
		top: -8px;
		left: 0;
		position: relative;
		display: block;
	}
	
	#footer-contact-info {
		text-align: center;
		float: none;
		clear: both;
		padding-top: 30px;
	}
		#footer-mailto-link {
			margin-right: 0;
			display: block;
			margin-bottom: 15px;
		}

	#footer-social {
		float: none;
		margin-top: 20px;
		clear: both;
		margin-bottom: 20px;
		text-align: center;
	}
}
	
	
@media only screen and (max-width: 500px) {	
	
	.testimonial-content {
		font-size: 24px;
	}
}
	
@media only screen and (max-width: 400px) {	
	
	#alternating-text {
		display: block;
	}
}