/* ========================================================================
   Use this file to add custom CSS easily
 ========================================================================== */
 
 
 
@font-face {
    font-family: 'Gotham';
    src: url('../fonts/Gotham-Book.woff2') format('woff2'),
        url('../fonts/Gotham-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gotham';
    src: url('../fonts/Gotham-Light.woff2') format('woff2'),
        url('../fonts/Gotham-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gotham';
    src: url('../fonts/Gotham-Bold.woff2') format('woff2'),
        url('../fonts/Gotham-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gotham';
    src: url('../fonts/Gotham-Medium.woff2') format('woff2'),
        url('../fonts/Gotham-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/AvenirNext-Heavy.woff2') format('woff2'),
        url('../fonts/AvenirNext-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/AvenirNext-Bold.woff2') format('woff2'),
        url('../fonts/AvenirNext-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/AvenirNext-Italic.woff2') format('woff2'),
        url('../fonts/AvenirNext-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/AvenirNext-Medium.woff2') format('woff2'),
        url('../fonts/AvenirNext-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/AvenirNext-MediumItalic.woff2') format('woff2'),
        url('../fonts/AvenirNext-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/AvenirNext-Regular.woff2') format('woff2'),
        url('../fonts/AvenirNext-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next Ultra';
    src: url('../fonts/AvenirNext-UltraLight.woff2') format('woff2'),
        url('../fonts/AvenirNext-UltraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next Ultra';
    src: url('../fonts/AvenirNext-UltraLightItalic.woff2') format('woff2'),
        url('../fonts/AvenirNext-UltraLightItalic.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}




body.tm-isblog.rev-offcanvas-page,
body.tm-noblog.rev-offcanvas-page {
  overflow-x: clip !important;
  margin-left: 0 !important;
}

/* override stili form -- inizio */

.rev-form input:not([class*='rev-form-width-']):not([class*='rev-width-']):not([type="radio"]):not([type="checkbox"]),
.rev-form select:not([class*='rev-form-width-']):not([class*='rev-width-']),
.rev-form textarea:not([class*='rev-form-width-']):not([class*='rev-width-']),
.rev-form-width-large {
	width: 100%;
}

form {
	margin: 0px;
}

.rsform-checkbox {
	margin-right: 5px !important;
}

.rsform-submit-button {
	width: 100% !important;
}

fieldset {
	border: none !important;
	padding: 0px !important;
	margin: 0px !important;
}

.rev-form-row+.rev-form-row {
	margin-top: 10px;
}

.rev-form-icon {
	display: block;
}

div.formBody {
	display: block;
	float: none !important;
}

.rsform-block-accetto-privace {
	text-align: right;
}
.campo .rsform-block-accetto-privace, .campo .rsform-block-newsletter-5 {
margin-top: 0;
color: #fff!important;
}

.rsform-block-new-reg {
	text-align: left;
}

.rsform-error {
	border-color: #dc8d99 !important;
	background: #fff7f8 !important;
	color: #d85030 !important;
	font-weight: bold !important;
}

.rsform-error::-webkit-input-placeholder {
	/* Chrome/Opera/Safari */
	color: #d85030 !important;
}

.rsform-error::-moz-placeholder {
	/* Firefox 19+ */
	color: #d85030 !important;
}

.rsform-error:-moz-placeholder {
	/* Firefox 18- */
	color: #d85030 !important;
}

.rsform-error::-ms-input-placeholder {
	/* Edge 12-18 */
	color: #d85030 !important;
}

.rev-form-icon:not(.rev-form-icon-flip)>select {
	padding-left: 30px !important;
}


/* override stili form -- fine */


/* barra mobi -- inizio */

.barra-mobi {
	position: fixed;
	bottom: 0;
	z-index: 100;
	width: 100%;
	text-align: center;
}

.barra-mobi a {
	font-size: 12px;
	text-transform: uppercase;
	padding: 9px 6px 12px 6px;
	display: block;
}

.barra-mobi a i {
	display: block;
	font-size: 20px;
	pointer-events: none;
}

.barra-mobi a.tele {
	background: rgb(124, 148, 136, 0.98);
	color: #fff;
}
.barra-mobi a {
font-size: 17px;
  text-transform: uppercase;
  padding: 16px 6px 7px 6px;
  display: block;
  min-height: 41px;
  box-sizing: border-box;
}
.barra-mobi a.preno {
	color: #fff;
	background: rgba(73, 73, 68, 0.98);
}
.barra-mobi a.preno i {
  margin-right: 4px;
}
.barra-mobi a i {
  display: inline-block;
  font-size: 20px;
  pointer-events: none;
}
#scrollToTop {
	bottom: 65px;
	right: 10px;
	background: transparent;
	border: 1px solid #2e2e2e;
	display: none;
}

#scrollToTop:hover {
	background: #fff;
}


/* barra mobi -- fine */

.tm-leading-article .rev-article:last-child {
	border-bottom: 0;
}

.fumetto.rev-alert {
	position: fixed;
	bottom: 45px;
	left: 45px;
	width: 290px;
	z-index: 99;
	background: #444;
	color: #fff;
}

.fumetto ul.rev-default {
	padding-left: 0;
	list-style: none;
}

:root {
	--font2:"Avenir Next";
	--verde:#192a30;
	--verde-chiaro:#2A3B41;
	--grigio:#b5b5b5;
    --white: #fff;

}

a {
display: inline-block;
}


body {
background-color: var(--verde);
width: -webkit-fill-available;
}

p, li, a {
color: #fff;
font-size: 16px;
font-family: 'Gotham';
line-height: 31px;
font-weight: 300;
letter-spacing: 0.05em;
}

.pagina-team p{
line-height: 31px;
}

.pagina-metodo p{
    line-height: 32px;
}

h1, .h1 {
color: #fff;
font-family: var(--font2);
font-weight: 300;
font-size: 50px;
line-height: 60px;
margin-bottom: 40px;
}
h2, p.h2 {
color: #fff;
font-family: var(--font2);
font-weight: 300;
font-size: 35px;
line-height: 45px;
margin-bottom: 45px;
margin-top: 0;
}
h3 {
color: #fff;
font-family: var(--font2);
font-weight: 400;
font-size: 20px;
line-height: 28px;
letter-spacing: 0.05em;
}
h3 b {
font-weight: 500;
}
.h1bold {
font-weight: 400;
}

body{
  overflow: hidden;
}


::placeholder {
    color: #fff !important;
    font-size: 15px;
    line-height: 25px;
    font-family: sans-serif;
}

.caso-teaser p{
  line-height: 32px;
}

#tm-top-a{
  position: relative;
  z-index: 2;
  min-height: 100vh;
  min-height: 100dvh;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  background-color: #2a3b41;
  box-sizing: border-box;
}
/* Hero background video (homepage) */
#tm-top-a .hero-video-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
#tm-top-a .hero-video-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
#tm-top-a .rev-panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
}

.tit-slider{
  position: absolute;
  bottom: 5%;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: block;
  z-index: 1;
  text-align: center;
}

.tit-slider h2{
  text-transform: uppercase;
    font-weight: 300;
    font-size: 50px;
    line-height: 60px;
}


/*SOPRA FOTO*/
.valore {
font-size: 64px;
  color: var(--grigio);
  font-family: var(--font2);
  position: absolute;
  left: -151px;
  top: 20px;
  font-weight: 500;
}
.valore-testo {
position: relative;
}
.valore-testo::before {
width: 150px;
height: 3px;
position: absolute;
left: -127px;
top: 8px;
background-color: var(--grigio);
content: "";
}
.valore-testo::after {
width: 12px;
height: 12px;
position: absolute;
left: 12px;
top: 4px;
border-radius: 50%;
background-color: var(--grigio);
content: "";
}
.step-foto .rev-overlay {
overflow: visible;
}
.step-foto .valore-testo {
padding-left: 55px;
}
/*SOPRA FOTO*/


/*FORM*/
input, textarea {
color: #fff!important;
}
input::placeholder, textarea::placeholder {
color: #fff!important;
opacity: 1;
}
input:not(.rsform-checkbox), textarea {
color: #fff;
background: none!important;
border-width: 0 0 1px 0!important;
min-height: 55px;
padding: 30px 10px 10px 0!important;
outline: none;
}
input:not(.rsform-checkbox):focus,
textarea:focus {
outline: none;
}
input:not(.rsform-checkbox):focus-visible,
textarea:focus-visible {
outline: none;
border-bottom-color: #fff!important;
box-shadow: 0 1px 0 0 #fff;
}
textarea {
height: 120px!important;
border-radius: 0!important;
background: none!important;
border: none!important;
border-bottom: 1px solid #fff!important;
}
.rsform-block-accetto-privace, .rsform-block {
margin-top: 30px;
text-align: left;
}
.rsform-block-newsletter-5 {
text-align: left;
}
.rsform-block-recaptcha-5 {
margin: 0!important;
}
input.rsform-submit-button {
background-color: var(--grigio) !important;
  color: #333 !important;
  font-family: 'Gotham';
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.15em;
  padding: 12px 10px !important;
  min-height: inherit;
  font-size: 15px;
  transition: all 0.3s;
}
input.rsform-submit-button:hover {
background-color: #fff!important;
  transition: all 0.3s;
}
.col-check .rev-form-row {
margin-top: 0;
}
.col-check label, .col-check a, .rsform-block-accetto-privace, .rsform-block-accetto-privace a, .rsform-block-newsletter-5, .rsform-block-newsletter-5 a {
font-size: 13px;
}
.iniziale-interno {
margin-bottom: 70px!important;
}
.campo {
padding-top: 30px;
}
#tm-footer {
border-top: 2px solid var(--grigio);
padding: 80px 30px 60px;
margin-top: 110px;
background-color: var(--verde);
margin-bottom: 0;
}
.pagina-team {
background-color: #fff;
}
.movie-team-frontpage {

}
.movie-team-frontpage .team-content {
background-color: #fff;
}
.movie-team-frontpage .details {
background-color: #fff;
}
.movie-team-frontpage .team-intro-content {
background-color: #fff;
}
.movie-team-frontpage .rev-container {
max-width: 1400px;
}
.overlay-box {
position: relative;
}
.foto-2, .foto-3 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
transition: all 0.5s;
}
.overlay-box {
box-sizing: border-box;
transition: all 0.3s;
}
.overlay-box:hover {
transition: all 0.3s;
}
.overlay-box:hover .foto-2,
.overlay-box:hover .foto-3 {
    opacity: 1;
}
.overlay-box:hover .foto-2 {
    transition-delay: 0.2s;
}
.overlay-box:hover .foto-3 {
    transition-delay: 0.8s;
}
.overlay-box:not(:hover) .foto-2 {
    transition-delay: 0.8s;
}
.overlay-box:not(:hover) .foto-3 {
    transition-delay: 0.2s;
}
.movie-team-frontpage * {
color: var(--verde)!important;
}
.info-team *, .info-team-left * {
color: #fff!important;
}
.info-team {
background-color: var(--verde);
bottom: -120px;
opacity: 0;
transition: all 0.5s;
}
.info-team-left * {
color: var(--verde)!important;
}
.info-team-left {
background-color: rgba(255,255,255,0.8);
background: linear-gradient(90deg, rgba(255,255,255,0.8701681356136204) 14%, rgba(181,181,181,0.906582701439951) 48%, rgba(181,181,181,1) 100%);
  opacity: 0;
  transition: all 0.5s;
  top: auto;
bottom: 40px;
left: -200px;
  box-sizing: border-box;
}
.overlay-box:hover .info-team-left {
opacity: 1;
left: 0;
transition-delay: 0.8s;
transition: all 0.5s;
}
.overlay-box:hover .info-team {
opacity: 1;
bottom: 0;
transition-delay: 0.8s;
transition: all 0.5s;
}
.info-team h3, .info-team-left h3 {
text-transform: uppercase;
margin-bottom: 7px;
}
.info-team p, .info-team-left p {
margin-bottom: 0;
margin-top: 0;
}

/*.elenco-strutture svg {
    transform: scale(-1);
}
*/

/*confronto foto inizio*/
img {
  max-width: 100%;
}
.cd-image-container {
  position: relative;
  width: 100%;
  max-width: inherit;
  margin: 0 auto;
}
.cd-image-container img {
  display: block;
}
.cd-image-label {
  position: absolute;
  font-weight: 500;
  letter-spacing: 1px;
  top: 0;
  bottom: auto;
  right: 0;
  color: #ffffff;
  padding: 1em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  opacity: 0;
  -webkit-transform: translateY(20px);
  -moz-transform: translateY(20px);
  -ms-transform: translateY(20px);
  -o-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: -webkit-transform 0.3s 0.7s, opacity 0.3s 0.7s;
  -moz-transition: -moz-transform 0.3s 0.7s, opacity 0.3s 0.7s;
  transition: transform 0.3s 0.7s, opacity 0.3s 0.7s;
}
.box-bottoni {
text-align: righ;
margin: 50px 0 0 auto;
position: relative;
}
.entra {
background-color: var(--grigio) !important;
  color: #333 !important;
  font-family: 'Gotham';
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.15em;
  padding: 12px 20px !important;
  min-height: inherit;
  font-size: 15px;
  transition: all 0.3s;
}
/*.box-bottoni::before {
position: absolute;
left: 0;
right: 0;
margin: 0 auto;
width: 600px;
top: 50%;
content: "";
height: 1px;
background-color: var(--grigio);
}*/
.entra-relativo {
position: relative;
}
.entra:hover {
background-color: #fff!important;
  transition: all 0.3s;
  text-decoration: none;
}
.cd-image-label.is-hidden {
  visibility: hidden;
}
.is-visible .cd-image-label {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  font-family: var(--font2);
}

.cd-resize-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  overflow: hidden;
  /* Force Hardware Acceleration in WebKit */
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.cd-resize-img img {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  height: 100%;
  width: auto;
  max-width: none;
}
.cd-resize-img .cd-image-label {
  right: auto;
  left: 0;
  font-family: var(--font2);
}
.is-visible .cd-resize-img {
  width: 50%;
  /* bounce in animation of the modified image */
  -webkit-animation: cd-bounce-in 0.7s;
  -moz-animation: cd-bounce-in 0.7s;
  animation: cd-bounce-in 0.7s;
}

@-webkit-keyframes cd-bounce-in {
  0% {
    width: 0;
  }
  60% {
    width: 55%;
  }
  100% {
    width: 50%;
  }
}
@-moz-keyframes cd-bounce-in {
  0% {
    width: 0;
  }
  60% {
    width: 55%;
  }
  100% {
    width: 50%;
  }
}
@keyframes cd-bounce-in {
  0% {
    width: 0;
  }
  60% {
    width: 55%;
  }
  100% {
    width: 50%;
  }
}
.cd-handle {
  position: absolute;
  height: 44px;
  width: 44px;
  /* center the element */
  left: 50%;
  top: 50%;
  margin-left: -22px;
  margin-top: -22px;
  border-radius: 50%;
  background: #192a30 url("https://images.clickfunnels.com/09/a714400d3211e7a0bd7d7140585054/cd-arrows.svg") no-repeat center center;
  cursor: move;
  box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.2), 0 0 10px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.3);
  opacity: 0;
  -webkit-transform: translate3d(0, 0, 0) scale(0);
  -moz-transform: translate3d(0, 0, 0) scale(0);
  -ms-transform: translate3d(0, 0, 0) scale(0);
  -o-transform: translate3d(0, 0, 0) scale(0);
  transform: translate3d(0, 0, 0) scale(0);
}
.cd-handle::before {
position: absolute;
left: 0;
right: 0;
content: "";
height: 1500px;
width: 2px;
background: var(--verde);
margin: 0 auto;
z-index: -9;
top: 44px;
}
.cd-handle::after {
position: absolute;
left: 0;
right: 0;
content: "";
height: 1500px;
width: 2px;
background: var(--verde);
margin: 0 auto;
z-index: -9;
bottom: 44px;
}
.is-visible {
overflow: hidden;
}
.cd-handle.draggable {
  /* change background color when element is active */
  background-color: #445b7c;
}
.is-visible .cd-handle {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  -moz-transform: translate3d(0, 0, 0) scale(1);
  -ms-transform: translate3d(0, 0, 0) scale(1);
  -o-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
  -webkit-transition: -webkit-transform 0.3s 0.7s, opacity 0s 0.7s;
  -moz-transition: -moz-transform 0.3s 0.7s, opacity 0s 0.7s;
  transition: transform 0.3s 0.7s, opacity 0s 0.7s;
}
.twentytwenty-after-label::before {
content: "DOPO"!important;
}
.twentytwenty-before-label::before {
content:"PRIMA"!important;
}
/*confronto foto fine*/



.movie-strutture-frontpage p.h1 {
margin-bottom: 10px;
font-weight: 400;
}
.movie-strutture-frontpage h2 {
margin-top: 0;
}
.movie-strutture-frontpage {
margin-bottom: 115px!important;
}
.pagina-metodo .box-numeri {
margin-bottom: 115px!important;
/*margin-top: 80px;*/
}
.pagina-casi .teaser-casi {
margin-top: 80px;
}
.caso-intro {
text-align: right;
margin-bottom: 25px;
}
.caso-intro h3 {
margin-bottom: 14px;
text-transform: uppercase;
font-weight: 300;
margin-top: 0;
}
.caso-testo h3 {
font-weight: 400;
}
.caso-testo {
padding-right: 50px;
}
.caso-testo h2 {
font-weight: 400;
margin-bottom: 8px;
}
.caso-testo p {
margin-top: 0;
}
.box-prima {
margin-top: 55px;
}
.pulisci {
clear: both;
}
.teaser-casi {
margin-bottom: 110px;
padding-left: 50px;
}
.descrizione-intervento {
font-style: italic;
}
.teaser-casi:last-child {
margin-bottom: 0;
}
.pagina-grazie article {
padding-left: 25px;
padding-right: 25px;
}



.slide {
width: 100%;
height: 100%;
/*min-height: 600px;
max-height: 900px;*/
background-size: cover;
background-position: center;
background-repeat: no-repeat;
text-align: center;
display: flex;
  flex-direction: column;
  justify-content: center;
}

.filtro-home {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #2a3b41ba;
    z-index: 1;
    pointer-events: none;
}
.filtro-home .slide-home-filtro {
    pointer-events: auto;
}
/* REVMIND stays where it was; tagline directly underneath */
.filtro-home .hero-overlay-inner {
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.filtro-home .hero-brand-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    max-width: 1992px;
}
.filtro-home .hero-curve-wrap {
    width: 100%;
    overflow: hidden;
    flex-shrink: 0;
}
.filtro-home .hero-curve-wrap svg {
    width: 100%;
    height: auto;
    display: block;
}
.filtro-home .hero-tagline {
    margin: 0;
    margin-top: 0.5em;
    padding-left: 30px;
    padding-right: 30px;
    text-align: center;
    font-size: clamp(1.25rem, 3vw, 1.75rem);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #fff;
}

/* Hero: responsive / mobile */
@media (max-width: 767px) {
    #tm-top-a {
        min-height: 100svh;
    }
    .filtro-home .slide-home-filtro {
        padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom) 0;
        align-items: center;
        justify-content: center;
    }
    .filtro-home .hero-brand-block {
        width: 100%;
        max-width: 100%;
    }
    .filtro-home .hero-curve-wrap {
        width: 100%;
        max-height: 45vh;
    }
    .filtro-home .hero-curve-wrap svg {
        width: 100%;
        height: auto;
        max-height: 45vh;
    }
    .filtro-home .hero-tagline {
        padding-left: 16px;
        padding-right: 16px;
        font-size: clamp(1.5rem, 7vw, 2rem);
        margin-top: 0.4em;
    }
}
@media (max-width: 480px) {
    .filtro-home .hero-curve-wrap {
        max-height: 38vh;
    }
    .filtro-home .hero-curve-wrap svg {
        max-height: 38vh;
    }
    .filtro-home .hero-tagline {
        font-size: clamp(1.25rem, 8vw, 1.75rem);
    }
}


.slide .revmind {
/*max-width: 1500px;*/
}
.slide-home {
background-image: url(../images/slide-home.jpg);
}
.slide-interna {
background-image: url(../images/slide-home.jpg);
height: 200px;
margin-bottom: 80px!important;
}
.slide-interna h2 {
margin-bottom: 0;
}
.titolo-pagina {
font-weight: 500;
margin-bottom: 0;
}
.al-centro {
text-align: center;
}

.al-centro h2{
  padding-top: 30px;
}

.ridotto p {
max-width: 400px!important;
margin: 0 auto;
text-align: center;
}
.ridotto-medio p {
max-width: 500px!important;
margin: 0 auto;
text-align: center;
}

#tm-bottom-a .box-tre-colonne {
text-align: center;
overflow: hidden;
padding: 5% 10% 10%;
}

#tm-bottom-b {
margin-top: 0!important;
}
.box-tre-colonne p {
max-width: 615px;
margin: 0 auto;
}
.griglia-numeri {
margin-top: 190px;
position: relative;
}
.griglia-numeri::before, .box-immobili::before {
position: absolute;
left: -2000px;
width: 6000px;
top: 100px;
height: 2px;
content: "";
background-color: var(--grigio);
}
.numero {
min-height: 600px;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
background-color: #dedede;
position: relative;
padding: 95px 10px 30px;
box-sizing: border-box;
}
.numero::before {
position: absolute;
left: 0;
top: 0;
content: "";
background-color: rgba(0,0,0,0.5);
width: 100%;
height: 100%;
    mix-blend-mode: multiply;
}
.numero .valore-testo::before {
position: absolute;
background-color: var(--grigio);
  content: "";
  width: 2px;
  height: 150px;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 70px;
  top: auto;
}
.numero .valore-testo::after {
left: 0;
right: 0;
bottom: 68px;
margin: 0 auto;
top: auto;
}
.numero .valore {
left: 0;
right: 0;
bottom: auto;
top: -130px;
}
.uno {
background-image: url(../images/numero-1.jpg);
}
.due {
background-image: url(../images/numero-2.jpg);
}
.tre {
background-image: url(../images/numero-3.jpg);
}
.box-chi-siamo {
padding: 0 0 90px 50px;
box-sizing: border-box;
}
.foto-chi-siamo {
background-image: url(../images/revmind-affitti-chi-siamo.jpg);
background-size: cover;
background-position: center left;
background-repeat: no-repeat;
}
.griglia-chi-siamo {
padding-top: 0;
display: flex;
width: 100%;
margin-bottom: 40px;
margin: 0 0 120px;
}
.testo-chi-siamo {
width: 450px;
padding: 70px 50px 70px 0;
box-sizing: border-box;
}
.foto-chi-siamo {
flex-grow: 1;
}
.intro-numeri {
padding-left: 50px;
box-sizing: border-box;
margin-bottom: 5%;
}
.step-testo {
flex-direction: column;
justify-content: center;
padding-top: 110px;
padding-bottom: 0px;
box-sizing: border-box;
display: -webkit-box;
}
.step-testo h3 {
margin-top: 100px;
color: var(--grigio);
}

#valorizzazione, 
#foto, 
#strategie, 
#gestione, 
#ospiti,
#target {
    padding-top: 120px;
}

.grigio {
color: var(--grigio);
}
.step-foto .rev-overlay {
position: relative;
}
.step-foto .rev-overlay::before {
position: absolute;
left: 0;
top: 0;
content: "";
width: 100%;
height: 100%;
background: linear-gradient(180deg, rgba(38,38,38,0.5942577714679622) 0%, rgba(38,38,38,0.38137261740633754) 20%, rgba(38,38,38,0) 49%, rgba(38,38,38,0) 53%, rgba(38,38,38,0.23571435410101538) 84%, rgba(38,38,38,0.5382353625043768) 100%);
pointer-events: none;
z-index: 9;
}
.step-logo {
position: relative;
}
.step-logo::before {
  position: absolute;
  left: -50px;
  top: 25px;
  content: "";
  background-image: url(../images/logo.svg);
  width: 380px;
  height: 340px;
  background-repeat: no-repeat;
  background-size: 100% auto;
  opacity: 0.2;
  z-index: 9;
}
.scopri {
font-style: italic;
font-weight: 400;
position: relative;
display: block;
padding-left: 25px;
max-width: max-content;
color: #fff;
display: -webkit-flex;
}
a.scopri:hover {
color: #fff;
transition: all 0.3s;
text-decoration: none;
display: -webkit-flex;
}
a.scopri:hover::before {
left: calc(100% - 10px);
transition: all 0.3s;
}
.scopri::before {
position: absolute;
  content: "";
  left: -15px;
  width: 34px;
  height: 18px;
  background-color: var(--grigio);
  clip-path: polygon(86% 0, 100% 0%, 64% 100%, 51% 100%);
  bottom: 13px;
transition: all 0.3s;
}
.step-foto .rev-overlay-panel {
pointer-events: none;
z-index: 9;
}
.step-foto .rev-overlay-bottom {
padding-right: 40px;
text-align: right;
z-index: 9;
}

.box-step .rev-overlay-bottom {
    text-align: left;
}


.step-foto .rev-overlay-bottom .scopri {
float: right;
}
.elenco-strutture {
padding-top: 5%;
position: relative;
}
/*.elenco-strutture::before {
position: absolute;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
content: "";
background-image: url(../images/onda-sotto.svg);
background-repeat: no-repeat;
background-size: 100% auto;
background-position: center;
width: 1900;
height: 455px;
}*/
.elenco-strutture .numero .valore-testo::before, .elenco-strutture .numero .valore-testo::after {
display: none;
}
.elenco-strutture .griglia-numeri {
margin-top: 80px;
}
.tm-headerbar {
padding: 30px 0 0 30px;
margin-top: 20px!important;
position: absolute;
z-index: 99;
width: 100%;
box-sizing: border-box;
}
.tm-headerbar.barra-fixed {
margin-top: 0!important;
background-color: #000b16;
padding: 20px 0 10px 30px;
width: 100% !important;
height: 100px;
}
.rev-navbar-toggle::after, .rev-navbar-toggle::before {
display: none;
}
.box-menu {
height: 80px;
position: absolute;
width: 83px;
left: 150px;
top: 16px;
}

.barra-fixed .box-menu{
  top: 3px;
}


.box-menu::before {
position: absolute;
  content: "";
  right: 13px;
  width: 34px;
  height: 60px;
  background-color: var(--grigio);
  clip-path: polygon(81% 0, 100% 0%, 41% 100%, 20% 100%);
  bottom: 10px;
transition: all 0.3s;
transform: translateX(100px);
opacity: 0;
}
.tm-navbar {
margin: 0;
}
.box-menu a:hover .linea-1, .rev-offcanvas-page .linea-1 {
top: 17px;
transition: all 0.3s;
}
.box-menu a:hover .linea-2, .rev-offcanvas-page .linea-2 {
top: 62px;
transition: all 0.3s;
}
.menu {
margin-bottom: 0;
margin-top: 0;
padding: 14px 0 0;
line-height: 1;
opacity: 1;
transition: all 0.3s;
position: relative;
width: 100%;
text-align: center;
}
.box-menu a {
height: 100%;
padding: 0;
width: 100%;
}
.box-menu:hover::before, .rev-offcanvas-page .box-menu::before {
transition: all 0.3s;
transform: translateX(0px);
opacity: 1;
}
.box-menu a:hover .menu, .rev-offcanvas-page a .menu {
opacity: 0!important;
transition: all 0.3s;
}
.rev-offcanvas-bar {
width: 100%;
max-width: 500px;
background: #000d17;
}

/* Keep desktop offcanvas open-state dark; prevents white root flash-through. */
.rev-offcanvas.rev-active {
background: rgba(0, 13, 23, 0.78);
}

@media (min-width: 960px) {
body.tm-isblog.rev-offcanvas-page,
body.tm-noblog.rev-offcanvas-page {
background-color: #000d17;
}
}

.rev-nav {
width: 100%;
text-align: center;
}
.rev-nav-offcanvas > li > a {
background-color: transparent!important;
font-family: var(--font2);
text-transform: uppercase;
font-size: 25px;
max-width: max-content;
margin: 0 auto;
position: relative;
transition: all 0.3s;
}
.rev-nav-offcanvas > li > a::after {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
content: "";
background: #000d17!important;
z-index: -1;
}
.rev-nav-offcanvas > li {
position: relative;
}

.rev-nav-offcanvas > li:last-of-type {
position:absolute; 
bottom:20px; 
display:flex; 
justify-content:center;
width:100%;
}

.rev-nav-offcanvas a.link-proprietari {
position:relative; 
font-size: 17px;
display:block;
}

.rev-nav-offcanvas a.link-proprietari:before,
.rev-nav-offcanvas a.link-proprietari:after {
content: '';
background: #fff!important;
width: 100%;
height: 1px;
display: block;
z-index: 1;
opacity: 1;
bottom: initial;
top:0;
} 
    
.rev-nav-offcanvas a.link-proprietari:after {
bottom: 0;
top:initial;
} 

.rev-nav-offcanvas a.link-proprietari:hover:before, 
.rev-nav-offcanvas a.link-proprietari:hover:after {
transform:scale(0);
transform-origin: center; 
}        




html .rev-nav.rev-nav-offcanvas > li.rev-active a::before, .rev-nav-offcanvas > li a:hover::before {
position: absolute;
left: calc(50% - 150px);
width: 300px;
margin: 0 auto;
height: 1px;
background-color: #fff;
content: "";
opacity: 1;
bottom: calc(50% - -1px);
transition: all 0.4s;
}
.rev-nav-offcanvas > li a::before {
position: absolute;
left: 0;
right: 0;
width: 0;
margin: 0 auto;
height: 1px;
background-color: #fff;
content: "";
opacity: 0;
transition: all 0.4s;
bottom: calc(50% - -1px);
z-index: -2;
}
.linea {
height: 2px;
background-color: #fff;
width: 100%;
display: block;
transition: all 0.3s;
}
.linea-1 {
position: absolute;
left: 0;
top: 25px;
}
.linea-2 {
position: absolute;
left: 0;
top: 64px;
}
.grecaptcha-badge {
display: none;
}
.logo {
max-width: 80px;
}
.contatti-header a {
display: inline-block;
position: relative;
display: -webkit-inline-box;
}
.contatti-header a:hover {
text-decoration: none;
color: #fff;
text-decoration: none;
}
.contatti-header a::before {
position: absolute;
left: 0;
bottom: 0;
content: "";
background-color: #fff;
height: 2px;
width: 0;
transition: all 0.3s;
}
.contatti-header a:hover::before {
width: 100%;
transition: all 0.3s;
}
.contatti {
background-color: var(--grigio) !important;
  color: #333 !important;
  font-family: 'Gotham' !important;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.15em;
  padding: 12px 35px !important;
  min-height: inherit;
  font-size: 15px;
  margin-left: 30px;
transition: all 0.3s;
}
.contatti::before {
display: none;
}
.contatti:hover {
background-color: #fff!important;
transition: all 0.3s;
}
.griglia-contatti {
text-align: center;
margin: 0 auto 70px;
max-width: 900px;
}
.griglia-contatti i {
font-size: 30px;
margin-right: 8px;
}
.griglia-contatti i {
color: #fff!important;
}
.tm-headerbar .rev-panel {
max-width: inherit!important;
}
.rev-sticky-placeholder {
margin: 0!important;
}
.logo-footer {
max-width: 260px;
margin-bottom: 10px!important;
}
.info-footer {
text-align: left;
}
.omnipolicycookielinks {
text-transform: uppercase;
}
.omnipolicycookielinks a {
font-size: 12px;
}
.info-footer p {
margin-bottom: 5px;
}
.social-footer {
text-align: right;
}
.social-footer .scopri {
margin: 0 0 0 auto;
}
.social i {
font-size: 38px;
margin-left: 10px;
transition: all 0.3s;
}

.social a {
margin-left: 10px;
}
.social a:hover i:before {
color: var(--grigio) !important;
transition: all 0.3s;
}
.social {
margin-bottom: 30px;
}
.box-immobili {
margin-top: 80px;
position: relative;
}
/* Pre-init fallback: keep the slider container visible until UIkit sets
   the height via JS. Once initialized, UIkit adds inline height and the
   absolute-positioned items take over, so this has no visual side-effect. */
.box-immobili .rev-slider-container {
    min-height: 300px;
}
.box-immobili .rev-slider > li:first-child {
    position: relative;
}
.box-immobili .rev-slider.rev-active > li:first-child {
    position: absolute;
}
.slider-immobili h3 {
margin-top: 0;
text-transform: uppercase;
}
.slider-immobili h3 span {
text-transform: none;
display: block;
}
.slider-immobili figure {
position: relative;
}
.slider-immobili figure::before {
position: absolute;
  left: 0;
  top: 0;
  content: "";
  background-color: rgba(0,0,0,0.4);
  width: 100%;
  height: 100%;
transition: all 0.3s;
}
.slider-immobili figure:hover::before {
background-color: rgba(0,0,0,0.2);
transition: all 0.3s;
}
.slider-immobili figcaption {
padding-top: 25%;
}
.box-immobili .rev-slidenav {
display: inherit!important;
top: 100px!important;
}
.box-immobili .rev-slidenav-position .rev-slidenav-previous {
left: -95px;
}
.box-immobili .rev-slidenav-previous::before {
background-image: url(../images/sx.svg);
height: 55px;
width: 40px;
content: "";
display: block;
background-repeat: no-repeat;
background-size: auto 100%;
background-position: right;
transition: all 0.3s;
}
.box-immobili .rev-slidenav-previous:hover::before {
background-position: left;
transition: all 0.3s;
}
.box-immobili .rev-slidenav-position .rev-slidenav-next {
right: -115px;
}
.box-immobili .rev-slidenav-next::before {
background-image: url(../images/dx.svg);
height: 55px;
width: 40px;
content: "";
display: block;
background-repeat: no-repeat;
background-size: auto 100%;
background-position: left;
transition: all 0.3s;
}
.box-immobili .rev-slidenav-next:hover::before {
background-position: right;
transition: all 0.3s;
}
#offcanvas .chiudi {
position: absolute;
z-index: 9999;
opacity: 1;
right: 50px;
top: 35px;
width: 50px;
height: 50px;
}
#offcanvas .chiudi::after {
display: none;
}
.chiudi span {
width: 55px;
  height: 1px;
  background-color: #fff;
  display: block;
  transform: rotate(-45deg);
  pointer-events: none;
}
.chiudi span:last-child {
transform: rotate(45deg);
}
.sfondo-chi-siamo {
background-image: url(../images/sfondo-chi-siamo.jpg);
background-repeat: no-repeat;
background-size: cover;
background-position: center;
min-height: 700px;
position: relative;
z-index: 9;
}
.sfondo-chi-siamo::before {
position: absolute;
left: 0;
top: 0;
content: "";
width: 100%;
height: 100%;
background: linear-gradient(180deg, rgba(38,38,38,0.5942577714679622) 0%, rgba(38,38,38,0.38137261740633754) 20%, rgba(38,38,38,0) 49%, rgba(38,38,38,0) 53%, rgba(38,38,38,0.23571435410101538) 84%, rgba(38,38,38,0.5382353625043768) 100%);
pointer-events: none;
z-index: 9;
}
.interna-chi {
margin-bottom: 0!important;
}
.intro {
/*max-width: 900px;
padding-top: 80px;
  padding-bottom: 76px;*/
  padding: 5% 5% 0 2%;
}
.intro h1 {
margin-bottom: 5px;
}

/*.pagina-chi-siamo .box-tre-colonne > svg {
  transform: rotate(180deg)!important;
}*/

.pagina-chi-siamo .intro div {
margin-bottom: 80px;
padding-left: 50px;
}
.pagina-chi-siamo .slide-interna {
margin-bottom: 0!important;
}
.sfondo-chi-siamo-sotto {
min-height: 570px;
background-color: var(--verde-chiaro);
padding: 170px 170px 100px 125px;
position: relative;
z-index: 8;
}
.griglia-testo-sotto {
margin-top: -40px!important;
margin-bottom: 130px!important;
}
.sfondo-chi-siamo-sotto > div {
max-width: 1100px;
}
.sfondo-chi-siamo-sotto::before {
position: absolute;
right: -425px;
  bottom: -165px;
  content: "";
  background-image: url(../images/logo.svg);
  width: 580px;
  height: 430px;
  background-repeat: no-repeat;
  background-size: 100% auto;
  opacity: 0.1;
  z-index: -1;
}
.sfondo-chi-siamo-sotto > div {
z-index: 9;
}
.sfondo-chi-siamo-sotto::after {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
content: "";
background-color: var(--verde-chiaro);
z-index: 1;
opacity: 0.8;
pointer-events: none;
}
.sfondo-chi-siamo-sotto .h1 {
margin-bottom: 3px;
}
.pagina-chi-siamo article {
overflow: hidden;
}
/*.pagina-chi-siamo .elenco-strutture {
padding-top: 30px;
}
.pagina-chi-siamo .elenco-strutture::before {
display: none;
}
.box-valori {
margin-bottom: 80px!important;
}*/
.valori-sx {
padding-right: 50px;
border-right: 1px solid #fff;
}
.valori-dx {
padding-left: 50px;
}
.lista-valori {
text-align: left;
margin-top: 40px;
padding-top: 30px;
padding-bottom: 10px;
}
.lista-valori li {
list-style: none;
position: relative;
padding-left: 60px;
margin-bottom: 40px;
}
.lista-valori p.h2 {
margin-bottom: 10px;
}
.lista-valori p {
margin-top: 0;
}
.lista-valori li::before {
position: absolute;
left: 0;
top: 3px;
content: "";
background-image: url(../images/check.svg);
background-repeat: no-repeat;
background-size: 100% auto;
width: 40px;
height: 100px;
}
.lista-valori li::after {
position: absolute;
left: 0px;
top: 3px;
content: "";
background-image: url(../images/check.svg);
background-repeat: no-repeat;
background-size: 100% auto;
width: 40px;
height: 100px;
opacity: 0.2;
}
.container-news {
max-width: 1500px;
margin-top: 50px;
}

.descrizione-full {
    padding: 20px 0 20px 50px;
}

#tm-top-a .interna-news {
margin-bottom: 0!important;
}
#tm-top-a:has(.interna-news) {
min-height: 200px;
height: 200px;
}
#tm-top-a:has(.slide-interna) {
min-height: 200px;
height: 200px;
}
body:not(.home):not(.blog):not(.single) #tm-top-b {
height: 80px;
}
.descrizione-full h1 {
text-transform: uppercase;
margin-bottom: 8px;
}
.descrizione-full h2 {
text-transform: uppercase;
}

.news-teaser h3 {
font-family: var(--font2);
  font-weight: 300;
  text-transform: uppercase;
  font-size: 23px;
}
.news-teaser .scopri {
text-transform: uppercase;
}
.news-teaser .pos-links {
margin-top: 25px;
}
.grid-column {
padding-bottom: 40px;
}
.news-teaser .rev-overlay-icon::before {
content: "";
background-image: url(../images/plus.svg);
background-size: 100% auto;
background-repeat: no-repeat;
width: 50px;
height: 50px;
transition: all 0.4s;
z-index: 9;
opacity: 0;
margin-top: 25px;
}
.news-teaser:hover .rev-overlay-icon::before {
opacity: 1;
transition: all 0.3s;
margin-top: 0;
}
.news-teaser .rev-overlay-icon::after {
width: 100%;
height: 100%;
content: "";
position: absolute;
left: 0;
top: 0;
background-color: rgba(25, 42, 48, 0.4);
opacity: 0;
transition: all 0.4s;
}
.news-teaser figure:hover .rev-overlay-icon::after {
opacity: 1;
transition: all 0.3s;
}

[data-rev-slideset] {
    max-width: 1111px;
    margin-left: auto;
    margin-right: auto;
}

.news-teaser .pos-description {
    color: #ffffff96;
    font-size: 13px;
    letter-spacing: 0.05em;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-teaser .pos-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-teaser > a {
    display: block;
    width: 100%;
}

.news-teaser figure.rev-overlay {
    display: block;
    overflow: hidden;
    aspect-ratio: 12 / 9;
    width: 100%;
}

.news-teaser figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (max-width: 767px) {
    .rev-slideset > li.rev-width-1-3 {
        width: 100%;
    }
    .rev-slideset > li.rev-width-1-3:nth-child(n+2) {
        display: none;
    }
}

.pagination-bg {
text-align: center;
}
.offerte-full {
position: relative;
overflow: hidden;
padding-bottom: 80px;
margin-bottom: -110px;
}
.offerte-full::before {
position: absolute;
  right: -25px;
  bottom: 0;
  content: "";
  background-image: url(../images/logo.svg);
  width: 600px;
  height: 400px;
  background-repeat: no-repeat;
  background-size: 100% auto;
  opacity: 0.02;
}


/*.elenco-strutture svg:not(:root) {
    overflow: visible;
}*/

.gestione {
padding: 0;
/* column-count: 2; */
/* -webkit-column-count: calc(2); */
columns: 1;
/* -webkit-columns: 1; */
}


.gestione li {
  list-style: none !important;
  break-inside: avoid;
  padding: 0 0 0 80px;
  margin-bottom: 10px;
  position: relative;
  min-height: 55px;
  z-index: 9;
  padding-top: 20px;
  line-height: 25px;
  display: -webkit-flex;
  display: -webkit-inline-box;
  width: 50%;
}

.gestione li::before {position: absolute;left: 0;top: 5px;content: "";background-image: url(../images/ico-strategia.svg);background-repeat: no-repeat;background-size: 80% auto;width: 70px;height: 50px;}
.gestione li.ico-strategia::before {
background-image: url(../images/ico-strategia.svg);
}
.gestione li.ico-proprietario::before {
background-image: url(../images/ico-proprietario.svg);
}
.gestione li.ico-fotografo::before {
background-image: url(../images/ico-fotografo.svg);
}
.gestione li.ico-vendita::before {
background-image: url(../images/ico-vendita.svg);
}
.gestione li.ico-contabile::before {
background-image: url(../images/ico-contabile.svg);
}
.gestione li.ico-operativa::before {
background-image: url(../images/ico-operativa.svg);
}
.gestione li:nth-child(4) {
-webkit-column-break-before: always;
page-break-before: always;
break-before: column;
}
.box-slider {
margin-top: 60px;
}
.pagina-team #tm-footer {
margin-top: 0;
}
.pagina-team #tm-bottom-e {
background-color: var(--verde);
padding-bottom: 110px;
  padding-top: 70px;
  margin-top: 0;
}
.pagina-team .rev-slider {
transition: transform 400ms linear;
}

/* Griglia come inizio */

.foto{
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  position: relative;
  width: 100%;
  height: 506px;
}

.foto:after{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: rgba(0, 0, 0, 0.5);
      mix-blend-mode: multiply;
}

.griglia-come a {
    width: 100%;
    height: 500px;
    transition: all .5s;
}

.foto-uno{
  background: url(../images/studio-del-target.jpg);
}

.foto-due{
  background: url(../images/valorizzazione-immobili.jpg);
}

.foto-tre{
  background: url(../images/servizio-fotografico.jpg);
}

.foto-quattro{
  background: url(../images/strategia-revenue-avanzate.jpg);
}

.foto-cinque{
  background: url(../images/gestione-funzionale-costi.jpg);
}

.foto-sei{
  background: url(../images/strategia-degli-ospiti.jpg);
}

.txt-come {
    position: absolute;
    z-index: 1;
    bottom: 0;
    background: #2a3b41a8;
    padding: 70px 20px 30px;
    text-align: center;
    margin-bottom: 0px;
    width: -webkit-fill-available;
    height: 170px;
}

.txt-come h2 {
    text-transform: uppercase;
    font-weight: 500;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 0.05em;
    margin-bottom: 0;
}

.txt-come p {
    font-size: 15px;
    line-height: 20px;
    margin-bottom: 0;
}

.num-val {
    position: absolute;
    z-index: 1;
    color: var(--grigio);
    font-weight: 600;
    font-size: 100px;
    opacity: .8 !important;
    top: 20px;
    left: 40px;
    line-height: 160px;
}

.griglia-come a .txt-come,
.griglia-come a .num-val {
    transition: all .5s;
}

.griglia-come a:hover .num-val{
  display: none;
}

/* Griglia come fine */

.subt {
    font-size: 21px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height: 30px;
}

/* Caso studio inizio */

.caso-teaser {
    padding: 130px 5% 0;
}

.txt-caso-teaser {
    padding: 5%;
}

.caso-teaser .pos-media {
    position: relative;
    margin-bottom: 10px;
    overflow: hidden;
}

.caso-teaser .pos-media .pos-detail{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: block;
      margin: 0 auto;
    text-align: center;
    height: 100%;
}

.movie-strutture-frontpage h3 {
    font-size: 25px;
    color: var(--white);
}

.teaser-c .pos-media{
  position: relative;
}

.teaser-c .pos-media:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(38, 38, 38, 0.2);
    display: block;
    mix-blend-mode: multiply;
}

.teaser-c .pos-title {
    position: absolute;
    top: 5%;
    left: 5%;
}

.teaser-c {
    position: relative;
}

.txt-hotspot {
    bottom: -100%;
    position: absolute;
    width: 100%;
}

.grid-caso-teaser {
    margin-top: 5%;
}

.grid-caso-teaser .pos-gallery {
    margin-top: 5%;
    overflow: hidden;
    position: relative;
}

.grid-caso-teaser .pos-gallery a img {
    transition: all .5s;
    position: relative;
    opacity: 0.5;
}

.grid-caso-teaser .pos-gallery:hover a img {
    opacity: 1;
}

.grid-caso-teaser .pos-gallery:after {
    content: url(../images/ico-fotografo.svg);
    position: absolute;
    bottom: 40%;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    display: block;
    width: 60px;
    transition: all .5s;
}

.grid-caso-teaser .pos-gallery:hover:after{
  opacity: 0;
  width: 0;
}

/*.grid-caso-teaser .pos-gallery a:hover img {
    opacity: .7;
}*/

span.click {
    color: var(--white);
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin: 10px 0 20px 10px;
    display: block;
    line-height: 20px;
}

/*.pagina-casi .tm-headerbar {
    background: #000;
    margin-top: 0px !important;
    padding: 30px 0 30px 30px;
}*/

.plus{
  z-index: 1;
}

#id282 .plus {
    position: absolute;
    background: #b5b5b59c;
    width: 40px;
    height: 40px;
    top: 60%;
    right: 13%;
    border: 1px solid var(--verde-chiaro);
    border-radius: 50px;
}

#id283 .plus {
    position: absolute;
    background: #b5b5b59c;
    width: 40px;
    height: 40px;
    top: 50%;
    right: 8%;
    border: 1px solid var(--verde-chiaro);
    border-radius: 50px;
}

#id283 .bt_m_1 .plus {
    top: 55%;
    right: 9%;
}

#id283 .bt_m_2 .plus {
    top: -55%;
    right: 45%;
}

#id293 .plus {
    position: absolute;
    background: #b5b5b59c;
    width: 40px;
    height: 40px;
    top: 58%;
    right: 35%;
    border: 1px solid var(--verde-chiaro);
    border-radius: 50px;
}

.plus:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 18px;
    width: 25px;
    height: 2px;
    background: var(--verde-chiaro);
    transition: all .5s;
    transform-origin: center;
}

.plus:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 6px;
    width: 2px;
    height: 25px;
    background: var(--verde-chiaro);
    transition: all .5s;
    transform-origin: center;
}

.plus:hover:after{
    width: 15px;
}

.plus:hover:before{
    height: 15px;
    top: 12px;
}

.bt{
  position: relative;
  height: 100%;
}

.bt_c_1.up .txt-hotspot,
.bt_m_1.up .txt-hotspot,
.bt_m_2.up .txt-hotspot,
.bt_a_1.up .txt-hotspot{
  bottom: 0%;
}

.bt_m_2.up .txt-hotspot{
  bottom: 100%;
}

.txt-hotspot li {
    display: inline-block;
    vertical-align: middle;
  z-index: 2;
  position: relative;
}

.txt-hotspot li img{
  width: 100px !important;
      margin-bottom: 10px;
    border: 1px solid #fff;
}

.txt-hotspot li:last-child{
  padding: 10px 20px 0px;
  width: auto;
  margin-left: -10px;
  font-weight: 400;
  z-index: 1;
}

.txt-hotspot ul {
    margin-bottom: 0;
    /*background: linear-gradient(0deg, rgba(255, 255, 255, 0.75) 0%, rgba(255, 255, 255, 0.75) 35%, rgba(255, 255, 255, 0) 35%, rgba(255, 255, 255, 0) 100%);*/
    background: #ffffffb0;
    padding: 20px 0 7px 0;
}

.caso-teaser .rev-modal{
  background: #2a3b413b;
  overflow-y: auto !important;
}

.caso-teaser .rev-modal-dialog {
    background: var(--grigio);
    width: 400px;
}

.caso-teaser .pos-detail li {
    color: var(--verde-chiaro);
    font-size: 15px;
    line-height: 25px;
    font-family: 'Gotham';
}

.caso-teaser .pos-detail li:first-child{
  margin-bottom: 0px;
}

.caso-teaser .pos-detail ul {
    padding-left: 0;
    list-style: none;
}

.caso-teaser .pos-detail li.didascalia {
    font-size: 17px;
    width: 30%;
    text-align: left;
}

.caso-teaser .pos-title {
    color: #fff;
    font-family: var(--font2);
    font-weight: bold;
    font-size: 55px;
    line-height: 60px;
    margin: 20px 0;
}

.movie-strutture-frontpage .rev-width-medium-1-1:nth-child(even) .caso-teaser .txt-caso-teaser {
    order: -1;
}

.caso-teaser .rev-slidenav-position .rev-slidenav {
  display: block;
  top: 0;
  bottom: -40px;
}

#id282 .rev-slidenav-position .rev-slidenav{
  display: none;
}

.caso-teaser .rev-slidenav-next:before{
  content: url(../images/dx.svg);
  width: 20px;
  display: block;
}

.caso-teaser .rev-slidenav-previous:before{
  content: url(../images/dx.svg);
  width: 20px;
  display: block;
  transform: scaleX(-1);
}

.caso-teaser .box-immobili .rev-slidenav-next::before,
.caso-teaser .box-immobili .rev-slidenav-previous::before{
  background-image: none;
}

.caso-teaser .rev-modal .rev-close:after {
    content: url(../images/ico-close.svg);
    width: 20px;
    display: block;
}

.caso-teaser .rev-modal .rev-close{
  opacity: 1;
}

.teaser-c {
    margin-bottom: 50px;
}

.movie-strutture-frontpage .items {
    padding: 5% 10%;
    display: block;
}

.movie-strutture-frontpage .casi-studio-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

.movie-strutture-frontpage .casi-studio-grid__item,
.movie-strutture-frontpage .casi-studio-grid > [class*="rev-width-"] {
    min-width: 0;
    width: 100%;
}

.movie-strutture-frontpage .casi-studio-grid__item > a,
.movie-strutture-frontpage .casi-studio-grid > [class*="rev-width-"] > a {
    display: block;
    width: 100%;
}

.movie-strutture-frontpage .teaser-c {
    display: block;
    width: 100%;
    margin-bottom: 0;
}

.movie-strutture-frontpage .teaser-c .pos-media {
    aspect-ratio: 3 / 2;
    overflow: hidden;
    width: 100%;
}

.movie-strutture-frontpage .teaser-c .pos-media img {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (min-width: 768px) {
    .movie-strutture-frontpage .casi-studio-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


.caso-teaser .pos-media img {
    width: 100%;
}

.step-testo-contenitore p{
  position: relative;
  z-index: 1;
}

/* Caso studio fine */

.al-centro p{
  position: relative;
  z-index: 1;
}

.privacy {
    padding: calc(10% + 30px) 5% 0;
}

.cl-privacy .box-menu {
    display: none;
}

em {
    color: var(--white);
}

.step-testo-contenitore {
    width: 70%;
}

.rev-recenti li {
    list-style: none;
    margin-top: 20px;
    color: var(--verde);
}

h2.tit-recenti {
    margin-bottom: 0;
    font-size: 20px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height: 25px;
    color: var(--verde);
}

.rev-recenti ul {
    padding-left: 0;
}

.list-art {
    padding: 5%;
}

.rev-recenti .pos-links {
    font-size: 13px;
    font-style: italic;
    line-height: 17px;
}

.rev-recenti li a,
.rev-recenti li a .pos-links{
    transition: all .5s;
    color: var(--verde);
}

.rev-recenti li a:hover {
    color: var(--verde);
    text-decoration: none;
}

.rev-recenti li a:hover .pos-links {
    padding-left: 20px;
}

.news-teaser h3 {
    margin-bottom: 5px;
}

.news-teaser .pos-data,
.descrizione-full .rev-data {
    margin: 5px 0;
    color: var(--white);
    letter-spacing: 0.1em;
    font-weight: 100;
    font-style: italic;
}

.rev-recenti .pos-data {
    margin: 5px 0 0;
    color: var(--verde);
    letter-spacing: 0.1em;
    font-weight: 100;
    font-style: italic;
    font-size: 14px;
    line-height: 20px;
}

/*
.cl-blog .logo{
    max-width: 200px;
    margin-top: 10px;
}

.cl-blog .box-menu {
    left: 260px;
}
*/

.cl-blog .slide-interna{
    margin-bottom: 0px !important;
}

ul.rev-breadcrumb {
    padding: 20px;
}

.rev-breadcrumb li, 
.rev-breadcrumb li a {
    font-size: 12px;
    color: var(--verde);
}

.rev-breadcrumb{
    margin-bottom: 0;
    padding-bottom: 40px !important;
}


.cl-blog .rev-search:before{
    position: absolute;
    top: 3px;
    left: 6px;
    width: 30px;
    line-height: 30px;
    text-align: center;
    font-family: FontAwesome;
    font-size: 14px;
    color: var(--verde);
}

.cl-blog input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]) {
    color: var(--verde) !important;
    background: none !important;
    border-width: 1px !important;
    min-height: 35px;
    padding: 0 0 0 40px !important;
    z-index: 1;
    position: relative;
    opacity: 1;
    border: 1px solid var(--verde);
    border-radius: 40px;
    background: #ffffff33 !important;
}

.rev-cerca {
    width: fit-content;
    margin-left: calc(5% - 5px);
}

.cl-blog .rev-data{
    margin-top: 40px;
}

.rev-tag {
    padding-top: 30px;
    margin-top: 30px;
    border-top: 1px solid var(--verde);
}

.rev-tag a {
    font-size: 13px;
    font-weight: 200;
    letter-spacing: 0.1em;
    color: var(--verde);
}

.rev-tag h2 {
    margin-bottom: 10px;
}

.rev-autore img {
    width: 90px;
    display: block;
    margin: 0 0 0 auto;
}

.rev-autore {
    color: var(--verde);
    font-style: italic;
    display: block;
    font-size: 15px;
    line-height: 35px;
    margin-right: 60px;
    text-align: right;
}

.blog-full,
ul.rev-breadcrumb{
    background: var(--white);
}

.blog-full .rev-data,
.blog-full .rev-title,
.blog-full .rev-description p,
.blog-full .descrizione-full h2{
    color: var(--verde);
}

.blog-full {
    padding: 5% 10%;
}

.movie-news-frontpage {
    padding-top: 5% !important;
}

/* Modulo AIR inizio */

.more {
    position: relative;
    display: block;
    margin: 10px auto 0;
    text-decoration: none !important;
    width: fit-content;
}

.more:before {
    position: absolute;
    left: 0;
    top: -5px;
    width: 100%;
    height: 2px;
    content: "";
    background-color: #ba895d;
    transition: all 0.3s;
}

a.more {
    color: var(--verde);
    text-transform: uppercase;
    font-weight: 500;
}

a.more:before {
    transition: all .5s;
}

a:hover.more:before {
    top: calc(100% + 5px);
}

.mod-air{
    background: linear-gradient(0deg, rgba(251, 247, 244, 0.5) 0%, rgba(251, 247, 244, 0.5) 100%), url(../images/mod-air.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 500px;
    position: relative;
    margin-top: 5%;
}

.txt-air {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
    top: 140px;
    display: block;
}

.block {
    display: block;
}

.bg-txt {
    background-color: #ebdbce;
}

.desc-air {
    font-weight: 400;
    font-size: 20px;
    max-width: max-content;
    margin: 0 auto;
    line-height: 20px;
    letter-spacing: 0.05em;
    color: var(--verde);
    text-transform: uppercase;
    margin-bottom: 20px;
}

.tit-air {
    color: var(--verde);
    text-transform: uppercase;
    font-weight: 400;
    font-size: 20px;
}

.tit-air .col {
    color: #ba895d;
}

/* Modulo AIR fine */

.cl-blog .blog-full h3{
  color: #192a30 !important;
  font-weight: 600 !important;
  text-transform: none !important;
}

.blog-full li,
.blog-full li::marker {
  color: #192a30 !important;
}


.blog-full .rev-description a{
  display: inline;
  color: #192a30 !important;
  text-decoration: underline;
  transition: all .5s;
}
.blog-full li a{
display:block!important;
}
.blog-full .rev-description ul a{
  display: block;
  color: #192a30 !important;
  text-decoration: underline;
  transition: all .5s;
}

.blog-full .rev-description ul, 
.blog-full .rev-description ol{
  list-style-type: decimal;
}

.blog-full .rev-description ul a:hover,
.blog-full .rev-description a:hover{
  text-decoration: none !important;
}
.tm-footer .link{
position:relative; 
transition: all 0.5s ease;  
width:auto;
display:inline-block;
}
.tm-footer a {
 transition: all 0.5s ease;  
}
.tm-footer .link:before , 
.tm-footer .link:after {
content:'';
background:#fff;
width:100%; 
height:1px; 
display:block;  
}
.tm-footer a:hover {
 color: rgb(124, 148, 136, 0.98);
 text-decoration:none;
} 

.bg {
  background: var(--verde);
  padding: 20px;
  margin: 30px 0;
}

.bg p, 
.bg .h1, 
.bg .h2, 
.bg h3 {
  color: #fff !important;
}

.bg p:last-child {
  margin-bottom: 0;
}

/* Modulo Blog Home inizio */

.mod-blog {
  padding: 5%;
}

.bt-link {
  margin-top: 40px;
}

.bt-link a {
  font-style: italic;
  font-size: 20px;
  width: fit-content;
  margin: 0 auto;
  position: relative;
  transition: all .5s;
}

.bt-link a:hover{
	color: #fff;
	text-decoration: none;
}

.bt-link a:after {
  content: url(../images/dx.svg);
  display: block;
  width: 20px;
  position: absolute;
  right: -30px;
  top: -20px;
  transition: all .5s;
}

.bt-link a:hover:after{
	right: -40px;
}

.blogghissimo {
  padding: 0 10% 5%;
}

.list-tit-blog {
  list-style: none;
  padding-left: 0;
}

.list-tit-blog li {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  margin: 0 50px;
}

.list-tit-blog li:last-child{
  position: relative;
}

.logo-check {
  width: 350px;
  position: relative;
}

.list-tit-blog li:last-child:after {
  content: "";
    position: absolute;
    left: -40px;
    top: -10%;
    width: 4px;
    height: 120%;
    background: #b5b5b5;
    display: block;
    transform: skew(-10deg, -10deg);
}

/* Modulo Blog Home fine */

.pagina-team .mod-air{
  margin-top: 0;
}

/* MEDIA QUERY */

@media (min-width: 1355px) and (max-width: 2100px) {

/*.txt-hotspot{
  bottom: -100%;
}*/

}


@media (min-width: 768px) {
.box-step:nth-child(2n) .step-testo {
order: -1;
}
.box-step:nth-child(2n) .step-testo-contenitore {
text-align: right;
margin: 0 0 0 auto;
padding: 0 5%;
}
.box-step:nth-child(2n+1) .step-testo-contenitore {
text-align: left;
margin: 0 auto 0 0;
padding: 0 5%;
}
.box-step:nth-child(2n+1) .step-foto .valore-testo {
padding-right: 55px;
text-align: right;
padding-left: 10px;
}
.box-step:nth-child(2n+1) .valore {
left: auto;
right: -151px;
}
.box-step:nth-child(2n+1) .valore-testo::before {
right: -127px;
left: auto;
}
.box-step:nth-child(2n+1) .valore-testo::after {
left: auto;
right: 12px;
}

}


@media (min-width: 960px) and (max-width: 1199px) {

.box-step .rev-overlay-panel{
  top: -35px;
}

.step-foto .valore-testo {
    padding-left: 45px;
    font-size: 18px;
    line-height: 25px;
}

.pagina-metodo p {
line-height: 33px;
}

.tm-headerbar.barra-fixed{
  height: 90px;
  padding: 16px 0 10px 30px;
}

.barra-fixed .box-menu {
    top: 5px;
}

.griglia-come a{
  height: 445px;
}

.foto{
  height: 450px;
}

.step-testo-contenitore {
    width: auto;
}

.grid-caso-teaser .pos-gallery:after{
  bottom: 30%;
}

.sfondo-chi-siamo{
  min-height: 600px;
}

.logo-check {
  width: 250px;
}

}

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

/*.bt_a_1.up .txt-hotspot,
.bt_m_1.up .txt-hotspot,
.bt_c_1.up .txt-hotspot {
    bottom: -60%;
}

.bt_m_2.up .txt-hotspot {
    bottom: 40%;
}*/

.sfondo-chi-siamo-sotto{
      padding: 170px 60px 100px 125px;
}

.numero{
  min-height: 450px;
}

.foto-chi-siamo{
      background-position: -130px center;
}

.num-val{
  font-size: 100px;
}

.txt-come{
  padding: 20px;
}


.grid-caso-teaser .pos-gallery:after{
  bottom: 20%;
}

.pagina-metodo p {
line-height: 33px;
}

.tm-headerbar.barra-fixed{
  height: 90px;
  padding: 16px 0 10px 30px;
}

.barra-fixed .box-menu {
    top: 5px;
}

.griglia-come a{
  height: 445px;
}

.foto{
  height: 450px;
}

.step-testo-contenitore {
    width: auto;
}

.txt-hotspot li img {
        display: none;
    }

.txt-hotspot ul{
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.75) 0%, rgba(255, 255, 255, 0.75) 90%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%);
}

#id293 .plus{
  top: 48%;
  right: 25%;
}

.sfondo-chi-siamo{
  min-height: 400px;
}

.pagina-metodo h3.valore-testo{
  font-size: 16px;
  line-height: 25px;
}

.movie-team .rev-slider li .info-team-left {
width: 250px;
padding: 15px 10px 10px;
left: 0;
        opacity: 1;
}

.info-team-left p {
    font-size: 16px;
    line-height: 20px;
}

.logo-check {
  width: 200px;
}

.list-tit-blog li:last-child:after{
  display: none;
}

.list-tit-blog h2 {
  margin: 0;
}

.list-tit-blog li {
  text-align: center;
  margin: 20px 50px;
}


}

@media(max-width:767px) {
.logo-footer {
margin-bottom: 40px!important;
}
.overlay-box {
max-width: 300px;
margin: 0 auto;
display: block;
}
.movie-team .rev-slidenav-position .rev-slidenav {
display: inherit;
}
.movie-team .rev-slider li.rev-active .foto-2,
.movie-team .rev-slider li.rev-active .foto-3 {
    opacity: 1;
}
.movie-team .rev-slider li.rev-active .foto-2 {
    transition-delay: 0.8s;
}
.movie-team .rev-slider li.rev-active .foto-3 {
    transition-delay: 1.5s;
}
.movie-team .rev-slider li .info-team-left {
width: 300px;
padding: 15px 10px 10px;
left: 0;
        opacity: 1;
}
.movie-team .rev-slider li .info-team-left p {
font-size: 17px;
}
.movie-team .rev-slider li.rev-active .info-team-left {
opacity: 1;
left: 0;
transition-delay: 1.5s;
}

.step-testo-contenitore {
    width: auto;
}

.intro {
  padding-top: 0;
  padding-bottom: 0;
}
.gestione {column-count: auto;}
.gestione li {
padding: 0 0 0 60px;
min-height: 55px;
margin-bottom: 30px;
}

.gestione li::before {
  top: -10px;
  width: 70px;
  left: -10px;
}

.slide-home h2 {
margin-bottom: -40px!important;
}
.rsform-block-invia {
margin-top: 25px!important;
}
.descrizione-full {
padding: 50px 25px 50px 25px;
} 
.slide-interna {
margin-bottom: 60px!important;
}
.pagina-metodo .box-numeri {
margin-top: 40px;
margin-bottom: 5px!important;
}
body {
padding-bottom: 50px;
font-size: 16px;
overflow: hidden;
}
.box-valori {
padding-top: 40px;
text-align: left;
}
.griglia-contatti div {
padding-left: 0;
}
.griglia-contatti {
margin-bottom: 30px;
}
.descrizione-full h2 {
font-size: 18px;
margin-top: 14px;
}
.lista-valori li {
padding-left: 36px;
}
.lista-valori li:last-child {
margin-bottom: 0!important;
}
.lista-valori li::before {
width: 22px;
}
.lista-valori li::after {
left: -6px;
top: 3px;
width: 21px;
}
.lista-valori p.h2 {
font-size: 23px;
}
.valori-sx, .valori-dx {
padding: 0;
margin-top: 0;
border: 0;
}
.elenco-strutture svg,
.pagina-chi-siamo .box-tre-colonne > svg {
transform: rotate(0deg) scale(2.5) !important;
}

.sfondo-chi-siamo-sotto::before {
right: -78px;
  bottom: -30px;
  width: 300px;
  height: 230px;
}
.griglia-testo-sotto {
margin: 0!important;
padding:0;
}
.sfondo-chi-siamo-sotto {
padding: 65px 30px;
}
.pagina-chi-siamo .intro div {
padding: 50px 30px 35px;
margin-bottom: 5px;
}
.campo {
padding-top: 0px;
}
#tm-footer {
margin-top: 65px;
margin-bottom: 0;
}
.rsform-block-accetto-privace {
padding-top: 20px;
}
.rsform-block-newsletter-5 {
margin-top: 5px;
}
.box-immobili .rev-slidenav {
top: auto!important;
bottom: 20px;
}
.box-immobili .rev-slidenav-position .rev-slidenav-previous {
  left: auto;
  right: 37px;
}
.box-immobili .rev-slidenav-position .rev-slidenav-next {
  right: -30px;
}
.box-immobili {
padding-top: 25px;
margin-bottom: 60px;
margin-top: 5px;
}
.pagina-casi .teaser-casi {
padding-left: 25px;
padding-right: 25px;
margin-top: 35px;
margin-bottom: 0;
}
.elenco-strutture .ridotto {
padding-top: 30px;
}
.caso-intro {
text-align: left;
}
.caso-testo {
padding: 25px 0 30px 25px;
}
.step-logo::before {
top: auto;
bottom: 0;
height: 190px;
width: 300px;
}
.slide {
height: 100vh;
}
.slide-interna {
height: 100%;
min-height: 145px;
}
.sfondo-chi-siamo {
min-height: 250px;
}
.valore {
left: 0;
right: 0;
margin: 0 auto;
text-align: center;
top: 0;
}

#tm-bottom-a .box-tre-colonne {
    padding: 5% 5% 10%;
}

.box-numeri .valore {
  font-size: 90px;
  line-height: 140px;
}
.box-numeri .valore-testo::before {
left: 0;
  right: 0;
  margin: 0 auto;
  width: 2px;
  height: 65px;
  opacity: 0;
}
.box-numeri .valore-testo::after {
left: 0;
right: 0;
margin: 0 auto;
  opacity: 0;
}

#valorizzazione, 
#foto, 
#strategie, 
#gestione, 
#ospiti {
padding-top: 0px;
}

.step-testo {
padding: 25px 25px 25px 50px!important;
z-index: 9;
position: relative;
}
.step-testo h3 {
margin-top: 50px;
}
.step-foto .rev-overlay-bottom .scopri {
float: none;
margin: 0 auto;
}
.step-foto .rev-overlay {
height: 100%;
}
.step-foto {
max-height: 450px;
  overflow: hidden;
}
.step-foto .valore-testo {
  padding-left: 0;
  text-align: center;
  margin-top: 110px;
  font-size: 29px;
}
.intro-numeri {
padding-left: 25px;
padding-right: 25px;
text-align: center;
margin-bottom: 0;
margin-top: 15px;
}
.griglia-chi-siamo {
margin-bottom: 50px;
}
.ridotto h2 {
margin-bottom: 30px;
}
.ridotto h2 br {
display: none;
}
.tm-headerbar.form-fixed {
padding-bottom: 15px;
  padding-top: 19px;
  display: none;
}
.box-tre-colonne {
padding: 5% 0 0;
}

.txt-colonne{
  padding: 0 5%;
}

.foto-chi-siamo {
  min-height: 300px;
  background-size: cover;
  background-position: center;
}

.box-chi-siamo {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 50px;
}
.elenco-strutture {
padding-top: 30px;
}
.elenco-strutture h1 br {
display: none;
}

.tre {
margin-bottom: 0!important;
}

.foto,
.griglia-come a{
  height: 250px;
}

.foto{
  height: 450px;
  display: -webkit-inline-box;
}

.txt-come{
    padding: 80px 15px 0px;
    min-height: auto;
}

.num-val {
    z-index: 2;
    font-size: 90px;
    opacity: .8 !important;
    top: 20px;
    left: 20px;
    line-height: 140px;
}

.griglia-come a {
    overflow: visible;
}

.form-fixed .box-menu {
top: -2px;
}
.form-fixed .logo {
max-width: 60px;
}
.griglia-numeri::before, .box-immobili::before {
opacity: 0;
}
.griglia-numeri {
margin-top: 110px;
}
.testo-chi-siamo {
width: 100%;
padding: 5%;
}
.numero {
min-height: 350px;
margin-bottom: 120px;
padding-top: 50px;
}

.numero.tre{
  background-position: top;
}

.numero .valore {
top: -75px;
}
.valore {
font-size: 50px;
}
.numero .valore-testo::before {
height: 65px;
bottom: 75px;
}
.numero .valore-testo::after {
bottom: 65px;
}
h1, 
.h1,
.caso-teaser .pos-title {
font-size: 35px;
line-height: 45px;
}
h2 {
font-size: 26px;
}

.pagina-casi p{
  display: -webkit-inline-box;
}

.box-menu {
left: auto;
right: 30px;
}
.menu {
text-align: center;
font-size: 18px;
opacity: 1;
padding-top: 0;
}
.box-menu::before {
right: 4px;
}
.contatti-header {
display: none;
}


.griglia-come a:hover .txt-come {
    transform: translateY(0px);
}

.movie-strutture-frontpage .rev-width-medium-1-1:nth-child(even) .caso-teaser .txt-caso-teaser {
    order: 99;
}

.caso-teaser{
      padding: 130px 5% 0;
}

.txt-hotspot li img{
  display: none;
}

.caso-teaser .pos-gallery{
    display: block;
    margin-bottom: 20px;
}

.txt-hotspot ul {
    background: #ffffff9c;
}

/*.bt_m_1.up .txt-hotspot {
    bottom: -100px;
}*/

.step-foto .rev-overlay::before{
      background: rgba(38, 38, 38, 0.3);
      mix-blend-mode: multiply;
}

.tm-headerbar {
  overflow: hidden;
  width: 100% !important;
}

/*
.barra-fixed .rev-navbar-toggle,
.barra-fixed .tm-logo{
  display: none;
}

.barra-fixed{
  background: transparent !important;
}

*/

.pagina-team p{
line-height: 31px;
}

.pagina-metodo p{
    line-height: 33px;
}

.box-menu{
  overflow: hidden;
}

.box-numeri .valore {
    color: var(--white);
}

	#scrollToTop {
		display: block;
	}

	.rev-navbar-toggle {
		width: 50px;
	}

	.rev-touch .rev-hidden-touch,
	.rev-notouch .rev-hidden-notouch {
		display: block !important;
	}

.movie-strutture-casa-leila p{
    line-height: 33px;
}

.privacy {
    padding: 140px 5% 0;
}

.linea-1{
  top: 20px;
}

.linea-2{
  top: 60px;
}

.pagina-casi p.menu {
    display: block;
}

#id282 .plus{
  top: 20%;
}

.txt-blog {
    order: -1;
}

ul.rev-breadcrumb {
    padding: 10px 10px 0 !important;
}

.blog-full .descrizione-full {
    padding-top: 20px !important;
}

.txt-air{
    padding: 20px;
    top: 80px;
}

.desc-air{
    font-size: 16px;
}

.no-parallax[data-rev-parallax] {
  transform: none !important;
}


.blog-full {
  padding: 5% 0;
}

.blog-full .descrizione-full h2 {
  font-size: 25px;
  line-height: 1.3em;
}
.col-proprietari {
justify-content:flex-start!important;
margin-top:30px;  
}

.blogghissimo{
  padding: 0 5% 5%;
}

.logo-check {
  width: 200px;
}

.list-tit-blog li:last-child:after{
  display: none;
}

.list-tit-blog h2 {
  margin: 0;
}

.list-tit-blog li {
  text-align: center;
  margin: 20px 50px;
}

}

/* =============================================================================
   Contact Form 7 — style to match existing rev-form design
   ============================================================================= */

/* Inputs and textarea */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
    outline: none;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form textarea:focus {
    outline: none;
}

.wpcf7-form input[type="text"]:focus-visible,
.wpcf7-form input[type="email"]:focus-visible,
.wpcf7-form input[type="tel"]:focus-visible,
.wpcf7-form textarea:focus-visible {
    outline: none;
    box-shadow: 0 1px 0 0 #fff;
}

/* Stack fields vertically with consistent spacing */
.wpcf7-form p {
    margin: 0 0 10px 0;
}

/* 2-column form grid: text inputs left, textarea right */
.wpcf7-form .rev-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 40px;
    align-items: stretch;
}
.wpcf7-form .rev-form-col-left {
    display: flex;
    flex-direction: column;
}
.wpcf7-form .rev-form-col-right {
    display: flex;
    flex-direction: column;
}
.wpcf7-form .rev-form-col-right textarea {
    flex: 1;
    height: 100% !important;
    min-height: 170px !important;
}
@media (max-width: 767px) {
    .wpcf7-form .rev-form-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }
}

/* Checkbox acceptance rows
   CF7 [acceptance name] text [/acceptance] renders:
   <span class="wpcf7-form-control-wrap" data-name="privacy">
     <span class="wpcf7-acceptance wpcf7-form-control">
       <span class="wpcf7-list-item">
         <label><input type="checkbox" /><span class="wpcf7-list-item-label"> text</span></label>
       </span>
     </span>
   </span>
   Note: class:rev-check-row goes on the input, NOT the acceptance span. */

.wpcf7-form .campo.campoA {
    padding-top: 30px;
    text-align: left;
}

.wpcf7-form .wpcf7-acceptance {
    display: block;
    margin-bottom: 12px;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
    display: block !important;
    margin: 0 !important;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 13px;
    color: #fff;
    line-height: 1.5;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {
    font-size: 13px;
    color: #fff;
    line-height: 1.5;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a {
    color: #fff;
    text-decoration: underline;
}

.wpcf7-form .wpcf7-acceptance input[type="checkbox"] {
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    margin: 0 !important;
    padding: 0 !important;
    min-height: unset !important;
    border-bottom: none !important;
    border: 1px solid rgba(255,255,255,0.7) !important;
    background: none !important;
    cursor: pointer;
    outline: none;
    appearance: auto;
}

.wpcf7-form .wpcf7-acceptance input[type="checkbox"]:focus {
    outline: none;
}

.wpcf7-form .wpcf7-acceptance input[type="checkbox"]:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.6);
    outline-offset: 2px;
}

/* Submit button — mirrors .rsform-submit-button */
.wpcf7-form input[type="submit"],
.wpcf7-submit {
    width: 100% !important;
    background-color: var(--grigio) !important;
    color: #333 !important;
    font-family: 'Gotham', sans-serif;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.15em;
    padding: 12px 10px !important;
    min-height: inherit;
    font-size: 15px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s;
    margin-top: 10px;
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-submit:hover {
    background-color: #fff !important;
    transition: background-color 0.3s;
}

/* Validation error messages */
.wpcf7-not-valid-tip {
    font-size: 12px;
    color: #d85030;
}

.wpcf7-form .wpcf7-not-valid {
    border-color: #dc8d99 !important;
    background: transparent !important;
    color: #fff !important;
    border-bottom-color: #dc8d99 !important;
}

.wpcf7-form .wpcf7-not-valid::placeholder {
    color: #dc8d99 !important;
}

/* Success / sending / error response messages */
.wpcf7-response-output {
    margin-top: 16px;
    padding: 10px 14px;
    border-radius: 4px;
    font-size: 14px;
}

.wpcf7-form.sent .wpcf7-response-output {
    border-color: #1d4c2d;
    background: #eef7ee;
    color: #1d4c2d;
}

.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output {
    border-color: #dc8d99;
    background: #fff7f8;
    color: #d85030;
}

/* Legal page template: readable text width */
.legal-template__content {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 10px;
  padding-bottom: 10px;
}

.legal-template__content > *:first-child {
  margin-top: 0;
}

.legal-template__content p,
.legal-template__content li {
  line-height: 1.7;
}

.legal-template__content h1,
.legal-template__content h2,
.legal-template__content h3,
.legal-template__content h4 {
  line-height: 1.25;
}

@media (max-width: 767px) {
  .legal-template__content {
    max-width: 100%;
  }
}
