/*

┏━━━┓ ┏┓ ┏┓ ┏━━━┓ ┏━━━━┓ ┏━━━┓ ┏━┓┏━┓   ┏━━━┓ ┏━━━┓ ┏━━━┓
┃┏━┓┃ ┃┃ ┃┃ ┃┏━┓┃ ┃┏┓┏┓┃ ┃┏━┓┃ ┃ ┗┛ ┃   ┃┏━┓┃ ┃┏━┓┃ ┃┏━┓┃
┃┃ ┗┛ ┃┃ ┃┃ ┃┗━━┓ ┗┛┃┃┗┛ ┃┃ ┃┃ ┃┏┓┏┓┃   ┃┃ ┗┛ ┃┗━━┓ ┃┗━━┓
┃┃ ┏┓ ┃┃ ┃┃ ┗━━┓┃   ┃┃   ┃┃ ┃┃ ┃┃┃┃┃┃   ┃┃ ┏┓ ┗━━┓┃ ┗━━┓┃
┃┗━┛┃ ┃┗━┛┃ ┃┗━┛┃   ┃┃   ┃┗━┛┃ ┃┃┃┃┃┃   ┃┗━┛┃ ┃┗━┛┃ ┃┗━┛┃
┗━━━┛ ┗━━━┛ ┗━━━┛   ┗┛   ┗━━━┛ ┗┛┗┛┗┛ ▀ ┗━━━┛ ┗━━━┛ ┗━━━┛ - "CUSTOM STYLESHEET"

DESIGN BY © LO STUDIO

CUSTOM.CSS STYLESHEET FOR => " Villa Flor "

BASE (MOBILE) SIZE

/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/**
 *
 *  █  █  █▀▀  ▄▀▀▄  █▀▀▄  █▀▀  █▀▀▄
 *  █▀▀█  █▀▀  █▀▀█  █  █  █▀▀  █▐█▀
 *  ▀  ▀  ▀▀▀  ▀  ▀  ▀▀▀   ▀▀▀  ▀ ▀▀ - HEADER
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


.header { position: fixed; top: 0; z-index: 4; background-color: rgb(var(--black-rgb) / 5%); backdrop-filter: blur(5rem); -webkit-backdrop-filter: blur(5rem); border-bottom: 1px solid rgb(var(--white-rgb) / 50%); }
.head_wrapper { padding: 1em 1.5em; z-index: 2; }


.header.colored { background-color: rgb(var(--green-rgb) / 90%) }




#mouse { display: none; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ LOGO ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.head_logo { 
	display: inline-block; 
	--head-logo-width: 150px; /* <- in 'px' */
	--head-logo-min: 150;
	--head-logo-max: 300;
	max-width: 300px;
}
.head_logo :where(img, svg) { width: 100%; }
.head_logo .st0 { fill: #FFFFFF; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ HEAD CONTENT ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.lang { display: inline-block; transition: .25s ease; }
.lang .wpml-ls-legacy-dropdown-click { width: auto; }
.lang .wpml-ls-legacy-dropdown-click a { padding: 0; background: transparent; border: 0 !important; color: var(--white); font-size: 1rem; font-weight: 500; text-transform: uppercase; }
.lang .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after { display: none; }
.lang .wpml-ls-legacy-dropdown-click .wpml-ls-current-language > a { padding-right: 1rem; background: url(../images/svg/form_sel_open_1.svg) no-repeat; background-size: .75rem; background-position: 100% 1px; }
.lang .wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover > a, 
.lang .wpml-ls-legacy-dropdown-click a:focus, .lang .wpml-ls-legacy-dropdown-click a:hover { color: var(--white); background-color: transparent; }
.lang .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu { border-top: 1px solid var(--white); margin-top: .125rem; }
.lang .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a { padding: .25rem 0; width: 100%; text-align: left; }
.lang .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu .wpml-ls-current-language:hover > a, 
.lang .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:focus, .lang .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:hover { color: var(--light); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ HAMBURGER / MENU ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.hamburger { 
	display: inline-block; font-size: var(--rem); line-height: 0;
	/* padding: .5em .5em; */ overflow: visible; cursor: pointer; transition: .25s ease;
}
.hamburger .wrap { width: 2rem; height: 1.5rem; }
.hamburger span {
	display: block; position: absolute; left: 0;
	width: 2rem; height: 2px; border-radius: 1em;
	background-color: var(--white);
	transform-origin: center; will-change: transform; transition: .25s ease;
}
.hamburger .top_bun { top: 0; }
.hamburger .lettuce { top: 33%; width: 70%; }
.hamburger .burger { top: 66%; }
.hamburger .bottom_bun { top: calc(100% - 2px); width: 70%; }

/* Tapped / Clicked animation */
.hamburger.tapped span { background-color: var(--black); transition: .25s ease; width: 100%; }
.hamburger.tapped .burger, .hamburger.tapped .lettuce { opacity: 0; }
.hamburger.tapped .top_bun { top: 50%; transform: translate(0,-50%) rotate(45deg); }
.hamburger.tapped .bottom_bun { top: 50%; transform: translate(0,-50%) rotate(-45deg); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ NAV MENU ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#main_nav { position: absolute; top: 0; left: 0; z-index: 1; transform: translateX(-100%);  transition: .5s ease; z-index: 2; }

#main_nav .menu_wrapper { background-color: var(--white); z-index: 1; }
#main_nav .hamburger { position: absolute; top: 1rem; right: 1rem; z-index: 1; }
#main_nav .hamburger::after { display: none; }

#main_nav .pretitle, #main_nav .pretitle a { color: var(--light); font-size: 18px; text-transform: uppercase; }
#main_nav .head_menu li { font: inherit; line-height: 1; }
#main_nav .head_menu li.current-menu-item { color: ; }
#main_nav .head_menu li a { display: inline-block; font-size: clamp(1.75rem, 5vw, 2rem); font-family: var(--title-font); line-height: 1; }
#main_nav .head_menu li + li { margin-top: .75rem; }
#main_nav .head_menu li a:hover { color: var(--light); }

.servizi_menu .w50 { padding: .25rem 1rem .25rem 0; }
.servizi_menu a { color: var(--grey); }
.servizi_menu a:hover { color: var(--light); }


#main_nav .img_menu { transform: translateX(-100%); transition: .5s ease .375s; position: relative; }
#main_nav .img_menu img { position: absolute; top: 0; left: 0; height: 100%; transform: translateX(-100%); transition: .5s ease; }
#main_nav .img_menu img.active { transform: translateX(0); }

#main_nav.enter { transform: translateX(0); pointer-events: initial; }
#main_nav.enter .img_menu { transform: translateX(0); }
#main_nav.enter .filter_close { pointer-events: initial; width: 100vw; }






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ HEADER INVERT ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.header.invert { border-color: var(--grey); }
.header.invert .head_logo .st0 { fill: var(--grey); }
.header.invert .link_head { color: var(--grey); }
.header.invert .hamburger span, .header.invert .hamburger::after { background-color: var(--grey); }
.header.invert .btn { color: var(--black); background-color: rgb(132 132 132 / 50%); } 
.header.invert .btn:hover { background-color: var(--light); color: var(--white); }
.header.invert .lang a { color: var(--grey); }
.header.invert .lang .wpml-ls-legacy-dropdown-click .wpml-ls-current-language > a { background-image: url(../images/svg/form_sel_open_1_black.svg); }
.header.invert .social_ico :where(path, ellipse) { fill: var(--grey); }







/**
 *
 *  ▄▀▀▄  ▄▀▀  ▄▀▀  █▀▀  ▀▀█▀▀  ▄▀▀
 *  █▀▀█   ▀▄   ▀▄  █▀▀    █     ▀▄
 *  ▀  ▀  ▀▀   ▀▀   ▀▀▀    ▀    ▀▀  - ASSETS
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ LINKs / BTNs STYLE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.link {
    display: inline-block; padding: 0; background: transparent; border: unset; position: relative;
    font-size: 1.125rem; font-weight: 400; text-transform: uppercase; color: var(--green);
}
.link::after { content: ""; width: 100%; height: 1px; position: absolute; left: 0; bottom: 0; background-color: var(--green); transition: transform .4s cubic-bezier(.7,0,.2,1) .2s; transform: scaleX(1); transform-origin: right center; }
.link:hover::after { transform: scaleX(0); transition-delay: .1s; }

.link::before { content: ""; width: 100%; height: 1px; position: absolute; left: 0; bottom: 0; background-color: var(--green); transition: transform .4s cubic-bezier(.7,0,.2,1) .1s; transform: scaleX(0); transform-origin: left center; }
.link:hover::before { transform: scaleX(1); transition-delay: .2s; }


.link.white { color: var(--white); }
.link.white::after, .link.white::before { background-color: var(--white); }





.btn {
	display: inline-block; padding: .75rem 2rem; border-radius: 5rem; margin-left: 1rem;
	background-color: rgb(217 217 217 / 50%); backdrop-filter: blur(1rem); -webkit-backdrop-filter: blur(1rem); 
	font-size: 1rem; color: var(--white); font-weight: 400;
}
.btn:hover { background-color: var(--light); }

.btn.dark{color: var(--green); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ FILTERS STYLE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.filter_tb { background: linear-gradient(to bottom, #F3EDE2 50%, transparent); }
.filter_bt { background: linear-gradient(to top, rgb(var(--black-rgb) / 50%), transparent); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ VARS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.pretitle { display: block; text-transform: uppercase; margin-bottom: 1rem; }
.white .pretitle { color: var(--white); }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SCROLL BUTTON ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#scroll_btn {
	display: inline-block;
	position: absolute; left: 50%; bottom: 1.5em; 
	--scroll-px: 20px;
	--scroll-min: 20;
	--scroll-max: 25;
	max-width: 25px;
	transform: translateX(-50%);
	cursor: pointer; z-index: 1;
}
#scroll_btn svg { 
	width: 100%; 
	animation: hang_scroll 1.5s ease-in-out infinite forwards alternate;
	animation-play-state: running;
}
@keyframes hang_scroll {
	from { transform: translateY(0); }
	to { transform: translateY(.5em); }
}
#scroll_btn:hover svg, #scroll_btn:focus svg, #scroll_btn:active svg { animation-play-state: paused; }
#scroll_btn svg path { fill: var(--white); transition: .25s ease; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SWIPER NAV ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.nav_btn { 
	top: 50%; transform: translateY(-50%); 
	width: 3.5em; padding: .25em; 
	z-index: 1; cursor: pointer; transition: .25s ease; 
}
.nav_btn :where(img, svg) { width: 100%; }
.nav_btn svg path { fill: var(--black); transition: .25s ease; }

.nav_prev { left: 0; }
.nav_next { right: 0; }

.nav_btn.swiper-button-disabled { display: none; }


/* Dots */
#nav_dots { bottom: 0; }
#nav_dots .swiper-pagination-bullet { width: .5rem; height: .5rem;; opacity: 1; background-color: transparent; border: 1px solid var(--green); }
#nav_dots .swiper-pagination-bullet-active { background-color: var(--green); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ COMPONENTS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Social */
.social_ico { width: 1.5rem; margin-right: 1rem; margin-top: -6px; }
.social_ico :where(path, ellipse) { fill: var(--white); transition: .25s ease; }
.social_ico:hover :where(path, ellipse) { fill: var(--light); }


.social_foot { color: var(--grey); gap: .5rem; margin-top: 1rem; }
.social_foot svg { width: 1.25rem; }
.social_foot :where(path, ellipse) { fill: var( --grey ); transition: .25s ease; }
.social_foot:hover { color: var(--light); }
.social_foot:hover :where(path, ellipse) { fill: var(--light); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SIDEBAR ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.sticky { top: 15vh; }
.sidebar #form { padding: 2rem; }
.sidebar #form h3 { margin-bottom: 1.5rem; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ BREADCRUMBS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#breadcrumb { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .5em; }
#breadcrumb li { list-style: none; margin: 0; }
#breadcrumb .separator {}
#breadcrumb :where(a,span) { display: inline-block; min-width: fit-content; color: var(--white); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ ANIMAZIONI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Titoli / testi */
.textAnim h1 { opacity: 0; }
.textAnim.active h1 { opacity: 1; }
.textAnim p, .textAnim li, .textAnim p a, .textAnim li a, .textAnim .link { opacity: 0; transform: translateY(25%); transition: all .25s ease, opacity 1s ease .25s, transform 1s ease .25s; }
.textAnim.active p, .textAnim.active li, .textAnim.active p a, .textAnim.active li a, .textAnim.active .link { opacity: 1; transform: translateY(0); }


#s1_home .s1_title svg { transform: translateY(-25%); opacity: 0; transition: 2s cubic-bezier(.76,0,.24,1); }
#s1_home .s1_title.active svg { transform: translateY(0); opacity: 1; }



.trigger.sec_img { clip-path: inset(0 0 0 100%); transition: 2s cubic-bezier(.76,0,.24,1); }
.trigger.sec_img img { transform: scale(1.6); opacity: 0; transition: 2s cubic-bezier(.76,0,.24,1) -.25s, opacity .1s ease; will-change: transform; }
.trigger.active.sec_img { clip-path: inset(0 0 0 0) !important; transform: scale(1); }
.trigger.active.sec_img img { transform: scale(1); opacity: 1; }

.sec_std:nth-of-type(even) .container .trigger.sec_img { clip-path: inset(0 100% 0 0); }


#wrapper_scroll_orizzontale .trigger.sec_img:nth-of-type(even) { clip-path: inset(100% 0 0 0 ); }
#wrapper_scroll_orizzontale .trigger.sec_img:nth-of-type(odd) { clip-path: inset(0 0 100% 0); }





/**
 *
 *  █▀▀  ▄▀▀▄  ▄▀▀▄  ▀▀█▀▀  █▀▀  █▀▀▄
 *  █▀▀  █  █  █  █    █    █▀▀  █▐█▀
 *  ▀     ▀▀    ▀▀     ▀    ▀▀▀  ▀ ▀▀ - FOOTER
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


footer {  }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ STRUCTURE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/


/* Foot Logo */
.foot_logo { 
	display: block; 
	--foot-logo-width: 110px;
	--foot-logo-min: 110;
	--foot-logo-max: 160;
	max-width: 160px;
	margin-bottom: var(--c5v);
}
.foot_logo :where(img, svg) { width: 100%; }


/* Foot Block */
.wrapper_foot { border-top: 1px solid rgb(var(--black-rgb) / 50%); }

.foot_block {}
.foot_block h4 { text-transform: uppercase; }
.foot_block p a { font: inherit; line-height: 1.75; }
.foot_block p a:hover { color: var(--light); }


/* Foot nav */
#foot_menu { border-bottom: 1px solid rgb(var(--black-rgb) / 50%); }
.footer_nav > p { text-transform: uppercase; margin-bottom: 1rem; }
.footer_nav li { font: inherit; line-height: 1; padding: .5rem 0; }
.footer_nav li a { font-family: var(--title-font); color: var(--green); font-size: clamp(2rem, 5vw, 3.5rem); display: inline-block; }
.footer_nav li a:hover { color: var(--light); }


/* Newsletter */
.riga_greca { border-top: 1px solid rgb(var(--black-rgb) / 50%); }
.riga_greca::after {
    content: ""; width: 7rem; height: 5rem; position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%);
    background: url(../images/svg/greca.svg) no-repeat center; background-size: contain; background-color: var(--white);
}




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CREDITS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#credits { border-top: 1px solid rgb(var(--black-rgb) / 50%); gap: 1rem; }

#credits p { font-size: .85rem; line-height: 1.5; z-index: 1; }
#credits .resp_sep { display: none; }
#credits a { display: inline-block; font: inherit; color: inherit; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ BACK TO TOP ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#back_top {
	z-index: 2; 
	--back-top-px: 40px;
	--back-top-min: 40;
	--back-top-max: 60;
	max-width: 60px; 
	cursor: pointer; transition: .25s ease;
}
#back_top :where(img, svg) { width: 100%; }








/**
 *
 *  ▄▀▀  █▀▀  ▄▀▀  ▀▀█▀▀  ▀  ▄▀▀▄  █▄ █  ▄▀▀ 
 *   ▀▄  █▀▀  █      █    █  █  █  █ ▀█   ▀▄ 
 *  ▀▀   ▀▀▀   ▀▀    ▀    ▀   ▀▀   ▀  ▀  ▀▀  - SECTIONS
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 1 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.s1 { overflow: hidden; }
.s1 .btn { margin-top: 0; }

.s2 .play_video {
	position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); 
	width: clamp(4vw, 20vw, 7rem); z-index: 1; background-color: rgb(var(--green-rgb) / 25%);
}




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ BOOKING ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/


.modal_booking { top: 0; left: 0; z-index: 10; display: none; }
.modal_booking .filter { background-color: rgb(var(--black-rgb) / 75%); pointer-events: initial; }

.wrapper_modal { background-color: var(--green); padding: 1rem; width: 30rem; max-width: 95%; box-shadow: 0 0 1rem rgb(30 30 30 / 25%); }

.wrapper_modal #form { padding: 1rem; padding-top: 0; max-height: 80vh; overflow-y: scroll; margin-top: 1rem; }
.wrapper_modal #form::-webkit-scrollbar { width: 6px; background-color: rgb(var(--white-rgb) / 25%); }
.wrapper_modal #form::-webkit-scrollbar-thumb { width: 6px; background-color: var(--white); }

.wrapper_modal #form .w33m { width: calc(50% - .5rem); }




.booking {
	display: inline-flex; align-items: center; justify-content: center; border-radius: 5rem;
	margin-top: var(--c15v); background-color: rgb(var(--white-rgb) / 70%); backdrop-filter: blur(1rem); -webkit-backdrop-filter: blur(1rem); 
}
.booking::after {content: ""; width: 1px; height: var(--c7v); background-color: var(--white); position: absolute; top: 0; left: 50%; transform: translateY( calc((var(--c7v) * -1) + -50% )); }

.input_form { border-right: 1px solid var(--black); transition: .25s ease; }
.input_form:hover { background-color: rgb(var(--green-rgb) / 15%); }
.input_form input { display: inline-block; padding: .75rem 1.5rem; width: 100%; height: 100%; background: transparent; color: var(--black); font-size: 1rem; font-weight: 400; font-family: var(--main-font); cursor: pointer; }
.input_form input::placeholder { color: var(--black); font-size: 1rem; font-weight: 400; font-family: var(--main-font); }

.input_form select {
	display: inline-block; padding: .75rem 1.5rem; width: 100%; height: 100%; background: transparent; appearance: none; -webkit-appearance: none; cursor: pointer;
	color: var(--black); font-size: 1rem; font-weight: 400; font-family: var(--main-font); 
}
/*.input_form.select { background: url(../images/svg/form_sel_open_1.svg) no-repeat calc(100% - 1em) / 1em; }*/

.booking button { display: inline-block; padding: .9rem 1.5rem; min-width: fit-content; color: var(--black); font-size: 1rem; font-weight: 500; font-family: var(--main-font); border-radius: 0 5rem 5rem 0; }
.booking button:hover { background-color: var(--green); color: var(--white); }

.flatpickr-calendar, .flatpickr-calendar * { cursor: initial !important; }



.flatpickr-calendar { border: 0; background: transparent; top: 0; background-color: var(--white); box-shadow: 0 0 2rem rgb(30 30 30 / 40%); border-radius: 1rem; padding: 10px; width: 325px; }
.flatpickr-calendar .flatpickr-months { position: relative; }
.flatpickr-calendar .flatpickr-months .flatpickr-current-month { position: relative; height: auto; display: flex; align-items: center; justify-content: center; padding: 1rem 0; width: 100%; left: 0; }
.flatpickr-calendar .flatpickr-months .flatpickr-month { color: var(--green); fill: var(--black); height: auto; }
.flatpickr-calendar .flatpickr-months .flatpickr-month :where(select, input) { font-weight: 500; margin: 0 .25rem; }
.flatpickr-calendar .flatpickr-months .flatpickr-month select option { color: var(--black); }

.flatpickr-calendar .flatpickr-months .flatpickr-prev-month, 
.flatpickr-calendar .flatpickr-months .flatpickr-next-month { top: 50%; transform: translateY(-50%); }
.flatpickr-calendar .flatpickr-months .flatpickr-prev-month svg, 
.flatpickr-calendar .flatpickr-months .flatpickr-next-month svg { display: block; fill: var(--black); }
.flatpickr-calendar .flatpickr-months .flatpickr-prev-month:hover svg, 
.flatpickr-calendar .flatpickr-months .flatpickr-next-month:hover svg { fill: var(--green); }


.flatpickr-calendar .cerca_eventi span.flatpickr-weekday { color: var(--black); }
.flatpickr-calendar .flatpickr-day { color: var(--black); font-weight: 400; border: 0; transition: .125s ease; }
.flatpickr-calendar .flatpickr-day.today { border: 1px solid #ccc; }

.flatpickr-calendar .flatpickr-day.flatpickr-disabled { color: #ccc !important; opacity: .5 !important; cursor: not-allowed !important; }
.flatpickr-calendar .flatpickr-day.flatpickr-disabled:hover { background: transparent !important; }
.flatpickr-calendar .flatpickr-day.nextMonthDay, .flatpickr-calendar .flatpickr-day.prevMonthDay { color: var(--black); opacity: .75; font-weight: 400; }

.flatpickr-calendar .flatpickr-day:hover,
.flatpickr-calendar .flatpickr-day.nextMonthDay:hover,
.flatpickr-calendar .flatpickr-day.prevMonthDay:hover { background: rgb(var(--green-rgb) / 50%); border: 0; }

.flatpickr-calendar .flatpickr-day.selected, .flatpickr-calendar .flatpickr-day.endRange, .flatpickr-calendar .flatpickr-day.startRange { background: rgb(var(--green-rgb) / 100%) !important; border: 0; color: var(--white); }
.flatpickr-calendar .flatpickr-day.selected:hover,
.flatpickr-calendar .flatpickr-day:focus { background: rgb(var(--green-rgb) / 50%) !important; border: 0; }

.flatpickr-calendar .flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), 
.flatpickr-calendar .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), 
.flatpickr-calendar .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) { box-shadow: -10px 0 0 #ccc; }




.flatpickr-calendar .flatpickr-day.flatpickr-disabled.disabled-custom { color: red !important; opacity: .75 !important; }













/**
 *
 *  ▄▀▀  ▄▀▀▄  █▀▀▄  █▀▀▄  ▄▀▀ 
 *  █    █▀▀█  █▐█▀  █  █   ▀▄ 
 *   ▀▀  ▀  ▀  ▀ ▀▀  ▀▀▀   ▀▀  - CARDS
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CARD ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.card_blog picture { overflow: hidden; }
.card_blog img { transition: .5s ease; }
.card_blog .text { padding-top: 1.5rem; }
.card_blog h3 { color: var(--light); }
.card_blog p { text-transform: uppercase; }
.card_blog button { text-transform: lowercase; }

.card_blog a:hover img { transform: scale(1.1); }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CARD BLOG ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.card img { transition: .5s ease; }
.card .filter { background: linear-gradient(to top, rgb(var(--black-rgb) / 50%), transparent); }
.card .text { padding: 2rem; }
.card .text h3 { color: var(--white); }

.card a:hover img { transform: scale(1.1); }





/**
 *
 *  █  █  ▄▀▀▄  █▄ ▄█  █▀▀
 *  █▀▀█  █  █  █ █ █  █▀▀
 *  ▀  ▀   ▀▀   ▀   ▀  ▀▀▀ - HOMEPAGE
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 1 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#s1_home .s1_title svg { width: 6rem; margin-bottom: 3rem; }
#s1_home .logo_home .st0 { fill: var(--white); }

#s1_home .s1_title h1 { margin-bottom: var(--c7v); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 2 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.s2 .container.flex { gap: var(--c10v) 2rem; }

.s2 .img_1 { width: 40%; }
.s2 .img_2 { width: 50%; }
.s2 .img_2 picture { transform: translateX(calc(var(--c5o) + 1rem)); }
.s2 .img_3 { width: 75%; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 3 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#swiper_camere_bkg { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
#swiper_camere { padding: 0 var(--c10o); }

#swiper_camere .swiper-slide p { opacity: 0; }
#swiper_camere .swiper-slide-active p { opacity: 1; }

.hover_nav { position: absolute; top: 0; width: 20%; height: 100%; z-index: 1; }
.hover_prev { left: 0; }
.hover_next { right: 0; }







.link_camere { bottom: 2rem; left: 50%; transform: translateX(-50%); z-index: 1; width: 90%; text-align: center; }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 5 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#wrapper_scroll_orizzontale { display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 1rem; }
#wrapper_scroll_orizzontale .sec_img { width: calc(50% - 1rem) }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 7 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#swiper_blog { padding: 0 var(--c2o); }
#swiper_blog .swiper-slide { padding: 0 var(--c2o); }








/**
 *
 *  █▀▀▄  ▄▀▀▄  ▄▀▀▀   █▀▀  ▄▀▀
 *  █  █  █▀▀█  █  ▀▌  █▀▀   ▀▄
 *  █▀▀   ▀  ▀   ▀▀▀   ▀▀▀  ▀▀  - TEMPLATES _ PAGINE
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Template standard */
.sec_std:nth-of-type(even) .container { flex-direction: row-reverse; }
.sec_std .swiper #nav_dots { --green: var(--white); z-index: 1; padding: 1rem; }

.fresco button { z-index: 1; opacity: 0; width: 20%; }
.fresco::after { content: ""; width: 100%; height: 100%; position: absolute; bottom: 0; left: 0; background: linear-gradient(to top, rgb(var(--green-rgb) / 50%), transparent); opacity: 0; transition: .25s ease; }
.fresco:hover::after, .fresco:hover button { opacity: 1; }

.play_video { border-radius: 50%; aspect-ratio: 1 / 1; backdrop-filter: blur(.5rem); -webkit-backdrop-filter: blur(.5rem); background-color: rgb(var(--white-rgb) / 25%); }
.play_video:hover { background-color: rgb(var(--green-rgb) / 25%); transform: translate(-50%, -50%) scale(.95); }


/* Template schede */
.box_schede h3 { padding: 1rem 2rem; color: var(--white); }
.box_schede .text { padding: 0 1rem; }
.box_schede .text p { font-size: 1rem; }



/* Accordion */
.accordion { margin-top: var(--c7v); }
.card_accordion { border: 1px solid var(--green); }
.card_accordion + .card_accordion { margin-top: clamp(1rem, 2vw, 2rem); }

.accordion_head { gap: 1rem; padding: 1rem; cursor: pointer; }
.accordion_head h3 { width: calc(100% - 3rem); }
.accordion_head svg { width: 1.5rem; }
.accordion_head svg path { fill: var(--green); }
.accordion_head.active svg { transform: scaleY(-1); }

.accordion_text { display: none; padding: 1rem; }
.accordion_text .servizio_arch:last-of-type { padding-bottom: 1.5rem; margin-bottom: 0; }

.accordion_int { grid-template-columns: 0.2fr 1fr; gap: clamp(1rem, 2vw, 2rem); border-bottom: 1px solid #ccc; padding-bottom: 1.5rem; margin-bottom: 1.5rem; }
.accordion_int:last-of-type { border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }
.accordion_int .text p { margin-top: 1rem; }






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE CAMERE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#page_camere .sec_std .text ul { list-style: none; display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; margin-top: 1rem; }
#page_camere .sec_std .text li { margin: 0; padding: .75rem 0; list-style: none; width: 100%; color: var(--light); border-bottom: 1px solid rgb(var(--black-rgb) / 33%); }
#page_camere .sec_std .text :where(i, em) { font-size: 75%; line-height: 1; display: inline-block; }






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE CONTATTI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Section 2 */
.txt_cont h2 { text-transform: uppercase; font-size: calc(var(--h2-size) * 1.25); }
.txt_cont p { font-size: 1.25rem; }
.txt_cont p a:hover { color: var(--light); }

.map iframe { width: 100%; height: auto; aspect-ratio: 4 / 5; }






/**
 *
 *  ▄▀▀▄  █▀▀▄  ▄▀▀▀  █  █  ▀  ▐▌ ▐▌  █▀▀
 *  █▀▀█  █▐█▀  █     █▀▀█  █   ▀▄▀   █▀▀
 *  ▀  ▀  ▀ ▀▀   ▀▀▀  ▀  ▀  ▀    ▀    ▀▀▀ - TEMPLATES _ ARCHIVIO
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 1 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.s1_archive h1 { text-shadow: unset; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 2 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Search & Filter */

/* Terms Loop */

/* Posts Loop */
#card_grid { grid-template-columns: 1fr; grid-gap: 2em 1em; }


/* Custom pagination */
.pagination {}

/* Load More */




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION [...] ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








/**
 *
 *  ▄▀▀  ▀  █▄ █  ▄▀▀▀   █     █▀▀
 *   ▀▄  █  █ ▀█  █  ▀▌  █  ▄  █▀▀
 *  ▀▀   ▀  ▀  ▀   ▀▀▀   ▀▀▀▀  ▀▀▀ - SINGLE
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 1 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 2 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION RELATED ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION [...] ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








/**
 *
 *  █▀▀  ▄▀▀▄  █▀▀▄  █▄ ▄█
 *  █▀▀  █  █  █▐█▀  █ █ █
 *  ▀     ▀▀   ▀ ▀▀  ▀   ▀ - FORM
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/* WP-Form - Custom */
#form { background-color: var(--green); }
#form h3 { font-size: clamp(1.5rem, 4vw, 2rem); text-shadow: 0px 4px 7.6px rgba(0, 0, 0, 0.45); color: var(--white); margin-bottom: 2rem; }

#form .wpforms-field { overflow-y: visible !important; overflow-x: clip; }

#form .wpforms-field label { color: var(--white); font-weight: 400; }
#form .wpforms-field:not(.wpforms-field-checkbox) > label { position: absolute; left: .5rem; top: 0; z-index: 1; transform: translateY(-50%); background-color: var(--green); padding: 0 5px; }
#form .wpforms-field :where(input, textarea, select) { background-color: transparent; border: 1px solid var(--white); border-radius: 0; padding: .625rem 1rem; font-size: .85rem; color: var(--white); }


#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"] { border-color: var(--white); }
#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"]:checked { background-color: var(--white); }
#form .wpforms-field.wpforms-field-checkbox li label a:hover { color: var(--light); }


#form .wpforms-submit-container { display: flex; align-items: center; justify-content: flex-end; }


#form button[type=submit] { display: inline-block; padding: 0; background: transparent; border: unset; font-size: 1.125rem; font-weight: 400; text-transform: uppercase; }
#form button[type=submit]::after {
	content: ""; width: 100%; height: 1px; position: absolute; left: 0; bottom: 0; 
	background-color: var(--white); transition: transform .4s cubic-bezier(.7,0,.2,1) .2s; transform: scaleX(1); transform-origin: right center; 
}
#form button[type=submit]::before {
	content: ""; width: 100%; height: 1px; position: absolute; left: 0; bottom: 0; 
	background-color: var(--white); transition: transform .4s cubic-bezier(.7,0,.2,1) .1s; transform: scaleX(0); transform-origin: left center; 
}

#form button[type=submit]:hover::after { transform: scaleX(0); transition-delay: .1s; }
#form button[type=submit]:hover::before { transform: scaleX(1); transition-delay: .2s; }




/* Form colori inverititi */
#form.bkg_white { background-color: var(--white); border: 1px solid var(--green); }
#form.bkg_white .wpforms-field label { color: var(--grey); }
#form.bkg_white .wpforms-field :where(input, textarea, select) { border: 1px solid var(--grey); color: var(--grey); }
#form.bkg_white .wpforms-field:not(.wpforms-field-checkbox) > label { background-color: var(--white); }
#form.bkg_white .wpforms-field.wpforms-field-checkbox li input[type="checkbox"] { border-color: var(--grey); }
#form.bkg_white button[type=submit] { color: var(--green); }
#form.bkg_white button[type=submit]::after, #form.bkg_white button[type=submit]::before { background-color: var(--green); }







/* MailPoet Form - Custom */
#form_mp .mailpoet_form form { display: grid; gap: 1.5rem 0; padding: 0 !important; margin-top: 1rem; }
#form_mp .mailpoet_form .mailpoet_paragraph label { color: var(--grey); }

#form_mp .mailpoet_form .mailpoet_paragraph :where(input, textarea, select) {
    background-color: transparent; border: 1px solid var(--grey); border-radius: 5rem;
    padding: 1rem 2rem !important; font-size: 1rem; color: var(--grey);
}
#form_mp .mailpoet_form .mailpoet_paragraph input::placeholder { color: var(--grey); opacity: 1; }

#form_mp .mailpoet_form input.mailpoet_checkbox { padding: 10px !important; width: 1em; height: 1em; border-radius: 0; background-size: .75rem; }
#form_mp .mailpoet_form .mailpoet_checkbox_label { color: var(--grey); }
#form_mp .mailpoet_form .mailpoet_checkbox_label a:hover { color: var(--light); }

#form_mp .mailpoet_form .mailpoet_paragraph .mailpoet_submit {
    padding: 1rem 2rem !important; font-size: 1rem; color: var(--white);
    background-color: var(--green);  border: 1px solid var(--green) !important; border-radius: 5rem;
}
#form_mp .mailpoet_form .mailpoet_paragraph .mailpoet_submit:hover { background-color: var(--white); color: var(--green); }







/**
 *
 *  █▀▀  █  █  ▀▀█▀▀  █▀▀▄  ▄▀▀▄
 *  █▀▀  ▄▀▀▄    █    █▐█▀  █▀▀█
 *  ▀▀▀  ▀  ▀    ▀    ▀ ▀▀  ▀  ▀ - EXTRA
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ PAGE GRAZIE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#s1_grazie {}




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ PAGE 404 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CSS EXTRA O MOD ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/












/**
 * ██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
 *
 * RESPONSIVE
 *
 * Settare se necessario regole fluid per minmax di elementi specifici basandosi sulle seguenti regole:
 *	=>	ORIGINAL CALC			->	calc( 12px + (24 - 12) * ( (100vw - 360px) / (1920 - 360) ) )
 *	=>	CALC 1920px -> 360px	->	calc( 12px + (24 - 12) * ( (100vw - 360px) / 1560 ) )
 *	=>	CALC 1280px -> 360px	->	calc( 12px + (24 - 12) * ( (100vw - 360px) / 920 ) )
 *	=>	CALC 1024px -> 360px	->	calc( 12px + (24 - 12) * ( (100vw - 360px) / 664 ) )
 *
 * Da creare fluid dinamico con 2 step per i calc iniziali =   1920 -> 1024   1024 -> 360
 *
 * __________________________________________________________________________________________________________________________________________________________________________
 */




.head_logo {
	width: calc( var(--head-logo-width) + ( var(--head-logo-max) - var(--head-logo-min) ) * ( (100vw - 360px) / 1560 ) ); 
	min-width: calc( var(--head-logo-width) + ( var(--head-logo-max) - var(--head-logo-min) ) * ( (100vw - 360px) / 1560 ) );
}

#scroll_btn { width: calc( var(--scroll-px) + ( var(--scroll-max) - var(--scroll-min) ) * ( (100vw - 360px) / 1560 ) ); }

.foot_logo { width: calc( var(--foot-logo-width) + ( var(--foot-logo-max) - var(--foot-logo-min) ) * ( (100vw - 360px) / 1560 ) ); }
#back_top { width: calc( var(--back-top-px) + ( var(--back-top-max) - var(--back-top-min) ) * ( (100vw - 360px) / 1560 ) ); }




/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/
/* Logo */
/* Head Content */
/* Hamburger */
/* Nav Menu */
/* Darkmode Switch */


/*∞∞∞∞∞∞ ASSETS ∞∞∞∞∞∞*/
/* Buttons */
/* Links */
/* Filters */
/* Sections 1 */
/* Breadcrumbs */
/* Scroll */
/* Components */
/* Cards */
/* Sidebar */
/* ... */


/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
/* Structure */
/* Credits */
/* Back Top */


/*∞∞∞∞∞∞ SECTIONS ∞∞∞∞∞∞*/
/* Section 1 */


/*∞∞∞∞∞∞ CARDS ∞∞∞∞∞∞*/
/* Card */
/* Card Empty */


/*∞∞∞∞∞∞ HOMEPAGE ∞∞∞∞∞∞*/
/* Sec 1 */
/* Sec 2 */
/* Sec [...] */


/*∞∞∞∞∞∞ PAGE ∞∞∞∞∞∞*/
/* Template ... */
/* Template ... */
/* Template ... */


/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
/* Sec 1 */
/* Sec 2 */
/* Sec ... */


/*∞∞∞∞∞∞ SINGLE ∞∞∞∞∞∞*/
/* Sec 1 */
/* Sec 2 */
/* Sec ... */


/*∞∞∞∞∞∞ FORM ∞∞∞∞∞∞*/


/*∞∞∞∞∞∞ EXTRA ∞∞∞∞∞∞*/




/**
 *
 *  █▄ ▄█  ▄▀▀▄  █▀▀▄  ▀  █     █▀▀
 *  █ █ █  █  █  █▀▀█  █  █  ▄  █▀▀
 *  ▀   ▀   ▀▀   ▀▀▀   ▀  ▀▀▀▀  ▀▀▀ - MOBILE PORT | 601 -> 767
 * __________________________________________________________________________________________________________________________________________________________________________
 */

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

	
	/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/

	/* Logo */

	/* Head Content */

	/* Hamburger */
	/* Nav Menu */


}






/**
 *
 *  ▀▀█▀▀  ▄▀▀▄  █▀▀▄  █     █▀▀  ▀▀█▀▀
 *    █    █▀▀█  █▀▀█  █  ▄  █▀▀    █
 *    ▀    ▀  ▀  ▀▀▀   ▀▀▀▀  ▀▀▀    ▀   - TABLET |  768 x 1024  ->  1023 x 1280
 * __________________________________________________________________________________________________________________________________________________________________________
 */

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

	/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
	/* Credits */
	#credits { flex-direction: row; justify-content: space-between; }
	#credits p { margin: 0; }
	#credits br { display: none; }
	#credits .resp_sep { display: inline-block; }



	/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
	#card_grid { grid-template-columns: 1fr 1fr; }



	/*∞∞∞∞∞∞ SINGLE ∞∞∞∞∞∞*/
	.sidebar #form .w33m { width: 100% }


}



/**
 *
 *  █▀▀▄  █▀▀  ▄▀▀  █ ▄▀  ▀▀█▀▀  ▄▀▀▄  █▀▀▄      ▄▀▀  █▄ ▄█  ▄▀▀▄  █    █ 
 *  █  █  █▀▀   ▀▄  █▀▄     █    █  █  █  █       ▀▄  █ █ █  █▀▀█  █ ▄  █ ▄ 
 *  ▀▀▀   ▀▀▀  ▀▀   ▀ ▀▀    ▀     ▀▀   █▀▀       ▀▀   ▀   ▀  ▀  ▀  ▀▀▀  ▀▀▀  - LAPTOP |  1024 x 768  ->  1280 x 720
 * __________________________________________________________________________________________________________________________________________________________________________
 */

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


	.elenco_camere :where(#swiper_camere a, button) { cursor: none!important; }
    #mouse { display: inline-block; position: fixed; top: 0; left: 0; pointer-events: none; z-index: 11; opacity: 0; }
    #mouse .circle { transition: .45s ease; width: 1.5rem; height: 1.5rem; border-radius: 50%; background-color: rgb(var(--light-rgb) / 75%); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); }

    #mouse .word, #mouse .img { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); opacity: 0; transition: .25s ease; }
    #mouse .img { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
    
    #mouse .word p { font-family: var(--main-font); color: var(--white); font-size: 15px; font-weight: 500; white-space: nowrap; transition: .25s ease .5s; }
    #mouse .img img { width: 90%; height: auto; }



	/*∞∞∞∞∞∞ VARS ∞∞∞∞∞∞*/
	.greca_tl::before {
		content: ""; width: 20rem; height: auto; aspect-ratio: 1 / 1; z-index: -1;
		position: absolute; top: 0; left: 0; transform: translate(-50%, -50%);
		background: url(../images/svg/greca_tl.svg) no-repeat center; background-size: contain;
	}


	.greca_c::before {
		content: ""; width: 33%; height: auto; aspect-ratio: 1 / 1; z-index: -1;
		position: absolute; bottom: 0; left: 50%; transform: translate(-50%, 25%);
		background: url(../images/svg/greca_c.svg) no-repeat center; background-size: contain;
	}



	/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/
	.link_head { color: var(--white); margin-left: 1.5rem; }
	.link_head:hover { color: var(--light) !important; }

	.hamburger { margin-right: 1.5rem; position: relative; }
	.hamburger::after { content: ""; position: absolute; top: 50%; right: -1.5rem; transform: translateY(-50%); width: 1px; height: 75%; background-color: var(--white); }

	/* .hamburger .wrap { width: 2.25rem; height: 1.75rem; }
	.hamburger span { width: 2.25rem; } */
	





	/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
	.social_foot { justify-content: flex-start; }

	/* Menu */
	#foot_menu { border-bottom: unset; }
	#foot_menu::after { content: ""; width: 1px; height: 85%; background-color: rgb(var(--black-rgb) / 50%); position: absolute; top: 5%; right: 0; }

	/* Info */
	#foot_info { display: flex; align-items: center; justify-content: center; }

	.foot_block .ti-widget.ti-airb { text-align: left; }
	.foot_block .ti-widget.ti-airb a.ti-header { padding-left: 0; }


	/* Newsletter */
	#form_mp .mailpoet_form form { grid-template-columns: 1fr 1fr .5fr; }
	#form_mp .mailpoet_form .mailpoet_paragraph.privacy_input { position: absolute; left: 0; bottom: -1rem; }

	#form_mp .mailpoet_form .mailpoet_paragraph:nth-of-type(1) input { border-radius: 5rem 0 0 5rem; }
	#form_mp .mailpoet_form .mailpoet_paragraph:nth-of-type(2) input { border-radius: 0; border-left: 0; }
	#form_mp .mailpoet_form .mailpoet_paragraph.last input { border-radius: 0 5rem 5rem 0; }


	/* Credits */
	#credits a:hover, #credits a:active, #credits a:focus { opacity: 1; color: var(--light); }
	#credits #credits_studio:hover { color: #e74e0f; }

	/* Back Top */
	#back_top { opacity: 1; }




	/*∞∞∞∞∞∞ HOME ∞∞∞∞∞∞*/
	/* Sec 2 */
	.h120 { min-height: 120vh; }

	.s2 .img_1 { position: absolute; top: 0; left: 10%; width: 12rem; }
	.s2 .img_2 { position: absolute; top: 5%; right: 0; width: 20%; }
	.s2 .img_2 picture { transform: unset; }
	.s2 .img_3 { position: absolute; bottom: 5%; left: 2.5%; width: 20%; }
	.s2 .img_4 { position: absolute; bottom: 0; right: 15% ; width: 12rem; }

	/* Sec 3 */
	#swiper_camere { padding: 0 var(--c15o); }
	#swiper_camere h2 { font-size: calc(var(--h2-size) * 1.5); }



	/* Sec 5 */
	#wrapper_scroll_orizzontale { align-items: flex-end; flex-wrap: nowrap; gap: var(--c2o); }
	#wrapper_scroll_orizzontale .sec_img { width: 100%; }

	#wrapper_scroll_orizzontale .sec_img:nth-of-type(odd) { min-width: 25vw; }
	#wrapper_scroll_orizzontale .sec_img:nth-of-type(even) { min-width: 20vw; transform: translateY(2rem); }




	/*∞∞∞∞∞∞ TEMPLATE CAMERE ∞∞∞∞∞∞*/
	#page_camere .sec_std .text li { width: 50%; }





	/*∞∞∞∞∞∞ CONTATTI ∞∞∞∞∞∞*/
	/* Sec 2 */
	#s2_contatti { z-index: 1; }
	#s2_contatti .container { padding-bottom: 0; }
	.map { transform: translateY(var(--c15v)); }

	/* Sec 2 */
	#s3_contatti .container { padding-top: var(--c25v); }




	/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
	#card_grid { grid-template-columns: 1fr 1fr 1fr; gap: 2em 3em; }



}






/**
 *
 *  █     ▄▀▀▄  █▀▀▄  ▀█▀  ▄▀▀▄  █▀▀▄
 *  █  ▄  █▀▀█  █  █   █   █  █  █  █
 *  ▀▀▀▀  ▀  ▀  █▀▀    ▀    ▀▀   █▀▀  - LAPTOP |  1281 x 720  ->  1366 x 768
 * __________________________________________________________________________________________________________________________________________________________________________
 */

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


	/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
	#card_grid { gap: 3em var(--c5o); }

}






/**
 *
 *  █▀▀▄  █▀▀  ▄▀▀  █ ▄▀  ▀█▀  ▄▀▀▄  █▀▀▄
 *  █  █  █▀▀   ▀▄  █▀▄    █   █  █  █  █
 *  ▀▀▀   ▀▀▀  ▀▀   ▀ ▀▀   ▀    ▀▀   █▀▀  - LAPTOP |  1367 x 768  ->  1919 x 1080
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 1367px) {}






/**
 *
 *  █  █  █▀▀▄  █▀▀  █▀▀▄
 *  █  █  █▀▀█  █▀▀  █▐█▀
 *   ▀▀   ▀▀▀   ▀▀▀  ▀ ▀▀ - ÜBER | 1921 -> ...
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 1921px) {}






/**
 *
 *   ▄▀█   █ ▄▀
 *  █▄▄█▄  █▀▄
 *     █   ▀ ▀▀ - DESKTOP 4K & UP | 2561px -> ...
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and ( min-width: 2561px ) {}



