/* HTML BODY */
/*.container, .row , div[class*=col-]{
border:1px solid green !important;
}*/
  
html,body{ font-family: 'Sofia Sans Extra Condensed', san serif !important; font-size: 100%; line-height: normal;color: #333333; background-color: #fff; margin:0;-webkit-text-size-adjust:100%}
/*scroll*/
html:not(.has-scroll-init){cursor:wait;overflow:hidden}
html.has-scroll-smooth{overflow:hidden; position: fixed; left: 0; right: 0; top: 0; bottom: 0; transform: translateZ(0);backface-visibility: hidden;}
html.has-scroll-dragging{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
html.has-scroll-scrolling .c-scrollbar {opacity: 1}
.has-scroll-smooth body{overflow:hidden}
.has-scroll-smooth [data-scroll-container]{min-height:100vh;perspective: 1px;}
[data-load-container] {position: fixed;	top: 0;	right: 0;	bottom: 0;	left: 0;	width: 100vw;	perspective: 1px;}
[data-scroll-section] {display:inline-block;height:100%;vertical-align:top;white-space:nowrap}
/*scroller*/
.c-scrollbar{ background-color:rgba(200,200,200,0); width:6px;position:fixed;right:5px;top:0;height:100vh;transform-origin:center right;opacity: 0; transform:scaleX(1);transition:transform .2s linear,opacity .3s linear}
.c-scrollbar:hover{transform:scaleX(1.3);cursor:-webkit-grab;cursor:grab}
.c-scrollbar_thumb{background-color:rgb(0 0 0 / 78%);position:absolute;top:0;left:0;right:0; border-radius: 3px;  }
.c-scrollbar_thumb:hover{cursor:pointer}
 
@media screen and (max-width: 736px) {
	.c-scrollbar{width:3px; right: 2px;}
}

/*::-moz-selection{background-color:transparent;color:transparen;text-shadow:none}
::selection{background-color:transparent;color:transparent;text-shadow:none}*/

.font-family-SofiaSansExtraCondensed { font-family: 'Sofia Sans Extra Condensed'; }
.font-family-PlayfairDisplay { font-family: 'Playfair Display'; }

.font-weight-100 {font-weight: 100;}
.font-weight-200 {font-weight: 200;}
.font-weight-300 {font-weight: 300;}
.font-weight-400 {font-weight: 400;}
.font-weight-500 {font-weight: 500;}
.font-weight-600 {font-weight: 600;}
.font-weight-700 {font-weight: 700;}
.font-weight-800 {font-weight: 800;}
.font-weight-900 {font-weight: 900;}

.font-style-italic { font-style: italic;}

/*.font-size-small { font-size: 12px;}
.font-size-normal { font-size: 16px;}
.font-size-medium { font-size: 20px;}
.font-size-large { font-size: 28px;}
.font-size-xlarge { font-size: 34px;}
.font-size-xxlarge { font-size: 54px;}
.font-size-xxxlarge { font-size: 74px;}
.font-size-huge { font-size: 100px;}*/

.font-size-small {    font-size:clamp(1.1rem, 0.7vw, 1.2rem);}
.font-size-normal {   font-size:clamp(1.3rem, 1.0vw, 1.5rem);}
.font-size-medium {   font-size:clamp(1.5rem, 1.5vw, 2.0rem);}
.font-size-large {    font-size:clamp(1.7rem, 2.0vw, 3.0rem);}
.font-size-xlarge {   font-size:clamp(1.9rem, 2.4vw, 3.4rem);}
.font-size-xxlarge {  font-size:clamp(2.1rem, 3.4vw, 4.4rem);}
.font-size-xxxlarge { font-size:clamp(2.3rem, 5.4vw, 6.4rem);}
.font-size-huge {     font-size:clamp(2.7rem, 6.4vw, 7.4rem);}

.line-height-100 { line-height: 100%;}
.line-height-110 { line-height: 110%;}
.line-height-120 { line-height: 120%;}
.line-height-130 { line-height: 130%;}
.line-height-140 { line-height: 140%;}
.line-height-150 { line-height: 150%;}
.line-height-200 { line-height: 200%;}

.letter-spacing-2 {letter-spacing: 2px;}
.letter-spacing-3 {letter-spacing: 3px;}
.letter-spacing-4 {letter-spacing: 4px;}
.letter-spacing-10 {letter-spacing: 10px;}
.letter-spacing-14 {letter-spacing: 14px;}

a { color: #464A4C; }
a:hover { color: #999; }



/* ERRORE */
.error-template { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 80%; padding: 20px; text-align: center;  cursor: auto!important;}
.error-details { margin-top: 35px; margin-bottom: 35px; }
.error-actions { margin-top: 35px; margin-bottom: 35px; }
/*MOBILE*/
a.btn-menu-top.mobile, a.btn-back-top.mobile { display: none; position: fixed; left: 50%; transform: translateX(-50%); color: #fff; text-align: center; background-color: rgba(70,74,76,.9); cursor: pointer; z-index: 999; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
a.btn-menu-top.mobile { top: 0px; padding: 8px 16px; font-size: 24px; }
a.btn-back-top.mobile { bottom: 10px; padding: 4px 11px; font-size: 21px; }
a.btn-menu-top.mobile:hover, a.btn-back-top.mobile:hover { background-color: rgba(70,74,76,1); }
#wrap { }
#main {   /*padding-bottom: 250px;*/ /*overflow: hidden;*/ }
body.noslideshow:not(.header-relative) #main { /*padding-top: 200px;*/}
 
/*
 ######   #######  ##    ## ######## ######## ##    ## ######## 
##    ## ##     ## ###   ##    ##    ##       ###   ##    ##    
##       ##     ## ####  ##    ##    ##       ####  ##    ##    
##       ##     ## ## ## ##    ##    ######   ## ## ##    ##    
##       ##     ## ##  ####    ##    ##       ##  ####    ##    
##    ## ##     ## ##   ###    ##    ##       ##   ###    ##    
 ######   #######  ##    ##    ##    ######## ##    ##    ##    
*/
/* CONTENT */
.content { position: relative; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; opacity: 1;-webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear }
.separatore { position: relative; width: 100%; margin: 10px 0 20px; padding-bottom: 10px; border-bottom: 1px solid #E6E6E6; }

.pagina-ancora { position: relative; display: block; height: 60px; border: 0px solid #ccc; }
.pagina-ancora-separatore { position: relative; display: block; height: 60px; border: 0px solid #ccc; border-bottom: 1px solid #E6E6E6; margin-bottom: 30px; }
.pagina-ancora-separatore:last-child { border-bottom-color: transparent; }

.pagina-top { position: relative; margin-top: 60px; margin-bottom: 60px;/* margin-left: -30px !important; margin-right: -30px !important; */ }
.container-fullwidth .pagina-top .row { margin-left: -30px !important; margin-right: -30px !important; }
/* PAGINA - DETTAGLIO */ 
.pagina-contenuto { /*margin-bottom: 40px;*/ }
/*.pagina-contenuto .img { position: relative; height: 300px; width: 100%; margin: 0px 0 20px 0; overflow: hidden; }
.pagina-contenuto .img img { width: 100%; position: absolute; left: 50%; top: 50%; transform: scale(1, 1) translate(-50%, -50%); -webkit-transition: all .1s linear; -moz-transition: all .1s linear; transition: all .1s linear }
*/
.pagina-contenuto .img { position: relative; /*height: 300px;*/ width: 100%; margin:50px 0 50px 0; /*overflow: hidden;*/ text-align:center; }

.pagina-contenuto .img-absolute img { width: 100%; position: absolute; left: 50%; top: 50%; transform: scale(1, 1) translate(-50%, -50%); -webkit-transition: all .1s linear; -moz-transition: all .1s linear; transition: all .1s linear }
.pagina-contenuto .img-relative {position: relative; width: 100%; margin:50px 0 50px 0;  text-align:center;}
.pagina-contenuto .img-relative img { position:relative; display:inline-block; max-width: 100%; height:auto !important; margin:0 auto; margin-bottom: 30px; padding:0; position: relative; -webkit-transition: all .1s linear; -moz-transition: all .1s linear; transition: all .1s linear }

.pagina-contenuto.inferiore { }
.pagina-contenuto.articolo h1.titolo { margin-top: 2px !important; margin-bottom: 20px;  font-size: 40px; font-weight: 200;   text-align: center; }
.pagina-contenuto.articolo h2.sottotitolo { margin-top: 2px !important; margin-bottom: 20px;  font-size: 20px; font-weight: 200;  text-align: center; }

.pagina-titoli { margin:0 -15px 40px -15px; padding: 20px 15px;}
.pagina-titolo { margin-top: 2px !important; margin-bottom: 10px; font-family: 'Playfair Display'; font-size: 40px;  }
.pagina-sottotitolo { margin-top: 2px !important; font-size: 28px; font-family: 'Sofia Sans Extra Condensed';  font-weight: 300 !important; -webkit-font-smoothing: auto;}

.pagina-data { display: inline-block; float: left; margin: 0 0 5px 0; color: #999999; width: 100%; font-size: 12px }
.pagina-data span { margin-right: 5px; }
.pagina-data.first { display: inline; float: none !important; }

.pagina-testo { font-size: 130%; } 

/* PAGINAZIONE */
.pagination > li > a, .pagination > li > span { color: inherit; border-radius: 0px !important; }
.pagination >.active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { background-color: #cccccc !important; border-color: #cccccc !important; }
.pagination .selectpicker { font-size: 10px !important; }
.pagination .page-link:hover { color: #464A4C; }


   
/* SEZIONI */

.sezioni { position: relative; display: flex; align-items: center; justify-content: center; text-align: center;  box-sizing: border-box;  /* border: 1px solid #f90*/}   
.sezioni.s-fullpage { position: relative; height: 100vh; width: 100vw; display: flex; justify-content:space-around; align-items: center;}    
.sezioni.s-fullpage.s-d-center { justify-content: center; align-items: center;}  
    
.s-titolo { position: absolute; top: 40px; left: 40px; max-width: 80%; color: #fff; background-color: #333; padding: 5px 8px; z-index: 4}
.s-progress { position: absolute; bottom: 40px; left: 40px; max-width: 80%; color: #fff; background-color: #333; padding: 5px 8px; z-index: 4}


/* COVER */
.cover-pagina { position: relative;}
.cover-pagina .c-top-gradiente { position: absolute;z-index: 1; top: 0; left: 0; width: 100%; height: 30vh; opacity: 0; background: linear-gradient(to bottom,  rgba(0,0,0,.5) 0%,rgba(0,0,0,0) 100%); }
.cover-pagina .c-left-gradiente { position: absolute;z-index: 1; top: 0; left: 0; width: 18vw; height: 100vh; opacity: 0; background: linear-gradient(to right,  rgba(0,0,0,.5) 0%,rgba(0,0,0,0) 100%);  }
.cover-pagina .c-bottom-gradiente { position: absolute;z-index: 1; bottom: 0; left: 0;  width: 100%; height: 20vh;  opacity: 0; background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%, rgba(0,0,0,.7) 100%); }

.cover-pagina .c-top-gradiente.start { opacity: 1!important;transition: all 5.2s;}
.cover-pagina .c-left-gradiente.start { opacity: 1!important;transition: all 5.2s;}
.cover-pagina .c-bottom-gradiente.start { opacity: 1!important;transition: all 5.2s;}

.cover-pagina .c-frase { position: absolute; left: 25vw; top: 200px; z-index: 2; -webkit-font-smoothing: antialiased; transition: all .5s;  }
.cover-pagina .c-frase .cf-1 { position: relative; display: block; font-size: 44px; line-height: 100%; opacity: 0.0001; margin-top:150%;/* transition: all .5s; */}
.cover-pagina .c-frase .cf-2 { position: relative; display: block; font-size: 44px; line-height: 100%; opacity: 0.0001; margin-top:150%; /* transition: all .5s; */}
.cover-pagina .c-frase .cf-3 { position: relative; display: block; font-size: 44px; line-height: 100%; opacity: 0.0001; margin-top:150%;/* transition: all .5s; */ }
.cover-pagina .c-frase .cf-4 { position: relative; display: block; font-size: 30px; line-height: 100%; opacity: 0.0001; margin-top:150%; /* transition: all .5s; */ }
.cover-pagina .c-frase .cf-5 { position: relative; display: block; font-size: 30px; line-height: 100%; opacity: 0.0001; margin-top:150%;/* transition: all .5s; */ }


.cover-pagina .c-frase.cf-bottom { top: inherit; bottom:60px; width: 30%;}
.cover-pagina .c-frase.cf-bottom .cf-1,.cover-pagina .c-frase.cf-bottom .cf-2,.cover-pagina .c-frase.cf-bottom .cf-3 {font-size: 30px;} 

.cover-pagina .c-frase.start .cf-1 { opacity: 1; margin-top:0px; transition: all 2s; transition-delay: 0.3s; transition-timing-function: ease-in-out;}    
.cover-pagina .c-frase.start .cf-2 { opacity: 1; margin-top:0px; transition: all 2s; transition-delay: 0.6s; transition-timing-function: ease-in-out;}    
.cover-pagina .c-frase.start .cf-3 { opacity: 1; margin-top:0px; transition: all 2s; transition-delay: 0.9s; transition-timing-function: ease-in-out;}    
.cover-pagina .c-frase.start .cf-4 { opacity: 1; margin-top:20px; transition: all 2s; transition-delay: 1.2s; transition-timing-function: ease-in-out;}    
.cover-pagina .c-frase.start .cf-5 { opacity: 1; margin-top:0px; transition: all 2s; transition-delay: 1.5s; transition-timing-function: ease-in-out;}    

body.scroll-page .c-frase{ opacity: 0;transition: all .5s; }

/* mobile vertical */ 
@media all and (max-width: 812px) {   
    
    .cover-pagina .c-left-gradiente { display: none;}
    .cover-pagina .c-bottom-gradiente { height: 40vh; background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%, rgba(0,0,0,.7) 100%);  }        
    .cover-pagina .c-frase.cf-bottom { top: inherit; bottom:29vh; left: 40px; width: 80%;}
}


/* COVER VIDEO */
        
.cover-content-wrapper { position: relative; }
 
.cover-content-wrapper .video-button-wrapper{ position: fixed; bottom:55px; right: 55px;  width: 45px; height: 45px; z-index: 2; transition: opacity .5s;/*mix-blend-mode: difference;*/ }
.cover-content-wrapper .video-button-wrapper > .button-audio{ position: relative; background-color: transparent; border: none; cursor: pointer; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}
.cover-content-wrapper .video-button-wrapper > .button-audio i {position: absolute; font-size: 20px; color: #fff;}

body.scroll-page .cover-content-wrapper .video-button-wrapper { opacity: 0; transition: opacity .1s }

/* mobile vertical */ 
@media all and (max-width: 812px) {        
  
  
    
}

/* COVER IMAGE */
 
/* mobile vertical */ 
@media all and (max-width: 812px) { 
    .cover-pagina .c-frase { left: 24vw; top: 100px; width: 50%; display: inline-block;}
    .cover-pagina .c-frase .cf-1 { font-size: 26px; }        
    .cover-pagina .c-frase .cf-2 { font-size: 26px; }
    .cover-pagina .c-frase .cf-3 { font-size: 26px; }
    .cover-pagina .c-frase .cf-4 { font-size: 20px; }
    .cover-pagina .c-frase .cf-5 { font-size: 20px; }
     
} 

.cover-pagina .c-arrow{ position: absolute; display: flex; align-content: center; justify-content: center; left: 18vw; bottom: 100px; width: 50px; height: 40px; opacity: 0;  z-index: 3; cursor: pointer;transition: all .9s; }    
.cover-pagina .c-arrow.a-down::before, .cover-pagina .c-arrow.a-down::after { position: relative; content: ''; display: block; width: 15px; height: 1px; top: 50%; background: #FFF; }
.cover-pagina .c-arrow.a-down::before { transform: rotate(50deg); left: 3px; transition: all .4s ease }
.cover-pagina .c-arrow.a-down::after {  left: -2px; transform: rotate(-50deg); right: 3px; transition: all .4s ease }
.cover-pagina .c-arrow:hover:before {left: 0px; transform: rotate(30deg) }
.cover-pagina .c-arrow:hover:after {right: 0px; transform: rotate(-30deg) }

.cover-pagina .c-arrow.onload {opacity: 1; bottom:50px; transition: all .9s;}

/* mobile vertical */ 
@media all and (max-width: 812px) {
     .cover-pagina .c-arrow{left: 34vw; bottom: 100px;}
     .cover-pagina .c-arrow.onload { opacity: 1; bottom:40px; transition: all .9s;}
}

/* CAMERE LISTA */

.camere-list { display: inline-block; margin: 0; padding: 0; list-style: none;  }
.camere-list li { float: left; }
.camere-list li a {position: relative; display: inline-block; width: 100%; padding: 2vh 20px 11px 20px;    text-align: center; transition: all .5s ease; }
.camere-list:hover li a{ color: #ccc; }
.camere-list li a:hover { color: #333!important;  transition: all .6s; }
.camere-list li a.active { color: #333;  }    

@media all and (max-width: 812px) {	
    .camere-list { float: none;}
    .camere-list li { float: none;}
    .camere-list li a {position: relative; display: inline-block; width: 100%; padding: 2vh 50px 11px 50px;   border-bottom: 1px solid #ccc;  }
}
  

 
  
