/* 
Theme Name: Antonacci - Studio MA - Elementor Child  
Theme URI: https://github.com/elementor/hello-theme/
Description: Antonacci Elementor Child is a child theme of Hello Elementor, created by Studio MA team
Author: Studio MA
Author URI: https://manlioma.it/
Template: hello-elementor
Version: 1.0.1
Text Domain: studio-ma
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/* HELPERS */

.fl{float: left;}
.fr{float: right;}
.no_display{display:none!important;}
.hidden{width: 0px;height: 0px;visibility: hidden;opacity: 0;overflow: hidden;}
.muto{line-height: 0px;margin: 0px;padding: 0px;text-indent: -999px;font-size: 0px;}
.clear{clear: both;}
a.active{border: none;outline:0;}
*:focus {
/*     outline: none!important;border: none!important;outline:0!important;outline-style: none!important; */
}

.wow {
   visibility: hidden;
}
body.blocked{overflow: hidden!important;padding-right: 20px;}
@media all and (min-width: 768px){ 
	.align_right{text-align: right;}
	.align_left{text-align: left;}
}
.align_center{
	text-align: center
}
body, html{
	-webkit-font-smoothing: antialiased; 
}
body{
/*
	overflow-x: hidden;
	overflow-y: auto;
*/
}
.trans{  
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s; 
}

.hyphens_text{
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.text_big{
	font-size: 1.2em;
}
.full-width{
	width: 100%;
	max-width: 100%;
}

body.logged-in .no-log-only{
	display: none;
}
body:not(.logged-in) .log-only{
	display: none;
}

img{
	backface-visibility: hidden;
	max-width: 100%;
	height: auto;
}
table{
	width: 100%;
}
iframe{
	width: 100%
}
a:focus, button:focus{
	outline: none!important;
}

@media (min-width: 768px){
	.picsout_right{
		margin-right: -30px;
	}
	.picsout_left{
		margin-left: -30px;
	}
	.picsout_right_big{
		margin-right: -25%;
	}
	.picsout_left_big{
		margin-left: -25%;
	}
}

.black_overlay:before{
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	background: #000;
	opacity: .33;
}
.white_overlay:before{
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	background: #FFF;
	opacity: .33;
}

/* safari fonts fix */
/*
body{
	font-kerning: none;
	-webkit-text-rendering: optimizeSpeed;
	text-rendering: optimizeSpeed;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}
*/

/* preloader */
/*
#preloader{
    position: fixed;
    top:0;
    z-index: 1000;
    transform: translateZ(200px);
    height:100vh;
    left:0;
    width:100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--e-global-color-1d26dde);
}
*/

/*
.elementor-editor-active #preloader{
display: none;
}

#preloader img {
	width: 180px;
    animation: pulsy .6s infinite alternate;
}
@keyframes pulsy{
    from{
        opacity:0.6;
    }
    to{
        opacity:1
    }
}
*/

/*  typography - scale 1.333 */

html {font-size: 112.5%;
	max-width: 100%;
	overflow-x: hidden;
} /*18px*/

@media(max-width: 1200px){
	html {font-size: 100%;} /*16px*/
}
@media(max-width: 768px){
	html {font-size: 90%;} /*16px*/
}

body {
  color: var(--e-global-color-text);
}

p {
}


/* colors */


/*  section antonacci cut */

.bottomcut{
	-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 73px), 0% 100%);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 73px), 0% 100%);
        z-index: 2;
}
.topcut{
	-webkit-clip-path: polygon(0 73px, 100% 0, 100% 100%, 0% 100%);
    clip-path: polygon(0 73px, 100% 0, 100% 100%, 0% 100%);
        z-index: 2;
}

@media(max-width:768px){
	
	.bottomcut{
		-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 23px), 0% 100%);
	    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 23px), 0% 100%);
	    z-index: 2;
	}
	.topcut{
		-webkit-clip-path: polygon(0 23px, 100% 0, 100% 100%, 0% 100%);
	    clip-path: polygon(0 23px, 100% 0, 100% 100%, 0% 100%);
	    z-index: 2;
	}
	
}


.overgrad{
	position: relative;
}
.overgrad:before{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	background: linear-gradient(179.66deg, rgba(48, 23, 18, 0.9) 8.76%, rgba(48, 23, 18, 0.3) 57.16%, rgba(48, 23, 18, 0.05) 98.84%);
	z-index: 1;
}

.wideImg img{
	aspect-ratio:1920/1080;
	object-fit:cover;
	object-position:center;
}

/*  buttons fix */
span.elementor-button-text {
    margin-bottom: -4px;
}
a.elementor-button {
    text-decoration: none;
}

/* header */
.firstScroll #header{
    background: #FFFAF5;
}
.e-n-menu-content > div{
	background: transparent
}
/* menu colori old */
/*
	.home:not(.firstScroll) #header *,
	.home:not(.firstScroll) #header svg path{
	    color: #FFF;
	    fill:#fff;
	}
	
	#header:has(.e-n-menu-content.e-active) *,
	#header:has(.e-n-menu-content.e-active) svg path,
	#header:has(.e-n-menu-content.e-active) {
	    color: #79242F;
	    fill: #79242F;
	}
	#header:has(.e-n-menu-content.e-active) a:hover,
	#header:has(.e-n-menu-content.e-active) .e-n-menu-title-text:hover,
	#header:has(.e-n-menu-content.e-active) .wpml-ls-link:hover{
		color: var(--e-global-color-secondary)
	}

	
	.home:not(.firstScroll) #header:not(:has(.e-n-menu-content.e-active)) .e-n-menu-title-text:hover,
	.home:not(.firstScroll) #header:not(:has(.e-n-menu-content.e-active)) .wpml-ls-link:hover,
	body:not(.firstScroll):has(#heroPic) #header:not(:has(.e-n-menu-content.e-active)) .e-n-menu-title-text:hover,
	body:not(.firstScroll):has(#heroPic) #header:not(:has(.e-n-menu-content.e-active)) .wpml-ls-link:hover{
		color: #f8ebdf
	}
	
	#header .active-menu-item span.e-n-menu-title-text, 
	#header .activeitem, 
	#header .activeitem *{
		color: #420f14
	}
	#header .active-menu-item svg{
		fill: #420f14
	}
*/
/* 	fine menu colori old */

/* nuovi colori header */
	/* ========= TOKEN COLORI ========= */
	:root{
	  /* LIGHT */
	  --menu-light:        #fff;
	  --menu-light-hover:  #FFFAF5;
	  --menu-light-active: #FFFAF5;
	
	  /* DARK */
	  --menu-dark:        #79242F;
	  --menu-dark-hover:  #420f14;
	  --menu-dark-active: #420f14;
	}
	
	/* ========= BASE: dark di default ========= */
	#header{
	  --menu-fg:         var(--menu-dark);
	  --menu-fg-hover:   var(--menu-dark-hover);
	  --menu-fg-active:  var(--menu-dark-active);
	}
	
	/* ========= STILI MENU GENERICI ========= */
	#header *,
	#header svg path{
	  color: var(--menu-fg);
	  fill: var(--menu-fg);
	}
	
	#header a:hover,
	#header .e-n-menu-title-text:hover,
	#header .wpml-ls-link:hover{
	  color: var(--menu-fg-hover);
	}
	
	#header .activeitem,
	#header .activeitem *,
	#header nav .current-menu-item > a{
	  color: var(--menu-fg-active);
	}
	
	/* ========= LIGHT MODE ========= */
	/* Attiva se la pagina è la home OPPURE contiene un #heroPic */
	body.home #header,
	body:has(#heroPic) #header{
	  --menu-fg:         var(--menu-light);
	  --menu-fg-hover:   var(--menu-light-hover);
	  --menu-fg-active:  var(--menu-light-active);
	}
	
	/* ========= DARK OVERRIDE ========= */
	/* 1) Quando body ha .firstscroll → dark forzato */
	body.firstScroll #header,
	body:has(#heroPic).firstScroll #header{
	  --menu-fg:         var(--menu-dark);
	  --menu-fg-hover:   var(--menu-dark-hover);
	  --menu-fg-active:  var(--menu-dark-active);
	}
	
	/* 2) Quando megamenu aperto (#header :has(.e-n-menu-content.e-active)) → dark forzato */
	#header:has(.e-n-menu-content.e-active),
	body:has(#heroPic) #header:has(.e-n-menu-content.e-active){
	  --menu-fg:         var(--menu-dark);
	  --menu-fg-hover:   var(--menu-dark-hover);
	  --menu-fg-active:  var(--menu-dark-active);
	}


/*  gallery progetto */
.gallery-progetto,
#galPro.gallery-progetto .dce-acf-gallery-grid{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    gap: 80px 20px;
}

.gallery-progetto .gallery-item,
#galPro.gallery-progetto .grid-item {
    display: block;
}

.gallery-progetto .gallery-item img,
#galPro.gallery-progetto .grid-item img {
    display: block;
    width: 100%;
    height: auto;
}

.gallery-progetto .gallery-item:nth-child(3n+1),
#galPro.gallery-progetto .grid-item:nth-child(3n+1) {
    width: 50%!important;
    margin-top: 0;
    flex: 1
}

.gallery-progetto .gallery-item:nth-child(3n+2),
#galPro.gallery-progetto .grid-item:nth-child(3n+2) {
    width: 50%!important;
    margin-top: 80px;
    flex: 1
}

.gallery-progetto .gallery-item:nth-child(3n),
#galPro.gallery-progetto .grid-item:nth-child(3n) {
    width: 100%!important;
    margin-top: 0;
        flex: 0 0 100%;
}

.galleryGrid .gallery-item:nth-child(2),
.galleryGrid .grid-item:nth-child(2){
	margin-top: 40px;
}
.galleryGrid .gallery-item:nth-child(3),
.galleryGrid .grid-item:nth-child(3){
	margin-top: 80px;
}
.galleryGrid .gallery-item figcaption{
	opacity: 0;
	position: absolute;
    bottom: 20px;
    left: 0px;
    font-style: normal;
    color: white;
    font-weight: 500;
    text-align: center;
    font-size: 24px;
    z-index: 2;
    width: 100%;
}
.galleryGrid .gallery-item figure{
	position: relative
}
.galleryGrid .gallery-item figure a{
	position: relative;
	display: block;
}
.galleryGrid .gallery-item figure a:after{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top:0;
	background: linear-gradient(180deg, rgba(41, 22, 17, 0.44), rgba(121, 36, 47, 0.9));
	opacity: 0;
	
} 
.galleryGrid .gallery-item:hover figure a:after,
.galleryGrid .gallery-item:hover figcaption{
	opacity: 1;
}


.videoHome:hover .elementor-custom-embed-image-overlay.lazyloaded {
    background-size:115%
}
.videoHome .elementor-custom-embed-image-overlay.lazyloaded {
    transition:all .3s ease-out;
    background-size:110%
}
.videoHome .elementor-custom-embed-image-overlay:before{
    content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top:0;
	background: linear-gradient(180deg, #fff0, #79242F);
	opacity: 0;
    transition:all .3s ease-out
}
.videoHome:hover .elementor-custom-embed-image-overlay:before{
	opacity: 1;
}



/*  menu mobile */

#mobMenu{
	opacity: 0;
	visibility: hidden;
	transition: all .3s ease-out;
	position: fixed;
	top:0;
	left:0px;
	width: 100%;
	height: 100vh;
	z-index: 140;
}
.menu-open #mobMenu{
	opacity: 1;
	visibility: visible;
}
html:has(.menu-open){
	overflow: hidden
}
.menu-open #ham *,
.menu-open:not(firstScroll) #header *{
	fill:#79242F!important;
	stroke: #79242F!important;
}
.menu-open:not(firstScroll) #header #logo svg path{
	fill:#79242F!important;
}
#ham path{
	transition: all .3s ease-out;
	transform-origin: center;
}
.home #ham path{
	stroke:#fff
}
.firstScroll #ham path {
    stroke: #79242F!important;
}
.menu-open #ham path:nth-child(1){
	transform: rotate(45deg) translate(0px, -4px)
}
.menu-open #ham path:nth-child(2){
	transform: rotate(-45deg) translate(0px, 5px)
}

#mobMenu nav li a{
    display: flex;
    justify-content: center;
}
#mobMenu nav .sub-menu li a{
    padding: 8px
}
#mobMenu nav .highlighted path {
    stroke: var(--e-global-color-secondary);
    fill: var(--e-global-color-secondary);
}
#mobMenu .elementor-nav-menu .sub-arrow{
	padding: 5px;
}


/*  filter luxury */
.e-filter-item[aria-pressed="true"] {
	font-weight: 700
}


.facetwp-facet.facetwp-facet-categories_lux.facetwp-type-radio {
    display: flex;
    justify-content: space-evenly;
}

.facetwp-facet.facetwp-facet-categories_lux span.facetwp-counter {
    display: none;
}

.facetwp-facet.facetwp-facet-categories_lux .facetwp-radio,
.facetwp-see-all{
    background: none;
    padding: 0;
    font-weight: 500;
    text-transform: uppercase;
    color: #79242F;
}

.facetwp-facet.facetwp-facet-categories_lux .facetwp-radio.checked,
.facetwp-see-all.checked {
    background: none;
    font-weight: 700;
    color: #2D1510;
}
.facetwp-facet .facetwp-radio:hover{
	color: #420f14!important
}
button.facetwp-see-all{
	border: none;
	padding: 0;
}

._fwp-cat-all .elementor-loop-container.elementor-grid {
    grid-template-columns: repeat(3,1fr);
    grid-gap: 20px;
}
._fwp-cat-all .elementor-loop-container.elementor-grid .e-loop-item > div{
	flex-direction: column;
}
._fwp-cat-all .elementor-loop-container.elementor-grid .e-loop-item > div > div{
	width: 100%;
}
._fwp-cat-all .elementor-loop-container.elementor-grid .e-loop-item img{
	aspect-ratio: 3/4;
}
._fwp-cat-all .elementor-loop-container.elementor-grid .e-loop-item .imago{
	order: -1;
	margin-top: 40px;
}

.archiveGrid .e-loop-item {
    border-right: 1px solid;
    position: relative
}
.archiveGrid .e-loop-item:after {
	content: '';
	position: absolute;
	top: -30px;
	width: 90%;
	left: 5%;
	height: 1px;
	background: black;
    
}
.archiveGrid:not(.twoCol) .e-loop-item:nth-child(-n + 4):after {
	content: none;
}
.archiveGrid.twoCol .e-loop-item:nth-child(-n + 3):after {
	content: none;
}
	
	
.archiveGrid .e-loop-item:nth-child(3n + 1) {
    border-right: 0px solid;
}
.archiveGrid.twoCol .e-loop-item:nth-child(3n + 1) {
    border-right: 1px solid;
}

.archiveGrid.twoCol .e-loop-item:nth-child(2n + 1) {
    border-right: 0px solid;
}





.eventGrid .elementor-page-title {
    display: block;
}
.infiniteScroll button {
    border: 2px solid var(--e-global-color-primary);
}

.teamSlider .swiper-button-prev > svg,
.teamSlider .swiper-button-next > svg{
    display: none;
}
.teamSlider .swiper-button-prev{
	background-image: url(inc/img/arrow-left.svg);
	left: 0px;
    transform: translateX(-120%);
}
.teamSlider .swiper-button-next{
	background-image: url(inc/img/arrow-right.svg);
	right: 0px;
    transform: translateX(120%);
}
.teamSlider .swiper-button-prev,
.teamSlider .swiper-button-next{
	width: 49px;
	height: 49px;
}


button#e-n-tab-title-78938212[aria-selected="true"]:before {
    clip-path: polygon(20px 0, 100% 0%, 100% 100%, 0% 100%);
    content: '';
    background: #F1EAE3;
    position: absolute;
    left: -20px;
    width: 40px;
    height: 100%;
    z-index: 1
}
button#e-n-tab-title-78938211[aria-selected="true"]:before {
    clip-path: polygon(0 0, calc(100% - 20px) 0%, 100% 100%, 0% 100%);
    content: '';
    background: #F1EAE3;
    position: absolute;
    right: -20px;
    width: 40px;
    height: 100%;
    z-index: 1
}
.e-n-menu-title.e-click * {
    cursor:pointer!important;
}

@media(min-width:768px){
	#tabContact .elementor-form-fields-wrapper {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 20px;
	      justify-content: space-between;
	}
	
	#tabContact .elementor-form-fields-wrapper .col-left,
	#tabContact .elementor-form-fields-wrapper .col-right {
	  flex: 1 1 48%;
	  min-width: 300px; /* responsive */
	}
	
	#tabContact .elementor-form-fields-wrapper .col-right {
	  display: flex;
	  flex-wrap: wrap;
	}
}
#tabContact .elementor-form-fields-wrapper .col-left,
	#tabContact .elementor-form-fields-wrapper .col-right{
		flex: 0 0 100%;
	}

 .rotating-link a {
  position: relative;
  display: inline-block;
  overflow: hidden;
  text-decoration: none;
  width: 100%;
}

.rotating-link a::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  letter-spacing: 0.2px;
  font-weight: 700;
  transition: transform 0.3s ease;
}

.rotating-link-inner {
  display: block;
  transition: transform 0.3s ease;
}

.rotating-link a:hover .rotating-link-inner {
  transform: translateY(-100%);
}

.rotating-link a:hover::after {
  transform: translateY(-100%);
}

/*  wpml selector */
.wpml-ls-legacy-list-horizontal a {
    padding: 10px 6px;
}


body:not(.home):not(:has(#heroPic)) .wpml-ls-first-item.wpml-ls-item-legacy-list-horizontal:before {
  background: var(--e-global-color-primary)!important;
}
.wpml-ls-first-item.wpml-ls-item-legacy-list-horizontal:before {
    content: '';
    background: var( --e-global-color-primary );
    height: 40%;
    width: 2px;
    position: absolute;
    left: 0;
    top: 25%;
}
body:not(.firstScroll) .wpml-ls-first-item.wpml-ls-item-legacy-list-horizontal:before{
	background: white;
}

.wpml-ls-first-item.wpml-ls-item-legacy-list-horizontal {
    position: relative;
}

.wpml-ls-item.wpml-ls-current-language a{
    text-decoration:underline!important    
}
.wpml-ls-legacy-list-horizontal>ul {
    display: flex;
    flex-direction: row-reverse;
}


/* pannelature */
.pannellature-gallery .swiper-button-prev:after,
.pannellature-gallery .swiper-button-next:after{
	content: '';
	background: url(inc/img/arrow-slide-sx.svg) no-repeat center center;
	width: 100%;
	height: 100%;
	background-size: contain;
}
.pannellature-gallery .swiper-button-next:after{
	transform: rotate(180deg)
}
.pannellature-gallery .swiper-button-next, .pannellature-gallery .swiper-button-prev{
	width: 60px;
	background: #fff;
    height: 70px;
    padding: 5px;
}
.pannellature-gallery .swiper-button-next{
	right: 0
}
.pannellature-gallery .swiper-button-prev{
	left: 0
}

@media(min-width:1025px) and (max-width: 1260px){
	#header > div:nth-child(1), #header > div:nth-child(3){
		width: 40%
	}
	#header > div:nth-child(2){
		width: 20%
	}
}

/*  mobile */
@media(max-width:767px){
	#header {
	    padding: 1em;
		min-height: auto;
	}
	#mobMenu .wpml-ls-first-item.wpml-ls-item-legacy-list-horizontal:before {
	    background: var(--e-global-color-primary);
	}
	#mobMenu .elementor-item.has-submenu {
	    margin-right: -26px;
	}
	.elementor-post-navigation {
	    flex-direction: column;
	    justify-content: center;
	    align-items: center;
	}
	.elementor-post-navigation > div{
		width: auto!important
	}
	
	.galleryGrid .gallery-item {
	    margin-top: 0px!important;
	    position:relative;
	}
	
	.galleryGrid .gallery-item figcaption{
	    opacity:1;
	    position:relative;
	    bottom: 0;
	    color: var(--e-global-color-primary)!important;
	    padding: 20px;
	    border: 1px solid;
	    border-width: 0 1px 1px;
	}
	
	.fwp-cat-all .elementor-loop-container.elementor-grid {
    	grid-template-columns: repeat(1,1fr);
    }
    .fwp-cat-all .elementor-loop-container.elementor-grid .e-loop-item img{
		aspect-ratio: 4/3;
	}
	
	.galleryGrid .gallery {
	    flex-wrap: nowrap;
	    display: flex;
	    overflow-x: scroll;
	}
	
	.galleryGrid .gallery .gallery-item {
	    flex: 0 0 80%;
	}
	.teamSlider .swiper-button-prev, .teamSlider .swiper-button-next{
		top:-10px!important;
	}
	.teamSlider .swiper-button-prev{
		right: 0px;
		left: auto;
	}
	.teamSlider .swiper-button-next{
		right: 30px;
		left: auto;	
	}
	.gallery-progetto{
		gap:20px;
	}
	.gallery-progetto .gallery-item:nth-child(3n+1) {
	    width: 70%;
	    flex: 0 70%;
	}
	.gallery-progetto .gallery-item:nth-child(3n+2) {
	    width: 70%;
	    flex: 0 70%;
	    justify-self: self-end;
	    margin-left: 30%;
	}
	#galPro.gallery-progetto .dce-acf-gallery-grid{
		gap: 40px 20px
	}
	
	.archiveGrid .e-loop-item {
	    border-right: 0px solid!important;
	}
	.archiveGrid .e-loop-item:nth-child(1) {
	    border-top: 0px solid;
	}
	.archiveGrid .e-loop-item:after {
		content: none!important
	}
	
	.archiveGrid .e-loop-item > div{
		padding: 40px 0 0;
		border-top: 1px solid!important;
	}
	.archiveGrid .e-loop-item:nth-child(2) > div{
		border-top: 0px solid!important;
	}
	.archiveGrid .elementor-grid{
		grid-row-gap:30px!important
	}
	.elementor-post-navigation{
		gap:10px
	}
	.pannellature-gallery .swiper-button-next, .pannellature-gallery .swiper-button-prev{
		width: 40px;
	    height: 50px;
	}
	footer svg {
	    max-width: 100%;
	}
	.pannellatura-single .sticky-nav a:after{
		width: 9px;
		height: 12px;
		background: url('inc/img/arrow-down-nav.svg') center no-repeat;
		background-size: contain;
		margin-left: 10px;
        display: inline-block;
	}
	.col-right .elementor-button[type="submit"]{
	    flex: 1;
	}
	
}
