
/*--------------------------------------------------
	General Styles
---------------------------------------------------*/	
	#app {
		top: 0;
		left: 0;
		position: fixed;
		width: 100%;
		height: 100vh;
		overflow: hidden;
		pointer-events: none;
		opacity:0;
		-webkit-transition: all 0.1s ease-in-out 0.4s;
		transition: all 0.1s ease-in-out 0.4s;
	}
	
	.load-project-thumb #app, .load-project-thumb-with-title #app, .load-project-thumb-from-slider #app {
		opacity:1;
	}
	
	.grid__item-img--large {
		pointer-events: none;
		position: absolute ;
		opacity: 0;
	}
	
	.grid__item-hidden {
		pointer-events: none;
		position: fixed;
		opacity: 0;
	}
	
	
/*--------------------------------------------------
	WebGl Slider
---------------------------------------------------*/
	
	
	#canvas-slider {
		width:100%;
		height:100%;
		position:fixed;
		top:0;
		right:0;
		overflow:hidden;
		opacity:0;
		-webkit-transform:scale(1.1);
		transform: scale(1.1);
	}
	
	#canvas-slider .slider-img {
		position: absolute;
		height:100%;
		width:100%;
		background-size:cover;
		background-position:center center;
		background-color:#222;
		visibility:hidden;
		top: 0;
		left: 0;
		z-index: 0;
		opacity: 0;
		-webkit-transform: scale(1.01);
		transform: scale(1.01);
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;		
	}
	
	#canvas-slider img {
		width:100%;
		height: 100%;
		position:relative;
		display:none;
		z-index:100;
		cursor:pointer;		
		object-position: center; 
		object-fit: cover;
	}	
	
	
/*--------------------------------------------------
	Common Slider Styles
---------------------------------------------------*/	
	
	.show-loader .clapat-slider {
		pointer-events:none;
	}

	.clapat-slider-wrapper {
		width:100%;
		height: 100vh;
		position:relative;	
	}

	.clapat-slider {
		position:absolute;
		left:0;
		top:0;
		padding: 0 42vw 0 42vw;
		display: flex;
		align-items: center;
		height: 100%;
		width:100%;
		user-select: none;
		cursor: grab;
		z-index: 2;
		overflow:hidden;
		box-sizing:border-box;
	}
	
	.clapat-state-dragging .clapat-slider {
		cursor:grabbing;
	}
	
	.clapat-state-dragging .clapat-slider .clapat-slide {
		cursor:grabbing;
		pointer-events:none;
	}
	
	.clapat-state-dragging .cp-button-prev, .clapat-state-dragging .cp-button-next {
		pointer-events:none;
	}
	
	.clapat-slider-viewport {
		display: flex;
		position: relative;
	}
	
	.clapat-slide {
		overflow: hidden;
		width: 16vw;
		box-sizing:border-box;
	}
	
	.clapat-slide:first-child {
		position: relative;
	}
	
	.clapat-slide:not(:first-child) {
		position: absolute;
		height: 100%;
	}
	
	.slide-inner-height {
		position: relative;
		overflow: hidden;		
		cursor:pointer;
	}
	
	.clapat-state-dragging .clapat-slider .slide-inner-height {
		cursor:grabbing;
		pointer-events:none;
	}
	
	.clapat-state-dragging .clapat-slider .slide-inner-height {
		cursor:grabbing;
		pointer-events:none;
	}
	
	.disable-ajaxload .slide-link {
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		z-index: 1000;
	}
	
	.img-mask {
		width: 100%;
		height: 100%;
		display: block;
		position: absolute;
		top:0;
		left: 0;
		margin: 0 auto;
		box-sizing: border-box;
		z-index: 0;
		overflow:hidden;
	}
	
	.clapat-slide .img-mask {
		background: transparent;
	}
	
	.disable-scroll .img-mask {
		background: transparent;
	}
	
	.section-image {
		position:relative;
		display:block;
		width:100%;
		height:100%;
		overflow:hidden;
		z-index:0;
	}
	
	.item-image {
		width:100%;
		height: 100%;
		position:relative;
		display:block;
		z-index:100;	
		object-position: center; 
		object-fit: cover;
	}
	
	.clapat-slider img {
		pointer-events:none;
	}
	
	.cp-button-prev.button-icon-link {
		color: #000;
		border: 2px solid transparent;
		box-shadow: none;
		transform: translateX(-15px);
		-webkit-transform: translateX(-15px);
	}
	
	.cp-button-next.button-icon-link {
		color: #000;
		border: 2px solid transparent;
		box-shadow: none;
		transform: translateX(10px);
		-webkit-transform: translateX(10px);
	}
	
	.cp-button-prev.button-icon-link:hover, .cp-button-next.button-icon-link:hover {
		background-color: transparent;
	}
	
	.light-content .cp-button-prev.button-icon-link, .light-content .cp-button-next.button-icon-link {
		color: #fff;
		border: 2px solid transparent;
		box-shadow: none;
	}
	
	.light-content .cp-button-prev.button-icon-link:hover, .light-content .cp-button-next.button-icon-link:hover {
		background-color: transparent;
	}
	
	.cp-button-prev.button-icon-link .icon-wrap-scale, .cp-button-next.button-icon-link .icon-wrap-scale {
		transform: scale(0.5);
		-webkit-transform: scale(0.5);
		opacity: 1;
		-webkit-transition: transform .3s ease-in-out;
  		transition: transform .3s ease-in-out;
	}
	
	.cp-button-prev.button-icon-link .button-icon, .cp-button-next.button-icon-link .button-icon {
		color:currentColor;
		border: 4px solid currentColor;
		background-color: transparent;
		height: 30px;
		line-height: 30px;
		width: 30px;
	}
	
	.cp-button-prev.button-icon-link:hover .button-icon, .cp-button-next.button-icon-link:hover .button-icon {
		border: 2px solid currentColor;
		background-color: currentColor;
		height: 36px;
		line-height: 36px;
		width: 36px;		
	}
	
	.light-content .cp-button-prev.button-icon-link .button-icon, .light-content .cp-button-next.button-icon-link .button-icon {
		color:currentColor;
		border: 4px solid currentColor;
		background-color: transparent;
	}
	
	.light-content .cp-button-prev.button-icon-link:hover .button-icon, .light-content .cp-button-next.button-icon-link:hover .button-icon {
		border: 2px solid currentColor;
		background-color: currentColor;
	}
	
	.cp-button-prev.button-icon-link .button-icon i, .cp-button-next.button-icon-link .button-icon i {
		opacity:0;
		height: 30px;
		line-height: 30px;
		width: 30px;
		color:currentColor;
		filter: invert(1);		
	}
	
	.cp-button-prev.button-icon-link:hover .button-icon i, .cp-button-next.button-icon-link:hover .button-icon i {
		opacity:1;
		height: 36px;
		line-height: 36px;
		width: 36px;
	}
	
	.cp-button-prev.button-icon-link .button-text {
		padding: 0 25px 0 50px;
	}
	
	.cp-button-next.button-icon-link .button-text {
		padding: 0 50px 0 25px;
	}
	
	.cp-button-prev.button-icon-link:hover .button-text {
		padding: 0 25px 0 60px;
	}
	
	.cp-button-next.button-icon-link.right:hover .button-text {
		padding: 0 60px 0 25px;
	}
	
	.cp-button-prev.button-icon-link:hover .button-text span, .cp-button-next.button-icon-link:hover .button-text span {
		filter: invert(0);
	}
	
	.light-content .cp-button-prev.button-icon-link:hover .button-text span, .light-content .cp-button-next.button-icon-link:hover .button-text span {
		filter: invert(0);
	}
		
	.disable-scroll .clapat-slider {
		pointer-events:none;
	}
	
	.clapat-pagination {
		width: 100%;
		height: 40px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		left:0;
		right:0;
		bottom: 40px;
		margin:auto;
		z-index: 20;
		text-align: center;
		opacity:0;
		pointer-events:none;
	}
	
	.clapat-pagination-bullet {
		position:relative;
		width: 40px;
		height: 40px;
		display:inline-flex;
		margin:0;
		cursor:pointer;
		pointer-events:initial;
	}
	
	.progress-info {
		position: absolute;
		display: flex;
		justify-content: center;
		width: auto;
		margin: 0 auto;
		height: 30px;
		line-height: 30px;
		font-size: 16px;
		left: 0;
		right: 0;
		z-index: 10;
		overflow:hidden;
		pointer-events:none;
	}
	
	.progress-info .progress-info-fill, .progress-info .progress-info-fill-2 {
		position: relative;
		width:auto;
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
  		background-size: 0% 100%;
	}
	
	.progress-info .progress-info-fill-2 {
		position: absolute;
		top: 0px;
		left: auto;
		background-size: 100% 100%;
		background-position: right;
		right: auto;
		margin: auto;
		width: auto;
		display: block;
	}
	
	.light-content .progress-info .progress-info-fill {
		-webkit-text-fill-color: rgba(255,255,255,0.1);
		background-image: linear-gradient(#fff, #fff);
	}
	
	.light-content .progress-info .progress-info-fill-2 {
		-webkit-text-fill-color: rgba(255,255,255,0.1);
		background-image: linear-gradient(#fff, #fff);
	}
	
	.showcase-footer #footer-container {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
	.fade-slide-element {
		opacity: 0;
	}
	
	.grid-list-option {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		color:#000;
		background-color: currentColor;
		display: flex;
		height: 44px;
		width: auto;
		border:3px solid currentColor;
		justify-content: center;
		align-items: center;
		border-radius: 22px;
		box-sizing: border-box;
		z-index:100;
		pointer-events:initial;		
	}
	
	.light-content .grid-list-option {
		color:#fff;
	}
	
	.grid-open .grid-list-option {
		pointer-events:none;
	}
	
	.grid-list-option.disable {
		pointer-events:none;
	}
	
	.grid-option, .list-option {		
		box-sizing: border-box;
		padding: 0 20px;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 40px;
		min-width: 80px;
		margin: 0;
		color: currentColor;
		font-weight: 500;
		font-size: 14px;
		cursor:pointer;		
		z-index:1;
		-webkit-transition: filter .1s ease-in-out;
  		transition: filter .1s ease-in-out;
		filter: invert(1);
	}
	
	.grid-option.active, .list-option.active {
		filter: invert(0);
		pointer-events:none;
	}
	
	.current-option {
		position:absolute;
		left:0;
		background-color: currentColor;
		box-sizing: border-box;
		padding: 0 20px;
		height: 100%;
		display: block;
		justify-content: center;
		align-items: center;
		border-radius: 40px;
		width:auto;
		min-width: 80px;
		margin: 0;
		pointer-events:none;
		z-index:0;
		filter: invert(1);
	}
	
/*--------------------------------------------------
	Showcase Carousel
---------------------------------------------------*/

	
	.highlights-gallery .clapat-slider {
		padding:25vh 0 25vh 0;
		padding:25dvh 0 25dvh 0;
	}
	
	.showcase-carousel .clapat-slider-viewport {
		z-index:10;
	}
	
	.highlights-gallery .clapat-slide {
		width:100vw;
		height:50vh;
		height:50dvh;
		opacity:0;
	}
	
	.highlights-gallery .clapat-caption-wrapper {
		position:absolute;
		width: 100%;
		height: 100%;
		left: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: center;
		pointer-events:initial;
		z-index:100;
	}
	
	.external-titles {
		position: relative;
		display:flex;
		justify-content: center;
		align-items: center;
		opacity:0;
		width:100%;
		height: calc((1rem + 20vw) / 2);
		overflow:hidden;
		mask-image: linear-gradient(180deg, transparent 5%, #000 15%, #000 88%, transparent 95%);
  		-webkit-mask-image: linear-gradient(180deg, transparent 5%, #000 15%, #000 88%, transparent 95%);
		transform: translateY(50%);
		-webkit-transform: translateY(50%);
	}
	
	.external-titles .slide-title {
		position:absolute;
		font-size: calc((1rem + 12vw) / 2);
  		line-height: calc((1rem + 20vw) / 2);
		font-weight:600;
		letter-spacing: -0.2vw;
		color: #fff;
		cursor:pointer;
	}
	
	.external-titles .slide-title.change-header {
		color: #000;
	}
	
	.external-titles .slide-title span {
		display:block;
		position:relative;
	}
	
	.external-categories {
		position: relative;
		display:flex;
		justify-content: center;
		align-items: center;
		opacity:1;
		width:100%;
		height:30px;
		overflow:hidden;
	}
	
	.external-categories .slide-cat {
		position: absolute;
		opacity: 1;		
		display: block;
		color:#fff;
		overflow:visible;
		margin:0;
		font-size: 24px;
		line-height: 30px;
		font-family: "Playfair Display", serif;
		font-style: normal;
		font-weight: 400;
		
	}
	
	.external-categories .slide-cat.change-header {
		color:#000;
	}
	
	.external-categories .slide-cat span {
		opacity:0;
		display:block;
		position:relative;
	}

	
	
/*--------------------------------------------------
	Showcase Gallery
---------------------------------------------------*/	
	
	
	
	.showcase-gallery .clapat-slider {
		padding:0 20vw 0 20vw;
	}
	
	.showcase-gallery .clapat-slider-viewport {
		z-index:10;
	}
	
	.showcase-gallery .clapat-slide {
		width: 60vw;
		height:100vh;
		box-sizing:border-box;
		padding: 0 5vw 0 5vw;
		display:flex;
		z-index:0;
		overflow:visible;
		opacity:1;
		pointer-events:none;
	}
	
	.showcase-gallery.active .clapat-slide {
		pointer-events:initial;
	}
	
	
	/* Slide Effects */
	
	.slide-effects {
		position: relative;		
		height:calc(100vh - 450px);
		width: 100%;
		display:flex;	
		justify-content: space-between;
		align-self:center;
	}
	
	.showcase-gallery .slide-thumb {
		position:relative;
		width:16%;
		height: auto;
		display: flex;
		align-self: flex-start;
		border-radius: 4px;
		overflow: hidden;
		margin-right:60px;
	}
	
	.showcase-gallery .clapat-slide:nth-child(odd) .slide-thumb {
		align-self: flex-end;
	}
	
	.showcase-gallery .clapat-slide:nth-child(even) .slide-thumb {
		align-self: flex-start;
	}
	
	.showcase-gallery .slide-thumb::before {
		float: left;
		padding-top: 100%;
		content: "";
	}
	
	.showcase-gallery .slide-thumb img {
		width: 100%;
		height: 100%;
		position: absolute;
		display: block;
		z-index: 100;
		object-position: center;
		object-fit: cover;
		border-radius: 4px;
		overflow: hidden;
	}
	
	/* Slide Inner Height */	
	
	
	.showcase-gallery .slide-inner-height {
		padding-top: 0;
		width: 45%;
		height: auto;
		margin:0px;
		overflow:visible;
		display: flex;
		align-self: center;
	}
	
	.showcase-gallery .clapat-slide:nth-child(odd) .slide-inner-height {
		width: 44%;
	}
	
	.showcase-gallery .clapat-slide:nth-child(even) .slide-inner-height {
		width: 50%;
	}	
	
	.showcase-gallery .slide-inner-height::before {
		float: left;
		padding-top: 70%;
		content: "";
	}
	
	/* Slide Moving */
	
	.showcase-gallery .slide-moving {
		width: auto;
		height: 100%;
		display: block;
		position: absolute;
		top:0;
		left: 0;
		box-sizing: border-box;
		z-index: 0;
	}
	
	/* Slide Trigger Item */
	
	.showcase-gallery .clapat-slide .trigger-item {
		width: auto;
		height: 100%;
		display: block;
		position: relative;
		top:0;
		left: 0;
		box-sizing: border-box;
		z-index: 0;
		pointer-events:none;
	}
	
	.showcase-gallery.active:not(.preview-mode-enabled) .trigger-item {
		pointer-events:initial;
	}
	
	.showcase-gallery  .img-mask {
		width: auto;
		height: 100%;
		display: block;
		position: relative;
	}
	
	/* Slide Caption */
	
	.showcase-gallery .slide-caption {
		z-index: 10;
		position: absolute;
		height: auto;
		width: 100%;
		box-sizing: border-box;
		padding-left: 55%;		
		text-align: left;
		opacity: 0;
		display: flex;
		align-self: flex-start;
		flex-direction: column;
		cursor: default;
		pointer-events: none;
		-webkit-transition: all 0.15s ease-out 0s;
		transition: all 0.15s ease-out 0s;
	}
	
	.showcase-gallery .clapat-slide:nth-child(odd) .slide-caption {
		padding-left: 50%;	
	}
	
	.showcase-gallery .clapat-slide:nth-child(even) .slide-caption {
		padding-left: 56%;	
	}	
	
	.showcase-gallery .clapat-slide.hovered .slide-caption {
		opacity: 1;
	}
	
	.showcase-gallery .clapat-slide:nth-child(odd) .slide-caption {
		align-self: flex-start;
	}
	
	.showcase-gallery .clapat-slide:nth-child(even) .slide-caption {
		align-self: flex-end;
	}
	
	.showcase-gallery .slide-caption .slide-title {
		font-size: 24px;
		line-height: 30px;
		font-family: "Playfair Display", serif;
		font-style: normal;
		font-weight: 400;
		color: #000;
		overflow:hidden;
		margin-bottom: 0;
		-webkit-transition: all 0.3s ease-out 0s;
		transition: all 0.3s ease-out 0s;
	}
	
	.light-content .showcase-gallery .slide-caption .slide-title {
		color: #fff;
	}
	
	.showcase-gallery .slide-caption .slide-cat {
		font-size: 24px;
		line-height: 30px;
		font-family: "Playfair Display", serif;
		font-style: normal;
		font-weight: 400;
		color: #000;
		z-index:10;
		overflow:hidden;
		opacity:1;
	}
	
	.light-content .showcase-gallery .slide-caption .slide-cat {
		color: #fff;
	}
	
	.showcase-gallery .clapat-slide .slide-date {
		display: block;
		color: #000;
		position: relative;
		border-radius: 5px;
		font-size: 16px;
		margin-bottom:10px;
		overflow:hidden;
	}
	
	.light-content .showcase-gallery .slide-caption .slide-date {
		color: #fff;
	}
	
	.showcase-gallery .slide-caption span {
		display: block;
		position:relative;
	}
	
	/* Slide Preview Mode */	
	
	.slider-zoom-wrapper {
		position: fixed;		
		width: 100%;
		height: 100%;
		left: 0;
		bottom:0;
		margin:0;
		display:flex;
		justify-content: center;
		align-items: center;
		z-index:200;
		pointer-events:none;
		overflow:hidden;
	}
	
	.slider-zoom-wrapper .trigger-item::before {
		float: left;
		padding-top: 60%;
		content: "";
	}
	
	.slider-zoom-wrapper .trigger-item {
		width: 48vw;
		height:auto;
		aspect-ratio: unset;
		position: relative;
	}
	
	.slider-zoom-wrapper .trigger-item::after {
		display: block;
		content: "";
		clear: both;
	}
	
	.showcase-gallery .slider-zoom-wrapper .img-mask {
		width: 100%;
		height: 100%;
		display: block;
		position: absolute;
	}
	
	.enable-trigger .slider-zoom-wrapper .trigger-item {
		pointer-events:initial;	
		cursor:pointer;	
	}
	
	.slider-thumbs-wrapper {
		width: 280px;
		height:80px;
		position: absolute;
		z-index:300;
		pointer-events:none;
		display:flex;
		justify-content: center;
		align-items: flex-end;
		align-content: flex-end;
		flex-wrap: wrap;
		padding: 0px;
		box-sizing: border-box;
		bottom:20px;
		left:0;
		right:0;
		margin:0 auto;
	}
	
	.slider-thumbs-wrapper .trigger-item:first-child {
		left:0;
		right:auto;
	}
	
	.slider-thumbs-wrapper .trigger-item:last-child {
		left:auto;
		right:0;
	}
	
	.slider-thumbs-wrapper.flip-prev-thumb .trigger-item.current-image-preview {
		left:auto;
		right:0;
	}
	
	.slider-thumbs-wrapper.flip-next-thumb .trigger-item.current-image-preview {
		left:0;
		right:auto;
	}
	
	.slider-thumbs-wrapper .trigger-item::before {
		float: left;
		padding-top: 67%;
		content: "";
	}
	
	.slider-thumbs-wrapper .trigger-item {
		position:absolute;
		width:calc(50% - 30px);
		height:100%;
		margin:0 15px;
	}
	
	.slider-thumbs-wrapper .trigger-item::after {
		display: block;
		content: "";
		clear: both;
	}
	
	.slider-thumbs-wrapper .trigger-item .img-mask {
		width: 100%;
		height: 100%;
		display: block;
		position: absolute;
	}
	
	.slider-close-preview {
		width: 100%;
		position: fixed;
		top: 0;
		height: 100%;
		left: 0;
		display:flex;
		align-content: center;
		justify-content: center;
		z-index:50;
		pointer-events:none;
	}
	
	.grid-open .slider-close-preview {
		pointer-events:initial;
	}
	
	.grid-open footer .button-wrap {
		pointer-events:none;
	}
	
/*--------------------------------------------------
	Showcase Lists
---------------------------------------------------*/
	
	.showcase-gallery .clapat-sync-slider {
		position: fixed;
		top: 0;
		left:0;
		overflow: hidden;
		pointer-events: initial;
		z-index: 100;
		opacity:1;
		height:100%;
		width:100%;
		pointer-events:none;
		mask-image: linear-gradient(180deg, transparent 5%, #000 20%, #000 80%, transparent 95%);
  		-webkit-mask-image: linear-gradient(180deg, transparent 5%, #000 20%, #000 80%, transparent 95%);
	}
	
	.showcase-gallery .clapat-sync-slider.active {
		pointer-events:initial;
	}
	
	.showcase-gallery .clapat-sync-slider-wrapper {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		box-sizing:border-box;
	}
	
	.showcase-gallery .clapat-sync-slider-viewport {
		margin:0 auto;
	}
	
	.showcase-gallery .clapat-sync-slide {
		display: table;
		width:auto;
		margin:0 auto;
		line-height:calc(1rem + 4vw);
		height:calc(1rem + 4vw);
		z-index: 0;
		position: relative;
	}
	
	.load-project-thumb-from-slider .clapat-sync-slide.disable {
		pointer-events:none;
	}
	
	.clapat-state-dragging .showcase-gallery .clapat-sync-slide {
		cursor:grabbing;
		pointer-events:none;
	}
	
	.showcase-gallery .clapat-sync-slide .trigger-item {
		display: flex;
		height: 100%;
		position: relative;
		width: auto;
	}
	
	.showcase-gallery .clapat-sync-slide .trigger-item.above {
		margin-bottom:20px;
		line-height:calc(1rem + 4vw);
		height:calc(1rem + 4vw);
	}
	
	.showcase-gallery .clapat-sync-slide .hover-reveal::before {
		float: left;
		padding-top: 100%;
		content: "";
	}
	
	.showcase-gallery .clapat-sync-slide .hover-reveal {
		position: fixed;
		width: 12vw;
		height: auto;		
		overflow:hidden;
		display:flex;
		align-items:center;
	}
	
	.showcase-gallery .clapat-sync-slide .hover-reveal.landscape::before {
		float: left;
		padding-top: 71.43%;
		content: "";
	}
	
	.showcase-gallery .clapat-sync-slide .hover-reveal.landscape {
		position: fixed;
		width: 25vw;
		height: auto;
		aspect-ratio: 14/10;
		overflow:hidden;
	}
		
	.showcase-gallery .clapat-sync-slide .hover-reveal::after {
		display: block;
		content: "";
		clear: both;
	}
	
	.showcase-gallery .clapat-sync-slide .slide-title {
		display: block;
		font-size: calc(1rem + 2vw);
		line-height: inherit;
    	height: inherit;
		font-weight: 500;
		color: #000;
		z-index:10;
		padding:0;
		box-sizing:border-box;
		position:relative;
		-webkit-transition: opacity 0.3s ease-out 0s, transform 0.2s ease-out 0s;
		transition: opacity 0.3s ease-out 0s, transform 0.2s ease-out 0s;
		opacity:1;
		letter-spacing:-0.1vw;
		overflow:hidden;
		transform-origin: center center;
		margin-bottom:20px;
	}
	
	.showcase-gallery .clapat-sync-slide.active .slide-title {
		font-family: "Playfair Display", serif;
		font-size: calc(1rem + 2.15vw);
	}
	
	.light-content .showcase-gallery .clapat-sync-slide .slide-title {
		color: #fff;
	}
	
	.showcase-gallery .clapat-sync-slide.disable .slide-title {
		opacity:0.1;
	}
	
	.showcase-gallery .clapat-sync-slide:hover .slide-title {
		opacity:1;
		cursor:pointer;		
	}
	
	.showcase-gallery .clapat-sync-slide.active .slide-title {
		opacity:1;	
	}
	
	.showcase-gallery .clapat-sync-slide .slide-title span {
		display:inline-block;
		opacity:0;
	}	
	
/*--------------------------------------------------
	16. Project Lists
---------------------------------------------------*/		
	
	.team-list-wrapper {
		position:relative;	
	}
	
	.team-list-captions {
		position: relative;
		margin: 0;
		display: table;
		width: 100%;
		z-index: 10;
		box-sizing: border-box;
		padding-top:0;
		padding-left: 50%;
		padding-bottom:80px;
	}
	
	.team-list-captions > li {
		list-style:none;
		font-size: calc(1rem + 4vw);
		line-height: calc(1rem + 5vw);
		/*letter-spacing: -0.15vw;*/
		font-weight: 600;
		text-align:left;
		position: relative;
		display:block;
		width:auto;		
		color:#000;
		padding:20px 0;
		margin:0;
		-webkit-transition:opacity .1s ease-out;
		transition: opacity .1s ease-out;
		cursor:pointer;	
		opacity:0.2;
	}
	
	.team-list-captions li.active {
		opacity:1;
		font-weight: 500;
	}
	
	.team-list-captions li span:nth-child(2) {
		opacity:0;
	}
	
	.team-list-captions li.active span:nth-child(2) {
		opacity:1;
	}
	
	.team-list-captions li .tml-cat {
		font-size: 16px;
		font-family: 'Poppins', sans-serif;
		letter-spacing: 0;
		letter-spacing: -0.15px;
		font-weight: 400;
		line-height: 24px;
		width: auto;
		text-align: left;
		position: absolute;
		bottom: 0;
		opacity:0;
	}
	
	.team-list-captions li.active .tml-cat {
		opacity:1;
	}
	
	.team-list-images {
		position:absolute;
		width:18%;
		height:auto;
		margin:0;
		top: 0;
  		z-index: 0;
		left:80px;
	}
	
	.team-list-images::before {
		content: "";
		padding-top: calc(100% + 80px);
		position: relative;
		display: block;
		box-sizing: border-box;
	}
	
	.team-list-images > li {
		list-style:none;
		position:absolute;
		width:100%;
		height:calc(100% - 80px);
		top:0px;
		margin:0;
		z-index:0;		
		overflow:hidden;
	}
	
	.rounded-borders .team-list-images > li {
		border-radius: 6px;
	}
	
	.team-list-images > li.visible {
		z-index:10;		
	}
	
	.team-list-images > li.pixels-cover {
		z-index:20;
		border-radius: 0px;			
	}
	
	.team-list-images .img-mask {
		transform:  scale(1.05);
  		-webkit-transform: scale(1.05);
		-webkit-transition:all .2s ease-out;
		transition: all .2s ease-out;
	}
	
	.team-list-images > li.visible .img-mask {
		transform:  scale(1);
  		-webkit-transform: scale(1);		
	}
	
/*--------------------------------------------------
	Snap Slider
---------------------------------------------------*/	
	
	.snap-slider-holder {
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;		
	}
	
	.snap-slide {
		width:100%;
		height:100vh;
		height:100dvh;
		position:relative;
		overflow:hidden;
		display: flex;
		justify-content: center;
  		align-items: center;
		background-color:#000;
	}
	
	.snap-slide .img-mask {
		width:100%;
		height:100%;
		display: block;
		position: relative;
		top: 0;
		left: 0;
		opacity:0.1;		
	}
	
	.rounded-borders .snap-slide .img-mask {
		border-radius: 0;
	}
	
	.snap-slide .section-image {
		-webkit-transform:scale(1.03);
		transform: scale(1.03);
	}
	
	.snap-slide .section-image img {
		width:100%;
		height: 100%;
		position:relative;
		display:block;
		z-index:100;	
		object-position: center; 
		object-fit: cover;
	}
	
	.snap-slider-thumbs {
		position: absolute;
		top: 0;
		z-index: 5;
		box-sizing: border-box;
		width: 100%;
		height:100vh;		
		height:100dvh;
		overflow:hidden;
		display: flex;
		justify-content: center;
  		align-items: center;
	}
	
	.snap-slider-thumbs-wrapper::before {
		float: left;
		padding-top: 70%;
		content: "";
	}
	
	.snap-slider-thumbs-wrapper {
		width: 20vw;
  		height: 20vw;
		display: block;
		position: relative;
		overflow: hidden;		
		box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
	}
	
	.rounded-borders .snap-slider-thumbs-wrapper {
  		border-radius:6px;
	}
	
	.thumb-slide {
		position:relative;
		width: 100%;
		height:100%;
		overflow:hidden;
		cursor:pointer;
	}
	
	.show-loader .thumb-slide {
		pointer-events:none;
	}
	
	.thumb-slide-img {
		position:relative;
		width: 100%;
		height:100%;
		overflow:hidden;
	}
	
	.snap-slider-captions {
		position: absolute;
		top: 0;
		z-index: 0;
		box-sizing: border-box;
		width: 100%;
		height:100vh;				
		height:100dvh;
		overflow:hidden;
		display: flex;
		justify-content: flex-start;
  		align-items: center;
		pointer-events: none;
	}
	
	.snap-slider-captions-wrapper {
		width: 100%;
		height: 60px;
		display: block;
		position: relative;
		overflow: hidden;
		mask-image: linear-gradient( to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 15%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 85%, rgba(0, 0, 0, 0) 100% );
        -webkit-mask-image: linear-gradient( to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 15%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 85%, rgba(0, 0, 0, 0) 100% );		
	}
	
	.snap-slide-caption {
		position: relative;
		display: flex;
		justify-content: space-between;
		margin: 0;
		text-align:left;
		width: 100%;
		height:auto;
		box-sizing:border-box;
		padding:0;
		opacity:1;
		-webkit-transition: opacity 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out;
	}
	
	.in-view.snap-slide-caption {
		opacity:1;
		-webkit-transition: opacity 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out;
	}
	
	.snap-slider-captions .inner {
		vertical-align:middle;
		position:relative;
	}
	
	.snap-slider-captions .slide-title-wrapper {
  		margin: 0;
		cursor:pointer;		
	}
	
	.in-view.snap-slide-caption .slide-title-wrapper {
		pointer-events: initial;
	}
	
	.snap-slider-captions .slide-title, .snap-slider-captions .slide-subtitle {
		font-size: 24px;
  		line-height: 60px;
		color:#fff;
		/*font-family:"Playfair Display", serif;*/
		font-family:"WalkwayUltraBold", serif;
		font-style: normal;
		font-weight:400;
	}
	
	.snap-slider-captions .slide-current, .snap-slider-captions .slide-counter {
		font-size: 18px;
  		line-height: 60px;
		color:#fff;
	}
	
	.snap-slider-captions .slide-title, .snap-slider-captions .slide-subtitle {
		width:30%;		
	}
	
	.snap-slider-captions .slide-current, .snap-slider-captions .slide-counter {
		width:20%;		
	}
	
	.snap-slider-captions .slide-counter, .snap-slider-captions .slide-subtitle {
		text-align:right;
	}	
	
	.snap-slide-caption.change-header .slide-title, .snap-slide-caption.change-header .slide-current, .snap-slide-caption.change-header .slide-counter, .snap-slide-caption.change-header .slide-subtitle {
		color:#000;
	}
	
	.snap-slider-captions .slide-title span, .snap-slider-captions .slide-current span, .snap-slider-captions .slide-counter span, .snap-slider-captions .slide-subtitle span {
		display:block;
	}
	
/*--------------------------------------------------
	16. Responsive
---------------------------------------------------*/	

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

		

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

}


@media only screen and (max-width: 1024px) {
	
	.snap-slider-captions .slide-title, .snap-slider-captions .slide-subtitle {
		width:100%
	}
	
	.snap-slider-captions .slide-current, .snap-slider-captions .slide-counter {
		display:none;
	}
	
	.showcase-gallery .clapat-slider {
    	padding: 0 10vw 0 10vw;
	}
	
	.showcase-gallery .clapat-slide {
    	width: 80vw;
		padding: 0 2vw 0 2vw;
	}
	
	.slide-effects {
		height:50vh;
		height: 50dvh;
	}
	
	.slider-zoom-wrapper .trigger-item {
		width: 70vw;
	}
	
	.slider-thumbs-wrapper {
        width: 240px;
        height: 60px;
        bottom: 20px;
    }
	
	.showcase-gallery .slide-caption {
    	opacity: 1;
	}
	
	.cp-button-prev.button-icon-link, .cp-button-next.button-icon-link {
		transform: translateX(0px);
		-webkit-transform: translateX(0px);
	}
	
	.cp-button-prev.button-icon-link .icon-wrap-scale, .cp-button-next.button-icon-link .icon-wrap-scale {
		transform: scale(1);
		-webkit-transform: scale(1);
	}
	
	.cp-button-prev.button-icon-link .button-icon, .cp-button-next.button-icon-link .button-icon {
		background-color: currentColor;
		border: 2px solid currentColor;
		height: 36px;
		line-height: 36px;
		width: 36px;		
	}
	
	.light-content .cp-button-prev.button-icon-link .button-icon, .light-content .cp-button-next.button-icon-link .button-icon {
		background-color: currentColor;
		border: 2px solid currentColor;
	}
	
	.cp-button-prev.button-icon-link .button-icon i, .cp-button-next.button-icon-link .button-icon i {
		opacity:1;
		height: 36px;
		line-height: 36px;
		width: 36px;
	}
	
}




@media only screen and (max-width: 767px) {
	
	.snap-slider-thumbs-wrapper {
		width: 40vw;
		height: 40vw;
	}
	
	.snap-slider-captions {
    	align-items: flex-end;
	}
	
	.snap-slider-captions .slide-title, .snap-slider-captions .slide-subtitle {
		font-size: 18px;
	}
	
	.external-categories .slide-cat {
		font-size: 18px;
	}
	
	.slide-effects {
		height:50vh;
		height: 50dvh;
	}
	
	.slider-zoom-wrapper .trigger-item {
		width: 70vw;
	}
	
	.slider-thumbs-wrapper {
		width: 220px;
		height: 50px;
		bottom: 15px;
	}
	
	.showcase-gallery .slide-caption .slide-title, .showcase-gallery .slide-caption .slide-cat {
		font-size: 18px;
	}
	
	.showcase-gallery .clapat-slide .slide-date {
    	font-size: 14px;
	}
	
	.showcase-gallery .clapat-sync-slide .slide-title {
		font-size: calc(1rem + 3vw);
	}
	
	
}


@media only screen and (max-width: 479px) {
	
	
	.slide-effects {
		height:40vh;
		height: 40dvh;
	}
	
	.slider-zoom-wrapper .trigger-item {
		width: 80vw;
	}
	
	.slider-thumbs-wrapper {
		width: 220px;
		height: 50px;
		bottom: 15px;
	}
	
}			

/*--------------------------------------------------
	Showcase Portfolio
---------------------------------------------------*/

	
	
	.showcase-portfolio.filp-grid {
		margin-top:0vh;
	}
	
	.rounded-borders .img-mask {
		border-radius: 6px;	
	}
	
	.pixels-wrapper {
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		z-index: 2;
		display: flex;
  		flex-wrap: wrap;		
	}
	
	/*.load-project-thumb .pixels-wrapper {
		display:none;
	}*/

	.pixel {
		overflow: hidden;
		background-color: #000;
		box-sizing:border-box;
	}
	
	.pixel::before {
		float: left;
		padding-top: 101%;
		content: "";
	}
	
	#itemsWrapper > .pin-spacer {
		pointer-events:none;
	}
	
	
	
	
	
	#main .button-wrap.right.show-filters {
		right:-24px;
	}
	
	#filters-gradient {
		position: absolute;
		width: 100%;
		height: auto;
		display: flex;
		justify-content: center;
		opacity:0;
		background-color: rgb(200, 200, 200);
		mask-image: linear-gradient(to bottom, rgb(200, 200, 200) 0%, rgb(200, 200, 200) 50%, transparent 100%);
		z-index:100;
		pointer-events:none;
		box-sizing: border-box;
		padding: 50px 80px 240px 80px;		
	}
	
	#filters {
		text-align:center;
		margin:0;
	}
	
	#filters-gradient.open-filters #filters {	
		pointer-events:initial;		
	}
	
	#filters li {
		display: inline-block;
		position: relative;
		box-sizing:border-box;
		margin:0 auto;
		padding:0;
		overflow: hidden;		
	}
	
	#filters li:first-child {
		display: table;
	}
	
	#filters li a {
		display: block;
		font-size: calc(1rem + 3vw);
		line-height: calc(1rem + 3.5vw);		
		font-weight:400;
		letter-spacing:-0.1vw;
		opacity: 1;
		padding: 8px 2px;
		position: relative;			
		box-sizing: border-box;
	}
	
	#filters li:not(:first-child) a {
		/*font-family:"Playfair Display", serif;*/
		font-style: normal;
		font-weight:400;
	}
	
	#filters li a.is_active {
		pointer-events:none;	
	}
	
	#filters li a  span {
		display: block;
		position: relative;			
		opacity:0.3;
		-webkit-transition: opacity 0.15s ease-out 0s;
		transition: opacity 0.15s ease-out 0s;
	}
	
	#filters li a.is_active span, #filters li:hover a span {
		opacity:1;
	}
	
	#filters li a span::after {
		content: ",";
	}
	
	#filters li:last-child a span::after {
		content: "";
	}
	
	#close-filters {
		position: absolute;
		height: 100%;
		width: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		display: block;
		pointer-events: initial;
		z-index: 10;
	}
	
	.showcase-portfolio  {
		position: relative;
		display: flex;  		
  		flex-wrap: wrap;
		width:calc(100% - 150px);
		margin:0 auto;
		padding-top:75px;
	}
	
	.showcase-portfolio .clapat-item {
		position:relative;
		width: calc(50% - 10px);
		height:auto;
		margin:5px 5px 5px 5px;
		box-sizing:border-box;
		padding:0px;		
		z-index:10;
		display:block;		
	}
	
	.showcase-portfolio .clapat-item::before {
		float: left;
		padding-top: 90%;
		content: "";
	}
	
	.showcase-portfolio .slide-inner {
		padding-top: 0;
		width: 100%;
		height: 100%;
		margin:0;
		cursor:pointer;
	}
	
	.showcase-portfolio .slide-inner::after {
		display: block;
		content: "";
		clear: both;
	}
	
	.showcase-portfolio.items-filtered .slide-inner {
		transform:none!important;
	}
	
	.showcase-portfolio .slide-inner.disabled {
		pointer-events:none;
	}
	
	.img-mask {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	.showcase-portfolio .section-image {
		width:100%;
		height:100%;
		left:0;
		overflow:hidden;
		-webkit-transform:scale(1.03);
		transform: scale(1.03);
		-webkit-transition: transform 0.45s ease-out 0s;
		transition: transform 0.45s ease-out 0s;
	}
	
	.showcase-portfolio .slide-inner:hover .section-image, .showcase-portfolio .above .section-image {		
		-webkit-transform:scale(1);
		transform: scale(1);			
	}
	
	.showcase-portfolio .section-thumb::before {
		float: left;
		padding-top: 100%;
		content: "";
	}
	
	.showcase-portfolio .section-thumb {
		position: absolute;
		width: 40%;
		height:auto;
		border-radius: 4px;
		overflow: hidden;
		opacity:1;
		box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
		clip-path: inset(0% 100% 0% 0%);
		-webkit-transition: all 0.45s cubic-bezier(0.1, 0.8, 0.2, 1);
		transition: all 0.45s cubic-bezier(0.1, 0.8, 0.2, 1);
		pointer-events: none;
	}
	
	.showcase-portfolio .clapat-item:hover .section-thumb {
		opacity:1;
		clip-path: inset(0% 0% 0% 0%);
	}
	
	.showcase-portfolio .section-thumb img {
		width: 100%;
		height: 100%;
		position: absolute;
		display: block;
		z-index: 100;
		object-position: center;
		object-fit: cover;
		-webkit-transition: all 0.45s cubic-bezier(0.1, 0.8, 0.2, 1);
		transition: all 0.45s cubic-bezier(0.1, 0.8, 0.2, 1);
		transform: rotate(2deg) scale(1.05);
		-webkit-transform: rotate(2deg) scale(1.05);
	}
	
	.showcase-portfolio .clapat-item:hover .section-thumb img {
		transform: rotate(0deg) scale(1);
		-webkit-transform: rotate(0deg) scale(1);
	}
	
	.showcase-portfolio .slide-caption {
		z-index: 10;
		position: absolute;
		left: 0px;
		top: 0;
		height: 100%;
		width: 100%;
		box-sizing: border-box;
  		padding: 25px 30px;
		cursor: default;
		pointer-events: none;
		text-align: left;
		opacity: 0;
		display: flex;
		align-items: center;
		justify-content: space-between;
		-webkit-transition: all 0.15s ease-out 0s;
		transition: all 0.15s ease-out 0s;
	}
	
	.showcase-portfolio .clapat-item:hover .slide-caption {
		opacity:1;					
	}
	
	.showcase-portfolio .slide-caption .slide-title, 
	.showcase-portfolio .slide-caption .slide-cat {
		font-size: var(--font-size-large);
		line-height: var(--font-size-xlarge);
		/*font-family:"Playfair Display", serif;*/
		font-family:"LEMONMILK-Regular", serif;
		color: #fff;
		overflow:hidden;
		margin-bottom: 0;
		-webkit-transition: all 0.3s ease-out 0s;
		transition: all 0.3s ease-out 0s;
	}
	
	.change-header .slide-caption .slide-title {
		color: #000;
	}
	
	.showcase-portfolio .slide-caption .slide-title span {
		display: block;
	}
	
	.showcase-portfolio .slide-caption .slide-cat {
		font-size: var(--font-size-large);
		line-height: var(--font-size-xlarge);
		/*font-family:"Playfair Display", serif;*/
		font-family:"WalkwayUltraBold", serif;
		color: #fff;
		z-index:10;
		overflow:hidden;
		opacity:1;
	}
	
	.change-header .slide-caption .slide-cat {
		color: #000;
	}
	
	.showcase-portfolio .slide-caption .slide-cat span {
		display: block;
	}
	
	.showcase-portfolio .clapat-item .slide-date {
		display: block;
		color: #fff;
		position: absolute;
		top: 30px;
		left: 30px;
		padding: 2px 10px;
		background: #000;
		border-radius: 5px;
		font-size: 12px;
	}
	
	
/*--------------------------------------------------
	16. Responsive
---------------------------------------------------*/	



@media only screen and (max-width: 1024px) {
	
	.showcase-portfolio {
		width: calc(100% - 70px);
		padding-top: 45px;
	}
	
	.showcase-portfolio .clapat-item::before {
		padding-top: 100%;
	}
	
	.showcase-portfolio .section-image {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	
	.showcase-portfolio .section-thumb {
		box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
		clip-path: inset(0% 0% 0% 0%);
	}
	
	.showcase-portfolio .section-thumb img {
		transform: rotate(0deg) scale(1);
		-webkit-transform: rotate(0deg) scale(1);
	}
	
	.showcase-portfolio .slide-caption {
		padding: 5px 30px;
		opacity: 1;
		display: flex;
		align-items: self-end;
	}
	
	.showcase-portfolio .slide-caption .slide-title, .showcase-portfolio .slide-caption .slide-cat {
    	font-size: 18px;
	}	
	
}


@media only screen and (max-width: 767px) {	
	
	.showcase-portfolio {
		width: calc(100% - 50px);
		padding-top: 35px;
	}
	
	.showcase-portfolio .clapat-item {    
    	width: calc(100% - 10px);
	}
	
}


@media only screen and (max-width: 479px) {
	
	.showcase-portfolio {
		width: calc(100% - 35px);
		padding-top: 25px;
	}
	
	.showcase-portfolio .clapat-item {    
    	width: calc(100% - 10px);
	}
	
}			
/*--------------------------------------------------
	Pinned Text Row
---------------------------------------------------*/
	
	.overlapping-gallery {
		box-sizing:border-box;	
		position:relative;
		width:100%;
		height:100vh;
		display:block;
	}
	
	.overlapping-easing {
		box-sizing:border-box;	
		position:relative;
		width:100%;
		height:100vh;
		display:flex;
		align-items: center;
		justify-content:center;
		flex-wrap: wrap;
		opacity:0;
	}
	
	.overlapping-wrapper {
		box-sizing:border-box;	
		position:relative;
		width:auto;
		height:auto;
		
	}
	
	.overlapping-title {
		
	}
	
	.overlapping-small-title {
		display:block;
		position:relative;
		font-size: 22px;
		line-height: 36px;
		font-weight: 500;
		margin-bottom:20px;
		color:#707070;
	}
	
	.overlapping-big-title {
		display:block;
		position:relative;
		font-size: calc(1rem + 5vw);
		line-height: calc(1rem + 5vw);
		font-weight: 500;
		font-family: 'mona-sansextrabold_wide';
		text-transform:uppercase;
		color:#fff;
	}
	
	.overlapping-title {
		position: absolute;
		display:block;
		width:100%;
		height:auto;
		top:0;
		display: flex;
		flex-direction: row;	
		justify-content: center;
		align-items: center;
		overflow: visible;
		transform-origin: bottom center;
	}
	
	.overlapping-big-title .overlapping-title {
		display: flex;
		flex-direction: column;	
		justify-content: center;
		align-items: center;
		
	}
	
	.overlapping-title:first-child {
		position:relative;
	}
	
	.overlapping-title div {
		position: relative;
		display: block;
		overflow: hidden;
		mask-image: linear-gradient(#0003, black 7%, black 93%, #0003 100%);
  		-webkit-mask-image: linear-gradient(#0003, black 7%, black 93%, #0003 100%);
	}
	
	.overlapping-title div span {
		position: relative;
		display: block;
		margin:0 3px;
	}
	
	.overlapping-title div span {
		position: relative;
		display: block;
		margin:0 3px;
		opacity: 0;
		transform: translateY(100%);
		-webkit-transform: translateY(100%);
	}
	
	
	
	

/*--------------------------------------------------
	Pinned Section
---------------------------------------------------*/
	
	.pinned-section {
		position: relative;
		display: table!important;
		width: 100%;
		margin: 0 auto;
		max-width:1160px;
	}
	
	.full .pinned-section, .full_elementor .pinned-section {
		max-width:100%;
	}
	
	.pinned-section .pin-spacer {
		width:50%!important;
	}
	
	.pinned-element {
		position:relative;
		display:block;
		height:auto;
		float:left;
		width:50%;
		margin:0;
		box-sizing:border-box;
	}
	
	.pinned-element.left {
		padding-right:30px;
	}
	
	.pinned-element.right {
		padding-left:30px;
	}
	
	.scrolling-element {
		position:relative;
		float:left;
		width:50%;
		margin:0;
		box-sizing:border-box;
	}
	
	.scrolling-element.left {
		padding-right:30px;
	}
	
	.scrolling-element.right {
		padding-left:30px;
	}
	
	.scrolling-element img {
		display:block;
		height: auto;
		width:100%;
	}
	
/*--------------------------------------------------
	Content Text Effects
---------------------------------------------------*/	
	
	.title-moving-outer {
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
	}
	
	.title-moving-forward, .title-moving-backward {
		clear: both;
		display: inline-block;
		overflow: hidden;
		white-space: nowrap;
		padding:0 6vw;
		box-sizing:border-box;
	}
	
	.marquee-text-wrapper {
  		white-space: nowrap;
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
	}
	
	.marquee-text {
		font-weight: 500;
		display: inline-block;
		color:#000;
	}
	
	.marquee-text:before {
	  content: '.';
	  color:transparent;
	}
	
	.light-content .marquee-text, .dark-section .rolling-text {
		color:#fff;
	}
	
	.light-content .light-section .marquee-text {
		color:#000;
	}
	
	
/*--------------------------------------------------
	Hover Reveal Image
---------------------------------------------------*/	
	
	.hover-reveal {
		position: fixed;
		width: 20vw;
		height: 30vw;
		pointer-events: none;
		opacity: 0;		
		left:auto;
		right:auto;
		margin:auto;
	}
	
	.content-row > .hover-reveal {
		z-index:-1;
	}
	
	.rounded-borders .hover-reveal {
		border-radius:4px;
		overflow:hidden;
	}
	
	.hover-reveal__inner, .hover-reveal__img {
		width: 100%;
		height: 100%;
		position: absolute;
	}
	
	.hover-reveal__img {
		background-size:cover;
		background-position:center center;
		background-repeat:no-repeat;
		width:100%;
		height: 100%;
		position:relative;
		display:block;
	}	

	
/*--------------------------------------------------
	Carousel
---------------------------------------------------*/
	
	.clapat-slider-wrapper.content-slider  {
		width:100%;
		height: auto;
		position:relative;	
	}
	
	.content-slider .clapat-slider-viewport {
		display: flex;
		position: relative;
		margin: 0 auto;
	}
	
	.content-slider.looped-carousel .clapat-slider-viewport {
		max-width:1280px;
	}
	
	.content-slider.small-looped-carousel .clapat-slider-viewport {
		max-width:600px;
	}
	
	.content-slider .clapat-slider {
		padding: 0 0 0 0;
		height: auto;
		position:relative;	
	}
	
	.content-slider .clapat-slide {
		width: 100%;
	}
	
	.content-slider.looped-carousel .clapat-slide {
		padding:0 60px;
	}
	
	.content-slider.small-looped-carousel .clapat-slide {
		padding:0 20px;
	}
	
	.rounded-borders .content-slider {
		border-radius:8px;
		overflow:hidden;
	}
	
	.rounded-borders .content-slider.looped-carousel img, .rounded-borders .content-slider.small-looped-carousel img {
		border-radius:8px;
	}
	.content-slider.looped-carousel .clapat-button-prev, .content-slider.looped-carousel .clapat-button-next {
		display:none;
	}
	
	.disable-cursor .content-slider.looped-carousel .clapat-button-prev, .disable-cursor .content-slider.looped-carousel .clapat-button-next {
		display:block;
	}
	
	.content-slider.small-looped-carousel .clapat-button-prev, .content-slider.small-looped-carousel .clapat-button-next {
		display:none;
	}
	
	.disable-cursor .content-slider.small-looped-carousel .clapat-button-prev, .disable-cursor .content-slider.small-looped-carousel .clapat-button-next {
		display:block;
	}
	
	.content-slider .clapat-pagination {
		bottom:0px;
	}
	
	.content-slider .slider-button-prev {
		position:absolute;
		top:0;
		left:0;
		margin:0;
		width:50%;
		height:100%;
		z-index:10;
		cursor:pointer;	
	}
	
	.content-slider .slider-button-next {
		position:absolute;
		top:0;
		right:0;
		margin:0;
		width:50%;
		height:100%;
		z-index:10;
		cursor:pointer;		
	}
	
	.slide-quote {
		height: 300px;
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background: #f9f9f9;
		padding: 20px;
		box-sizing: border-box;
		text-align: center;
		border-radius: 8px;
	}
	
	.slide-quote blockquote {
		font-style: italic;
		margin: 0 0 15px 0;
		font-size: 1.1rem;
		line-height: 1.4;
	}
	
	.slide-quote cite {
		font-weight: bold;
		font-size: 1rem;
		margin-bottom: 5px;
	}
	
	.slide-quote span {
		font-size: 0.9rem;
		color: #666;
	}
	
	.content-slider .clapat-pagination {
		opacity:1;
	}
	
	.content-slider .clapat-pagination-bullet .parallax-wrap {
		width: 40px;
		height: 40px;
		display: inline-flex;
		position: relative;
		justify-content: center;
		align-items: center;
		pointer-events: initial;
	}
	
	.content-slider .clapat-pagination-bullet .parallax-element {
		height: 40px;
		width: 40px;
		text-align: center;
		line-height: 50px;
	}
	
	.clapat-pagination-bullet-active .path {
		display: inline-block !important;
		stroke-dasharray: 1000;
		stroke-dashoffset: 0;
		animation: dash ease-in 3s;
		animation-iteration-count: unset;
	}
	
	.dark-cursor .clapat-pagination {
		color:#000;
	}
	
	.light-cursor .clapat-pagination {
		color:#fff;
	}
	
	.clapat-pagination-bullet .path, .light-content.light-content-slider .clapat-pagination-bullet .path {
		stroke:currentColor;
	}
	
	.light-content .clapat-pagination-bullet .path, .dark-section .clapat-pagination-bullet .path, .light-content-slider .clapat-pagination-bullet .path {
		stroke:currentColor;
	}
	
	.light-content .light-section .clapat-pagination-bullet .path {
		stroke:currentColor;
	}
	
	.clapat-pagination-bullet .solid-fill, .light-content.light-content-slider .clapat-pagination-bullet .solid-fill {
		fill:currentColor;
	}
	
	.light-content .clapat-pagination-bullet .solid-fill, .dark-section .clapat-pagination-bullet .solid-fill, .light-content-slider .clapat-pagination-bullet .solid-fill {
		 fill:currentColor;
	}
	 
	 .light-content .light-section .clapat-pagination-bullet .solid-fill, .light-content .dark-section .dark-cursor .clapat-pagination-bullet .solid-fill {
		 fill:currentColor;
	}
	 
	.light-cursor .clapat-pagination-bullet .path {
		stroke:currentColor;
	}
	
	.dark-cursor .clapat-pagination-bullet .path {
		stroke:currentColor;
	}
	
	.light-cursor .clapat-pagination-bullet .solid-fill {
		fill:currentColor;
	}
	
	.dark-cursor .clapat-pagination-bullet .solid-fill {
		fill:currentColor;
	}
	
	.path {
		display: none;
	}

	@keyframes dash {
	  from {
		stroke-dashoffset: 1000;
	  }
	
	  to {
		stroke-dashoffset: 0;
	  }
	}
	
	.disable-cursor .full .looped-carousel .clapat-controls, .disable-cursor .full_elementor .looped-carousel .clapat-controls {
		position: absolute;
		width: calc(100% - 60px);
		height: 100%;
		top: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	
	.disable-cursor .full .small-looped-carousel .clapat-controls, .disable-cursor .full_elementor .small-looped-carousel .clapat-controls {
		position: absolute;
		width: calc(100% - 60px);
		max-width:540px;
		height: 100%;
		top: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	
	.disable-cursor .slider-button-prev {
		position: absolute;
		top: calc(50% - 30px);
		left: -60px;
		margin: 0;
		width: 60px;
		height: 60px;
		z-index: 10;
		cursor: pointer;
		opacity:0.7;
		-webkit-transition: opacity 0.15s ease-out;
		transition: opacity 0.15s ease-out;
	}
	
	.disable-cursor .slider-button-prev:hover {
		opacity:1;
	}
	
	.disable-cursor .slider-button-prev::after {
		font: var(--fa-font-solid);
		content: "\f104";
		font-size: 24px;
		width:60px;
		height:60px;
		line-height:60px;
		text-align:center;
		position: absolute;
		left: 0;
		top:0;
		color:#fff;
	}
	
	.disable-cursor .light-cursor .slider-button-prev::after, .disable-cursor .light-cursor .slider-button-next::after {
		color:#fff;
	}
	
	.disable-cursor .dark-cursor .slider-button-prev::after, .disable-cursor .dark-cursor .slider-button-next::after {
		color:#000;
	}
	
	.disable-cursor .slider-button-next {
		position: absolute;
		top: calc(50% - 30px);
		left:auto;
		right: -60px;
		margin: 0;
		width: 60px;
		height: 60px;
		z-index: 10;
		cursor: pointer;
		opacity:0.7;
		-webkit-transition: opacity 0.15s ease-out;
		transition: opacity 0.15s ease-out;
	}
	
	.disable-cursor .slider-button-next:hover {
		opacity:1;
	}
	
	.disable-cursor .slider-button-next::after {
		font: var(--fa-font-solid);
		content: "\f105";
		font-size: 24px;
		width:60px;
		height:60px;
		line-height:60px;
		text-align:center;
		position: absolute;
		left: 0;
		top:0;
		color:#fff;
	}
	
	
/*--------------------------------------------------
	Light Box
---------------------------------------------------*/	

	.image-link, .video-link {
		display: block;
		width: auto;
		
	}
	
	.rounded-borders .image-link img, .rounded-borders .video-link img {
		border-radius:8px;
	}
	
	.disable-cursor .image-link::after {
		font: var(--fa-font-solid);
		content: "\f002";
		font-size: 18px;
		width:60px;
		height:60px;
		line-height:60px;
		text-align:center;
		position: absolute;
		right:10px;
		top:10px;
		color:#fff;
		opacity:0;
		-webkit-transition: opacity 0.15s ease-out;
		transition: opacity 0.15s ease-out;
	}
	
	.disable-cursor .image-link:hover::after {
		opacity:1;
	}
	
	.disable-cursor .video-link::after {
		font: var(--fa-font-solid);
		content: "\f04b";
		font-size: 18px;
		width:60px;
		height:60px;
		line-height:60px;
		text-align:center;
		position: absolute;
		right:10px;
		top:10px;
		color:#fff;
		opacity:0;
		-webkit-transition: opacity 0.15s ease-out;
		transition: opacity 0.15s ease-out;
	}
	
	.disable-cursor .video-link:hover::after {
		opacity:1;
	}
	
	
/*--------------------------------------------------
	Video Player
---------------------------------------------------*/	
	
	.hero-video-wrapper {
		position: absolute;
    	box-sizing: border-box;
		width: 100%;
		height: 100%;
		padding:0;
		overflow:hidden!important;
		opacity:1;		
	}
	
	.item .hero-video-wrapper, .clapat-item .hero-video-wrapper, .hover-reveal__img .hero-video-wrapper, .clapat-slider .hero-video-wrapper, .open-thumbnail .hero-video-wrapper, .slider-zoom-wrapper .hero-video-wrapper, .overlapping-image .hero-video-wrapper, .section-image .hero-video-wrapper {
		position: absolute;
		box-sizing: border-box;
		min-width: 100%;
		min-height: 100%;
		width: 100%;
		height: auto;
		background-size: cover;
		padding: 0;
		overflow: hidden !important;
		opacity: 1;
		top: 0;
		z-index: 120;
		pointer-events: none;
	}
	
	.content-video-wrapper {
		position: absolute;
    	box-sizing: border-box;
		width: 100%;
		height: 100%;
		left:0;
		top:0;
		padding:0;
		overflow:hidden!important;
		z-index: 1;
	}
	
	.hero-video-wrapper video.bgvid, .content-video-wrapper video.bgvid {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: -1;
		object-fit: cover;
		width: 100%;
		height: 100%;
	}
	
	.video-wrapper {
		position: relative;
    	box-sizing: border-box;
		min-width: 100%;
		max-height: 100vh;
		width: 100%;
		height: auto;
		background-size: cover;
		padding:0;
		overflow:hidden!important;
		opacity:1;
		-webkit-transform: translateY(0px);
		transform: translateY(0px);
	}
	
	.rounded-borders .video-wrapper {
		border-radius: 8px;
	}
	
	.video-cover {
		position:absolute;
		width:100%;
		height:100%;
		top:0;
		left:0;
		z-index:100;
		cursor:pointer;
		background-size:cover;
		background-position:center center;
		background-repeat:no-repeat;
		-webkit-transition: opacity 0.3s ease-out 0.05s, height 0s ease-out 0s;
		transition: opacity 0.3s ease-out 0.05s, height 0s ease-out 0s;
	}
	
	.video-cover.hidden {
		opacity:0;
		height: calc(100% - 50px);
		-webkit-transition: opacity 0.3s ease-out, height 0s ease-out 0.3s;
		transition: opacity 0.3s ease-out, height 0s ease-out 0.3s;
	}
	
	video.bgvid { 
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		object-position: center; 
		object-fit: cover;
		z-index: -100;
	}
	
	.video-wrapper video.bgvid {
		position: relative;
	}

	.control {
		bottom: 25px;
		color: #ccc;
		display: none;
		left: 0;
		position: absolute;
		width: calc(100% - 40px);
		z-index: 5;
		background-color: #eee;
		padding: 0;
		box-sizing: border-box;
		right: 0;
		margin: 0 auto;
	}
	
	.full .control, .full_elementor .control {
		bottom: 10px;
		width: calc(100% - 160px);
	}

	.btmControl{
		clear:both;
	}
	
	.control .sound{
		width: 30px;
		height: 50px;
		float:left;
		cursor:pointer;
		text-align:center;
		line-height:50px;
		color:#fff;
		opacity:0.4;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.control .sound:hover {
		opacity:1;
	}
	
	.control .sound i {
		line-height:50px;
	}
	
	.control .sound.muted i:first-child {
		display:none;
	}
	
	.control .sound.muted i:last-child {
		display:block;
	}
	
	.control .sound i:last-child {
		display:none;
	}
	
	.control .btnFS{
		width: 50px;
		height: 50px;
		float:left;
		cursor:pointer;
		text-align:center;
		line-height:50px;
		color:#fff;
		opacity:0.4;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		-ms-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.control .btnFS:hover{
		opacity:1;
	}

	.progress-bar {
		background: rgba(255,255,255,0.5);
		box-sizing: border-box;
		float: left;
		height: auto;
		width: calc(100% - 123px);
		cursor: pointer;
		bottom: 23px;
		position: absolute;
		left: 23px;
		opacity:0;
		-webkit-transition: opacity 0.2s ease-in-out;
		-moz-transition: opacity 0.2s ease-in-out;
		-o-transition: opacity 0.2s ease-in-out;
		-ms-transition: opacity 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out;
	}
	
	.video-wrapper:hover .progress-bar {
		opacity:1;
	}
	
	.progress {
		height: 2px;
		max-width: 100%;
		position: relative;
		width: 100%;
	}
	
	.progress span {
		height:100%;
		position:absolute;
		top:0;
		left:0;
		display:block;
	}
	
	.timeBar{
		z-index:10;
		width:0;
		background: #fff;
	}
	
	.bufferBar{
		z-index:5;
		width:0;
		background: rgba(255,255,255,0.2);
	}
	
	.video-btns {
		position: absolute;
		right: 3px;
		bottom: 0px;
		opacity:0;
		-webkit-transition: all 0.2s ease-in-out;
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		-ms-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.video-wrapper:hover .video-btns {
		opacity:1;
	}
	
	.volume{
		position:relative;
		cursor:pointer;
		width:70px;
		height:10px;
		float:right;
		margin-top:10px;
		margin-right:10px;
	}
	
	.volumeBar{
		display:block;
		height:100%;
		position:absolute;
		top:0;
		left:0;
	}

/*--------------------------------------------------
	Buttons
---------------------------------------------------*/	

	.button-box {
		line-height:16px;
		cursor:pointer;
		border:none;
		box-sizing:border-box;
		text-align:center;
		display:inline-block;
		position:relative;
	}
	
	.button-box.has-animation {
		opacity: 0;
		-webkit-transition: translateY(0px);
		transform: translateY(0px);
	}
	
	.text-align-center .button-box, .text-align-center.button-box {
		margin-left:10px;
		margin-right:10px;
		text-align:center;
	}
	
	.text-align-center.button-box {
		display: flex;
		margin:auto
	}
	
	.button-content .submit-box {
		color:#fff;
	}
	
	.clapat-button-wrap {
		display: flex;
		position: relative;
		justify-content: center;
		align-items: center;
		left:0;
		right:0;
		min-width:50px;
		height:60px;
		color:#000;		
	}
	
	.light-content .clapat-button-wrap, .dark-section .clapat-button-wrap {
		color:#fff;	
	}
	
	.light-content .light-section .clapat-button-wrap {
		color:#000;	
	}
	
	.clapat-button-wrap.circle {
		min-width:104px;
		height:104px;	
	}
	
	.text-align-center .clapat-button-wrap {
		margin:0 auto;
	}
	
	.clapat-button {		
		opacity:1;		
	}
	
	.button-border {
		height: 50px;
		width: auto;
		border: solid 2px currentColor;
		background-color:#000;
		color:#fff;
		border-radius: 5px;
		cursor:pointer;
		font-size: 16px;
		font-weight: 400;
		line-height:50px;
		overflow: hidden;
		color:currentColor;
		text-align:center;
		box-sizing:initial;
	}
	
	.button-box.has-animation .button-border {
		width: 50px;
	}
	
	.disable-cursor .button-border {
		-webkit-transition : border 0.2s ease-out;
		transition : border 0.2s ease-out;
	}
	
	.light-content .button-border, .dark-section .button-border {
		border: solid 2px currentColor;
		background-color:currentColor;
	}
	
	.light-content .light-section .button-border {
		border: solid 2px currentColor;
		background-color:currentColor;
	}
	
	.light-content .button-border a, .dark-section .button-border a {
		color:#000;
	}
	
	.light-content .light-section .button-border a {
		color:#fff;
	}
	
	.button-border:not(.outline) a {
		color:#fff!important;
	}
	
	.light-content .button-border:not(.outline) a, .dark-section .button-border:not(.outline) a {
		color:#000!important;
	}
	
	.light-content .light-section .button-border:not(.outline) a {
		color:#fff!important;
	}
	
	.button-border.rounded {
		border-radius: 30px;
	}
	
	.button-border.outline {
		border: solid 2px currentColor;
		color:currentColor;
		background-color:transparent;
	}
	
	.light-content .button-border.outline, .dark-section .button-border.outline {
		border: solid 2px currentColor;
		color:currentColor;		
		background-color:transparent;
	}
	
	.light-content .light-section .button-border.outline {
		border: solid 2px currentColor;		
		background-color:transparent;
	}
	
	.clapat-button a {
		position: relative;
		display: block;
		height: 100%;
	}
	
	.button-box.has-animation .clapat-button a {
		opacity:0;
		white-space: nowrap;	
		transition: opacity 0.5s ease 0.5s;
		-webkit-transition: opacity 0.5s ease 0.5s;
	}
	
	.button-box.has-animation .clapat-button .animated a {
		opacity:1;
	}
	
	.light-content .button-border.outline a, .dark-section .button-border.outline a {
		color:#fff;
	}
	
	.light-content .light-section .button-border.outline a {
		color:#000;
	}
	
	.dark-content .light-section .button-border a {
		color:#fff;
	}
	
	.dark-content .light-section .button-border.outline a {
		color:#000;
	}
	
	.circle .button-border {
		border-radius: 100px;
		height: 100px;
		width: 100px;
	}
	
	.button-border span {
		position: relative;
		display: inline-block;
		-webkit-transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		width: auto;
		text-align: center;
		transform-origin: 100% 0%;
		padding: 0 40px;
	}
	
	.button-border span::before {
		position: absolute;
		width: 100%;
		top: 100%;
		left: 0;
		content: attr(data-hover);
		text-align: center;
	}
	
	.clapat-button:hover .button-border span {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
		transform-origin: 0% 0%;
	}
	
	.clapat-button-wrap.circle:hover .button-border {
		border: solid 2px transparent;	
	}
	
	.clapat-button-wrap.circle .button-border input, .clapat-button-wrap.circle .button-border a {
		height: 100px;
		width: 100px;
		line-height: 100px;
		text-align: center;
		padding: 0;
		font-size: 12px;
		cursor:pointer;	
	}
	
	

/*--------------------------------------------------
	Appearing Items
---------------------------------------------------*/	
	
	.has-animation {
		opacity:0;
		-webkit-transition:translateY(30px);
		transform: translateY(30px);
	}
	
	.has-animation.has-scale {
		opacity: 0;
		-webkit-transition:translateY(0px) scale(1.05);
		transform: translateY(0px) scale(1.05);
		transform-origin: 50% 0;
		will-change:transform;
	}
	
	.has-animation.has-scale-vertical {
		opacity: 0;
		-webkit-transition:translateY(0px) scaleY(1.1);
		transform: translateY(0px) scaleY(1.1);
		transform-origin: 50% 0;
		will-change:transform;
	}
	
	.has-animation.has-cover {
		opacity: 1;
		-webkit-transition:translateY(0px);
		transform: translateY(0px);
		overflow:hidden;
	}
	
	.has-animation.has-cover::after {
		content: "";
		width: 100%;
		height: 100%;
		background-color:inherit;
		position:absolute;
		top:0;
		right:0;
		z-index:10;
		-webkit-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		-o-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);	
	}
	
	.has-animation.has-cover.animated::after {
		width:0;
	}
	
	.has-animation.has-cover img {
		opacity: 1;
		-webkit-transition:scale(1.05);
		transform:scale(1.05);
		-webkit-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		-o-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);	
	}
	
	.has-animation.has-cover.animated img {
		opacity: 1;
		-webkit-transition:scale(1);
		transform:scale(1);
	}
	
	.has-mask {
		margin-bottom:10px;
	}
	
	.has-mask span {
		display:inline-table;
		overflow:hidden;
	}
	
	.has-mask span > span {
		display: inline-table;
		margin:0!important;
		line-height:inherit;
		height:inherit;
		opacity:0;
		-webkit-transform:translateY(60px);
		transform: translateY(60px);
	}
	
	h1.big-title.has-mask span, h1.big-title.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:12px;
	}
	
	h1.has-mask span, h1.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:12px;
	}
	
	h2.has-mask span, h2.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:10px;
	}
	
	h3.has-mask span, h3.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:8px;
	}	
	
	h4.has-mask span, h4.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:7px;
	}
	
	h5.has-mask span, h5.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:6px;
	}
	
	h6.has-mask span, h6.has-mask span > span {
		line-height:inherit;
		height:inherit;
		margin-right:5px;
	}
	
	.has-mask-fill > span {
		position: relative;
		display: inline;
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
  		background-size: 0% 100%;
	}
	
	.has-mask-fill.block-title > span {
		display: block;
	}
	
	.light-content .has-mask-fill > span, .dark-section .has-mask-fill > span {
		-webkit-text-fill-color: rgba(255,255,255,0.1);
		background-image: linear-gradient(#fff, #fff);;
	}
	
	.light-content .light-section .has-mask-fill > span {
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
	}
	
	.has-indent {
		text-indent:8vw;
	}
	
	.has-span-indent {
		margin-right: 30px;
		display: inline;
		vertical-align: top;
		line-height: inherit;
		font-family: 'Poppins', sans-serif;
		font-weight: 400;
		font-size: 16px;
		text-transform: initial;
		opacity:0.4;
		letter-spacing: 0;
	}
	
	.has-hover-image {
		cursor:pointer;
		display:inline-block;
		position:relative;
	}
	
	span.has-hover-image::before {
		content: '';
		position: absolute;
		bottom: 1px;
		left: 0;
		width: 100%;
		height: 2px;
		background: currentColor;
		transform: scaleX(1);
		transform-origin: left;
		transition: transform .2s ease-out;
	}
	
	.light-content span.has-hover-image::before, .dark-section span.has-hover-image::before {
		background: rgba(255,255,255,1);
	}
	
	.light-content .light-section span.has-hover-image::before {
		background: rgba(0,0,0,1);
	}
  
    span.has-hover-image:hover::before {
		transform: scaleX(0);
		transform-origin: right;
	}
	
	span.has-hover-image .hover-reveal {
		left:0;
		width: 400px;
		height: 250px;
		overflow:hidden;
	}
	
	span.has-hover-image.vertical .hover-reveal {
		width: 300px;
		height: 400px;
	}
	
	h1 > span.has-scale-image {
		position: relative;
		display: inline-block;
		background-color: currentColor;
		width: calc(1rem + 2.4vw);
		height: calc(1rem + 2.4vw);
		line-height: inherit;
		border-radius:6px;
		cursor:pointer;
		overflow:hidden;
		opacity:0;
		transform:scale(0.5);
		-webkit-transform:scale(0.5);		
	}
	
	.hidden-image {
		position:absolute;
		width:100%;
		height:100%;
		background-size: cover;
		opacity:0;
		transition: all 0.4s ease-out;
		-webkit-transition: all 0.4s ease-out;
	}
	
	h1 > span.has-scale-image:hover .hidden-image {
		opacity:1;
	}
	
	.has-opacity span {
		opacity:0.2;
	}
	
	.number-counter {
		position: relative;
		display:table;
	}
	
	.text-align-center .number-counter {
		margin:0 auto;
		left: -5%;		
	}
	
	.number-counter::after {
		content: attr(data-symbol);
		line-height: inherit;
		top: 0;
		position: absolute;
		left: calc(100% + 5px);
	}


/*--------------------------------------------------
	Underline Link
---------------------------------------------------*/			
	
	a.link {
		display:inline-block;
		position:relative;
		padding: 6px 0;
	}
	
	.light-content a.link {
		color:#fff;
	}
	
	.light-content .light-section a.link {
		color:#000;
	}
	
	a.link::before {
		content: '';
		position: absolute;
		bottom: 7px;
		left: 0;
		width: 100%;
		height: 2px;
		background: currentColor;
		transform: scaleX(0);
		transform-origin: right;
		transition: transform .2s ease-out;
	}
	
	h1 a.link::before {
		bottom: 6px;
		height: 3px;
	}
  
    a.link:hover::before {
		transform: scaleX(1);
		transform-origin: left;
	}


/*--------------------------------------------------
	Icon Boxes
---------------------------------------------------*/

	.box-icon-wrapper {
		display: table;
		position: relative;
		box-sizing: border-box;
		height: auto;
		width:100%;
	}
	
	.box-icon {
		color: #000;
		position: relative;
		margin-top: 0px;
		margin-bottom: 10px;
		width: 35px;
		height: 35px;
		line-height: 35px;
	}
	
	.text-align-center .box-icon {
		margin:auto;
	}
	
	.inline-boxes .box-icon {
		position:absolute;
	}
	
	.box-icon i {
		position:relative;
		margin-bottom:0px;
		font-size:24px;
	}
	
	.light-content .box-icon {
		color:#fff;
	}
	
	.light-content .light-section .box-icon {
		color:#000;
	}
	
	.box-icon:after {
	  content: "";
	  clear: both;
	  display: table;
	}
	
	.box-icon-content {
		position:relative;
		width:100%;
		box-sizing:border-box;
	}
	
	.inline-boxes .box-icon-content {
		padding-left:45px;
	}
	
	.box-icon h5 {
		margin-bottom:5px;
	}
	
	
/*--------------------------------------------------
	Parallax Image
---------------------------------------------------*/	
	
	.parallax-image-content {
		position: relative;
		margin:0 auto;
		z-index: 10;
		height: 100%;
		width: 100%;
		box-sizing: border-box;
	}
	
	.parallax-image-content .outer {
		width: 100%;
		margin: 0 auto;
		padding-top:20px;
		padding-bottom:20px;
		box-sizing: border-box;
	}
	
	.parallax-image-content img {
		width:100%;
		max-width:100%;
		height:auto;
		display:block;
	}
	
	.rounded-borders .parallax-image-content img {
  		border-radius: 8px;
	}
	
/*--------------------------------------------------
	Clients Table
---------------------------------------------------*/	
	
	.clients-table {
		position:relative;
		margin:0;
		display:flex;
		justify-content:space-between;
		flex-wrap: wrap;
		background-image:url("../images/clients-middle.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	
	.light-content .clients-table, .dark-section .clients-table {
		background-image:url("../images/clients-middle-white.png");
	}
	
	.light-content .light-section .clients-table {
		background-image:url("../images/clients-middle.png");
	}
	
	.clients-table::before {
	  	content: "";
		position: absolute;
		width: 100%;
		height: 20px;
		top: 0;
		left: 0;
		background-image:url("../images/clients-top.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	
	.light-content .clients-table::before, .dark-section .clients-table::before {
		background-image:url("../images/clients-top-white.png");
	}
	
	.light-content .light-section .clients-table::before {
		background-image:url("../images/clients-top.png");
	}

	.clients-table::after {
	  	content: "";
		position: absolute;
		width: 100%;
		height: 20px;
		bottom: 0;
		left: 0;
		background-image:url("../images/clients-bottom.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	
	.light-content .clients-table::after, .dark-section .clients-table::after {
		background-image:url("../images/clients-bottom-white.png");
	}
	
	.light-content .light-section .clients-table::after {
		background-image:url("../images/clients-bottom.png");
	}
	
	.clients-table li {
		position:relative;
		display: block;
		width:calc(100% / 4 - 40px);
		height: auto;
		aspect-ratio: 13/10;
		box-sizing: border-box;
		text-align: center;
		margin: 20px;
		overflow:hidden;
		padding:30px;
	}
	
	.clients-table li img {
		width:100%;
		height: 100%;
		margin:0 auto;
		opacity:0.6;
		position:relative;
		display:block;
		object-position: center; 
		object-fit: cover;
		transition: all 0.2s ease 0s;
		-webkit-transition: all 0.2s ease 0s;
	}
	
	.clients-table li:hover img {
		opacity:1;
	}
	
	.clients-table.no-borders li {
		border:none;
	}
	
	.overlay {
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		top: 00;
		left: 0;
		color: #FFF;
		background-color: rgba(0,0,0,0.1);
		z-index: 10;
		transform:scale(0.85);
		-webkit-transform:scale(0.85);
		opacity:0;
		transition: all 0.4s ease 0s;
		-webkit-transition: all 0.4s ease 0s;
		pointer-events:none;
	}
	
	.light-content .clients-table .overlay, .dark-section .clients-table .overlay {
		background-color: rgba(255,255,255,0.05);
	}
	
	.light-content .light-section .clients-table .overlay {
		background-color: rgba(0,0,0,0.1);
	}
	
	.clients-table li:hover .overlay {
		transform:scale(0.95);
		-webkit-transform:scale(0.95);
		opacity:1;
	}
	
	
	
	
/*--------------------------------------------------
	Accordion
---------------------------------------------------*/
	
	.accordion {
		padding:20px 0;
		padding-top:0;
		margin:0;
	}
	
	.accordion.bigger-acc, .light-content .accordion.bigger-acc, .dark-section .accordion.bigger-acc, .light-content .light-section .accordion.bigger-acc {
		border-top: none;
		border-bottom: none;
		padding:0px 0;
	}
	
	.accordion dt {
		position:relative;
		display:flex;
		align-items: center;
		cursor: pointer;
		padding: 0px;
		margin-bottom:0px;
		margin-top: 20px;
		padding-top: 20px;
		line-height:30px;
		-webkit-transition:all 0.2s ease 0s;
    	transition:all 0.2s ease 0s;
		z-index:10;
		border-top: 1px solid rgba(0,0,0,0.1);
	}
	
	.accordion.bigger-acc dt {
		font-size: calc(1rem + 1vw);
		line-height: calc(1rem + 1.5vw);
		margin-top: 40px;
		padding-top: 40px;
	}
	
	.uppercase-titles .accordion.bigger-acc dt {
		text-transform:uppercase;
	}
	
	.light-content .accordion dt, .dark-section .accordion dt {
		border-top: 1px solid rgba(255,255,255,0.2);
	}
	
	.light-content .light-section .accordion dt {
		border-top: 1px solid rgba(0,0,0,0.1);
	}
	
	.accordion dt:first-child {
		margin-top: 0px;
		border-top: none;
	}
	
	.accordion dt span {
		width: calc(100% - 30px);
		position: relative;
		overflow: hidden;
		display: block;
		padding: 0px;
		color:#000;		
		font-family:inherit;
	}
	
	.accordion:not(.bigger-acc) dt span em {
		font-family:inherit;
	}
	
	.accordion.bigger-acc dt span {
		font-family:inherit;
	}
	
	.accordion.bigger-acc dt span > div {
		position: relative;
		display:table;
		float:left;
		width:auto;
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
  		background-size: 100% 100%;
		transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
	}
	
	.accordion.bigger-acc:hover dt span > div {
		transition: all 0.15s ease 0s;
		-webkit-transition: all 0.15s ease 0s;
		background-size: 0% 100%;
	}
	
	.accordion.bigger-acc:hover dt:hover span > div, .accordion.bigger-acc:hover dt.accordion-active span > div {
		background-size: 100% 100%;
		transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
	}
	
	.light-content .accordion.bigger-acc dt span > div, .dark-section .accordion.bigger-acc dt span > div {
		-webkit-text-fill-color: rgba(255,255,255,0.1);
		background-image: linear-gradient(#fff, #fff);;
	}
	
	.light-content .light-section .accordion.bigger-acc dt span > div {
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
	}
	
	.light-content .accordion dt span, .dark-section .accordion dt span {
		color:#fff;
	}
	
	.light-content .light-section .accordion dt span {
		color:#000;
	}
	
	.accordion .accordion-content {
		margin-bottom: 0;
		font-size:var(--font-size-medium);
		color:#000;
		line-height: var(--font-size-large);
		padding-left: 0;
		padding-right: 80px;
		padding-top:10px;
		padding-bottom:5px;
		z-index: 0;
		position: relative;
	}
	
	.light-content .accordion .accordion-content, .dark-section .accordion .accordion-content {
		color:#999;
	}
	
	.light-content .light-section .accordion .accordion-content {
		color:#777;
	}
	
	.accordion.bigger-acc .accordion-content {
		font-size:var(--font-size-medium);
		font-size:var(--font-size-large);
	}
	
	.light-content .accordion .accordion-content, .dark-section .accordion .accordion-content {
		color:#ccc;
	}
	
	.light-content .light-section .accordion .accordion-content {
		color:#444;
	}
	
	.acc-icon-wrap {
		width: 30px;
		height: 30px;
		display: flex;
		position: relative;
		justify-content: center;
		align-items: center;
		float: none;
		opacity:1;
		-webkit-transition:opacity 0.2s ease 0s;
    	transition:opacity 0.2s ease 0s;
	}
	
	.accordion.bigger-acc .acc-icon-wrap {
		height: 50px;
		width: 50px;
	}
	
	
	.accordion dt:hover .acc-icon-wrap, .accordion dt.accordion-active .acc-icon-wrap {
		opacity:1;
	}
	
	.acc-button-icon {
		height: 30px;
		width: 30px;
		color: #000;
		text-align: center;
		line-height: 30px;
		font-size: 12px;
		background: rgba(0,0,0,0.1);
		border-radius: 50px;
		-webkit-transition:background 0.2s ease 0s, color 0.2s ease 0s;
    	transition:background 0.2s ease 0s, color 0.2s ease 0s;
	}
	
	.accordion.bigger-acc .acc-button-icon {
		height: 50px;
		width: 50px;
		line-height: 50px;
		font-size: 16px;
		background: rgba(0,0,0,0.1);
		border-radius: 50px;
		
	}
	
	.accordion dt:hover .acc-button-icon, .accordion dt.accordion-active .acc-button-icon {
		background: rgba(0,0,0,1);
		color: #fff;
	}
	
	.light-content accordion .acc-button-icon, .dark-section .accordion .acc-button-icon {
		background: rgba(255,255,255,0.1);
	}
	
	.light-content .accordion dt:hover .acc-button-icon, .dark-section .accordion dt.accordion-active .acc-button-icon {
		background: rgba(255,255,255,1);
		color: #000;
	}
	
	.light-content .light-section accordion .acc-button-icon {
		background: rgba(0,0,0,0.1);
	}
	
	.light-content .light-section dt:hover .acc-button-icon, .light-content .light-section .accordion dt.accordion-active .acc-button-icon {
		background: rgba(0,0,0,1);
		color: #fff;
	}
	
	.light-content .accordion .acc-button-icon, .dark-section .accordion .acc-button-icon {
		color: #fff;
	}
	
	.light-content .light-section .accordion .acc-button-icon {
		color:#000;
	}
	
	.acc-button-icon i, .acc-button-icon svg {
		height: 30px;
		line-height: 30px;
		width: 30px;
		text-align: center;
		-webkit-transition:transform 0.2s ease 0s;
    	transition:transform 0.2s ease 0s;
	}
	
	dt.accordion-active .acc-button-icon i, dt.accordion-active .acc-button-icon svg {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	


/*--------------------------------------------------
	Justified Gallery
---------------------------------------------------*/	
	
	.justified-gallery {
		box-sizing: border-box;
		padding: 0 0px;
		 width: calc(100% + 20px) !important;
  		margin-left: -10px;
	}
	
	.collage-thumb {
		position:relative;
		overflow:hidden;
		cursor:pointer;
	}
	
	.collage-thumb:hover .thumb-info {
		opacity:1;
		bottom:-5px;
	}
	
	.thumb-info {
		position:absolute;
		bottom:-10px;
		left:0;
		width:100%;
		opacity:0;
		color: #fff!important;
		padding: 50px 20px 20px;
		box-sizing:border-box;
		font-size:12px;
		font-weight: 500;
		transition:all 0.2s ease-in-out 0s;
    	-webkit-transition:all 0.2s ease-in-out 0s;
		background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.55) 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.55))); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.55) 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.55) 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.55) 100%); /* IE10+ */
		background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.55) 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
	}
	
/*--------------------------------------------------
	Team Members List
---------------------------------------------------*/	
	
	
	.team-members-list  {
		position: relative;
		top: 0;
		left: 0;
		width: 100%;
		box-sizing:border-box;
		margin: 0 auto;
		padding: 0px;
		overflow:hidden;
		pointer-events: none;
	}
	
	.team-members-list li {
		list-style:none;
		position: relative;
		margin:0;
		width:100%;
		cursor:pointer;
		pointer-events: initial;
		padding:40px 0px 40px 0px;
		box-sizing:border-box;
		border-bottom:1px solid;
		border-color:rgba(0,0,0,0.1);
	}
	
	.team-members-list li:last-child {
		border-bottom:0px solid;
	}
	
	.light-content .team-members-list li, .dark-section .team-members-list li {
		border-color:rgba(255,255,255,0.15);
	}
	
	.light-content .light-section .team-members-list li {
		border-color:rgba(0,0,0,0.1);
	}
	
	.full > .team-members-list li, .full_elementor .team-members-list li {
		padding:40px 80px 40px 80px;
	}
	
	.team-member {
		position: relative;
		display:table;
		margin-bottom:0px;
		vertical-align: top;
		width:100%;	
		z-index:10;
		line-height: calc(1rem + 3.5vw);
	}
	
	.team-member > div {
		font-size: calc(1rem + 3vw);
		font-weight: 500;
  		letter-spacing: -0.1vw;
		position: relative;
		display:table;
		margin:0 auto;		
		width:auto;
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
  		background-size: 100% 100%;
		transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
	}
	
	.uppercase-titles .team-member > div {
		text-transform:uppercase;
	}
	
	.team-members-list:hover li .team-member > div {
		transition: all 0.15s ease 0s;
		-webkit-transition: all 0.15s ease 0s;
		background-size: 0% 100%;
	}
	
	.team-members-list:hover li:hover .team-member > div {
		background-size: 100% 100%;
		transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
	}
	
	.light-content .team-member > div, .dark-section .team-member > div {
		-webkit-text-fill-color: rgba(255,255,255,0.1);
		background-image: linear-gradient(#fff, #fff);;
	}
	
	.light-content .light-section .team-member > div {
		-webkit-text-fill-color: rgba(0,0,0,0.1);
		-webkit-background-clip: text;
		background-repeat: no-repeat;
		background-image: linear-gradient(#000, #000);
	}
	
	.light-section .team-member {
		color:#000;
	}
	
	.dark-section .team-member {
		color:#fff;
	}
	
	.team-members-list:hover li .team-member {
		opacity:0.3;
	}
	
	.team-members-list li:hover .team-member {
		opacity:1;
	}
	
	.team-member span {
		line-height: inherit;
		position: absolute;
		left:0;
		top:0;
		color: #000;
		display: block;
		transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
	}
	
	.team-member span:last-child {
		left:auto;
		right:0;
	}
	
	.team-members-list:hover li .team-member > span {
		opacity:0.3;
	}
	
	.team-members-list:hover li:hover .team-member > span {
		opacity:1;
	}
	
	.light-section .team-member span {
		color:#000;
	}
	
	.dark-section .team-member span {
		color:#fff;
	}
	
	.team-members-list .hover-reveal {
		position: fixed;
		width: 300px;
		height: 400px;
		pointer-events: none;
		opacity: 0;
	}
	
	.swiper-container.team-looped-carousel {		
		cursor:grab;
    }
	
	.drag-cursor .swiper-container.team-looped-carousel {
		cursor:grabbing;
    }
	
	.team-looped-carousel .swiper-slide {        
		text-align:left;
    }
	
	.team-caption {
		position:absolute;
		bottom:0;
		left:0;
		width:100%;
		height:auto;
		box-sizing:border-box;
		padding:10px 30px 30px 30px;
	}
	
	.team-caption h5, .team-caption p {
		margin-bottom:0;
	}
	
/*--------------------------------------------------
	Team Members Grid
---------------------------------------------------*/
	
	.team-wrapper-grid {
		display:block;
		position:relative;
	}
	
	.team-intro-grid {
		display: flex;
  		justify-content: center;
  		align-items: center;
		width:100%;
		height:auto;
		box-sizing:border-box;
		padding:35vh 0;
		position:absolute;
		top:0;
	}
	
	.team-members-grid  {
		position: relative;
		width: 100%;
		height:auto;
		box-sizing:border-box;
		margin: 0 auto;
		padding: 0px;
		overflow:hidden;
	}
	
	.team-members-grid li {
		list-style:none;
		position: relative;
		margin:0;
		width:100%;
		box-sizing:border-box;
		display:flex;
		flex-direction: column;
	}
	
	.team-member-inner {
		display: block;
		width: 20%;
		height: 100%;
		overflow:hidden;
		cursor:pointer;
	}
	
	.team-members-grid li:nth-child(4n+1) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+2)  .team-member-inner {
		transform: translateX(400%);
		-webkit-transform: translateX(400%);
	}
	
	.team-members-grid li:nth-child(4n+3) .team-member-inner {
		transform: translateX(100%);
		-webkit-transform: translateX(100%);
	}
	
	.team-members-grid li:nth-child(4n+4) .team-member-inner {
		transform: translateX(300%);
		-webkit-transform: translateX(300%);
	}
	
	.team-member-image {
		width: 100%;
		height: auto;
		display: block;
		position: relative;
		overflow:hidden;
	}
	
	.rounded-borders .team-member-image {
		border-radius:8px;
	}
	
	.team-member-image::before {
		content: "";
		padding-top: 100%;
		position: relative;
		display: block;
		box-sizing: border-box;
	}
	
	.team-member-image img {
		width:100%;
		height: 100%;
		position:absolute;
		top:0;
		left:0;
		display:block;
		object-position: center; 
		object-fit: cover;
		-webkit-transform:scale(1.05);
		transform: scale(1.05);
		-webkit-transition: transform 0.3s ease-out 0s;
		transition: transform 0.3s ease-out 0s;
	}
	
	.team-member-inner:hover .team-member-image img {	
		-webkit-transform:scale(1);
		transform: scale(1);			
	}
	
	.team-member-caption {
		position: relative;
		display: flex;
		justify-content: space-between;
		box-sizing: border-box;
		padding: 10px 0;
	}
	
	.team-member-caption span {
		color:#000;
	}
	
	.light-section .team-member-caption span {
		color:#000;
	}
	
	.dark-section .team-member-caption span {
		color:#fff;
	}
	
/*--------------------------------------------------
	Contact Formular
---------------------------------------------------*/	
	
	.text-align-center #contact-formular {
		margin:0 auto;
		max-width:800px;
	}
	
	#contact-formular::after {
		clear: both;
		content: " ";
		display: table;
	}
	
	#contactform {
		position:relative;
	}
	
	.name-box, .email-box, .message-box {
		position:relative;
		display:block;
		color:#000;
	}
	
	.light-content .name-box, .dark-section .name-box, light-content .email-box, .dark-section .email-box, light-content .message-box, .dark-section .message-box {
		color:#fff;
	}
	
	.light-content .light-section .name-box, .light-content .light-section .email-box, .light-content .light-section .message-box {
		color:#000;
	}
	
	.name-box, .email-box  {
		width: 47%;
		float: left;
		margin-bottom: 20px;
		margin-right: 6%;
		position: relative;
	}
	
	.name-box::after, .email-box::after {
		clear: both;
		content: " ";
		display: table;
	}

	.email-box {
		margin-right:0px;
	}
	
	.message-box {
		float:left;
		width:100%;		
		margin-top:60px;
	}
	
	.verify-box {
		float:left;
		width:100%;		
		margin-bottom:60px;
	}
	
	.text-align-center .verify-box {
		float: none;
		width: auto;
		text-align: center;
		display: table;
		margin: 0 auto;
		margin-bottom: 60px;
	}
	
	.verify-sum {
		margin:0;
		padding:0;
		float:left;
	}
	
	.verify-sum li {
		list-style:none;
		display:block;
		float:left;
		color:#fff;
		width:34px;
		height:34px;
		line-height:34px;
		text-align:center;
		border-radius:3px;
		background-color:#000;
		margin-bottom:0;
	}
	
	.light-content .verify-sum li, .dark-section .verify-sum li {
		color:#000;
		background-color:#fff;
	}
	
	.light-content .light-section .verify-sum li {
		color:#fff;
		background-color:#000;
	}
	
	.verify-sum li:nth-child(2), .verify-sum li:nth-child(4) {
		width:30px;
		color:#444;
		background-color:transparent!important;
	}
	
	.light-content .verify-sum li:nth-child(2), .light-content .verify-sum li:nth-child(4), .dark-section .verify-sum li:nth-child(2), .dark-section .verify-sum li:nth-child(4) {
		color:#fff;
		background-color:transparent!important;
	}
	
	.light-content .light-section .verify-sum li:nth-child(2), .light-content .light-section .verify-sum li:nth-child(4) {
		color:#444;
		background-color:transparent!important;
	}
	
	input#verify {
		float: left;
		width: 34px;
		padding: 0;
		height: 34px;
		text-align: center;
		line-height: 34px;
		border: none;
		border-radius:3px;
		background-color:#000;
		color:#fff;
	}
	
	.light-content input#verify, .dark-section  input#verify {
		background-color:#fff;
		color:#000;
	}
	
	.light-content .light-section  input#verify {
		background-color:#000;
		color:#fff;
	}
	
	#contact-formular .required {
		float:left;
		width:auto;
		font-size: 14px;
		line-height:34px;
		margin-left:20px;
		margin-bottom:0;
	}
	
	#contact-formular .text-align-center .required {
		float: left;
		margin-left: 0;
		display: block;
		clear: both;
		text-align: center;
		width: 100%;
		padding-top: 10px;
	}
	
	input, textarea {
		color: rgba(0,0,0,1);
		font-family: 'Poppins', sans-serif;
		font-size: 16px;
		font-weight: 500;
		height: 50px;
		padding: 12px 20px 12px 20px;
		padding-left:0;
		width: 100%;
		border-radius:0px;
		margin-bottom:0px;
		border:none;		
		-webkit-transition: all 0.2s linear;
		transition: all 0.2s linear;
		box-sizing: border-box;
		background-color:transparent;
		outline:none;
		border-bottom:1px solid rgba(0,0,0,0.3);
	}
	
	.bigger-form input, .bigger-form textarea {
		font-size: 48px;
		font-weight: 500;
		height: 100px;
		padding: 0;
	}
	
	input[type="search"] {
		padding-left:0px;
	}
	
	.light-content input, .light-content textarea, .dark-section input, .dark-section textarea {
		color:rgba(255,255,255,1);
		border-bottom:1px solid rgba(255,255,255,0.3);
	}
	
	.light-content .light-section input, .light-content .light-section textarea {
		color:rgba(0,0,0,1);
		border-bottom:1px solid rgba(0,0,0,0.3);
	}
	
	::placeholder, .light-content .light-section ::placeholder { 
	  color: currentColor;
	  opacity: 1; 
	}
	
	.light-content ::placeholder, .dark-section ::placeholder { 
	  color: currentColor;
	  opacity: 1; 
	}
	
	.light-content :-ms-input-placeholder, .dark-section :-ms-input-placeholder { 
	  color: currentColor;
	}
	
	.light-content .light-section :-ms-input-placeholder { 
	  color: currentColor;
	  opacity: 1; 
	}
	
	.light-content ::-ms-input-placeholder { 
	  color: currentColor;
	}
	
	:-ms-input-placeholder { 
	  color: currentColor;
	}
	
	.input_label {
		background-color: currentColor;
		height: 2px;
		left: 0;
		position: absolute;
		top: 49px;
		width: 0;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.bigger-form .input_label {
		top: 99px;
	}
	
	.light-content .input_label, .dark-section .input_label {
		background-color: currentColor;
	}
	
	.light-content .light-section .input_label {
		background-color: currentColor;
	}
	
	.input_label.slow {
		-webkit-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}
	
	input:focus + .input_label, textarea:focus + .input_label {
		width:100%;		
	}
	
	input:focus, textarea:focus {
		color:#000;
	}
	
	.light-content input:focus, .light-content textarea:focus, .dark-section input:focus, .dark-section textarea:focus {
		color:#fff;
	}
	
	.light-content .light-section input:focus, .light-content .light-section textarea:focus {
		color:#000;
	}
	
	textarea {
		resize:none;
		margin-bottom:0;
		height:50px;
		box-sizing: border-box;
		padding: 14px 20px 6px 20px;
		padding-left:0;
		margin-bottom:40px;
	}
	
	textarea:after {
		background-color: #000;
		content: "";
		height: 2px;
		left: 0px;
		position: absolute;
		top: 20px;
		width: 100%;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	input[type="submit"] {
		margin:0;
		background:transparent;
		border:none;
		color:#fff;
		font-family: 'Poppins', sans-serif;
		font-size: 18px;
		font-weight: 500;
		padding-left:50px;
		padding-right:50px;
		height:100%;
	}
	
	.light-content input[type="submit"], .dark-section input[type="submit"] {
		color:#000;
	}
	
	.light-content .light-section input[type="submit"] {
		color:#fff;
	}
	
	.outline input[type="submit"] {
		color:#000;
	}
	
	.light-content .outline input[type="submit"], .dark-section .outline input[type="submit"] {
		color:#fff;
	}
	
	.light-content .light-section .outline input[type="submit"] {
		color:#000;
	}
	
	.error_message {				
		margin-bottom:30px;
		font-size:16px;		
		color:#e93735;	
	}
	
	#success_page p, #success_page p strong {		
		color:#fff;		
		margin-top:20px;		
	}
	
	#message fieldset {		
		border:none;		
	}
	
	
/*--------------------------------------------------
	Google Map
---------------------------------------------------*/	
	
	#map_canvas {
		display: block;
		height:100vh;
		position:relative;
		width: 100%;
	}
	
	.rounded-borders #map_canvas {
		border-radius:8px;
		overflow:hidden;
	}
	
	#hero-image.bgrelative #map_canvas {
		position:relative!important;
	}
	
	.gmnoprint a, .gmnoprint span, .gm-style-cc {
		display:none;
	}
	
	.gmnoprint div {
		background:none !important;
	}
	
	.gm-style button {
		display:none!important;
	}
	
	
	.services-icon i {
		font-size:24px;
		margin-bottom:20px;
	}
	
	.service-info-text {
		margin-bottom:40px;
	}
	
/*--------------------------------------------------
	Flex Lists
---------------------------------------------------*/		
	
	.flex-lists-wrapper {
		position:relative;
		display:block;
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
		color:#000;
	}
	
	.flex-lists-wrapper::before {
		content:"";
		position: absolute;
		width: 100%;
		height:1px;
		left:0;
		bottom: -1px;
		z-index: 0;
		background-color: currentColor;
		opacity:0.2;
	}
	
	.light-content .flex-lists-wrapper , .dark-section .flex-lists-wrapper {
		color:#fff;
	}
	
	.light-content .light-section .flex-lists-wrapper {
		color:#000;
	}
	
	.flex-lists-wrapper .flex-list {
		position: relative;
		padding: 35px 80px;
		margin: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		/*max-height: 120px;*/
	}
	@media only screen and (max-width: 767px) {
		.flex-lists-wrapper .flex-list {
			padding: 35px 30px;
		}
	}
	
	.flex-list::before {
		content:"";
		position: absolute;
		width: 100%;
		height:1px;
		left:0;
		top: 0;
		z-index: 0;
		background-color: currentColor;
		opacity:0.2;
	}
	
	.flex-list::after {
		content:"";
		position: absolute;
		width: 100%;
		height:0;
		left:0;
		bottom: 0;
		z-index: 0;
		background-color: transparent;
		-webkit-transition: all 0.2s ease-out 0s;	
		transition: all 0.2s ease-out 0s;
	}
	
	.flex-lists-wrapper .flex-list:hover::after {
		height: 100%;
		background-color: var(--color-brand);
	}
	
	.flex-lists-wrapper .flex-list {
		color: currentColor;
		background: transparent;
		-webkit-transition: background-color 0.2s ease-out 0s;
		transition: background-color 0.2s ease-out 0s;
	}
	
	.flex-lists-wrapper .flex-list > span {
		z-index: 10;
		color: currentColor;
		-webkit-transition: color 0.2s ease-out 0s;
		transition: color 0.2s ease-out 0s;
		text-align: center;
	}
	
	.flex-lists-wrapper .flex-list > span.secondary-font {
		opacity: 0;
		display: block;
		-webkit-transition: opacity 0.2s ease-out 0s;
		transition: opacity 0.2s ease-out 0s;
	}

	.flex-lists-wrapper .flex-list:hover {
		background-color: var(--color-brand);
		color: #fff;
	}

	.flex-lists-wrapper .flex-list:hover > span.secondary-font {
		opacity: 1;
	}
	.flex-list-center {
		width:70%;
		font-size:20px;
		text-align:center;
	}
	
	.flex-list-right {
		width:15%;
		text-align:right;
	}
	
	
/*--------------------------------------------------
	Moving Gallery
---------------------------------------------------*/	
	
	
	
	.fw-gallery .wrapper-gallery {
		display: inline-flex;
		align-items: flex-end;
		margin:0;
		padding:0;
		clear:both;
	}
	
	.bw-gallery .wrapper-gallery {
		display: inline-flex;
		align-items: flex-start;
		margin:0;
		padding:0;
	}
	
	.moving-gallery li {
		position:relative;
		width: 25vw;
		padding-left: 10px;
		padding-right: 10px;
		box-sizing:border-box;
		margin:10px 0;
		list-style:none;
	}
	
	.fw-gallery.random-sizes li:first-child, .bw-gallery.random-sizes li:first-child {
		padding-left: 0px;
	}
	
	.fw-gallery.random-sizes li:last-child, .bw-gallery.random-sizes li:last-child {
		padding-right: 0px;
	}
	
	.fw-gallery.random-sizes li:nth-child(1) {
		width: 25vw;
	}
	
	.fw-gallery.random-sizes li:nth-child(2) {
		width: 30vw;
	}
	
	.fw-gallery.random-sizes li:nth-child(3) {
		width: 45vw;
	}
	
	.fw-gallery.random-sizes li:nth-child(4) {
		width: 25vw;
	}
	
	.bw-gallery.random-sizes li:nth-child(1) {
		width: 25vw;
	}
	
	.bw-gallery.random-sizes li:nth-child(2) {
		width: 45vw;
	}
	
	.bw-gallery.random-sizes li:nth-child(3) {
		width:30vw;
	}
	
	.bw-gallery.random-sizes li:nth-child(4) {
		width: 25vw;
	}
	
	.moving-gallery li img {
		height:auto;
		margin:0px;
	}
	
	.moving-gallery li img {
  		border: 1px solid rgba(255,255,255,0.15);
	}
	
	.rounded-borders .moving-gallery li img {
		border-radius:12px;
	}
	
	.moving-gallery-caption {
		position: absolute;
		height: auto;
		padding: 30px;
		box-sizing: border-box;
		text-align: center;
		bottom: 0;
		left: 0;
		right: 0;
		opacity:0;
		-webkit-transition: all 0.2s ease-in-out 0s;
		transition: all 0.2s ease-in-out 0s;
	}
	
	.moving-gallery li:hover .moving-gallery-caption {
		opacity:0.4;
	}
	
	
	
/*--------------------------------------------------
	Zoom Gallery
---------------------------------------------------*/		
	
	
	.zoom-gallery {
		position:relative;
		margin:0;
		padding:0;
		clear:both;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		max-width: 1000%;
		width: calc(100vw);
		height: auto;
		pointer-events:none;
	}
	
	.zoom-wrapper-gallery {
		position:relative;
		border-right: 0px solid #f00;
		box-sizing:border-box;
		margin:0;
		padding:0 70px;
		clear:both;
		width:100%;
		height: auto;
		display: flex;
		justify-content: center;
	}
	
	.zoom-wrapper-gallery li {
		position:relative;
		display: block;
		box-sizing:border-box;
		padding:0 10px;
		margin:0;
		list-style:none;
		z-index:0;	
		width: 50%;
		max-width: 50%;
		height:100%;
		float:left;
		display:flex;
		align-items:center;
		
	}
	
	.zoom-wrapper-gallery li.zoom-center {
		z-index:1;
	}
	
	.zoom-wrapper-gallery li .zoom-img-wrapper {
		box-sizing: border-box;
		width: 100%;
		height: 100%;
		min-height:100%;
		position: relative;
		overflow: hidden;		
		background-color:rgb(102, 102, 102);
	}
	
	.rounded-borders .zoom-wrapper-gallery li .zoom-img-wrapper {
		border-radius: 8px;
	}
	
	.zoom-wrapper-gallery.end-state  li.zoom-center .zoom-img-wrapper {
		
	}
	
	.zoom-wrapper-gallery li .zoom-img-wrapper img {
		width:100%;
		height: 100%;
		position:relative;
		display:block;
		z-index:100;	
		object-position: center; 
		object-fit: cover;
	}
	
	.zoom-wrapper-thumb {
		width:100%;
		height: 100vh;
		position:absolute;
		top:0;
		display:block;
	}
	
	.zoom-wrapper-thumb .zoom-img-wrapper {
		width:100%;
		height: 100%;
		position:absolute;
		overflow:hidden;
	}
	
	.rounded-borders .zoom-wrapper-thumb .zoom-img-wrapper {
		border-radius: 8px;
	}
	
	.zoom-wrapper-thumb .zoom-img-wrapper img {
		width:100%;
		height: 100%;
		position:relative;
		display:block;
		z-index:100;	
		object-position: center; 
		object-fit: cover;
	}

	
/*--------------------------------------------------
	Slowed Pin
---------------------------------------------------*/	
	
	.slowed-pin {
		position:relative;
		overflow: hidden;
	}
	
	.slowed-pin > .pin-spacer {
		pointer-events:none;
	}
	
	.slowed-text {
		position:absolute;
		height:auto;
		min-height:100vh;
		width:100%;
		max-width:980px;		
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: center;
		box-sizing:border-box;
		padding:8vw 20px;
		z-index:1;
		pointer-events:none;
		margin:auto;
		left:0;
		right:0;
	}
	
	.slowed-text-wrapper {
		position:relative;
		display:block;
	}
	
	.slowed-images {
		position: relative;
		top: 0;
		width: 100%;
		height:auto;
		box-sizing:border-box;
		overflow: hidden;
		z-index:0;
		margin:auto;
	}
	
	.slowed-image {
		position: relative;
		width: 100%;
		height: auto;
		box-sizing: border-box;
		padding:0 0px;
		margin:150px 0;
		display: flex;
		align-items: flex-start;
		flex-direction: column;
	}
	
	.slowed-image:nth-of-type(2n+2) {
  		align-items: flex-end;
	}
	
	.slowed-image img {
		width: auto;
		max-width: 40%!important;
		height: auto!important;
		display: block;
		cursor:pointer;
		margin-bottom:10px;
		-webkit-transform:scale(0.95) translateY(30%);
		transform: scale(0.95) translateY(30%);
	}
	
	.rounded-borders .slowed-image img {
		border-radius: 8px;
	}
	
/*--------------------------------------------------
	Horizontal Panels
---------------------------------------------------*/		
	
	.panels {
		position:relative;
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: calc(100vw)!important;		
	}
	
	.panels-container {
		position:relative;
		height: 100vh;
		display: -webkit-box;
		display: -ms-flexbox;
		justify-content: flex-start;
		align-items: center;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		padding: 0;
		overflow: hidden;
		box-sizing:border-box;
	}
	
	.panels-container > .panel {
		position: relative;
		width: auto;
		height: 100%;
		margin:0 10px;
		overflow: hidden;
		display: flex;
		align-items: flex-start;
		justify-content: center;
		box-sizing:border-box;
		flex-direction: column;
	}
	
	.panels-container > .panel:first-child {
		margin-left:80px;
	}
	
	.panels-container > .panel:last-child {
		margin-right:80px;
	}
	
	.panels-container .panel img {
		width:100%;
		height: 100%;
		position:relative;
		display:block;
		object-position: center; 
		object-fit: cover;		
	}
	
	.rounded-borders .panels-container .panel img {
		border-radius:8px;
	}
	
	.panels-container .panel:first-child img {
		margin-left:0px;
	}
	
	.panels-container .panel:last-child img {
		margin-right:0px;
	}
	
/*--------------------------------------------------
	Team Panels
---------------------------------------------------*/
	
	#team-panels .panel-content-wrapper {
		position: relative;
		width: auto;
		height: 60%;
		display: flex;
		align-items: flex-start;
		justify-content: center;
		box-sizing:border-box;
		flex-direction: column;
		padding-left:30px;
		padding-right:30px;
	}
	
	#team-panels .panels-container .panel:first-child .panel-content-wrapper {
		padding-left:80px;
	}
	
	#team-panels .panels-container .panel:last-child .panel-content-wrapper {
		padding-right:80px;
	}
	
	#team-panels .panel-content {
		position: absolute;
		width: 100%;
		height: auto;
		display: block;
		box-sizing:border-box;
		padding:10px 30px;
		bottom:-50px;
		left:0;		
		pointer-events: none;
	}
	
	#team-panels .panels-container .panel:first-child .panel-content-wrapper .panel-content {
		padding-left:80px;
	}
	
	#team-panels .panels-container .panel:last-child .panel-content-wrapper .panel-content {
		padding-right:80px;
	}
	
	.team-name-panel, .team-cat-panel {
		font-size:18px;
		line-height: 24px;
		display:table;
		width:auto;
		float:left;
	}
	
	.team-cat-panel {
		font-size:14px;
		opacity:0.6;
		float:right;
	}
	
	#team-panels .panels-container .panel .panel-image {
		width: auto;
		height: 100%;
		position:relative;
		overflow:hidden;
	}
	
	#team-panels .panels-container .panel img {
		height: 100%;
		margin:0;
	}
	
	.rounded-borders #team-panels .panels-container .panel img {
		border-radius:8px;
	}
	
	
/*--------------------------------------------------
	Pinned Gallery
---------------------------------------------------*/	
	
	.pinned-gallery {
		overflow:hidden;
	}
	
	.pinned-image {
		box-sizing:border-box;
		padding-bottom:300px;		
		position:relative;
	}
	
	.pinned-image:first-child {
		padding-top:0;
	}
	
	.pinned-image:last-child {
		z-index:10;
		padding-bottom:0px;		
	}
	
	.rounded-borders .pinned-image img {
		border-radius:8px;
	}
	
/*--------------------------------------------------
	Reveal Gallery
---------------------------------------------------*/		
	
	.reveal-gallery {
		position:relative;
		width:100%;
		height:auto;
		display:block;
		margin:0 auto;
	}
	
	.reveal-img {
		width:auto;
		height:auto;
		position:absolute;
		display: block;
		top:0;
		left: auto;
		right: auto;
		margin: auto;
		z-index:0;
		opacity: 0.95;
	}
	
	.reveal-img-fixed {
		width:50%;
		max-width:600px;		
		position:relative;
		margin: 0 auto;
		z-index:10;
	}
	
	.reveal-img:first-child {
		left:0;
		transform:rotate(-4deg)
	}
	
	.reveal-img:last-child {
		right:0;
		transform:rotate(4deg)
	}
	
	.reveal-gallery img {
		width:auto;
		height: auto;
		max-width: 100%;
		max-height: 100%;
		position:relative;
		display:block;
		object-position: center; 
		object-fit: contain;
		margin: auto;
	}
	
	.rounded-borders .reveal-gallery img {
		border-radius:8px;
	}
	
	
/*--------------------------------------------------
	Clipped Immaged
---------------------------------------------------*/			
	
	.clipped-image-wrapper {
		position:relative;
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
		overflow:hidden;
	}
	
	.clipped-image-pin {
		position:relative;
		display:block;
	}
	
	.clipped-image-size {
		width:100%;
		height:100%;
		position:relative;
		display:block;
	}
	
	.clipped-image {
		position:relative;
		z-index:0;
		width:calc(100vw - 160px);
		height:100vh;
		display:block;
		overflow:hidden;
		clip-path: inset(10% 22% round 10px);
		-webkit-transform: scale(0.7) translateY(0%);
		transform: scale(0.7) translateY(0%);
		transform-origin: center center;
		margin:0 auto;
		filter:grayscale(1);	
	}
	
	.clipped-image img {
		width:100%;
		height: 100%!important;
		position:relative;
		display:block;
		z-index:0;	
		object-position: center; 
		object-fit: cover;		
	}
	
	.clipped-image-gradient {
		position:absolute;
		height:30%;
		width:100%;
		bottom:0;
		opacity:0;
		background-color:#000;
		z-index:10;
		-webkit-mask-image: linear-gradient(transparent, black 85%);
		mask-image: linear-gradient(transparent, black 85%);
		transform: translateY(200px);
		-webkit-transform: translateY(200px);
		display:none;
	}
	
	.clipped-image-content {
		position:relative;
		width:100%;
		margin:0 auto;
		z-index:10;
	}
	
/*--------------------------------------------------
	Carousel Shortcode
---------------------------------------------------*/		
	
	.carousel-shortcode-wrapper {
		position:relative;
		display:inline-block;
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
		height:auto;
		
	}
	
	.carousel-shortcode-pin {
		position:relative;
		height:100%;
		width:100%;
		top:0;
		left:0;
		display:block;
		
	}
	
	.carousel-shortcode-thumbs {
		position:relative;
		height:100vh;
		width:100%;
		padding:20px 40px;
		margin:0 auto;
		display:flex;
		text-align: center;
		align-items: center;
		justify-content: center;
		box-sizing:border-box;
		z-index:10;
		mask-image: linear-gradient(#0000, black 15%, black 85%, #0000 100%);
  		-webkit-mask-image: linear-gradient(#0000, black 15%, black 85%, #0000 100%);
		pointer-events:none;
	}
	
	.carousel-shortcode-thumbs .clapat-item {
		width: calc(20% - 80px);
		margin:60px 40px;
	}
	
	.carousel-shortcode-thumbs.is_active .clapat-item {
		pointer-events:initial;
	}
	
	.carousel-shortcode-thumbs .clapat-item .slide-inner {
		padding-top: 0;
		width: 100%;
		height: auto;
		margin:0;
		overflow:visible;
		aspect-ratio: 10/14;
	}
	
	.carousel-shortcode-caption {
		position:absolute;
		height:100%;
		width:100%;
		top:0;
		left:0;
		display:flex;
		flex-direction: column;
		text-align: center;
		align-items: center;
		justify-content: center;
		z-index:0;
	}
	
	.carousel-shortcode-title-hide, .carousel-shortcode-title-show {
		position:absolute;		
		font-size: calc(1rem + 4.15vw);
		line-height: calc(1rem + 4.5vw);
		font-weight:500;
		display:block;
		width:auto;		
	}
	
	.uppercase-titles .carousel-shortcode-title-hide, .uppercase-titles .carousel-shortcode-title-show {
		text-transform:uppercase;
	}
	
	.carousel-shortcode-title-show {
		position:relative;
		font-size: calc(1rem + 1.15vw);
		line-height: calc(1rem + 1.5vw);
	}
	
	.light-content .carousel-shortcode-title-hide, .dark-section .carousel-shortcode-title-hide, .light-content .carousel-shortcode-title-show, .dark-section .carousel-shortcode-title-show {
		color:#fff;
	}
	
	.light-content .light-section .carousel-shortcode-title-hide, .light-content .light-section .carousel-shortcode-title-show {
		color:#000;
	}
	
	.carousel-shortcode-title-hide div, .carousel-shortcode-title-show div {
		position:relative;
		display:block;overflow:hidden;
	}
	
	.carousel-shortcode-title-hide span {
		position:relative;
		display:block;
		opacity:1;
		transform: translateY(0px);
		-webkit-transform: translateY(0px);
	}
	
	.carousel-shortcode-title-show span {
		position:relative;
		display:block;
		opacity:0;
		transform: translateY(200px);
		-webkit-transform: translateY(200px);
	}
	
	.carousel-shortcode-cta {
		position:relative;
		display:block;
		opacity:0;
		transform: scale(1) translateY(50px);
		-webkit-transform:  scale(1) translateY(50px);
	}
	
	
/*--------------------------------------------------
	List Rotator
---------------------------------------------------*/

	.list-rotator-wrapper {
		position:relative;
		display:block;
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
		overflow:hidden;
	}
	
	.list-rotator-title {
		position:absolute;
		margin:0 auto;
		display:table;
		top:45px;
		left:0;
		right:0;
		padding-top:45px;
		z-index: 100;
		line-height: 20px;
		font-size: 14px;
		font-weight:500;
		color: #fff;
		padding:4px 16px;
		box-sizing:border-box;
		border-radius:30px;
		opacity:0;
	}
	
	.list-rotator-height {
		display: flex;
		justify-content: center;
		pointer-events: none;
		position:relative;
	}
	
	.list-rotator-pin {
		position: relative;
		height: 100vh;
		width: 100%;
		mask-image: linear-gradient(#0000 0%, #0000 5%, #0000 5%, black 20%, black 85%, #0000 99%, #0000 99%, #0000 100%);
  		-webkit-mask-image: linear-gradient(#0000 0%, #0000 5%, #0000 5%, black 20%, black 85%, #0000 99%, #0000 99%, #0000 100%);
	}

	
	.list-rotator {
		position: relative;
		display:block;
		width: 100%;
		height: auto;
		box-sizing:border-box;
		padding-top:20vh;
		padding-bottom:15vh;
		margin: 0;
	}

	.list-rotator li {
		color: #000;
		list-style: none;
		position: relative;
		width: 100%;
		text-align: center;
		font-size: calc(1rem + 8vw);
  		line-height: calc(1rem + 7.5vw);
		margin: 0;
		opacity:1;
	}
	
	.list-rotator li.in-view {
		opacity:1;
	}
	
	.light-content .list-rotator li , .dark-section .list-rotator li {
		color: #fff;
	}
	
	.light-content .light-section .list-rotator li {
		color: #000;
	}
	
	
	
/*--------------------------------------------------
	Move Thumbs Gallery
---------------------------------------------------*/
	
	.move-thumbs-wrapper {
		margin-left: calc(50% - 50vw)!important;
		margin-right: calc(50% - 50vw)!important;
		max-width: 1000%!important;
		width: 100vw!important;
	}
	
	.start-thumbs-caption {
		position:relative;
		width: 100%;
 		height:50vh;
		display:flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
	
	.start-thumbs-wrapper {
		position:relative;
		display:flex;
		justify-content: space-between;
		flex-wrap: wrap;
		box-sizing:border-box;
		padding:0 40px;
	}
	
	.start-move-thumb {
		box-sizing:border-box;
		position:relative;
		width: calc(25% - 80px);
 		height:calc(25vw - 40px);
		margin:0 40px;
		margin-bottom:40px;
	}
	
	.start-move-thumb:nth-of-type(3n + 2) {		
		width: calc(15% - 80px);
		height:calc(15vw - 40px);
		margin-top: 50vh;
	}
	
	.start-move-thumb:nth-of-type(3n + 3) {		
		width: calc(35% - 80px);
		height:calc(35vw - 40px);
		margin-top: 25vh;
	}
	
	.start-move-thumb .overlapping-image-inner {
		width: 100%;
		height: 100%;
		position: absolute;
		top:0;
	}
	
	 .end-move-thumb .move-thumb-inner {
		width: 100%;
		height: 100%;
		position: absolute;
		top:0;
	}
	
	.rounded-borders .start-move-thumb .move-thumb-inner, .rounded-borders .end-move-thumb .move-thumb-inner {
		border-radius:12px;
		overflow:hidden;
	}
	
	.end-thumbs-wrapper {
		display:flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin-top:100vh;
		padding-left:40px;
		padding-right:40px;
		box-sizing:border-box;
	}

	.end-move-thumb {
		box-sizing:border-box;	
		position:relative;
		width: calc(33.33% - 80px); 
		height:calc(33.33vw - 80px); 
		display:flex;
		align-items: center;
		justify-content: center;
		margin:40px;
	}
	
/*--------------------------------------------------
	Pinned Lists
---------------------------------------------------*/		
	
	.pinned-lists-wrapper {
		position:relative;		
		width:100%;
		height:auto;
		/*display:flex;
		justify-content: center;
  		align-items: center;
		flex-direction: column;*/
		height:auto;
		max-height:100vh;
	}
	
	.pinned-lists {
		margin:0;
		display:block;
		width:100%;
	}
	
	.pinned-lists li {
		list-style:none;
		width: auto;
  		display: table;
		position:relative;
		font-size: calc(1rem + 4vw);
		line-height: calc(1rem + 5vw);
		letter-spacing: -0.15vw;
		font-weight:600;
		color:#000;
		margin:0;
	}
	
	.pinned-lists li.has-info-even::after, .pinned-lists li.has-info-odd::after {
		content: attr(data-infoTextAfter);
		font-family: 'Poppins', sans-serif;
		font-size: 16px;
		line-height: 20px;
		font-weight: 400;
		width: auto;
		height: 20px;
		position: absolute;
		top: 5px;
		letter-spacing: 0;
		opacity: 0;
		pointer-events: none;
		background: #c8c8c8;
		border:currentColor solid 2px;
		border-radius: 40px;
		padding: 12px 24px;
	}
	
	.light-content .pinned-lists li.has-info-even::after, .light-content .pinned-lists li.has-info-odd::after, .dark-section .pinned-lists li.has-info-even::after, .dark-section .pinned-lists li.has-info-odd::after {
		background: #222;
	}
	
	.light-content .light-section .pinned-lists li.has-info-even::after, .light-content .light-section .pinned-lists li.has-info-odd::after {
		background: #c8c8c8;
	}
	
	.pinned-lists li.has-info-even::after {
		left: 0;
		right: auto;
		transform: translatex(-60%);
	}
	
	.pinned-lists li.has-info-odd::after {
		left: auto;
		right: 0;
		transform: translatex(60%);
	}
	
	.visible .pinned-lists li.has-info-odd.secondary-font::after, .visible .pinned-lists li.has-info-even.secondary-font::after {
		opacity:1;
	}
	
	.text-align-center .pinned-lists li {
		margin:0 auto;
	}
	
	.light-content .pinned-lists li , .dark-section .pinned-lists li {
		color: #fff;
	}
	
	.light-content .light-section .pinned-lists li {
		color: #000;
	}
	
	.pinned-lists li.secondary-font {
		/*font-family:"Playfair Display", serif;*/
		/*font-family:"WalkwayUltraBold", serif;*/
		font-family:"LEMONMILK-Regular", sans-serif;
		font-style: normal;
		font-weight:400;
		font-size: calc(1rem + 4.3vw);
	}
	.pinned-lists li{
		font-family:"WalkwayUltraBold", serif;
	}

/*--------------------------------------------------
	Copy Email
---------------------------------------------------*/	
	
	#copy-email {
		cursor:pointer;
		font-size: calc(1rem + 3vw);
		line-height: calc(1rem + 3.5vw);
		font-weight: 600;
		position: relative;
		display: block;
		width: auto;
		color: #000;
		letter-spacing: -0.2vw;
	}
	
	.light-content #copy-email, .dark-section #copy-email {
		color:#fff;
	}
	
	.light-content .light-section #copy-email {
		color:#000;
	}
	
/*--------------------------------------------------
	Parallax Image Slider
---------------------------------------------------*/	
	
	.parallax-image-wrapper {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		max-width: 1000%;
		width: 100vw;
		overflow:hidden;		
	}
	
	.parallax-image-pin {
		height:100vh;		
		height:100dvh;
		width:100%;
		position:absolute;
		display:block;
		overflow:hidden;
	}
	
	.parallax-image {
		height:100vh;		
		height:100dvh;
		width:100%;
		position:relative;
		background-size: cover;
		background-position: center;
	}
	
	.parallax-video-wrapper {
		position: absolute;
    	box-sizing: border-box;
		width: 100%;
		height: 100%;
		left:0;
		top:0;
		padding:0;
		overflow:hidden;
		z-index: 1;
		filter:grayscale(1);
		background:#000;	
	}
	
	.parallaxt-video-wrapper video.bgvid {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: -1;
		object-fit: cover;
		width: 100%;
		height: 100%;
		opacity:0.7;
	}
	
	.parallax-content-pin {
		height:100vh;		
		height: 100dvh;
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		margin: 0;
	}	
	
	.parallax-content-animation {
		height:100vh;		
		height: 100dvh;
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		margin: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.list-caption {
		height: auto;
		width: auto;
		position: absolute;
		font-size: calc((1rem + 10vw) / 2);
  		line-height: calc((1rem + 12vw) / 2);
		letter-spacing: 0vw;
		font-weight: 500;
		color: #000;
		margin: 0;
		list-style: none;
		display: block;
		text-align:center;
	}
	
	.light-content .list-caption, .dark-section .list-caption {
		color:#fff;
	}
	
	.light-content .light-section .list-caption {
		color:#000;
	}
	
	.list-caption div {
		display:block;
		position:relative;
	}
	
	.list-caption span {
		display:block;
		opacity:0;
	}
	
	.animation-progress {
		width: 100%;
		height: 80px;
		position: absolute;
		left: 0;
		bottom: 0;		
		margin: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.progress-line {
		position: relative;
		display:block;
		height:2px;
		width:50px;
		margin:0 10px;
		list-style:none;
		background-color:rgba(0,0,0,0.2);
	}
	
	.light-content .progress-line, .dark-section .progress-line {
		background-color:rgba(255,255,255,0.1);
	}
	
	.light-content .light-section .progress-line {
		background-color:rgba(0,0,0,0.2);
	}
	
	.progress-line span {
		position:absolute;
		display:block;
		height:100%;
		width:0;
		background-color:#000;
	}
	
	.light-content .progress-line span, .dark-section .progress-line span {
		background-color:#fff;
	}
	
	.light-content .light-section .progress-line span {
		background-color:#000;
	}
	
	.parallax-content {
		height: auto;
		width: 100vw;
		position: relative;
		top: 0;
		left: 0;
		margin: 0;
		display: block;
	}
	
	.parallax-content li {
		height:200vh;		
		height: 200dvh;
		width: auto;
		position: relative;
		margin: 0;
		list-style: none;
		display: block;
	}
	
	span.text-rotator-wrapper {
		display: inline-flex;
		overflow: hidden;
		width: auto;
		position:relative;
	}
	
	span.text-rotator {
		display: flex;
		width: auto;
		flex-direction: column;
		align-items: flex-start;
		position:relative;
		white-space: nowrap;
	}
	
	span.text-rotator > span {
		position:relative;
		display:inline-block;
		color:currentColor;
		left:0;
		margin:0;
		padding:0;
		line-height:inherit;
		font-size:inherit;
	}
	
	span.text-rotator > span:first-child {
		position:relative;
	}
	
	
	
	
/*--------------------------------------------------
	Responsive
---------------------------------------------------*/			
			


@media only screen and (max-width: 1466px) {
	
	
	.button-border span {
		padding: 0 26px;
	}
	
	.clients-table li {
		width: calc(100% / 4 - 40px);
		margin: 20px;
		padding: 0;
	}
	
	.accordion.bigger-acc dt {
		margin-top: 30px;
		padding-top: 30px;
	}
	
	.accordion.bigger-acc dt:first-child {
		padding-top: 30px;
	}
	
	.full > .team-members-list li, .full_elementor .team-members-list li {
		padding:40px 60px;
	}
	
	.team-members-list .hover-reveal {
		width: 250px;
		height: 333px;
	}
	
	span.has-hover-image .hover-reveal {
		width: 300px;
		height: 188px;
	}
	
	span.has-hover-image.vertical .hover-reveal {
		width: 250px;
		height: 333px;
	}
	
	.flex-list {
		padding: 35px 60px;
	}
	
	.panels-container > .panel:first-child {
		margin-left:60px;
	}
	
	.panels-container > .panel:last-child {
		margin-right:60px;
	}
	
	.zoom-wrapper-gallery {
		padding: 0 50px;
	}
	
	.start-thumbs-wrapper {
		padding: 0 30px;
	}
	
	.start-move-thumb {
		width: calc(25% - 60px);
 		height:calc(25vw - 30px);
		margin:0 30px;
		margin-bottom:30px;
	}
	
	.start-move-thumb:nth-of-type(3n + 2) {		
		width: calc(15% - 60px);
		height:calc(15vw - 30px);
		margin-top: 50vh;
	}
	
	.start-move-thumb:nth-of-type(3n + 3) {		
		width: calc(35% - 60px);
		height:calc(35vw - 30px);
		margin-top: 25vh;
	}
	
	.end-thumbs-wrapper {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	.end-move-thumb {
		width: calc(33.33% - 60px);
		height: calc(33.33vw - 60px);
		margin: 30px;
	}
	
	.clipped-image {
  		width: calc(100vw - 120px);
	}
	
	.team-member-inner {
		width: 25%;
	}
	
	.team-members-grid li:nth-child(4n+1) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+2)  .team-member-inner {
		transform: translateX(300%);
		-webkit-transform: translateX(300%);
	}
	
	.team-members-grid li:nth-child(4n+3) .team-member-inner {
		transform: translateX(75%);
		-webkit-transform: translateX(75%);
	}
	
	.team-members-grid li:nth-child(4n+4) .team-member-inner {
		transform: translateX(225%);
		-webkit-transform: translateX(225%);
	}
	
	/* Team List Member Sticky Image */
	
	.team-list-images {
		width: 20%;
  		left: 60px;
	}
	
	.team-list-images::before {		
		padding-top: calc(100% + 60px);
	}
	
	.team-list-images > li {
  		height: calc(100% - 60px);
	}
	
	.pinned-lists li.has-info-even::after, .pinned-lists li.has-info-odd::after {
		font-size: 14px;
		padding: 10px 20px;
	}
	
}


@media only screen and (max-width: 1024px) {
	
	.content-slider.looped-carousel .clapat-slide {
		padding:0 40px;
	}
	
	.content-slider.small-looped-carousel .clapat-slide {
		padding:0 40px;
	}
	
	.disable-cursor .full .looped-carousel .clapat-controls, .disable-cursor .full_elementor .looped-carousel .clapat-controls {
		width: calc(100% - 80px);
	}
	
	.disable-cursor .full .small-looped-carousel .clapat-controls, .disable-cursor .full_elementor .small-looped-carousel .clapat-controls {
		width: calc(100% - 80px);
		max-width:520px;
	}		
		
	textarea {
		margin-bottom: 30px;
	}
	
	.full .video-wrapper video.bgvid, .full_elementor .video-wrapper video.bgvid {
		position: relative;
		margin-top: 0;
		left: 0;
		transform: translateX(0) translateY(0);
	}
	
	.full .control, .full_elementor .control {
		bottom: 10px;
		width: calc(100% - 100px);
	}
	
	.clients-table li {
		width: calc(100% / 4);
		margin: 0px;
		padding: 0;
	}
	
	.clients-table li:hover .overlay {
		transform:scale(0.85);
		-webkit-transform:scale(0.85);
		opacity:1;
	}
	
	.accordion dt span {
		max-width: none;
	}
	
	.accordion .accordion-content {
		padding-right: 0;
	}
	
	.accordion.bigger-acc dt {
		margin-top: 30px;
		padding-top: 30px;
	}
	
	.accordion.bigger-acc dt:first-child {
		padding-top: 30px;
	}
	
	.full > .team-members-list li, .full_elementor .team-members-list li {
		padding:40px 40px;
	}
	
	.team-members-list .hover-reveal {
		width: 200px;
		height: 266px;
	}
	
	span.has-hover-image .hover-reveal {
		width: 250px;
		height: 156px;
	}
	
	span.has-hover-image.vertical .hover-reveal {
		width: 200px;
		height: 266px;
	}
	
	.has-animation.has-cover img {
		-webkit-transition:scale(1);
		transform:scale(1);
	}
	
	.flex-list {
		padding: 30px 40px;
	}
	
	.panels-container > .panel:first-child {
		margin-left:40px;
	}
	
	.panels-container > .panel:last-child {
		margin-right:40px;
	}
	
	.zoom-wrapper-gallery {
		padding: 0 30px;
	}
	
	.list-rotator-pin {
  		height: auto;
	}
	
	.start-thumbs-wrapper {
    	padding: 0 20px;
  	}
	
	.start-move-thumb, .start-move-thumb:nth-of-type(3n+2), .start-move-thumb:nth-of-type(3n+3) {
		width: calc(33.33% - 40px);
		height: calc(33.33vw - 40px);
		margin: 25px 20px;
  	}
	
	.end-thumbs-wrapper {
    	display: none;
  	}
	
	.clipped-image {
  		width: calc(100vw - 80px);
	}
	
	.team-member-inner {
		width: 33.333%;
	}
	
	.team-members-grid li:nth-child(4n+1) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+2)  .team-member-inner {
		transform: translateX(200%);
		-webkit-transform: translateX(200%);
	}
	
	.team-members-grid li:nth-child(4n+3) .team-member-inner {
		transform: translateX(50%);
		-webkit-transform: translateX(50%);
	}
	
	.team-members-grid li:nth-child(4n+4) .team-member-inner {
		transform: translateX(150%);
		-webkit-transform: translateX(150%);
	}
	
	#copy-email {
		margin-bottom: 1vw;
	}
	
	.pinned-lists li.has-info-even::after, .pinned-lists li.has-info-odd::after {
		display:none;
	}
	
}


@media only screen and (max-width: 767px) {
	
	.content-slider.looped-carousel .clapat-slide {
		padding:0 30px;
	}
	
	.content-slider.small-looped-carousel .clapat-slide {
		padding:0 30px;
	}
	
	.disable-cursor .full .looped-carousel .clapat-controls, .disable-cursor .full_elementor .looped-carousel .clapat-controls {
		width: calc(100% - 60px);
	}
	
	.disable-cursor .full .small-looped-carousel .clapat-controls, .disable-cursor .full_elementor .small-looped-carousel .clapat-controls {
		width: calc(100% - 60px);
		max-width:540px;
	}
	
	.content-slider .clapat-pagination-bullet .parallax-wrap {
		width: 20px;
		height: 20px;
	}
	
	.content-slider .clapat-pagination-bullet .parallax-wrap {
		width: 20px;
		height: 20px;
	}
		
	.video-wrapper {
    	max-height: 50vh;
	}
	
	.control {
		display:none;
	}
	
	.name-box, .email-box {
		width: 100%;
		margin-right: 0;
	}
	
	.clients-table li {
    	width: 50%;
	}
	
	.clients-table::before, .clients-table::after {
  		height: 10px;
	}
	
	.empty-space, .empty-space.tx { 
		height:60px;
	}
	
	input[type="text"], textarea {
    	font-size: 14px;
	}
	
	.accordion dt {
    	font-size: 18px;
	}
	
	.accordion.bigger-acc dt {
		margin-top: 25px;
		padding-top: 25px;
	}
	
	.accordion.bigger-acc dt:first-child {
		padding-top: 25px;
	}
	
	.accordion.bigger-acc .acc-button-icon {
		height: 30px;
		width: 30px;
		line-height: 30px;
		font-size: 12px;
		border-radius: 30px;
	}
	
	.acc-button-icon i, .acc-button-icon svg {
		height: 30px;
		line-height: 30px;
		width: 30px;
	}
	
	.full > .team-members-list li, .full_elementor .team-members-list li {
		padding:30px 30px;
	}
	
	.team-member > div {
		float: none;
		margin: 0px;
		margin-top: 10px;
		margin-bottom: 4px;
	}
	
	.team-member span {
		position:relative;
		float: none;
		line-height: 24px;
	}
	
	.team-member > div {
		font-size: calc(1rem + 5vw);
		line-height: calc(1rem + 5vw);
	}
	
	.team-members-list .hover-reveal {
		width: 150px;
		height: 200px;
	}
	
	span.has-hover-image .hover-reveal {
		width: 200px;
		height: 125px;
	}
	
	span.has-hover-image.vertical .hover-reveal {
		width: 150px;
		height: 200px;
	}
	
	.flex-list {
		padding: 30px 30px;
		flex-direction: column;
	}
	
	.flex-list-left, .flex-list-center, .flex-list-right {
		width: 100%;
		text-align: center;
		line-height:30px;
	}
	
	.slowed-image {
  		margin: 100px 0;
	}
	
	.slowed-image img {
		max-width: 50%!important;
	}
	
	.moving-gallery li {
		width: 50vw;
	}
	
	.panels-container > .panel:first-child {
		margin-left:30px;
	}
	
	.panels-container > .panel:last-child {
		margin-right:30px;
	}
	
	.zoom-wrapper-gallery {
		padding: 0 20px;
	}
	
	.start-thumbs-wrapper {
    	padding: 0 15px;
  	}
	
	 .start-move-thumb, .start-move-thumb:nth-of-type(3n+2), .start-move-thumb:nth-of-type(3n+3) {
		width: calc(50% - 30px);
		height: calc(50vw - 30px);
		margin: 10px 15px;
  	}
	
	.pinned-lists li {
		font-size: calc(1rem + 5vw);
		line-height: calc(1rem + 5vw);
	}
	
	.clipped-image {
  		width: calc(100vw - 60px);
	}
	
	.team-member-inner {
		width: 50%;
		margin-bottom: 30px;
	}
	
	.team-members-grid li:nth-child(4n+1) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+2)  .team-member-inner {
		transform: translateX(100%);
		-webkit-transform: translateX(100%);
	}
	
	.team-members-grid li:nth-child(4n+3) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+4) .team-member-inner {
		transform: translateX(100%);
		-webkit-transform: translateX(100%);
	}
	
	#copy-email {
		margin-bottom: 3vw;
	}
	
	.team-list-wrapper {
		position: relative;
		box-sizing: border-box;
		width: calc(100% - 60px);
    	margin: 0 auto;
		overflow:hidden;
	}
	
	.team-list-captions {
		padding-left: 0;
		padding-bottom: 30px;
	}
	
	.team-list-captions > li {
		font-size: calc(1rem + 2vw);
		line-height: calc(1rem + 3vw);
		letter-spacing: -0.15vw;
		font-weight: 500;
		display: flex;
		height: auto;
		opacity: 1;
		padding:0;
		margin-bottom:30px;
		transform: translateX(35%);
		-webkit-transform: translateX(35%);
	}
	
	.team-list-captions > li::before {
		float: left;
		padding-top: 30%;
		content: "";
	}
	
	.team-list-captions li span:nth-child(2) {
  		opacity: 1;
	}
	
	.tml-title {
		position:absolute;
		bottom: 40px;
	}
	
	.team-list-captions li .tml-cat {		
		position: absolute;
		bottom: 10px;
		opacity: 0.6;
	}
	
	.team-list-images {
		width: 30%;
		left: auto;
  	}
	
	.team-list-images::before {
		display:none;
	}
	
	.team-list-images > li {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom:30px;
	}
	
	.team-list-images > li::before {
		float: left;
		padding-top: 100%;
		content: "";
	}
	
	.team-list-images > li.pixels-cover {
  		display: none;
	}
	
}


@media only screen and (max-width: 479px) {
	
	.pinned-section .pin-spacer {
		width:100%!important;
	}
	
	.pinned-element {
		float:none;
		width:100%;
		margin:0;
	}
	
	.pinned-element.left {
		padding-right:0px;
		margin-bottom:40px;
	}
	
	.pinned-element.right {
		padding-left:0px;
	}
	
	.scrolling-element {
		position:relative;
		float:none;
		width:100%;
		margin:0;
	}
	
	.scrolling-element.left {
		padding-right:0px;
		margin-bottom:40px;
	}
	
	.scrolling-element.right {
		padding-left:0px;
	}
	
	.content-slider.looped-carousel .clapat-slide {
		padding:0 20px;
	}
	
	.content-slider.small-looped-carousel .clapat-slide {
		padding:0 20px;
	}
	
	.disable-cursor .full .looped-carousel .clapat-controls, .disable-cursor .full_elementor .looped-carousel .clapat-controls {
		width: calc(100% - 40px);
	}
	
	.disable-cursor .full .small-looped-carousel .clapat-controls, .disable-cursor .full_elementor .small-looped-carousel .clapat-controls {
		width: calc(100% - 40px);
		max-width:560px;
	}		
			
	.clapat-button {
    	margin-bottom: 20px;
	}
	
	.full > .team-members-list li, .full_elementor .team-members-list li {
		padding:30px 20px;
	}
	
	.team-members-list .hover-reveal {
		width: 100px;
		height: 133px;
	}
	
	.accordion.bigger-acc dt {
		margin-top: 20px;
		padding-top: 20px;
	}
	
	.accordion.bigger-acc dt:first-child {
		padding-top: 20px;
	}
	
	span.has-hover-image .hover-reveal {
		width: 150px;
		height: 94px;
	}
	
	span.has-hover-image.vertical .hover-reveal {
		width: 100px;
		height: 133px;
	}
	
	.flex-list {
		padding: 20px;
	}
	
	.moving-gallery li {
		width: 60vw;
	}
	
	.panels-container > .panel:first-child {
		margin-left:20px;
	}
	
	.panels-container > .panel:last-child {
		margin-right:20px;
	}
	
	.zoom-wrapper-gallery {
		padding: 0 10px;
	}
	
	.start-thumbs-wrapper {
    	padding: 0 10px;
  	}
	
	.start-move-thumb, .start-move-thumb:nth-of-type(3n+2), .start-move-thumb:nth-of-type(3n+3) {
		width: calc(50% - 20px);
		height: calc(50vw - 20px);
		margin: 5px 10px;
  	}
	
	.clipped-image {
  		width: calc(100vw - 40px);
	}
	
	.team-intro-grid {
		position: relative;
  		padding: 0;
		margin-top:30px;
	}
	
	.team-member-inner {
		width: 100%;
		margin-bottom: 50px;
	}
	
	.team-members-grid li:nth-child(4n+1) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+2)  .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+3) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	.team-members-grid li:nth-child(4n+4) .team-member-inner {
		transform: translateX(0%);
		-webkit-transform: translateX(0%);
	}
	
	#copy-email {
		margin-bottom: 5vw;
	}
	
	.team-list-wrapper {
		width: calc(100% - 40px);
	}
	
	.team-list-captions {
		padding-bottom: 20px;
	}
		
}

/*--------------------------------------------------
	Ajax Page Transition
---------------------------------------------------*/
	
	main{
		overflow:hidden
	}
	main .cd-main-content>div{
		height:100%;
		min-height: 100vh;
	}
	main .cd-main-content{
		width:100%;
	}
	main .cd-main-content.cd-index>div{
		vertical-align:middle
	}
	main .cd-main-content.cd-index::after{
		background-color:rgba(64,137,166,0);
		background-image:-webkit-linear-gradient(bottom,#4089a6,rgba(64,137,166,0));
		background-image:linear-gradient(to top,#4089a6,rgba(64,137,166,0))
	}
	main .cd-main-content.cd-index::before{
		background-color:rgba(64,137,166,0);
		background-image:-webkit-linear-gradient(top,#4089a6,rgba(64,137,166,0));
		background-image:linear-gradient(to bottom,#4089a6,rgba(64,137,166,0))
	}
	main .cd-main-content.cd-about{
		background-color:#fff
	}
	main .cd-main-content.cd-about>div{
		padding-top:50px
	}
	main .cd-main-content.cd-about::after{
		background-color:rgba(40,48,64,0);
		background-image:-webkit-linear-gradient(bottom,#283040,rgba(40,48,64,0));
		background-image:linear-gradient(to top,#283040,rgba(40,48,64,0))
	}
	main .cd-main-content.cd-about::before{
		background-color:rgba(40,48,64,0);
		background-image:-webkit-linear-gradient(top,#283040,rgba(40,48,64,0));
		background-image:linear-gradient(to bottom,#283040,rgba(40,48,64,0))
	}
	.cd-cover-layer,.cd-cover-layer.invisible{
		background-color:transparent
	}
	.cd-cover-layer{
		position:fixed;
		z-index:5000;
		left:50%;
		top:50%;
		bottom:auto;
		right:auto;
		-webkit-transform:translateX(-50%) translateY(-50%);
		-moz-transform:translateX(-50%) translateY(-50%);
		-ms-transform:translateX(-50%) translateY(-50%);
		-o-transform:translateX(-50%) translateY(-50%);
		transform:translateX(-50%) translateY(-50%);
		height:101%;
		width:101%;
		opacity:0;
		visibility:hidden;
		-webkit-transition:opacity .4s .4s,visibility 0s .4s;
		-moz-transition:opacity .4s .4s,visibility 0s .4s;
		transition:opacity .6s 0s,visibility 0s .4s
	}
	/*.page-is-changing .cd-cover-layer{
		opacity:1;
		visibility:visible;
		-webkit-transition:opacity .3s 0s,visibility 0s 0s;
		-moz-transition:opacity .3s 0s,visibility 0s 0s;
		transition:opacity .3s .3s,visibility 0s 0s
	}*/
 

/*--------------------------------------------------
	Flex Nav
---------------------------------------------------*/	

	.flexnav,.flexnav li ul{
		width:100%;
		margin:0
	}
	.flexnav,.flexnav li{
		margin:0
	}
	.flexnav li,.flexnav li ul li{
		font-size:100%
	}
	.flexnav .touch-button:hover,.menu-button{
		cursor:pointer
	}
	.flexnav{
		-webkit-transition:none;
		-moz-transition:none;
		-ms-transition:none;
		transition:none;
		-webkit-transform-style:preserve-3d;
		overflow:hidden;
		max-height:0
	}
	.flexnav.opacity{
		opacity:0
	}
	.flexnav.flexnav-show{
		max-height:2000px;
		opacity:1;
		-webkit-transition:all .5s ease-in-out;
		-moz-transition:all .5s ease-in-out;
		-ms-transition:all .5s ease-in-out;
		transition:all .5s ease-in-out
	}
	.flexnav.one-page{
		position:fixed;
		top:50px;
		right:5%;
		max-width:200px
	}
	.flexnav li,.flexnav li a,.flexnav li ul li{
		position:relative;
		overflow:hidden
	}
	.flexnav li a{
		background:#fff;
		border-bottom:1px solid rgba(0,0,0,.05);
		color:#222;
		display:block;
		padding:20px 0;
		z-index:2
	}
	.oldie .flexnav li ul.open ul.open,.oldie .flexnav ul li:hover ul{
		margin-left:100%;
		top:0
	}
	.flexnav li ul.flexnav-show li,.oldie .flexnav,.oldie .flexnav li,.oldie .flexnav li a{
		overflow:visible
	}
	.flexnav li ul li a{
		background:#fff;
		display:block;
		padding:20px
	}
	.flexnav ul li ul li a{
		background:#bfbfbc
	}
	.flexnav ul li ul li ul li a{
		background:#cbcbc9
	}
	.flexnav .touch-button{
		background:rgba(0,0,0,0);
		display:inline-block;
		height:60px;
		position:absolute;
		right:0;
		text-align:right;
		top:0;
		width:60px;
		z-index:999
	}
	.flexnav .touch-button .navicon{
		position:relative;
		top:1.8em;
		font-size:12px;
		color:#666
	}
	.menu-button{
		background:0 0;
		border-bottom:medium none;
		box-sizing:border-box;
		color:#222;
		display:block;
		font-size:14px;
		font-weight:400;
		height:60px;
		line-height:60px;
		padding:0 50px;
		position:relative;
		text-align:right;
		text-transform:uppercase;
		z-index:0
	}
	.no-button .menu-button{
		padding-right:0
	}
	.menu-button.one-page{
		position:fixed;
		top:0;
		right:5%;
		padding-right:45px
	}
	.menu-button .touch-button{
		background:0 0;
		display:none;
		position:absolute;
		z-index:999;
		top:0;
		right:0;
		width:50px;
		height:50px;
		text-align:center
	}
	.menu-button .touch-button .navicon{
		font-size:16px;
		position:relative;
		top:1em;
		color:#666
	}
	@media all and (min-width:1025px){
		/*.flexnav li a,.flexnav li ul li a{
			border-bottom:none
		}
		.flexnav,.flexnav li{
			overflow:visible
		}
		body.one-page{
			padding-top:70px
		}
		.flexnav.opacity{
			opacity:1
		}
		.flexnav.one-page{
			top:0;
			right:auto;
			max-width:1080px
		}
		.flexnav li{
			position:relative;
			list-style:none;
			float:left;
			display:block;
			background-color:#a6a6a2
		}
		.flexnav li a{
			border-left:1px solid #acaca1
		}
		.flexnav li>ul{
			position:absolute;
			top:auto;
			left:0
		}
		.flexnav li ul li>ul,.flexnav li ul.open ul.open{
			margin-left:100%;
			top:0
		}
		.flexnav li>ul li{
			width:100%
		}
		.flexnav li ul.open{
			display:block;
			opacity:1;
			visibility:visible;
			z-index:1
		}
		.flexnav li ul.open li{
			overflow:visible;
			max-height:100px
		}
		.menu-button{
			display:none
		}*/
	}
	
	
/*--------------------------------------------------
	Tool Tips
---------------------------------------------------*/	

	[data-tooltip]{
		position:relative
	}
	[data-tooltip]::after,[data-tooltip]::before{
		position:absolute;
		display:block;
		opacity:0;
		pointer-events:none;
		-webkit-transition:all .2s ease-in-out;
		transition:all .2s ease-in-out;
		line-height:12px
	}
	[data-tooltip]::before{
		content:attr(data-tooltip);
		font-size:12px;
		font-weight:500;
		font-family:Poppins,sans-serif;
		color:#000;
		padding:5px;
		border-radius:5px;
		white-space:nowrap;
		text-decoration:none;
		text-align:left
	}
	.light-content [data-tooltip]::before{
		color:#fff
	}
	[data-tooltip]::after{
		width:0;
		height:0;
		border:6px solid transparent;
		content:''
	}
	[data-tooltip]:hover::after,[data-tooltip]:hover::before{
		opacity:1
	}
	[data-tooltip][data-placement=left]::before{
		top:32%;
		right:100%;
		margin-right:35px
	}
	[data-tooltip][data-placement=left]:hover::before{
		margin-right:-2px;
		-webkit-transition:all .3s ease-out .5s;
		transition:all .3s ease-out .5s
	}
	[data-tooltip][data-placement=top]::before{
		top:16%;
		right:100%;
		margin-right:0;
		width:200px;
		height:16px;
		transform:translateX(147px) translateY(-170px) rotate(-90deg)
	}
	[data-tooltip][data-placement=top]:hover::before{
		transform:translateX(147px) translateY(-140px) rotate(-90deg);
		-webkit-transition:all .3s ease-out .5s;
		transition:all .3s ease-out .2s
	}
	[data-tooltip][data-placement=right]::before{
		top:32%;
		left:100%;
		margin-left:35px
	}
	[data-tooltip][data-placement=right]:hover::before{
		margin-left:-2px;
		-webkit-transition:all .3s ease-out .5s;
		transition:all .3s ease-out .5s
	}
	@media only screen and (max-width:479px){
		[data-tooltip]:hover::after,[data-tooltip]:hover::before{
			opacity:0
		}
	}


/*--------------------------------------------------
	Social Share
---------------------------------------------------*/	

	.jssocials-shares{
		margin:.2em 0
	}
	.jssocials-shares *{
		box-sizing:border-box
	}
	.jssocials-share{
		display:inline-block;
		vertical-align:middle;
		margin:0;
	}
	.jssocials-share:last-child{
		margin-right:0
	}
	.jssocials-share-logo{
		width:1em;
		vertical-align:middle;
		font-size: 1em;
	}
	img.jssocials-share-logo{
		width:auto;
		height:1em
	}
	.jssocials-share-link{
		display:block;
		text-align:center;
		text-decoration:none;
		width: 60px;
		height: 60px;
		line-height: 60px;
	}
	.jssocials-share-link.jssocials-share-link-count{
		padding-top:.2em
	}
	.jssocials-share-link.jssocials-share-link-count .jssocials-share-count{
		display:block;
		font-size:.6em;
		margin:0 -.5em -.8em
	}
	.jssocials-share-link.jssocials-share-no-count{
		padding-top:.5em
	}
	.jssocials-share-link.jssocials-share-no-count .jssocials-share-count{
		height:1em
	}
	.jssocials-share-label{
		padding-left:.3em;
		vertical-align:middle
	}
	.jssocials-share-count-box{
		display:inline-block;
		height:1.5em;
		padding:0 .3em;
		line-height:1;
		vertical-align:middle;
		cursor:default
	}
	.jssocials-share-count-box.jssocials-share-no-count{
		display:none
	}
	.jssocials-share-count{
		line-height:1.5em;
		vertical-align:middle
	}


/*--------------------------------------------------
	Justified Gallery
---------------------------------------------------*/	

	.justified-gallery{
		width:100%;
		position:relative;
		overflow:hidden
	}
	.justified-gallery>a,.justified-gallery>div,.justified-gallery>figure{
		position:absolute;
		display:inline-block;
		overflow:hidden;
		filter:"alpha(opacity=10)";
		opacity:.1;
		margin:0;
		padding:0
	}
	.justified-gallery>a>a>img,.justified-gallery>a>img,.justified-gallery>div>a>img,.justified-gallery>div>img,.justified-gallery>figure>a>img,.justified-gallery>figure>img{
		position:relative;
		top:50%;
		left:50%;
		margin:0;
		margin-top:0!important;
		padding:0;
		border:none;
		filter:"alpha(opacity=0)";
		opacity:0
	}
	.justified-gallery>a>.caption,.justified-gallery>div>.caption,.justified-gallery>figure>.caption{
		display:none;
		position:absolute;
		bottom:0;
		padding:5px;
		background-color:#000;
		left:0;
		right:0;
		margin:0;
		color:#fff;
		font-size:12px;
		font-weight:300;
		font-family:sans-serif
	}
	.justified-gallery>.entry-visible{
		filter:"alpha(opacity=100)";
		opacity:1;
		background:0 0
	}
	.justified-gallery>.entry-visible>a>img,.justified-gallery>.entry-visible>img{
		filter:"alpha(opacity=100)";
		opacity:1;
		-webkit-transition:opacity .5s ease-in;
		-moz-transition:opacity .5s ease-in;
		-o-transition:opacity .5s ease-in;
		transition:opacity .5s ease-in
	}
	.justified-gallery>.jg-filtered{
		display:none
	}
	.justified-gallery>.spinner{
		position:absolute;
		bottom:0;
		margin-left:-24px;
		padding:10px 0;
		left:50%;
		filter:"alpha(opacity=100)";
		opacity:1;
		overflow:initial
	}
	.justified-gallery>.spinner>span{
		display:inline-block;
		filter:"alpha(opacity=0)";
		opacity:0;
		width:8px;
		height:8px;
		margin:0 4px;
		background-color:#fff;
		border-radius:6px
	}


/*--------------------------------------------------
	ClaPat Popup
---------------------------------------------------*/	
	
	.clapat-img-popup, .clapat-video-popup {
		position:fixed;
		height:100%;
		width:100%;
		z-index:10000;
		left:0;
		top:0;
		right:0;
		bottom:0;
		display:flex;
		justify-content: center;	
  		align-items: center;
	}
	
	.clapat-img-popup-viewport {
		position: absolute;
		display: flex;
		box-sizing: border-box;
		padding: 80px 40px;
		margin: 0 auto;
		text-align: left;
		z-index: 100;
		height: auto;
		width: auto;
		align-items: center;
		justify-content: center;
		pointer-events: none;
	}
	
	.clapat-video-popup-viewport {
		position: absolute;
		display: flex;
		box-sizing: border-box;
		padding: 0;
		margin: 0 auto;
		text-align: left;
		z-index: 100;
		height: auto;
		width: calc(100% - 80px);
		max-width: 900px;
		align-items: center;
		justify-content: center;
		pointer-events: none;
	}
	
	.clapat-video-popup-viewport::before {
		float: left;
		padding-top: 56.25%;
		content: "";
	}
	
	.clapat-img-popup-preloader, .clapat-video-popup-preloader {
		display: block;
		position: absolute;
		margin: 0 auto;
		width: 80px;
		height: 80px;
	}
	
	.clapat-img-popup-preloader div, .clapat-video-popup-preloader div {
		position: absolute;
		top: 33px;
		width: 13px;
		height: 13px;
		border-radius: 50%;
		background: #fff;
		animation-timing-function: cubic-bezier(0, 1, 1, 0);
	}
	
	.clapat-img-popup-preloader div:nth-child(1), .clapat-video-popup-preloader div:nth-child(1) {
		left: 8px;
		animation: clapat-img-popup-preloader1 0.6s infinite;
	}
	
	.clapat-img-popup-preloader div:nth-child(2), .clapat-video-popup-preloader div:nth-child(2) {
		left: 8px;
		animation: clapat-img-popup-preloader2 0.6s infinite;
	}
	
	.clapat-img-popup-preloader div:nth-child(3), .clapat-video-popup-preloader div:nth-child(3) {
		left: 32px;
		animation: clapat-img-popup-preloader2 0.6s infinite;
	}
	
	.clapat-img-popup-preloader div:nth-child(4), .clapat-video-popup-preloader div:nth-child(4) {
		left: 56px;
		animation: clapat-img-popup-preloader3 0.6s infinite;
	}
	
	@keyframes clapat-img-popup-preloader1 {
		0% {
			transform: scale(0);
		}
		100% {
			transform: scale(1);
		}
	}
	
	@keyframes clapat-img-popup-preloader3 {
		0% {
			transform: scale(1);
		}
		100% {
			transform: scale(0);
		}
	}
	
	@keyframes clapat-img-popup-preloader2 {
		0% {
			transform: translate(0, 0);
		}
		100% {
			transform: translate(24px, 0);
		}
	}

	
	.clapat-img-popup img {
		position: relative;
		max-width: 100%;
		max-height: calc(100vh - 160px);
		width: auto;
		height: auto;
		margin: 0 auto;
		z-index: 10;
		pointer-events: initial;
	}
	
	.clapat-video-popup iframe {
		position: absolute;
		display: block;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 10;
		pointer-events: initial;
	}
	
	.rounded-borders .clapat-img-popup img {
		border-radius:8px;
	}
	
	.clapat-img-popup-bg-close, .clapat-video-popup-bg-close {
		position:absolute;
		display:block;
		height:100%;
		width:100%;
		left:0;
		top:0;
		right:0;
		bottom:0;
	}
	
	.clapat-img-popup-close {
		position: absolute;
		width: 40px;
		height: 40px;
		right: 20px;
		top: 60px;
		opacity: 0;
		z-index: 100;
		cursor: pointer;
		pointer-events: initial;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
	}

	.clapat-video-popup-close {
		position: absolute;
		width: 40px;
		height: 40px;
		right: -20px;
		top: -20px;
		opacity: 0;
		z-index: 100;
		cursor: pointer;
		pointer-events: initial;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
	}

	/* SVG close icon */
	.clapat-img-popup-close svg,
	.clapat-video-popup-close svg {
		width: 100%;
		height: 100%;
		fill: currentColor;
		display: block;
		-webkit-transition: opacity 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out;
	}

	.clapat-img-popup-close:hover svg,
	.clapat-video-popup-close:hover svg {
		opacity: 0.7;
	}
	
	.clapat-img-popup-prev, .clapat-video-popup-prev {
		position: absolute;
		width: 40px;
		height: 40px;
		left: 30px;
		top: 50%;
		transform: translateY(-50%);
		opacity: 0;
		z-index: 100;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
	}

	.clapat-img-popup-next, .clapat-video-popup-next {
		position: absolute;
		width: 40px;
		height: 40px;
		right: 30px;
		top: 50%;
		transform: translateY(-50%);
		opacity: 0;
		z-index: 100;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
	}

	/* SVG nav icons */
	.clapat-img-popup-prev svg,
	.clapat-img-popup-next svg,
	.clapat-video-popup-prev svg,
	.clapat-video-popup-next svg {
		width: 100%;
		height: 100%;
		fill: currentColor;
		display: block;
		-webkit-transition: opacity 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out;
	}

	.clapat-img-popup-prev:hover svg,
	.clapat-img-popup-next:hover svg,
	.clapat-video-popup-prev:hover svg,
	.clapat-video-popup-next:hover svg {
		opacity: 0.7;
	}
	
	
@media only screen and (max-width: 1466px) {
	
		
}	
	
	
@media only screen and (max-width: 1024px) {	


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


}

@media only screen and (max-width: 479px) {
	
	.clapat-img-popup-viewport {
		padding: 60px 23px;
	}
	
	.clapat-video-popup-viewport {
  		width: calc(100% - 60px);
	}
	
	.clapat-img-popup img {
		max-height: calc(100vh - 120px);
	}
	
	.clapat-img-popup-close {
		right: 3px;
    	top: 40px
	}
	
	.clapat-img-popup-prev {
		left:10px;
	}
	
	.clapat-img-popup-next {
		right:10px;
	}
	
}	
/*------------------------------------------------------------------
Project:	FAIRE Architecte - Portfolio Template
Version:	1.0
Last change:	05/01/2026
Assigned to:	 G P
Primary use:	Showcase Portfolio

Note: Les variables CSS (:root design tokens) sont définies dans
      _includes/head.html — section "00. Design Tokens"
-------------------------------------------------------------------*/


/*------------------------------------------------------------------

01. Main Content
02. Footer Elements
03. Responsive Media Queries

-------------------------------------------------------------------*/


/*--------------------------------------------------
	05. Main Content
---------------------------------------------------*/



#content-scroll {
	z-index: 1;
	position: relative;
	overflow-x: hidden;
}

.smooth-scroll #content-scroll {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	overflow: hidden;
}

.scroll-content {
	cursor: default !important;
}

.scale-up .scroll-content {
	cursor: grabbing !important;
}

.scrollbar-track {
	background: transparent !important;
}


/*--------------------------------------------------
	06. Footer Elements
---------------------------------------------------*/

.clapat-footer {
	position: relative;
	width: 100%;
	height: 120px;
	z-index: 900;
	box-sizing: border-box;
	text-align: center;
	bottom: 0;
	left: 0;
	overflow: hidden;
	/*pointer-events: none;*/
}

.clapat-footer.fixed {
	position: fixed;
}

.clapat-footer.showcase-footer {
	position: fixed;
}

#footer-container {
	padding: 0 80px;
	margin: 20px auto;
	height: 80px;
	position: absolute;
	width: 100%;
	box-sizing: border-box;
	bottom: 0;
	left: 0;
}

.footer-middle {
	max-width: 1180px;
	height: 20px;
	position: relative;
	margin: 0 auto;
	left: 0;
	width: 100%;
	top: 0px;
	margin-bottom: 15px;
}

.copyright {
	margin: 0 auto;
	left: auto;
	right: auto;
	top: 0;
	position: relative;
	width: auto;
	height: 26px;
	overflow: hidden;
	line-height: 20px;
	color: #000;
	pointer-events: initial;
	text-align: center;
	font-size: 12px;
}

.light-content .copyright {
	color: #fff;
}

.socials-wrap {
	width: auto;
	float: none;
	display: table;
	left: auto;
	right: auto;
	top: 0;
	margin: 0 auto;
	height: 20px;
	line-height: 20px;
	transform: translateX(0px) translateY(0px) !important;
	-webkit-transform: translateX(0px) translateY(0px) !important;
}

.light-content .socials-wrap {
	color: #fff;
}

.clapat-footer .socials-wrap {
	margin-top: 0px;
}

.socials-wrap:hover {
	transform: translateY(-40px);
	-webkit-transform: translateY(-40px);
}

.socials-text {
	float: right;
	line-height: 40px;
	transform: translateY(20px);
}

.socials-wrap:hover .socials-text {
	transform: translateY(15px) translateX(5px);
	-webkit-transform: translateY(15px) translateX(5px);
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

.socials-icon {
	float: right;
	width: 30px;
	height: 40px;
	font-size: 14px;
	line-height: 40px;
	text-align: right;
	margin-left: 10px;
	transform: scale(1) translateY(20px);
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

.socials-wrap:hover .socials-icon {
	transform: scale(0) translateY(40px);
	width: 0;
	margin: 0;
	overflow: hidden;
}

.socials-icon:after,
.socials-text:after {
	content: "";
	clear: both;
	display: table;
}

.socials {
	height: auto;
	line-height: 30px;
	position: relative;
	width: auto;
	margin: 0 auto;
	margin-top: 10px;
	text-align: center;
	bottom: 0;
	display: table;
	transform: translateX(15px);
	-webkit-transform: translateX(15px);
}

.socials-wrap .socials {
	text-align: center;
	margin: 0 auto;
	height: 20px;
	line-height: 20px;
	display: table;
	width: auto;
}

.socials li,
.socials li a {
	height: 20px;
	line-height: 20px;
	margin: 0 auto;
}

.socials-wrap .socials li {
	opacity: 0;
	transform: translateY(20px);
	-webkit-transform: translateY(20px);
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

.socials-wrap:hover .socials li:nth-child(5) {
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0.05s;
	opacity: 1;
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
}

.socials-wrap:hover .socials li:nth-child(4) {
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
	opacity: 1;
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
}

.socials-wrap:hover .socials li:nth-child(3) {
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
	opacity: 1;
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
}

.socials-wrap:hover .socials li:nth-child(2) {
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
	opacity: 1;
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
}

.socials-wrap:hover .socials li:nth-child(1) {
	transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
	opacity: 1;
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
}


.socials li a {
	color: #000;
	display: block;
	height: 40px;
	width: 40px;
	line-height: 40px;
	text-align: center;
	-webkit-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}

.socials:hover li a {
	opacity: 0.3;
}

.socials li a:hover {
	color: #000;
	opacity: 1;
}

.light-content .socials li a {
	color: #fff;
}

.light-content .socials:hover li a {
	opacity: 0.3;
}

.light-content .socials li a:hover {
	color: #fff;
	opacity: 1;
}

.button-wrap {
	position: relative;
	cursor: pointer;
	top: 0px;
	pointer-events: initial;
	width: auto;
	display: table;
	color: #000;
}

.over-white-section .button-wrap.menu {
	-webkit-transition: color 0.1s ease-in-out 0s;
	transition: color 0.1s ease-in-out 0s;
}

.light-content .button-wrap,
.dark-section .button-wrap {
	color: #fff;
}

.light-content .light-section .button-wrap {
	color: #000;
}

.white-header .button-wrap {
	color: #fff;
}

.light-content .white-header .button-wrap {
	color: #000;
}

.button-wrap:after {
	clear: both;
	content: " ";
	display: block;
	height: 0;
	visibility: hidden;
}

.button-wrap.left {
	float: left;
	left: -32px;
}

.button-wrap.right {
	float: right;
	right: -26px;
}

#main .button-wrap.left {
	float: none;
	left: -24px;
}

#main .button-wrap.button-link.left {
	float: none;
	left: -20px;
}

#main .button-wrap.right {
	float: none;
	right: auto;
}

#main .button-wrap.button-link.right {
	right: -2px;
}

.icon-wrap {
	width: 80px;
	height: 80px;
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	float: left;
}

#main .icon-wrap {
	width: 60px;
	height: 60px;
}

.button-wrap.left .icon-wrap {
	float: left;
}

.button-wrap.right .icon-wrap {
	float: right;
}

#main .text-align-right .button-wrap.right {
	float: right;
}

.button-icon {
	height: 40px;
	width: 40px;
	color: currentColor;
	text-align: center;
	line-height: 40px;
}

.button-icon i, .button-icon svg {
	height: 40px;
	line-height: 40px;
	width: 40px;
	text-align: center;
}

#main .button-icon i, #main .button-icon svg {
	line-height: 40px;
}

.button-text {
	line-height: 30px;
	margin: 25px 0;
	overflow: hidden;
	width: auto;
	padding: 0 10px;
	color: currentColor;
}

#main #hero-footer .button-text span::after {
	content: none;
}

#main .button-text {
	margin: 15px 0;
	transition: transform .2s ease-out;
}

#main .large-btn .button-text {
	font-size: 24px;
	line-height: 40px;
	font-weight: 400;
	margin: 10px 0;
	transition: transform .2s ease-out;
}

.light-content .button-text,
.dark-section .button-text {
	color: currentColor;
}

.light-content .light-section .button-text {
	color: currentColor;
}

.white-header .button-text {
	color: currentColor;
}

.light-content .white-header .button-text {
	color: currentColor;
}

.light-content .white-header.over-white-section .button-text,
.show-loader1 .light-content .white-header .button-text {
	color: currentColor;
}

.button-wrap.left a {
	text-align: left;
	float: left;
}

.button-wrap.right a {
	text-align: right;
	float: right;
}

.button-wrap.right .button-text {
	padding-left: 0px;
}

.button-link .button-text,
#main .button-link .button-text {
	overflow: visible;
	transition: padding 0.3s ease-out;
}

.button-link.left .button-text {
	padding-left: 0px;
}

.button-link.left:hover .button-text {
	padding-left: 10px;
}

.button-text span {
	position: relative;
	display: inline-block;
	width: auto;
	text-align: center;
	-webkit-transition: transform 0.8s cubic-bezier(.2, 1.33, .25, 1);
	transition: transform 0.8s cubic-bezier(.2, 1.33, .25, 1);
}

.button-text span::before {
	position: absolute;
	width: auto;
	top: 0;
	left: 0;
	content: attr(data-hover);
	-webkit-transform: translateY(150%) rotate(-10deg);
	transform: translateY(150%) rotate(-10deg);
	-webkit-transition: transform 0.8s cubic-bezier(.2, 1.33, .25, 1);
	transition: transform 0.8s cubic-bezier(.2, 1.33, .25, 1);
}

.button-wrap:hover .button-text span {
	-webkit-transform: translateY(-150%) rotate(-10deg);
	transform: translateY(-150%) rotate(-10deg);
}

.button-wrap:hover .button-text span::before {
	-webkit-transform: translateY(150%) rotate(10deg);
	transform: translateY(150%) rotate(10deg);
}

.button-link .button-text span::before {
	content: '';
	position: absolute;
	bottom: 1px;
	left: 0;
	width: 100%;
	height: 1px;
	background: transparent;
	transform: scaleX(1);
	transform-origin: right;
	transition: transform 0.3s ease-out;
}

.button-link.left .button-text span::before {
	transform-origin: left;
}

.light-content .button-link .button-text span::before,
.dark-section .button-link .button-text span::before {
	background: transparent;
}

.light-content .light-section .button-link .button-text span::before {
	background: transparent;
}

.button-wrap.button-link:hover .button-text span {
	transform: translateY(0);
	-webkit-transform: translateY(0);
}

.button-link:hover .button-text span::before {
	transform: scaleX(0);
	-webkit-transform: scaleX(0);
	transform-origin: left;
}

.button-link.left:hover .button-text span::before {
	transform-origin: right;
}

.button-link .button-icon i {
	background-color: #000;
	color: transparent;
	font-size: 14px;
	border-radius: 10px;
	transform: scale(0.3);
	box-sizing: border-box;
	transition: all .3s ease-out;
	text-indent: -100px;
	overflow: hidden;
	opacity: 1;
}

.button-link:hover .button-icon i {
	background-color: #000;
	color: #fff;
	transform: scale(1.2);
	border-radius: 100%;
	text-indent: 0px;
	opacity: 1;
}

.light-content .button-link .button-icon i,
.dark-section .button-link .button-icon i {
	background-color: #fff;
}

.light-content .button-link:hover .button-icon i,
.dark-section .button-link:hover .button-icon i {
	background-color: #fff;
	color: #000;
	opacity: 1;
}

.light-content .light-section .button-link:hover .button-icon i {
	background-color: #000;
	color: #fff;
	opacity: 1;
}

.button-link.right .button-icon i {
	transform: scale(0.3) translateX(-65px) translateY(2px);
	-webkit-transform: scale(0.3) translateX(-65px) translateY(2px);
}

.button-link.right:hover .button-icon i {
	transform: scale(1.2) translateX(0px);
	-webkit-transform: scale(1.2) translateX(0px);
	border-radius: 100%;
}

/* === Équivalents SVG inline des règles .button-icon i ci-dessus ===
   Les icônes FA utilisent `color` pour la couleur du glyphe.
   Les SVG inline utilisent `fill` (qui cascade sur les <path> enfants).
   `margin: 0 !important` écrase le style="margin:10px" inline.
   `padding: 11px` réduit la zone de rendu SVG à 18px (40-2×11)
   sans réduire le fond circulaire (background remplit tout le border-box).
   `pointer-events: none` laisse les events souris remonter au
   .parallax-wrap parent (le JS cible .icon-wrap, pas le SVG). */
.button-link .button-icon svg {
	display: block;
	width: 40px;
	height: 40px;
	padding: 11px;
	box-sizing: border-box;
	margin: 0 !important;
	background-color: #000;
	fill: transparent;
	border-radius: 10px;
	transform: scale(0.3);
	-webkit-transform: scale(0.3);
	transition: all .3s ease-out;
	overflow: hidden;
	opacity: 1;
	pointer-events: none;
}

.button-link:hover .button-icon svg {
	background-color: #000;
	fill: #fff;
	transform: scale(1.2);
	-webkit-transform: scale(1.2);
	border-radius: 100%;
	opacity: 1;
}

.light-content .button-link .button-icon svg,
.dark-section .button-link .button-icon svg {
	background-color: #fff;
	fill: transparent;
}

.light-content .button-link:hover .button-icon svg,
.dark-section .button-link:hover .button-icon svg {
	background-color: #fff;
	fill: #000;
	opacity: 1;
}

.light-content .light-section .button-link:hover .button-icon svg {
	background-color: #000;
	fill: #fff;
	opacity: 1;
}

.button-link.right .button-icon svg {
	transform: scale(0.3) translateX(-65px) translateY(2px);
	-webkit-transform: scale(0.3) translateX(-65px) translateY(2px);
}

.button-link.right:hover .button-icon svg {
	transform: scale(1.2) translateX(0px);
	-webkit-transform: scale(1.2) translateX(0px);
	border-radius: 100%;
}

.button-wrap.left .button-text span {
	text-align: left;
}

.button-wrap.right .button-text span {
	text-align: right;
}

.link-text {
	line-height: 30px;
	margin: 0;
	overflow: hidden;
	display: table;
	width: auto;
	padding: 0;
	color: #000;
}

.clapat-footer .link-text {
	float: left;
	opacity: 0;
	margin-top: 25px;
}

p .link-text {
	display: inline-table;
}

.light-content .link-text,
.dark-section .link-text {
	color: #fff;
}

.light-content .light-section .link-text {
	color: #000;
}

.link-text span {
	position: relative;
	display: inline-block;
	-webkit-transition: -webkit-transform 0.2s;
	transition: transform 0.2s;
	width: auto;
	text-align: center;
	transform-origin: 100% 0%;
	pointer-events: initial;
	cursor: pointer;
}

.link-text span::before {
	position: absolute;
	width: auto;
	top: 100%;
	left: 0;
	content: attr(data-hover);
}

.link-text:hover span {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	transform-origin: 0% 0%;
}

.button-icon i.list-view,
.button-icon i.grid-view {
	height: 40px;
	width: 40px;
	position: relative;
	display: block;
}

.button-icon i.list-view span,
.button-icon i.grid-view span {
	width: 4px;
	height: 4px;
	border-radius: 4px;
	background-color: currentColor;
	position: absolute;
	display: block;
}

.button-icon i.list-view span:nth-child(1) {
	left: 10px;
	top: 18px;
}

.button-icon i.list-view span:nth-child(2) {
	left: 18px;
	top: 18px;
}

.button-icon i.list-view span:nth-child(3) {
	left: 26px;
	top: 18px;
}

.button-icon i.grid-view span:nth-child(1) {
	left: 14px;
	top: 14px;
}

.button-icon i.grid-view span:nth-child(2) {
	right: 14px;
	top: 14px;
}

.button-icon i.grid-view span:nth-child(3) {
	left: 14px;
	bottom: 14px;
}

.button-icon i.grid-view span:nth-child(4) {
	right: 14px;
	bottom: 14px;
}

.clapat-nav-wrapper,
.clapat-nav-wrapper.open {
	background: transparent;
}

/*--------------------------------------------------
	07. Responsive
---------------------------------------------------*/


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

	.row_padding_all {
		padding-left: 60px;
		padding-right: 60px;
	}

	.row_padding_left {
		padding-left: 60px;
	}

	.row_padding_right {
		padding-right: 60px;
	}

	.trackbar {
		padding: 0 60px;
	}

	.percentage-intro {
		bottom: 40px;
	}

	.clapat-header {
		height: 100px;
	}

	#header-container {
		padding: 10px 60px;
	}

	/*@media (min-width: 1025px) {
	  .clapat-header.classic-menu .clapat-nav-wrapper {
		top: 17px;
	  }
	}*/

	.clapat-footer {
		height: 100px;
	}

	#footer-container {
		padding: 0 60px;
		margin: 10px auto;
	}

	.socials-wrap:hover .socials-text {
		transform: translateY(20px) translateX(5px);
		-webkit-transform: translateY(20px) translateX(5px);
	}

}

/* Hamburger menu always visible */
.classic-menu .button-wrap.right.menu {
	display: block;
}

.clapat-nav-wrapper {
	height: 100vh;
	height: 100dvh;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	box-sizing: border-box;
	visibility: visible;
	pointer-events: none;
	opacity: 0;
	padding: 20px 0;
}

.clapat-nav-wrapper.open {
	visibility: visible;
	pointer-events: initial;
}

#header-container {
	padding: 10px 40px;
}

.clapat-nav-wrapper {
	height: 100vh;
	height: 100dvh;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	box-sizing: border-box;
	visibility: visible;
	pointer-events: none;
	opacity: 0;
	padding: 20px 0;
}

.clapat-nav-wrapper.open {
	visibility: visible;
	pointer-events: initial;
}

.nav-height {
	position: relative;
	height: 100%;
	padding: 40px 0;
	width: 100%;
	box-sizing: border-box;
	overflow-y: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.flexnav {
	padding: 0 20px;
	max-height: 2000px;
	display: block;
	width: auto;
	text-align: center;
	box-sizing: border-box;
	background: transparent;
	-webkit-transition: all 0.2s ease-in 0.6s;
	transition: all 0.2s ease-in 0.6s;
}

.flexnav.flexnav-show {
	-webkit-transition: all .3s ease-out 0.2s;
	transition: all .3s ease-out 0.2s;
}

.flexnav.opacity {
	opacity: 1;
}

.flexnav li {
	padding: 0;
	-webkit-transition: color .15s ease-out 0s;
	transition: color .15s ease-out 0s;
}

.flexnav:hover li {
	color: rgba(255, 255, 255, 0.4)
}

.flexnav li:hover {
	color: rgba(255, 255, 255, 1)
}

.flexnav li a,
.flexnav li ul li a {
	background: transparent;
}

.flexnav li a {
	font-weight: 500;
	padding: 0;
	border: none;
	-webkit-transition: all .1s ease-in-out 0s;
	transition: all .1s ease-in-out 0s;
}

.flexnav>li>a {
	font-size: calc(1rem + 4vw);
	line-height: calc(1rem + 5vw);
}

.flexnav>li>.touch-button {
	width: 100%;
	height: calc(1rem + 5vw);
	display: block;
}

.flexnav li a {
	color: #000;
}

.invert-header .flexnav li a {
	color: #fff;
}

.flexnav:hover li a {
	opacity: 0.3;
}

.flexnav li:hover a,
.flexnav li a.active {
	opacity: 1;
}

.flexnav li a span {
	position: relative;
	display: block;
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
}

.flexnav .touch-button {
	width: 100%;
	display: block;
	height: 10vw;
}

.flexnav li ul {
	margin-bottom: 15px;
}

.flexnav li ul li a {
	padding: 3px 0;
	font-weight: 500;
	text-transform: none;
	font-size: 18px;
	line-height: 28px;
	border-top: none;
	opacity: 0.4;
	-webkit-text-stroke: none;
}

.uppercase-text .flexnav li ul li a {
	text-transform: uppercase;
}

.flexnav li ul li:hover a,
.flexnav li ul li a.active {
	opacity: 1;
}

.flexnav:hover li ul li a {
	opacity: 0.3;
}

.flexnav:hover li ul li a.active,
.flexnav:hover li ul li:hover>a {
	opacity: 1;
}

.flexnav ul li ul li a {
	background: transparent;
}

.flexnav li ul li ul li a {
	padding: 10px 40px;
}

.flexnav li ul li .touch-button {
	height: 30px;
}

.flexnav .touch-button .navicon {
	display: none;
}

.header-button {
	display: none;
}

#menu-burger span.touch-button {
	display: none;
}

.classic-menu .button-wrap.right.menu {
	display: block;
}

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

	.parallax-wrap {
		transform: none !important;
	}

	.parallax-element {
		transform: none !important;
	}

	.has-parallax figcaption {
		display: none;
	}

	.destroy {
		display: none;
	}

	.row_padding_left {
		padding-left: 0px;
	}

	.row_padding_right {
		padding-right: 0px;
	}

	.full.row_padding_left {
		padding-left: 40px;
	}

	.full.row_padding_right {
		padding-right: 40px;
	}

	.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 0px;
		padding-right: 0px;
	}

	.full.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 40px;
		padding-right: 40px;
	}

	#magic-cursor {
		display: none;
	}

	.trackbar {
		padding: 0 40px;
	}

	.percentage-intro {
		bottom: 40px;
	}

	#header-container {
		padding: 10px 40px;
	}

	.clapat-nav-wrapper {
		height: 100vh;
		height: 100dvh;
		width: 100%;
		position: fixed;
		left: 0;
		top: 0;
		box-sizing: border-box;
		visibility: visible;
		pointer-events: none;
		opacity: 0;
		padding: 20px 0;
	}

	.clapat-nav-wrapper.open {
		visibility: visible;
		pointer-events: initial;
	}

	.nav-height {
		position: relative;
		height: 100%;
		padding: 40px 0;
		width: 100%;
		box-sizing: border-box;
		overflow-y: auto;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.flexnav {
		padding: 0 20px;
		max-height: 2000px;
		display: block;
		width: auto;
		text-align: center;
		box-sizing: border-box;
		background: transparent;
		-webkit-transition: all 0.2s ease-in 0.6s;
		transition: all 0.2s ease-in 0.6s;
	}

	.flexnav.flexnav-show {
		-webkit-transition: all .3s ease-out 0.2s;
		transition: all .3s ease-out 0.2s;
	}

	.flexnav.opacity {
		opacity: 1;
	}

	.flexnav li {
		padding: 0;
		-webkit-transition: color .15s ease-out 0s;
		transition: color .15s ease-out 0s;
	}

	.flexnav:hover li {
		color: rgba(255, 255, 255, 0.4)
	}

	.flexnav li:hover {
		color: rgba(255, 255, 255, 1)
	}

	.flexnav li a,
	.flexnav li ul li a {
		background: transparent;
	}

	.flexnav li a {
		font-weight: 500;
		padding: 0;
		border: none;
		-webkit-transition: all .1s ease-in-out 0s;
		transition: all .1s ease-in-out 0s;
	}

	.flexnav>li>a {
		font-size: calc(1rem + 4vw);
		line-height: calc(1rem + 5vw);
	}

	.flexnav>li>.touch-button {
		width: 100%;
		height: calc(1rem + 5vw);
		display: block;
	}

	.flexnav li a {
		color: #000;
	}

	.invert-header .flexnav li a {
		color: #fff;
	}

	.flexnav:hover li a {
		opacity: 0.3;
	}

	.flexnav li:hover a,
	.flexnav li a.active {
		opacity: 1;
	}

	.flexnav li a span {
		position: relative;
		display: block;
		-webkit-transform: translateY(-10px);
		transform: translateY(-10px);
	}

	.flexnav .touch-button {
		width: 100%;
		display: block;
		height: 10vw;
	}

	.flexnav li ul {
		margin-bottom: 15px;
	}

	.flexnav li ul li a {
		padding: 3px 0;
		font-weight: 500;
		text-transform: none;
		font-size: 18px;
		line-height: 28px;
		border-top: none;
		opacity: 0.4;
		-webkit-text-stroke: none;
	}

	.uppercase-text .flexnav li ul li a {
		text-transform: uppercase;
	}

	.flexnav li ul li:hover a,
	.flexnav li ul li a.active {
		opacity: 1;
	}

	.flexnav:hover li ul li a {
		opacity: 0.3;
	}

	.flexnav:hover li ul li a.active,
	.flexnav:hover li ul li:hover>a {
		opacity: 1;
	}

	.flexnav ul li ul li a {
		background: transparent;
	}

	.flexnav li ul li ul li a {
		padding: 10px 40px;
	}

	.flexnav li ul li .touch-button {
		height: 30px;
	}

	.flexnav .touch-button .navicon {
		display: none;
	}

	.header-button {
		display: none;
	}

	#menu-burger span.touch-button {
		display: none;
	}

	.classic-menu .button-wrap.right.menu {
		display: block;
	}

	#footer-container {
		padding: 0 40px;
	}

	.copyright {
		text-align: center;
	}

	.socials-wrap {
		width: 240px;
		height: 40px;
		float: right;
		margin: 0 auto;
		right: -10px;
		transform: translateX(0px) translateY(20px) !important;
		-webkit-transform: translateX(0px) translateY(20px) !important;
	}

	.socials-wrap:hover {
		transform: translateY(20px);
		-webkit-transform: translateY(20px);
	}

	.socials-icon,
	.socials-text {
		display: none;
	}

	.socials-wrap .socials {
		margin-top: 3px;
		text-align: right;
		transform: translateX(0px);
		-webkit-transform: translateX(0px);
	}

	.socials-wrap .socials li {
		opacity: 1;
		transform: translateY(0px);
		-webkit-transform: translateY(0px);
	}

	.socials-wrap:hover .socials li {
		opacity: 1;
		transform: translateY(0px) !important;
		-webkit-transform: translateY(0px) !important;
	}

	.socials li {
		margin-right: 10px;
		line-height: 30px;
		height: 30px;
		width: 30px;
		margin: 0 5px auto;
		display: inline-block;
		float: none;
	}

	.socials li a {
		height: 30px;
		width: 30px;
		line-height: 30px;
	}

}


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

	figcaption {
		background-color: rgba(0, 0, 0, 0.3);
		bottom: 0px;
		font-size: 10px;
		padding: 5px 10px;
		right: 0px;
		border-radius: 0;
	}

	.text-aligh-right {
		text-align: left;
	}

	.one_half {
		width: 100% !important;
	}

	.one_half {
		padding-right: 0 !important;
	}

	.one_half.last {
		padding-left: 0 !important;
	}

	.one_third {
		width: 100% !important;
	}

	.one_fourth {
		width: 100% !important;
	}

	.one_fifth {
		width: 100% !important;
	}

	.one_sixth {
		width: 100% !important;
	}

	.two_fifth {
		width: 100% !important;
	}

	.two_fourth {
		width: 100% !important;
	}

	.two_third {
		width: 100% !important;
	}

	.three_fifth {
		width: 100% !important;
	}

	.three_fourth {
		width: 100% !important;
	}

	.four_fifth {
		width: 100% !important;
	}

	.five_sixth {
		width: 100% !important;
	}

	.one_half,
	.one_third,
	.two_third,
	.three_fourth,
	.one_fourth,
	.two_fourth,
	.one_fifth,
	.two_fifth,
	.three_fifth,
	.four_fifth,
	.one_sixth,
	.five_sixth {
		margin-bottom: 30px !important;
		margin-right: 0% !important;
	}

	/*.inner_one_fourth3{
		padding: 0 30px;
	}*/

	.row_padding_top {
		padding-top: 10vw;
	}

	.row_padding_bottom {
		padding-bottom: 10vw;
	}

	.row_padding_left {
		padding-left: 0px;
	}

	.row_padding_right {
		padding-right: 0px;
	}

	.full.row_padding_left {
		padding-left: 30px;
	}

	.full.row_padding_right {
		padding-right: 30px;
	}

	.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 0px;
		padding-right: 0px;
	}

	.full.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 30px;
		padding-right: 30px;
	}

	.clip-effects {
		overflow: hidden;
		clip-path: inset(2% 5% round 30px);
	}

	hr {
		height: 20px;
	}

	.big-title {
		font-size: clamp(48px, 8.5vw, 130px);
		line-height: clamp(48px, 8.5vw, 130px);
	}

	/*.bigger {
		font-size: 20px;
		line-height: 30px;
	}*/

	.trackbar {
		padding: 0 30px;
	}

	.percentage-intro {
		bottom: 30px;
	}

	.clapat-header {
		height: 80px;
	}

	#header-container {
		padding: 0;
		margin: 0 auto;
	}

	.header-middle {
		display: none;
	}

	.clapat-header .button-text {
		display: block !important;
		opacity: 0;
		pointer-events: none;
	}

	#clapat-logo {
		left: 30px;
	}

	.button-wrap.right.menu {
		right: 4px;
	}

	.button-wrap.right.menu.burger-lines {
		right: 0px;
	}

	.clapat-header .button-text {
		display: none;
	}

	.flexnav>li>a {
		font-size: calc(1rem + 5vw);
		line-height: calc(1rem + 6vw);
	}

	.flexnav li a span {
		position: relative;
		display: block;
		-webkit-transform: translateY(-5px);
		transform: translateY(-5px);
	}

	.flexnav>li>.touch-button {
		width: 100%;
		height: calc(1rem + 6vw);
		display: block;
	}

	.clapat-footer {
		height: 80px;
	}

	.footer-button-wrap {
		bottom: 80px;
	}

	#footer-container {
		height: 80px;
		padding: 0 30px;
		margin: 0;
	}

	#footer-container #backtotop.button-wrap.left {
		float: none;
		top: 5px;
		left: 0;
		right: 0;
		position: absolute;
		display: block;
	}

	#backtotop.button-wrap.left .button-text {
		text-align: left;
		float: left;
		display: none;
	}

	#backtotop.button-wrap.left .icon-wrap {
		float: none;
		position: absolute;
		right: auto;
		left: 0;
		margin: auto;
		top: 0px;
		opacity: 0.4;
		-webkit-transition: opacity 0.2s ease-out 0s;
		transition: opacity 0.2s ease-out 0s;
	}

	#backtotop.button-wrap.left:hover .icon-wrap {
		opacity: 1;
	}

	.footer-middle {
		max-width: 1180px;
		/*height: 20px;*/
		height: max-content;
		position: relative;
		margin: 0 auto;
		left: 0;
		width: 100%;
		top: 0px;
		margin-bottom: 15px;
	}

	.copyright {
		margin: 0 auto;
		left: auto;
		right: auto;
		top: 0;
		/*height: 20px;*/
		height: max-content;
		line-height: 20px;
	}

	.clapat-footer.showcase-footer .arrows-wrap {
		right: auto;
		left: -30px;
		float: left;
		margin: auto;
	}

	.socials-wrap {
		width: auto;
		float: none;
		display: table;
		left: auto;
		right: auto;
		top: 0;
		margin: 0 auto;
		height: 20px;
		line-height: 20px;
		transform: translateX(0px) translateY(0px) !important;
		-webkit-transform: translateX(0px) translateY(0px) !important;
	}

	.socials-wrap .socials {
		text-align: center;
		margin: 0 auto;
		height: 20px;
		line-height: 20px;
		display: table;
		width: auto;
	}

	.socials li,
	.socials li a {
		height: 20px;
		line-height: 20px;
		margin: 0 auto;
	}

}


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

	.one_half,
	.one_third,
	.two_third,
	.three_fourth,
	.one_fourth,
	.two_fourth,
	.one_fifth,
	.two_fifth,
	.three_fifth,
	.four_fifth,
	.one_sixth,
	.five_sixth {
		margin-bottom: 20px !important;
		margin-right: 0% !important;
	}

	.row_padding_top {
		padding-top: 12vw;
	}

	.row_padding_bottom {
		padding-bottom: 12vw;
	}

	.row_padding_left {
		padding-left: 0px;
	}

	.row_padding_right {
		padding-right: 0px;
	}

	.full.row_padding_left {
		padding-left: 20px;
	}

	.full.row_padding_right {
		padding-right: 20px;
	}

	.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 0px;
		padding-right: 0px;
	}

	.full.row_padding_all {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 20px;
		padding-right: 20px;
	}

	hr {
		height: 10px;
	}

	.trackbar {
		padding: 0 20px;
	}

	#clapat-logo {
		left: 20px;
	}

	.button-wrap.right.menu {
		right: -6px;
	}

	.button-wrap.right.menu.burger-lines {
		right: -10px;
	}

	#footer-container {
		padding: 0px;
		margin: 0;
	}

	.clapat-footer.showcase-footer #footer-container {
		padding: 0px 20px;
	}

	.arrows-wrap {
		left: -10px;
		width: 80px;
	}

	.prev-wrap,
	.next-wrap {
		width: 40px;
	}

	.clapat-footer.showcase-footer .arrows-wrap {
		right: 0;
		left: 0;
		float: none;
		margin: auto;
	}

	.clapat-footer.showcase-footer .arrows-wrap {
		width: 100%;
	}

	.clapat-footer.showcase-footer .prev-wrap,
	.clapat-footer.showcase-footer .next-wrap {
		width: 60px;
	}

	.clapat-footer.showcase-footer .footer-middle {
		top: 0px;
	}

	.clapat-footer.showcase-footer .showcase-subtitles-wrap {
		left: 0;
	}

	.clapat-footer.showcase-footer .socials-wrap {
		display: none;
	}

	.button-text {
		display: none;
	}

	#main-page-content .button-text,
	#hero .button-text {
		display: block;
	}
}

@media only screen and (max-width: 767px) and (orientation: landscape) {

	#rotate-device {
		display: block;
	}
}


/*--------------------------------------------------
	08. Projects page
---------------------------------------------------*/
.hero-details {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 50%;
	max-width: 550px;
	height: auto;
	background-color: rgba(0, 0, 0, 0.3);
	padding: 25px;
	margin-bottom: 150px;
	border-radius: 5px;
}

.hero-details h2 {
	color: #fff;
	font-size: 1.5rem;
	margin-bottom: 5px;
}

.hero-details p {
	color: #fff;
	font-size: 1rem;
	margin: 0;
	display: inline-flex;
	width: 100%;
}

.hero-details p span:first-child {
	width: 50%;
	text-align: left;
}

.hero-details p span:nth-of-type(2) {
	width: 50%;
	text-align: right;
}

.project-link {
	color: #FFFFFF;
}

.padding-lat-20 {
	padding-right: 20px;
	padding-left: 20px;
}

.project-desc {
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
}

.project-desc-col {
	flex-basis: 48%;
	box-sizing: border-box;
}

@media all and (max-width: 767px) {
	.project-desc {
		flex-basis: 100%;
	}

	/* Galerie de projet : 3 colonnes → 1 colonne */
	.zoom-wrapper-gallerybis {
		flex-wrap: wrap;
		padding-top: 0px!important;
	}

	.zoom-wrapper-gallerybis li {
		width: 100%;
		max-width: 100%;
	}
	.zoom-wrapper-gallerybis li figure.zoom-img-wrapper{
		padding-top: 25px;
		background-color:transparent;
	}

	/* hero-details : pleine largeur sur mobile */
	.hero-details {
		width: 85%;
	}

	/* project-desc : 2 colonnes → 1 colonne */
	.project-desc-col {
		flex-basis: 100%;
	}

	/* Étapes du processus : max-height plus grande sur mobile
	   (texte plus long une fois les colonnes empilées) */
	.home-steps .flex-list:hover > span.secondary-font {
		/*max-height: 600px;*/
		max-height: max-content;
	}

	/* Slider témoignages : hauteur fixe → auto pour que le blockquote
	   ne soit pas tronqué sur petit écran.
	   !important nécessaire pour écraser la hauteur inline fixée par le JS
	   du carousel à l'initialisation. */
	.small-looped-carousel .clapat-slider,
	.small-looped-carousel .clapat-slider-viewport,
	.small-looped-carousel .clapat-slide,
	.slide-quote {
		height: auto !important;
	}

	/* Problème de hauteur du viewport sur mobile :
	   showcase.css définit .clapat-slide:not(:first-child) { position:absolute }
	   → ces slides sont hors du flux normal → le viewport mesure seulement la
	   hauteur du 1er slide (texte court). Le 2e slide (blockquote plus long)
	   déborde et est coupé par overflow:hidden du .clapat-slider.
	   Solution : CSS grid overlay → tous les slides dans la même cellule →
	   hauteur de la row = hauteur du slide le plus grand → plus de coupure.
	   Le JS carousel (transforms translateX) fonctionne identiquement car
	   tous les slides démarrent à x=0 comme avec le positionnement absolu. */
	.small-looped-carousel .clapat-slider-viewport {
		display: grid;
		grid-template-columns: 100%;
	}
	.small-looped-carousel .clapat-slide {
		grid-row: 1;
		grid-column: 1;
		position: relative;
	}

	/* .clapat-pagination est position:absolute; bottom:0; height:40px; z-index:20
	   Elle chevauche le bas de .slide-quote et masque le <cite>.
	   On ajoute un padding-bottom suffisant pour sortir le cite de cette zone. */
	.slide-quote {
		padding-bottom: 75px;
	}

	/* Section savoirfaires — pleine largeur sur mobile
	   .one_fourth2 reste à width:50% (la règle max-width:1025px ne le modifie
	   pas), on le force à 100% ici.
	   .savoirfaire-text sont des spans inline : display:block les rend pleine
	   largeur dans le .landing-intro-wrapper.
	   .inner_one_fourth3 reste right-aligned à 50% jusqu'à 1025px ; on le
	   passe à 100% et on annule le margin-left:auto. */
	.one_fourth2 {
		width: 100%!important;
	}
	.savoirfaire-text {
		display: block;
		width: 100%!important;
	}
	.one_fourth3 .inner_one_fourth3 {
		width: calc(100% - 60px)!important;
		margin-left: 0;
		margin-right: 0;
		padding: 0 30px;
	}
	.savoirfaire-text .category-protfolio {
		font-size: calc(1rem + 8vw);
	}
	.above-email {
		display:none;
	}
}
@media all and (max-width: 479px) {
	.savoirfaire-text .category-protfolio {
		font-size: calc(1rem + 6vw);
	}
}
@media all and (max-width: 430px) {
	.snap-slider-captions .slide-subtitle {
		display: none;
	}
}
@media all and (max-width: 330px) {
	.slide-quote {
		padding-bottom: 75px;
	}
	.button-border .ajax-link span{
		font-size: 0.7rem!important;
		line-height: 35px !important;
	}
}

.zoom-wrapper-gallerybis {
	align-items: center;
	padding-top: 25px;
}

/*--------------------------------------------------
	09. 404
---------------------------------------------------*/
.notfound-container {
	margin: 10px auto;
	max-width: 600px;
	text-align: center;
}

.notfound-container h1 {
	margin: 30px 0;
	font-size: 4em;
	line-height: 1;
	letter-spacing: -1px;
}

/*--------------------------------------------------
	10. Page titles & background colors
---------------------------------------------------*/
.green-color {
	color: var(--color-brand-green);
}
.green-color-hover:hover {
	color: var(--color-brand-green-light);
}

.blue-color {
	color: var(--color-brand-blue);
}
.blue-color-hover:hover {
	color: var(--color-brand-blue-light);
}

.red-color {
	color: var(--color-brand);
}
.red-color-hover:hover {
	color: var(--color-brand-hover);
}

.dark-red-background {
	background-color: var(--color-brand);
}

/*--------------------------------------------------
	11. About page
---------------------------------------------------*/
.about-page .about-page-inner {
	background: #FFFFFF;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--color-brand-tan) 50%, var(--color-brand-tan) 100%);
}

.about-values-titles {
	top: 0px;
	/*position: fixed !important;*/
	width: 100%;
	/*margin-top: 100px;*/
	padding-bottom: 15vh;
}

.about-values-titles .about-values-label{
	font-size: var(--font-size-medium);
    line-height: var(--font-size-large);
    font-weight: 400;
    margin-bottom: 10px;
}

ul.team-list-captions {
	padding-bottom: 0px;
}

ul.team-list-captions li {
	padding-bottom: 0px;
}

ul.team-list-captions li h2 {
	font-family: 'LEMONMILK-Regular', sans-serif;
}

ul.team-list-captions li small {
	display: block;
	font-size: x-large;
	letter-spacing: normal;
	color: gray;
	line-height: normal;
}

@media only screen and (max-width: 767px) {
	ul.team-list-captions li small {
		font-size: small;
	}
	.team-list-captions>li {
		display: inline;
	}

	.tml-title {
		position: relative;
		bottom: unset;
		padding-bottom: 25px;
	}

	.team-list-images {
		width: 100%;
		position: relative;
		left: auto;
	}
}

.above-about-title {
	font-size: x-large;
}

ul.team-list-images {
	height: 100%;
	max-height: 780px;
}
ul.team-list-images li{
	height: 100%;
}

ul.flex-lists-wrapper {
	font-size: var(--font-size-large);
}

ul.flex-lists-wrapper li.flex-list {
	flex-direction: column;
	align-items: center;
	pointer-events: auto;
}

/* Section "Les étapes de mon processus architectural"
   Centrage vertical : span 1 seul au repos, ensemble au survol.
   La span.secondary-font doit occuper zéro hauteur quand masquée
   (opacity:0 seul dans shortcodes.css laisse l'espace, ce qui décale span 1). */
.home-steps .flex-list > span.secondary-font {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	margin-top: 0;
	transition: max-height 0.4s ease, opacity 0.3s ease, margin-top 0.3s ease;
}

/* Au survol : span 2 se déplie, l'ensemble (span1 + span2) reste centré
   grâce aux padding symétriques (35px) de la li */
.home-steps .flex-list:hover > span.secondary-font {
	/*max-height: 300px;*/
	max-height: max-content;
	opacity: 1;
	margin-top: 15px;
}

ul.flex-lists-wrapper li.flex-list+span:first-of-type {
	margin-bottom: 15px;
}

ul.flex-lists-wrapper li.flex-list+span:nth-of-type(2) {
	width: 85%;
	opacity:0;
	transition: opacity 0.3s;
	
}
ul.flex-lists-wrapper li.flex-list:hover+span:nth-of-type(2) {
	opacity:1;
}

.category-protfolio {
	position: relative;
	text-decoration: none;
}

.category-protfolio::before {
	background: hsl(213.68, 24.26%, 53.92%);
	content: "";
	inset: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.5s ease-in-out;
	z-index: -1;
}

.category-protfolio:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}

ul li .category-protfolio+small {
	display: block;
	font-size: x-large;
	letter-spacing: normal;
	color: dimgray;
	line-height: normal;
}

/*--------------------------------------------------
	12. Contact page
---------------------------------------------------*/
#my-form {
	color: #FFFFFF;
}

#my-form label {
	margin-top: 20px;
	text-align: left;
	display: block;
}

#my-form input:not([type='checkbox']),
#my-form textarea {
	width: 100%;
	padding: 10px;
	font-family: inherit;
}
#my-form input[type='checkbox'] {
	width: auto;
    height: auto;
}
#my-form input::placeholder {
	color: lightgray;
}

#my-form-button {
	padding-right: 20px;
	padding-left: 20px;
	position: relative;
	text-decoration: none;
}

#my-form-button:hover {
	color: #000;
	border-color: #FFF;
}

#my-form-button::before {
	background: hsl(0, 0%, 100%);
	content: "";
	inset: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.5s ease-in-out;
	z-index: -1;
}

#my-form-button:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}

.box-icon i {
	color: #FFFFFF;
}

.box-icon-content {
	font-size: 18px;
	line-height: 36px;
	font-weight: 400;
	letter-spacing: -0.03vw;
}

/*--------------------------------------------------
	13. Portfolio page
---------------------------------------------------*/
.slide-caption2 {
	z-index: 10;
	position: absolute;
	left: 0px;
	top: 0;
	height: 100%;
	width: 100%;
	box-sizing: border-box;
	padding: 25px 30px;
	cursor: default;
	pointer-events: none;
	text-align: left;
	opacity: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	-webkit-transition: all 0.15s ease-out 0s;
	transition: all 0.15s ease-out 0s;
}

.slide-caption .slide-title,
.slide-caption .slide-cat {
	color: #FFFFFF;
}

.slide-caption .slide-title span,
.slide-caption .slide-cat span {
	background-color: rgba(0, 0, 0, 0.3);
	border-radius: 5px;
	padding-right: 20px;
	padding-left: 20px;
}

.slide-caption .slide-date {
	background-color: rgba(0, 0, 0, 0.3);
}
@media all and (max-width: 430px) {
	.showcase-portfolio .slide-caption .slide-cat {
		display: none;
	}
}

/*--------------------------------------------------
	14. Home page
---------------------------------------------------*/
.home-portfolio-link{
	color: var(--color-brand-blue)!important;
}
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

img.black-logo {
	max-width: 50vw!important;
}

img.baseline {
	max-width: 800px;
    width: 95vw;
}

#hero-interaction {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
}

#hero-interaction .hero-column {
	display: flex;
	flex-direction: column;
	flex-basis: 100%;
	flex: 1;
}

.category-protfolio {
	position: relative;
	text-decoration: none;
}

.category-protfolio::before {
	/*background: hsl(0, 0%, 100%);*/
	content: "";
	inset: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.5s ease-in-out;
	z-index: -1;
}

.category-protfolio:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}

.savoirfaires {
	display: flex;
	width: 100%;
	flex-direction: row;
}

.landing-intro-wrapper,
.one_fourth2 {
	flex: 1;
	width: 50%;
}

.one_fourth2,
.one_fourth3 {
	align-self: flex-end;
}

.one_fourth2 .landing-video-disabled.content-timeline-disabled {
	width: 50%;
	margin-left: auto;
	margin-right: 0px;

}

.one_fourth3 .inner_one_fourth3 {
	width: 25%;
	margin-left: auto;
	margin-right: 0px;

}

@media all and (max-width: 1025px) {
	.savoirfaires {
		flex-direction: column;
	}

	.hero-title-placeholder+span a {
		padding-top: 60px;
	}

	.landing-intro-wrapper {
		width: 100%;
	}

	.one_fourth2 .landing-video-disabled.content-timeline-disabled {
		width: 100%;
	}

	.one_fourth3 .inner_one_fourth3 {
		width: 50%;
	}
}

.savoirfaires {
	background: var(--color-brand-blue-bg);
	background: linear-gradient(0deg, rgba(212, 222, 234, 1) 0%, rgba(212, 222, 234, 1) 85%, rgba(255, 255, 255, 0) 100%);
}

.savoirfaires .new-hero-title {
	display: contents !important;
}

.savoirfaires .new-hero-title span {
	font-size: calc((1rem + 8vw) / 2);
	line-height: calc((1rem + 10vw) / 2);
}

.savoirfaires .new-hero-title span small {
	font-size: calc((0.5rem + 4vw) / 2);
	line-height: calc((0.5rem + 4vw) / 2);
	letter-spacing: 0.01rem;
	display: block;
	color: dimgray;
}

.home-steps {
	background: var(--color-brand-tan);
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, var(--color-brand-tan) 5%, var(--color-brand-tan) 100%);
	padding-left: 60px;
	padding-right: 60px;
	overflow-x: clip;
}

.home-projects {
	overflow-x: clip;
}
@media only screen and (max-width: 430px) {
	/* Retire le padding du conteneur et le déplace sur les enfants directs,
	   pour que flex-lists-wrapper et snap-slider-holder soient pleine largeur
	   sans recourir à width:100vw (source de scroll horizontal dans smooth-scrollbar) */
	.home-steps {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.home-steps > p,
	.home-steps > h2,
	.home-steps > hr {
		padding-left: 60px;
		padding-right: 60px;
		box-sizing: border-box;
	}
	.home-steps .flex-lists-wrapper {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.home-projects .snap-slider-holder {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}
@media all and (max-width: 330px) {
	.home-steps {
		padding-left: 20px;
		padding-right: 20px;
	}
}

.home-projects .snap-slide-caption .slide-title,
.home-projects .snap-slide-caption .slide-subtitle, 
.slide-caption .slide-title,
.slide-caption .slide-subtitle,
.slide-caption .slide-cat {
	width: auto;
	line-height: var(--font-size-xxlarge);
	margin-top: 14px;
	margin-bottom: 14px;
}

.home-projects .snap-slide-caption .slide-title span,
.slide-caption .slide-title span {
	background-color: rgba(0, 0, 0, 0.3);
	border-radius: 5px;
	padding-right: 20px;
	padding-left: 20px;
	font-family: 'LEMONMILK-Regular', serif;
}

.home-projects .snap-slide-caption .slide-subtitle span,
.slide-caption .slide-subtitle span {
	background-color: rgba(0, 0, 0, 0.3);
	border-radius: 5px;
	padding-right: 20px;
	padding-left: 20px;
}

.about-text {
	padding-bottom: 40px;
	background: var(--color-brand-blue-bg);
}


@media only screen and (max-width: 1466px) {
	span.savoirfaire-text-first {
		padding-top: 40px;
	}
}
@media only screen and (max-width: 1025px) {
	span.savoirfaire-text-first {
		padding-top: 40px;
	}
}
@media only screen and (max-width: 767px) {
	span.savoirfaire-text-first {
		padding-top: 50px;
	}
}
@media only screen and (max-width: 479px) {
	span.savoirfaire-text-first {
		padding-top: 50px;
	}
}
/*--------------------------------------------------
	15. Category page
---------------------------------------------------*/
h1.category-page {
	font-size: calc(1rem + 8vw);
	line-height: calc(1rem + 10vw);
}

/*--------------------------------------------------
	16. Footer
---------------------------------------------------*/
.footer-middle .copyright, .socials-wrap {
	font-size: 12px;
}
ul.socials {
	font-size: 16px;
}

/*--------------------------------------------------
	17. Responsive adjustments
---------------------------------------------------*/
.socials-icon, .socials-text {
    display: none;
}

.socials-wrap .socials li {
	opacity: 1;
    list-style: none;
}

#footer-container {
    height: 80px;
    padding: 0 30px;
    margin: 0;
}
.footer-middle {
    max-width: 1180px;
    height: 20px;
    position: relative;
    margin: 0 auto;
    left: 0;
    width: 100%;
    top: 0px;
    margin-bottom: 15px;
}
@media all and (max-width: 330px) {
	.clapat-footer, #footer-container {
        height: 150px;
    }
	.footer-middle {
		height: 60px;
	}
}	
.socials-wrap {
    width: auto;
    float: none;
    display: table;
    left: auto;
    right: auto;
    top: 0;
    margin: 0 auto;
    height: 40px;
    line-height: 40px;
    transform: translateX(0px) translateY(0px) !important;
    -webkit-transform: translateX(0px) translateY(0px) !important;
}
.socials-wrap .socials {
        text-align: center;
        margin: 0 auto;
        height: 40px;
        line-height: 40px;
        display: table;
        width: auto;
}
ul.socials {
    font-size: 22px;
}
.socials li, .socials li a {
    height: 40px;
    line-height: 40px;
	width: 50px;
}

dt .link {
	font-size: var(--font-size-large);
}

.privacy-policy {
	max-width: 1320px!important;
}

.privacy-policy p{
	font-family: 'WalkwayBold', serif;
    font-style: normal;
    font-weight: 400;
}

/* Page Navigation — espacement symétrique ::before / ::after autour du titre.
   head.html définit padding-top: 1vw sur .next-hero-title (espace entre le
   bord haut et le texte principal). ::before est ancré top:0 → l'espace avant
   le titre = padding-top = 1vw. ::after est ancré bottom:0 → l'espace après
   le titre = padding-bottom. On l'aligne sur 1vw pour une symétrie parfaite. */
.next-hero-title {
    padding-bottom: 1vw;
}

/*@media only screen and (max-width: 1125px) and (orientation:portrait) {*/
/*@media only screen and (max-width: 1025px) {*/
/*@media only screen and (hover: none) and (pointer: coarse){*/
/*@media only screen and (orientation:portrait){*/
@media only screen and (-webkit-min-device-pixel-ratio: 2.625) and (max-width: 430px) {
	 html, body {
    	font-size: 18px;
	}
	p {
    	font-size: var(--font-size-large);
		line-height: var(--font-size-xlarge);
	}
	.bigger {
    	font-size: var(--font-size-xxxlarge);;
    	line-height: var(--font-size-xxxxlarge);;
	}
	h2 {
		font-size: calc(1rem + 6vw);	
		line-height: calc(1rem + 7vw);
	}
	ul.flex-lists-wrapper {
    	font-size: var(--font-size-xlarge);
	}
	ul.flex-lists-wrapper li {
    	line-height: var(--font-size-xxlarge);
	}
	.flexnav>li>a {
        font-size: calc(1rem + 6vw);
        line-height: calc(1rem + 8vw);
    }
	.snap-slider-captions .slide-title, 
	.snap-slider-captions .slide-subtitle, 
	.showcase-portfolio .slide-caption .slide-title, 
	.showcase-portfolio .slide-caption .slide-cat, 
	.showcase-portfolio .slide-caption .slide-title, 
	.showcase-portfolio .slide-caption .slide-cat {
    	font-size: var(--font-size-xxlarge);
	}
	.address-phone-section .box-icon-content, 
	.email-section .box-icon-content{
		font-size: var(--font-size-xxxxlarge);
		line-height: var(--font-size-xxxxxlarge);
	}
	#copy-email {
    	font-size: calc(1rem + 5vw);
    	line-height: calc(1rem + 5vw);
	}
	.next-hero-title::before,
	.next-hero-title::after {
    	font-size: 12px;
		line-height: 16px;
	}
	.footer-middle .copyright, .socials-wrap {
		font-size: var(--font-size-large);
	}
	ul.socials {
		font-size: var(--font-size-xxlarge);
	}
	/* Home page*/
	#clapat-logo img {
		width: 160px;
		height: auto;
		max-width: none !important;
	}
	#burger-wrapper {
		width: 50px;
		height: 50px;
	}
	.burger-lines #menu-burger {
    	width: 24px;
    	height: 33px;
		margin-top: 1px;
	}
	.savoirfaires .new-hero-title span {
		font-size: calc((1rem + 14vw) / 2);
    	line-height: calc((1rem + 16vw) / 2);
	}
	.landing-intro-wrapper, .one_fourth2 {
		padding-top:25px;
    	width: 100%;
	}
	.one_fourth3 .inner_one_fourth3 {
        width: calc(100% - 80px);
		padding-left: 40px;
        padding-right: 40px;
    }
	.button-border {
    	height: 60px;
		line-height: 60px;
		border-radius: 60px!important;
		min-width: 180px;
		font-size: var(--font-size-large);
	}
	.snap-slide-caption {
		position: relative;
		display: flex;
		justify-content: space-between;
		margin: 0;
		text-align: left;
		width: 100%;
		height: auto;
		box-sizing: border-box;
		padding: 0;
		opacity: 1;
		-webkit-transition: opacity 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out;
	}
	.snap-slider-captions {
        align-items: flex-end;
    }
	.snap-slider-thumbs-wrapper {
        width: 40vw;
        height: 40vw;
    }
	.slide-quote {
    	height: 450px;
	}
	.slide-quote blockquote {
		font-size: var(--font-size-xlarge);
	}
	/* Portfolio page*/
	.showcase-portfolio .clapat-item {
        width: calc(100% - 10px);
    }
	/* Project page */
	.one_half {
        width: 100%!important;
    }
	.project-desc-col {
		flex-basis: 100%;
	}
	/* About page */
    .team-list-wrapper {
        position: relative;
        box-sizing: border-box;
        width: calc(100% - 60px);
        margin: 0 auto;
        overflow: hidden;
    }
	.team-list-captions {
        padding-left: 0;
	}
	.team-list-images {
        width: 100%;
		height:auto;
        position: relative;
        left: auto;
		margin-bottom: 30px;
    }
	ul.team-list-images {
		max-height: 780px;
	}
	.pinned-lists li {
		font-size: calc(1rem + 5vw);
		line-height: calc(1rem + 6vw);
	}
	.accordion .accordion-content {
		font-size: var(--font-size-xlarge);
		line-height: var(--font-size-xxlarge);
	}
}

@media only screen and (min-width: 1025px) {
	.socials-wrap {
		position: relative;
		float: none;
        display: block;
		color: #000;
		width: 240px;
		height: 160px;
		box-sizing: border-box;
		pointer-events: initial;
		transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
	}
	.socials-wrap .socials {
		display: inline-block;
		width: 100%;
		text-align: center;
	}
	.socials li {
		margin-right: 0px;
		margin-left: 10px;
		list-style: none;
		margin-bottom: 0;
		line-height: 40px;
		position: relative;
		display: inline-flex;
		justify-content: center;
		align-items: center;
		height: 40px;
		width: 40px;
		z-index: 2;
		-webkit-transition: background 0.4s ease-in-out 0s;
		transition: background 0.4s ease-in-out 0s;
		transform: translateY(0px)!important;
    	-webkit-transform: translateY(0px)!important;
	}
}

/*------------------------------------------------------------------
  Formspree widget overrides — z-index + safe-area iOS
-------------------------------------------------------------------*/
#formbutton-button {
	bottom: calc(20px + env(safe-area-inset-bottom)) !important;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px !important;
}
#formbutton-buttonImage {
	transform: scaleX(-1);
}

.formbutton-container {
	padding-bottom: env(safe-area-inset-bottom);
}

/*------------------------------------------------------------------
  Footer mobile — empilage copyright / socials
-------------------------------------------------------------------*/
@media only screen and (max-width: 580px) {
	.clapat-footer {
		height: auto !important;
		overflow: visible !important;
		padding: 15px 0;
	}
	#footer-container {
		position: relative !important;
		bottom: auto !important;
		height: auto !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		gap: 8px;
		padding: 0 20px !important;
		margin: 0 !important;
	}
	.footer-middle {
		width: 100% !important;
		height: auto !important;
		margin-bottom: 0 !important;
	}
	.footer-middle .copyright,
	.copyright {
		font-size: 9px !important;
		line-height: 14px !important;
		height: auto !important;
		overflow: visible !important;
	}
	.socials-wrap {
		transform: none !important;
		-webkit-transform: none !important;
	}
}

/* Override ComplyDog inline border on hr */
hr { border: none !important; }

br.mobile-only { display: none; }
@media only screen and (max-width: 430px) {
	br.mobile-only { display: inline; }
	.word-architectural { font-size: 0.72em; }
}

/*--------------------------------------------------
	Page Navigation
---------------------------------------------------*/

		#page-nav {
			height: auto;
			width: 100%;
			color: #000;
			position: relative;
			margin-bottom: 0;
			opacity: 0;
			overflow: hidden;
		}

		#page-nav .next-hero-title::after {
			left: 0;
			right: 0;
			width: 100%;
			text-align: center;
		}

		.page-nav-wrap {
			position: relative;
			left: 0;
			bottom: 0;
			width: 100%;
			height: 100%;
			z-index: 3;
			transform: translateY(0px);
			-webkit-transform: translateY(0px);
		}

		.page-nav-caption {
			display: flex;
			align-items: center;
			justify-content: flex-start;
			width: 100%;
			margin: 0 auto;
			padding-top: 120px;
			padding-bottom: 0px;
			margin: 0 auto;
			height: calc(100vh - 120px);
			top: 0;
			transform: translateY(-20%);
			opacity: 0;
			position: relative;
			box-sizing: border-box;
		}

		.page-nav-caption.text-align-center {
			justify-content: center;
			text-align: center;
		}

		.page-nav-caption.text-align-right {
			justify-content: flex-end;
			text-align: right;
		}

		#page-nav .inner {
			display: block;
			width: auto;
			height: auto;
			margin-top: 60px;
			margin-bottom: 100px;
		}

		.next-hero-title {
			font-size: calc(1rem + 12vw);
			line-height: calc(1rem + 14vw);
			font-weight: 600;
			position: relative;
			display: block;
			width: auto;
			/*color: #000;*/
			margin-bottom: 0px;
			letter-spacing: -0.4vw;
			padding-bottom: 1vw;
		}

		.light-content .next-hero-title {
			color: #fff;
		}

		.next-hero-title::before {
			content: attr(data-infoTextBefore);
			font-size: 16px;
			line-height: 20px;
			font-weight: 400;
			width: auto;
			height: 20px;
			position: absolute;
			-webkit-transition: all 0.3s ease-out 0s;
			transition: all 0.3s ease-out 0s;
			letter-spacing: 0;
			opacity: 0.6;
			pointer-events: none;
			left: 0;
			top: -20px;
			width: 100%;
			text-align: center;
		}

		.next-hero-title::after {
			content: attr(data-infoTextAfter);
			font-size: 12px;
			line-height: 16px;
			font-weight: 400;
			width: auto;
			max-width: 100%;
			height: auto;
			position: absolute;
			right: 0;
			bottom: -20px;
			top: auto;
			-webkit-transition: all 0.3s ease-out 0s;
			transition: all 0.3s ease-out 0s;
			letter-spacing: 0;
			opacity: 0.6;
			pointer-events: none;
		}

		.show-loader .next-hero-title::before {
			opacity: 0;
			left: -150px;
		}

		.show-loader .next-hero-title::after {
			opacity: 0;
			right: -150px;
		}

		.next-hero-title span {
			display: block;
		}

		.next-hero-subtitle {
			font-size: 24px;
			line-height: 32px;
			font-weight: 400;
			position: relative;
			display: block;
			overflow: hidden;
			color: #000;
			margin-top: 40px;
			opacity: 0.6;
		}

		.light-content .next-hero-subtitle {
			color: #fff;
		}

		.next-hero-subtitle span {
			display: block;
		}


/*--------------------------------------------------
	Project Page Navigation
---------------------------------------------------*/

		#project-nav {
			height: 100vh;
			width: 100%;
			color: #fff;
			position: absolute;
			margin-bottom: 0;
			bottom: -100vh;
			overflow: hidden;
		}

		#project-nav.pinned-nav-caption {
			height: 200vh;
			bottom: -200vh;
		}

		.next-project-wrap {
			width: 100%;
			margin: 0 auto;
			height: 100%;
			position: absolute;
			box-sizing: border-box;
			opacity: 1;
			z-index: 10;
		}

		#project-nav.pinned-nav-caption .next-project-wrap {
			height: 50%;
		}

		/* Next Project Hero Image */

		.next-project-image-wrapper {
			position: relative;
			width: 100vw;
			height: 100%;
			top: 0;
			left: 0;
			opacity: 1;
			overflow: hidden;
		}

		.next-project-image-wrapper.temporary {
			position: fixed;
		}

		.next-project-image-wrapper.active {
			opacity: 1;
		}

		.next-project-image {
			position: absolute;
			opacity: 1;
			top: 0;
			left: 0;
			right: 0;
			margin: 0 auto;
			height: 100%;
			width: 100%;
		}

		#project-nav .next-project-image-effects {
			top: -2%;
			-webkit-transform: scale(1.04);
			transform: scale(1.04);
			filter: blur(3px);
		}

		.load-project-thumb-with-title .next-project-image {
			z-index: 10;
		}

		.next-project-image.temporary {
			top: 0px !important;
		}

		.next-project-image.visible {
			opacity: 1 !important;
			top: 0px !important;
			filter: blur(0px) !important;
			-webkit-transform: scale(1.02) rotate(0) translateY(0) !important;
			transform: scale(1.02) rotate(0) translateY(0) !important;
		}

		.next-project-image-bg {
			position: absolute;
			top: 0;
			left: 0;
			height: 100%;
			width: 100%;
			background-size: cover;
			background-position: center center;
			background-repeat: no-repeat;
			z-index: 1;
			-webkit-transform: scale(1);
			transform: scale(1);
		}

		.next-project-image.visible .next-project-image-bg {
			opacity: 1 !important;
			top: 0 !important;
		}

		/* Next Project Caption */

		#next-project-caption {
			position: absolute;
			display: flex;
			align-items: center;
			justify-content: center;
			text-align: left;
			left: 0;
			right: 0;
			margin: 0 auto;
			width: 100%;
			height: 100%;
			box-sizing: border-box;
			padding-top: 40px;
			padding-bottom: 40px;
		}

		.hero-below-caption #next-project-caption {
			height: auto;
			padding-top: 280px;
			padding-bottom: 160px;
		}

		.next-caption-wrapper {
			position: relative;
			z-index: 10;
			top: 0%;
			opacity: 1;
			width: 100%;
			height: 100%;
			display: flex;
			align-items: flex-end;
		}

		#project-nav .next-ajax-link-project {
			display: block;
			margin: 0;
			width: 100%;
			height: 100%;
			position: absolute;
			z-index: 10;
			top: 0;
			left: 0;
			pointer-events: none;
		}

		#project-nav.auto-trigger .next-ajax-link-project {
			pointer-events: none;
		}

		#project-nav.active-link .next-ajax-link-project {
			pointer-events: initial;
		}

		.disable-ajaxload #project-nav.auto-trigger .next-ajax-link-project {
			pointer-events: initial;
		}

		.next-caption {
			position: relative;
			width: 100%;
			height: 100%;
			display: flex;
			align-items: flex-end;
		}

		.next-caption .next-hero-title {
			font-size: calc(1rem + 6vw);
			line-height: calc(1rem + 7vw);
			letter-spacing: -0.2vw;
			flex: 0 1 60%;
			max-width: 60%;
			text-align: left;
		}

		#project-nav .next-hero-title div {
			position: relative;
			display: block;
			overflow: hidden;
			mask-image: linear-gradient(#0003, black 5%, black 95%, #0003 100%);
			-webkit-mask-image: linear-gradient(#0003, black 5%, black 95%, #0003 100%);
		}

		#project-nav .next-hero-title span {
			opacity: 1;
		}

		#project-nav .next-hero-subtitle {
			display: flex;
			justify-content: flex-end;
		}

		#project-nav .next-hero-subtitle span {
			display: block;
			width: auto;
			-webkit-text-fill-color: rgba(0, 0, 0, 0.2);
			-webkit-background-clip: text;
			background-repeat: no-repeat;
			background-image: linear-gradient(currentColor, currentColor);
			background-size: 0% 100%;
		}

		.light-content #project-nav .next-hero-subtitle span {
			-webkit-text-fill-color: rgba(255, 255, 255, 0.2);
		}

		.temporary-hero .next-hero-title span {
			opacity: 1 !important;
			-webkit-transform: translateY(0%) !important;
			transform: translateY(0%) !important;
		}

		.next-caption .next-hero-subtitle {
			flex: 0 1 40%;
			max-width: 40%;
			text-align: right;
		}

		/* Next Hero Title and Subtitle Color */

		#project-nav .next-hero-title,
		#project-nav .next-hero-subtitle {
			color: #000;
		}

		.light-content #project-nav .next-hero-title,
		.light-content #project-nav .next-hero-subtitle {
			color: #fff;
		}

		/* Next Project Counter */

		.next-hero-counter {
			position: absolute;
			height: 20px;
			width: 30px;
			text-align: right;
			top: 6px;
			right: -45px;
			overflow: hidden;
			opacity: 1;
			color: #000;
		}

		.next-hero-counter span {
			position: absolute;
			display: block;
			font-size: 14px;
			font-weight: 500;
			line-height: 20px;
		}

		.change-header .next-hero-counter {
			color: #000;
		}

		.light-content .next-hero-counter {
			color: #fff;
		}

		.light-content .change-header .next-hero-counter {
			color: #000;
		}

		.dark-content .change-header .next-hero-counter {
			color: #fff;
		}

		/* Next Project Progress Bar */

		.next-hero-progress {
			position: absolute;
			top: 0;
			right: 0;
			height: 6px;
			width: 100%;
			z-index: 100;
			display: flex;
			justify-content: center;
			display: none;
		}

		.next-hero-progress span {
			position: absolute;
			height: 6px;
			width: 0;
			background-color: #000;
		}

		.change-header .next-hero-progress span {
			background-color: #000;
		}

		.light-content .next-hero-progress span {
			background-color: #fff;
		}

		.light-content .change-header .next-hero-progress span {
			background-color: #000;
		}

		.dark-content .change-header .next-hero-progress span {
			background-color: #fff;
		}

		/* Next Project All Works Button */

		.all-works {
			position: absolute;
			top: 20px;
			left: 50%;
			-webkit-transform: translateX(-50%);
			transform: translateX(-50%);
			width: auto;
			margin: 0 auto;
			margin-top: 25px;
			display: table;
			z-index: 100;
		}

		.all-works span,
		.all-works span::before {
			padding: 0 5px;
		}

		#project-nav.change-header .all-works,
		#project-nav.change-header .all-works .link-text {
			color: #000;
		}

		.light-content #project-nav .all-works,
		.light-content #project-nav .all-works .link-text {
			color: #fff;
		}

		.light-content #project-nav.change-header .all-works,
		.light-content #project-nav.change-header .all-works .link-text {
			color: #000;
		}

		.dark-content #project-nav.change-header .all-works,
		.dark-content #project-nav.change-header .all-works .link-text {
			color: #fff;
		}


/*--------------------------------------------------
	Temporary Hero
---------------------------------------------------*/

		.temporary-hero {
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 99999;
			pointer-events: none;
			z-index: 10;
		}

		.temporary-hero .outer {
			width: 100%;
			padding-top: 40px;
			padding-bottom: 40px;
			height: 100%;
			position: relative;
			margin: 0 auto;
			box-sizing: border-box;
			z-index: 10;
			display: flex;
			align-items: center;
			justify-content: center;
			text-align: center;
		}

		.hero-below-caption .temporary-hero .outer {
			height: auto;
			padding-top: 280px;
			padding-bottom: 160px;
		}

		.temporary-hero .outer.text-align-center {
			justify-content: center;
			text-align: center;
		}

		.temporary-hero .outer.text-align-right {
			justify-content: flex-end;
			text-align: right;
		}

		.temporary-hero .inner {
			display: block;
			width: 100%;
			height: 100%;
		}

		.temporary-hero .inner .next-caption {
			position: relative;
			width: 100%;
			height: 100%;
			display: flex;
			align-items: flex-end;
		}

		.temporary-hero .inner .next-caption .next-hero-title {
			font-size: calc(1rem + 6vw);
			line-height: calc(1rem + 7vw);
			letter-spacing: -0.2vw;
		}
