/* HTML BODY */
html, body { width: 100%; height: 100%;  /*-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; */ font-family: 'Merriweather'; font-size: 100%; color: #222222; background-color: #fff; margin: 0; padding: 0; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
body { overflow-x: hidden !important; }
a { color: #222222; }
a:hover { color: #999; }
/* ERRORE */
.error-template { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 80%; padding: 20px; text-align: center; }
.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: 0px; padding: 0px 6px; font-size: 28px; }
a.btn-menu-top.mobile:hover, a.btn-back-top.mobile:hover { background-color: rgba(70,74,76,1); }
#wrap { position: relative; min-height: 100%; max-width: 100%; margin: 0 auto; }
#main { position: relative; /*padding-bottom: 250px;*/ /*overflow: hidden;*/ }
/*

##     ## ########    ###    ########  ######## ########  
##     ## ##         ## ##   ##     ## ##       ##     ## 
##     ## ##        ##   ##  ##     ## ##       ##     ## 
######### ######   ##     ## ##     ## ######   ########  
##     ## ##       ######### ##     ## ##       ##   ##   
##     ## ##       ##     ## ##     ## ##       ##    ##  
##     ## ######## ##     ## ########  ######## ##     ##

*/

.header { position: relative; width: 100%; padding: 0px 0 30px 0; margin: 0; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.header { border: none; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.header .header-top { position: relative; display: inline-block; width: 100%; padding: 5px 0; }
/* BRAND LOGO */
.header .navbar-brand { padding: 0px !important; height: auto !important }
.header .navbar-brand .logo { width: 202px; height: 50px; margin-left: 0px; background-position: center left; background-size: contain; background-repeat: no-repeat; cursor: pointer; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.header .navbar-brand .logo:hover { opacity: 0.65; filter: alpha(opacity=65); }
.header .navbar-header .navbar-toggle { border: none; margin-top: 13px; margin-right: 0 !important; padding: 0 !important; height: 30px; width: 30px; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
/* SCROLL FIXED*/
.header.navbar-fixed-bottom { position: fixed !important; bottom: 0; left: 0; margin: 0; background-color: rgba(255,255,255,0) !important; z-index: 999; }
.header.navbar-fixed { position: fixed; top: 0; z-index: 3; }
.header.navbar-fixed.navbar-small {  }
.header.navbar-fixed.navbar-small .user-bar { }
.header.navbar-fixed.navbar-small .mainmenu-bar { }
.header.navbar-fixed.navbar-small .navbar-nav > li > a { padding-left: 10px !important; padding-right: 10px !important; }
.header.navbar-fixed.navbar-small .navbar-brand { padding-top: 10px !important; padding-bottom: 0 !important; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.header.navbar-fixed.navbar-small .navbar-brand .logo { }
.header.navbar-fixed.navbar-small .dropdown-menu { left: -3px !important; }
/* NO SLIDESHOW */
.header.navbar-noslideshow {background-color: rgba(59,85,164,.9); -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }

@media screen and (max-width: 736px) {
.header.navbar-fixed {/* position: relative !important;*/ }
.header.navbar-fixed-bottom { position: relative !important; bottom: inherit !important; }
.header .navbar-brand .logo { margin-left: 0px; }
.header .navbar-brand { padding: 15px 0 0 0 !important; height: inherit !important; }
.header .navbar-collapse { padding: 0; box-shadow: none; border-top: none }
}
/*
 ######   #######  ##    ## ######## ######## ##    ## ######## 
##    ## ##     ## ###   ##    ##    ##       ###   ##    ##    
##       ##     ## ####  ##    ##    ##       ####  ##    ##    
##       ##     ## ## ## ##    ##    ######   ## ## ##    ##    
##       ##     ## ##  ####    ##    ##       ##  ####    ##    
##    ## ##     ## ##   ###    ##    ##       ##   ###    ##    
 ######   #######  ##    ##    ##    ######## ##    ##    ##    
*/

/* CONTENT */
.content { position: relative; margin-bottom: -5px; font-weight: 300; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.content h1.titolo { margin-top: 30px !important; margin-bottom: 10px; font-size: 28px; font-weight: 400; color: #222222; text-align: center; }
.content h2.sottotitolo { margin-top: 2px !important; margin-bottom: 20px; font-size: 21px; font-weight: 300 !important; color: #999; text-align: center; }
.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: 0px; margin-bottom: 0px;/* margin-left: -30px !important; margin-right: -30px !important; */ }
.pagina-top .pagina-quick-menu { display: none}
.container-fullwidth .row.pagina-top { margin-left: -30px !important; margin-right: -30px !important; }
/* PAGINA - DETTAGLIO */ 
.pagina-contenuto { margin-bottom: 40px; }
.pagina-contenuto .testo { margin-top:50px;}
.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 .data { display: inline-block; float: left; margin: -15px 0 5px 0; color: #999999; width: 100%; font-size: 12px }
/* ARTICOLO IN PAGINA */
.pagina-contenuto .data span { margin-right: 5px; }
.pagina-contenuto .data.first { display: inline; float: none !important; }
.pagina-contenuto .back { font-size: 12px; text-transform: uppercase; }
/* 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; }

.sezione { position: relative; overflow:hidden; display: inline-block; width: 100%; min-height: 100px; height: auto; padding: 90px 0 40px; }
.sezione .fg { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
.sezione .fg.white { background-color: rgba(255,255,255,.85); }
.sezione .fg.colore1 { background-color: #5C5C5C; }
.sezione > .container { padding: 0 !important; }
.sezione h2 { font-size: 40px; font-weight: 300; margin-bottom: 25px; color: rgba(59,85,164,1); }
.sezione h4 { font-size: 30px; font-weight: 300; margin-bottom: 15px; }
.sezione p { font-size: 20px; font-weight: 300; margin-bottom: 45px; }
.sezione h4.fs-md { font-size: 20px; }
.sezione p.fs-md { font-size: 18px; }
.sezione p.fs-sm { font-size: 14px; }
.sezione.c2aimg { margin-top: 0px; padding-top:120px;}
.sezione.c2aimg .bgimage { z-index: -1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; }
.sezione.c2aimg .bgimage >.inner { width: 100%; height: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; }
.sezione.c2aimg h2 { color:#fff; }
.sezione.c2aimg p { color:#fff; }
.sezione.c2aimg span.icon { display: inline-block;text-align:center; }
.sezione.c2aimg span.icon img { display:block; width:100%; height:auto !important  }
.sezione.c2aimg span.icon > span.text { display: block;margin-top:-20px; font-size:20px; font-weight:600;color: rgba(59,85,164,1)} 

.sezione .img-wrap { width: 100%; }
.sezione .img-wrap img { max-width: 100%; height: auto; }
.sezione .icona { color: #5C5C5C; margin-top: 60px; margin-bottom: 20px; }
.sezione.white { background-color: #fff; }
.sezione.lightbrown { background-color: #F6F3EB; }
/*collapse content*/
.sezione .card { border-radius: 0; border: none; border-bottom: 1px solid #ccc; background-color: transparent; }
.sezione .card-header { background-color: transparent; padding: .75rem .5rem 0 .5rem; border: none; }
.sezione .card-header > h5 { font-size: 25px; }
.sezione .card-header > h5 > button { position: relative; width: 100%; text-align: left; text-decoration: none; }
.sezione .card-header > h5 > button:after { display: inline-block; font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands"; content: '\f107'; font-size: 30px; font-weight: 300; line-height: normal; position: relative; float: right; height: auto; transform: rotate(0deg); border: none; margin: 0; padding: 0; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.sezione .card-header > h5 > button[aria-expanded="true"]:after { transform: rotate(180deg); }
.sezione .card-header > h5 > button[aria-expanded="false"]:after { transform: rotate(0deg); }
/*bg*/
.sezione.lightgray { background-color: #f4f4f4; }
.mobile-images { display: none; margin: 20px 0 }
/*galleria*/
.sezione.galleria a .rollover { position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; padding: 15px 15px; background-color: rgba(70,74,76,0); color: #fff; text-align: center; -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear }
.sezione.galleria a .rollover .zoomBtn { position: absolute; right: 20px; bottom: 20px; width: 30px; height: 30px; padding: 5px 10px; }
.sezione.galleria a .rollover .zoomBtn span { display: inline; padding: 0px; text-align: center; }
.sezione.galleria a .rollover .zoomBtn span.icon { font-size: 25px; }
.sezione.galleria a:hover > .rollover { background-color: rgba(70,74,76,.6); }


@media screen and (max-width: 768px) {
.sezione  { text-align:center}
.sezione h2 { font-size: 30px; margin-bottom: 20px; }
.sezione h4 { font-size: 20px; margin-bottom: 10px; }
.sezione .btn { max-width:100%; }
.sezione .btn.btn-lg { font-size:15px;}

.piscina-home{     height: 660px !important;}
.camere-home{     height: 560px !important;}
}

@media screen and (max-width: 736px) {
.mobile-images { display: block !important; }
.mobile-bg-none { background-image: none !important; }
.mobile-bg-cover { background-size: cover !important; }
.sezione { padding: 50px 0 !important; text-align: center; }
.sezione h2 { margin-bottom: 20px; font-size: 30px; font-weight: 300; }
.sezione h4 { margin-bottom: 10px; font-size: 20px; font-weight: 200; }
.sezione.c2aimg { margin-top: 0px; }
.sezione .bgimage {/* position: relative !important; top: inherit !important; transform: none !important; width: 100% !important; height: 400px !important; */}
.content { padding-top: 0px; }
.sezione.galleria { padding:0 !important; margin-top:-2px}
}
.gall-custom { overflow:hidden; width:90%; margin:0 auto;} 
.gall-custom > .wall {  -webkit-column-count: 2; -moz-column-count: 2;  column-count: 2; column-gap: 20px; -webkit-column-gap: 20px;  -moz-column-gap: 20px;  column-gap: 20px; /*height: 100vh;*/ }
.gall-custom > .wall > .brick { position: relative; display:inline-block; margin-bottom: 20px; padding: 0px; overflow: hidden; }
.gall-custom > .wall > .brick > .imgcontent { width: 100%; opacity: 0; }
.gall-custom > .wall > .brick > a { }
.gall-custom > .wall > .brick > a .imgdisplay { position: absolute; left: -10000%; right: -10000%; top: -10001%; bottom: -10001%; margin: auto auto; min-width: 1000%; min-height: 1000%; -webkit-transform: scale(0.1); transform: scale(0.1); -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear }
.gall-custom > .wall > .brick > a .rollover { position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; padding: 15px 15px; background-color: rgba(70,74,76,0); color: #fff; text-align: center; -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear }
.gall-custom > .wall > .brick > a .rollover .zoomBtn { position: absolute; right: 20px; bottom: 20px; width: 30px; height: 30px; padding: 5px 10px; }
.gall-custom > .wall > .brick > a .rollover .zoomBtn span { display: inline; padding: 0px; text-align: center; }
.gall-custom > .wall > .brick > a >.rollover .zoomBtn span.icon { font-size: 25px; }
.gall-custom > .wall > .brick > a:hover > .rollover { background-color: rgba(70,74,76,.6); }

@media screen and (max-width: 992px) {
/*.wall { height: 100vh; }*/
.gall-custom {  width:88%;} 
}

@media screen and (max-width: 668px) {
/*.wall { height: 100vh; }*/
.gall-custom > .wall { columns: 1; height:auto; }
}


.gall-custom > .wall-simple {  }
.gall-custom > .wall-simple .brick { position: relative; margin-bottom: 30px; padding: 0px; overflow: hidden; }
.gall-custom > .wall-simple .brick > .imgcontent { width: 100%; opacity: 0; }
.gall-custom > .wall-simple .brick > a { }
.gall-custom > .wall-simple .brick > a .imgdisplay { position: absolute; left: -10000%; right: -10000%; top: -10000%; bottom: -10000%; margin: auto auto; min-width: 1000%; min-height: 1000%; -webkit-transform: scale(0.1); transform: scale(0.1); -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear }
.gall-custom > .wall-simple .brick > a .rollover { position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; padding: 15px 15px; background-color: rgba(70,74,76,0); color: #fff; text-align: center; -webkit-transition: all .3s linear; -moz-transition: all .3s linear; transition: all .3s linear }
.gall-custom > .wall-simple .brick > a .rollover .zoomBtn { position: absolute; right: 20px; bottom: 20px; width: 30px; height: 30px; padding: 5px 10px; }
.gall-custom > .wall-simple .brick > a .rollover .zoomBtn span { display: inline; padding: 0px; text-align: center; }
.gall-custom > .wall-simple .brick > a >.rollover .zoomBtn span.icon { font-size: 25px; }
.gall-custom > .wall-simple .brick > a:hover > .rollover { background-color: rgba(70,74,76,.6); }

@media screen and (max-width: 668px) {
/*.wall-simple { height: 100vh; }*/
.gall-custom > .wall-simple {  }
}


/*
########  #######   #######  ######## ######## ########  
##       ##     ## ##     ##    ##    ##       ##     ## 
##       ##     ## ##     ##    ##    ##       ##     ## 
######   ##     ## ##     ##    ##    ######   ########  
##       ##     ## ##     ##    ##    ##       ##   ##   
##       ##     ## ##     ##    ##    ##       ##    ##  
##        #######   #######     ##    ######## ##     ## 
*/
.footer { display:none; position: relative; padding: 80px 0; background-color: rgba(59,85,164,1); font-size: 18px; font-weight: 300; text-align: center; color: rgba(255,255,255,1); z-index: 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.footer h3 { margin-top: 4px; font-weight: 300; font-size: 12px; }
.footer a { font-weight: 300; color: rgba(255,255,255,1); text-decoration: none; }
.footer button { font-weight: 600; color: rgba(255,255,255,1); text-decoration: none; }
.footer .btn-outline-light:hover { color: rgba(59,85,164,1) !important; }
.footer a:hover { color: rgba(255,255,255,.5); text-decoration: none; }
.footer .margin { margin-bottom: 20px; }
.footer .logo { margin-bottom: 20px; cursor: pointer; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.footer .logo > img { width: 360px; max-width: 100%; height: auto !important; }
.footer .logo:hover { opacity: 0.65; filter: alpha(opacity=65); }
.footer .logo-credits { width: 110px; height: 21px; margin: 0px 0; background-position: 0 0; background-repeat: no-repeat; cursor: pointer; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.footer .logo-credits:hover { background-position: -110px 0; }
/* FOOTER MENU BOTTOM */
.footer-menu-bottom { position: relative; display: inline-block; width: 100%; margin: 0px auto 20px auto; padding: 0; list-style: none; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.footer-menu-bottom li { position: relative; display: inline-block; float: left; }
.footer-menu-bottom li a { padding: 13px 20px; font-size: 18px; font-weight: 300; cursor: pointer !important; }
.footer-menu-bottom li a:hover, .footer-menu-bottom li a.active { color: rgba(255,255,255,.5); }
.footer-menu-bottom li > a i { display: inline; float: right; margin-top: 4px; font-weight: 300; }
.footer-menu-bottom li > a.highlighted i { transform: rotate(180deg); }
.footer-menu-bottom li ul { margin-left: 10px; }
.footer-menu-bottom.sm-collapsible .caret, .footer-menu-bottom.sm-collapsible ul .caret { top: 10px; }
/* FOOTER MENU TOP */
.footer-menu-top { position: relative; display: inline-block; width: 100%; margin: 0px auto 20px auto; padding: 0; list-style: none; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; }
.footer-menu-top li { position: relative; display: inline-block; width: 100%; float: left; }
.footer-menu-top li a { padding: 3px 0; font-size: 18px; font-weight: 300; cursor: pointer !important; }
.footer-menu-top li a:hover, .footer-menu-top li a.active { color: rgba(255,255,255,.5); }
.footer-menu-top li > a i { display: inline; float: right; margin-top: 4px; font-weight: 300; }
.footer-menu-top li > a.highlighted i { transform: rotate(180deg); }
.footer-menu-top li ul { margin-left: 10px; }
.footer-menu-top li ul li:last-child { margin-bottom: 10px; }
.footer-menu-top.sm-collapsible .caret, .footer-menu-top.sm-collapsible ul .caret { top: 10px; }
.footer .collapsed-content-btn { display: inline-block; width: 100%; font-size: 16px; font-weight: 700; border-bottom: 1px solid #666; padding-bottom: 10px; margin-bottom: 10px; }

@media screen and (min-width: 736px) {
a.btn-back-top.mobile { left: inherit; right: 0 !important; }
#fsub1.collapse, #fsub2.collapse { display: inline-block !important; width: auto !important; padding-bottom: 0; overflow: visible !important; }
}

@media screen and (max-width: 736px) {
.footer { font-size: 16px; }
.footer .collapsed-content-btn { width: auto !important; margin: 0px auto !important }
.footer .collapsed-content-btn > .icon {  }
.footer-menu-bottom { text-align: center; }
.footer-wrapper { margin-bottom: 0 !important; }
.footer-menu-bottom li { width: 100%; float: left; text-align: center !important; }
.footer-menu-bottom li a { padding: 10px 0; font-size: 16px !important; }
.footer-menu-bottom li a span.sub-arrow:before { content: '+'; position: absolute; top: 0; right: 0; color: #ccc; font: 300 23px/34px monospace !important; }
.footer-menu-bottom li a.highlighted span.sub-arrow:before { content: '-'; }
.footer-menu-top li a { padding: 10px 0; font-size: 16px !important; }
.footer-menu-top li a span.sub-arrow:before { content: '+'; position: absolute; top: 0; right: 0; color: #ccc; font: 300 23px/34px monospace !important; }
.footer-menu-top li a.highlighted span.sub-arrow:before { content: '-'; }
}
