/* Enter Your Custom CSS Here */

#et-boc {margin-top: -78px !important;}

 body {
    overflow-x:hidden;
}
 h4 {
    font-weight:bold;
}
 .home .responsive-iframe .booking_engine__cover {
     display: none !important;
     visibility:hidden;
}

.lgpdb-stamp {
	position: absolute;
	right: 0;
	width: 200px;
	top: -123px;
}

 .filter-element {
     font-size: 14px;
     font-weight: bold;
     transition: all 0.3s ease;
     max-width:270px;
     cursor: pointer;
     user-select: none;
     position: relative;
     overflow: hidden;
}
 .filter-element .et-pb-icon {
     font-size: 16px;
}
 .filter-element div {
     text-decoration: none;
     background: linear-gradient(to right, #ab9dd3 50%, #00006b 50%);
     background-size: 200% 100%;
     background-position: right bottom !important;
     transition: background-position 0.3s ease;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
}
 .filter-element div:hover {
     background-position: left bottom !important;
}

body #page-container .et_pb_section .et_pb_fullwidth_header_0 .et_pb_button_one.et_pb_button, body #page-container .et_pb_section .et_pb_fullwidth_header_0 .et_pb_button_two.et_pb_button {
	width: 280px;
	padding: 10px;
}

 #img-right {
     margin-left: auto;
     margin-right: 0 !important;
     left:15%;
}
 .blurb-subtitle {
     text-align:center !important;
     color:#87748d;
     font-size:20px;
     font-weight:400;
     display:block;
}
 .link-fx a {
     transition: all 0.3s ease;
     font-weight: 500;
     display: inline-block;
     width: 100%;
     height: 22px;
     z-index: 999999;
     position: relative;
     top: 0;
}
 .link-fx a, .menu-item a {
     text-decoration: none;
     background: linear-gradient(to right, #ab9dd3 50%, #00006b 50%);
     background-size: 200% 100%;
     background-position: right bottom !important;
     transition: background-position 0.3s ease;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
}
 .link-fx a:hover, .menu-item a:hover {
     background-position: left bottom !important;
}
 .timbre-over {
     position: absolute;
     top: -180px;
     left: -180px;
}
 .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content {
     max-width: 1600px;
     width: 100%;
}
 .custom-blurb .et_pb_blurb_description, .custom-blurb .et_pb_module_header {
     padding: 0 20px;
}
 #offres-slider .et_pb_slide_title {
     font-weight: 600 !important;
     border-bottom: 1px solid #fff;
     max-width: 300px;
     margin: 20px auto;
     padding-bottom: 20px;
}
 #services .column-border-top {
     border:none !important;
}
 .mfp-title {
     display: none;
}
 .et_pb_gallery_pagination .next {
     visibility:hidden;
}
 .OsProduit.api.OSMB .OptPlanningLigne .OsPlanningDatePicker, .OsProduit.api.GEST .OptPlanningLigne .OsPlanningDatePicker {
     flex: 1 1 60% !important;
}
 .responsive-iframe iframe {
     width: 100% !important;
     height: 100vh !important;
}
 .ti-widget.ti-goog .ti-review-item > .ti-inner, .ti-widget.ti-goog .ti-load-more-reviews-container .ti-load-more-reviews-button {
     background-color: #F9F9F9 !important;
}
/* Footer */
 #main-footer .footer-sub-menu a {
     color:#ab9dd3 !important;
}
 .footer-menu li a{
     font-weight:800;
     color:#fff;
}
 .footer-menu li {
     list-style:none;
}
 #main-footer .footer-nav a {
     transition: all 0.3s ease;
     text-decoration: none;
     background: linear-gradient(to right, #ab9dd3 50%, #FFFFFF 50%);
     background-size: 200% 100%;
     background-position: right bottom !important;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
}
 #main-footer .footer-nav a:hover {
     background-position: left bottom !important;
}
 #main-footer ul {
     padding-left:0;
}
 #main-footer .footer-sub-menu a{
     line-height: 34px;
}
/* Mega-Menu Supreme */
 #main-header {
     background-color: transparent !important;
     transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
 .dsm-menu-text {
     color: #00006B;
     transition: all 0.3s ease;
}
 .dsm-menu-text:hover {
     opacity:0.6;
}
 .dsm_mega_menu_0_tb_header .dsm-mega-menu-container .dsm_dropdown_close_icon, .dsm_mega_menu_0_tb_header .dsm-mega-menu-container .dsm_dropdown_open_icon {
     color: #7d86ff !important;
}
/* Logo scroll color */
 #main-header.scrolled .dsm-logo-wrap img, .dsm-logo-wrap img {
     background: transparent !important;
     filter: invert(0%) grayscale(0%);
}
/* Pagine top menu font #fff */ 
.home .dsm-logo-wrap img,
.single-post .dsm-logo-wrap img,
.page-id-2818 .dsm-logo-wrap img, 
.page-id-2825 .dsm-logo-wrap img, 
.page-id-5087 .dsm-logo-wrap img,
.page-id-6401 .dsm-logo-wrap img,
.page-id-6114 .dsm-logo-wrap img,
.page-id-6454 .dsm-logo-wrap img,
.page-id-2827 .dsm-logo-wrap img

{
     background: transparent !important;
     filter: invert(100%) grayscale(100%);
}

.home #main-header .dsm-menu-text, 
.single-post #main-header .dsm-menu-text,
.page-id-2818 #main-header .dsm-menu-text,
.page-id-2825 #main-header .dsm-menu-text, 
.page-id-5087 #main-header .dsm-menu-text,
.page-id-6401 #main-header .dsm-menu-text,
.page-id-6114 #main-header .dsm-menu-text,
.page-id-6454 #main-header .dsm-menu-text,
.page-id-2827 #main-header .dsm-menu-text
{
     color: #fafafa;
}
 #main-header.scrolled .dsm-menu-text {
     color: #00006B !important;
}

/* Quando lo scroll supera i 100px */
 #main-header.scrolled {
     background-color: white !important;
     box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
 #main-header.scrolled .dsm-menu-text {
     color: #00006B !important;
}
 #main-header.scrolled .dsm-logo-wrap img {
     background: transparent !important;
     filter: invert(0%) grayscale(0%);
}
 .menu-button {
    margin: 0 auto;
}
 .dsm_mega_menu_0_tb_header .dsm-mega-menu-container.mobile-menu {
     padding-top: 20%;
}
 .dsm_mega_menu_0_tb_header .dsm-mega-menu-container.mobile-menu .dsm-mega-menu-close-button .dsm_mobile_close_icon {
     color: #0000F8;
     font-size: 40px;
     position: relative;
     top: 45px;
}
 .dsm-logo-wrap img {
     background: #fff;
     padding: 16px;
}
 .dropdown-mega a {
     font-size:14px !important;
     text-transform:uppercase;
}
 .dropdown-mega ul {
     padding:0 !important;
}
 .dsm_mega_menu_0_tb_header .dsm-mega-menu-container .dsm-root-menu .dsm-mega-menu-item .dsm-submenu-container .dsm-submenu-inner-container {
     background-color: #ffffff;
     box-shadow: 10px 10px 0px 0px #d4c6c7;
}
/* CUSTOM CAROUSEL */
 .custom-carousel-wrapper, .custom-carousel-wrapper1, .custom-carousel-wrapper2, .custom-carousel-wrapper3, .custom-carousel-wrapper4, .custom-carousel-wrapper5, .custom-carousel-wrapper6, .custom-carousel-wrapper7 {
     position: relative;
     overflow: hidden;
}
 .custom-carousel, .custom-carousel1, .custom-carousel2, .custom-carousel3, .custom-carousel4, .custom-carousel5, .custom-carousel6, .custom-carousel7 {
     display: flex;
     overflow-x: auto;
     scroll-snap-type: x mandatory;
     gap: 20px;
     padding: 0px;
     -webkit-overflow-scrolling: touch;
     scroll-behavior: smooth;
}
 .custom-slide {
     transition: opacity 0.9s ease;
     opacity: 1;
     visibility: visible;
     position: relative;
     flex: 0 0 auto;
     width: 90%;
     max-width: 300px;
     height: 400px;
     overflow: hidden;
     scroll-snap-align: center;
}
 .custom-slide.hidden {
     opacity: 0;
     visibility: hidden;
     position: absolute;
}
 .slide-background {
     width: 100%;
     height: 100%;
     background-size: cover;
     background-position: center;
     transition: transform 0.5s ease, filter 0.5s ease;
     filter: brightness(80%);
}
 .slide-content {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     color: #fff;
     text-align: center;
     padding: 0px;
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
}
 .slide-title {
     font-size: 35px;
     font-weight: 900 !important;
     color: #ffffff;
     text-shadow: 2px 2px 5px #00000020;
     margin: 0;
     padding:15px;
     transition: opacity 0.3s ease;
     position:absolute;
}
 .overlay-content {
     opacity: 0;
     transition: opacity 0.3s ease;
     border: 1px solid #ffffff50;
     padding: 10% 5%;
     background: #00000030;
}
 .overlay-link {
     color: #a9baff;
     transition: color 0.3s ease;
     text-decoration: none;
     margin-top: 10px;
     font-weight: 900;
     z-index: 999999 !important;
     display: inline-block !important;
     padding: 10px;
     position: relative;
     top: 0;
}
 .overlay-link:hover {
     color: #fff;
     position: relative;
     text-decoration: none;
}
 .overlay-link::after {
     content: '';
     position: absolute;
     left: 0;
     bottom: -2px;
    /* distanza sotto il testo */
     width: 0;
     height: 2px;
     background-color: #fff;
    /* Colore della linea */
     transition: width 0.3s ease;
}
 .overlay-link:hover::after {
     width: 100%;
}
 .filter-button {
     text-transform:uppercase;
}
/* Effetti Hover */
 .custom-slide:hover .slide-background {
     transform: scale(1.1);
     filter: brightness(60%);
}
 .custom-slide:hover .slide-title {
     opacity: 0;
}
 .custom-slide:hover .overlay-content {
     opacity: 1;
}
/* Buttons */
 .carousel-nav {
     max-width: 270px;
     position: relative;
     margin: auto;
     top: 18px;
     padding: 0 !important;
}
 .carousel-nav-gite {
     max-width: auto;
     position: relative;
     margin: auto;
     top: -50px;
     padding: 0 !important;
}
 .carousel-btn {
     position: absolute;
     top: 16%;
     width: auto;
     height: 40px;
     background: none;
     border: none;
     cursor: pointer;
     transform: translateY(-50%);
     z-index: 10;
     opacity: 1;
     padding: 0;
     margin: 0;
     transition: all 0.3s ease;
}
 .carousel-btn::before {
     content: '';
     display: inline-block;
     width: 15px;
     height: 15px;
     border-top: 2px solid #00006B;
     border-right: 2px solid #00006B;
     transform: rotate(45deg);
}
/* Sinistra (prev) */
 .prev, .prev1, .prev2, .prev3, .prev4, .prev5, .prev6, .prev7 {
     left: 10px;
}
 .prev::before, .prev1::before, .prev2::before, .prev3::before, .prev4::before, .prev5::before, .prev6::before, .prev7::before {
     transform: rotate(-135deg);
}
/* Destra (next) */
 .next, .next1, .next2, .next3, .next4, .next5, .next6, .next7 {
     right: 10px;
}
 .next::before, .next1::before, .next2::before, .next3::before, .next4::before, .next5::before, .next6::before, .next7::before {
     transform: rotate(45deg);
}
 .carousel-btn:hover {
     background: #E9DBDA;
     border-radius: 100px;
}
/* RESPONSIVE */
 #responsive-menu {
    padding:0px;
}
 .et_pb_menu .et_mobile_nav_menu {
     bottom: 6px;
     margin-top: -6px;
}
 .mobile_menu_bar::before {
     font-size: 45px;
}
 #mobile-logo img {
     text-align: left;
     margin-left: 0;
     position: absolute;
     right: 40px;
     width: 280px;
     z-index: 999999;
     top: 38px;
     left: 20px;
}
 @media only screen and (min-width: 980px) {
     #responsive-menu, #mobile-menu-logo, #mobile-menu-header {
         display:none;
    }
}
/* Tablet */
 @media only screen and (max-width: 980px) {
	 
	 .lgpdb-stamp {
	position: relative;
	right: 0;
	width: 140px;
	top: 0;
}
	 
     .page {
        padding-top:40px !important;
    }
     #main-header {
        display:none;
    }
     #mobile-menu-header {
         position: absolute !important;
         top: 0;
         padding-top: 0px !important;
         margin-top: 0px !important;
    }
     .custom-blurb .et_pb_blurb_description, .custom-blurb .et_pb_module_header {
         text-align: left !important;
         padding-left: 0px !important;
    }
     .carousel-nav {
         top: 1px;
    }
     .et_pb_image_0, .et_pb_image_1, .et_pb_image_3 {
         width: 100% !important;
    }
     #main-header {
        display:none;
    }
     .et_pb_menu .et_mobile_menu {
         background-color: #ffffff;
         box-shadow: 10px 10px 0px 0px #d4c6c7;
    }
     .et_mobile_menu li a {
         text-transform: uppercase;
    }
     .custom-slide {
         height: 400px;
    }
     .et_pb_blurb .et-pb-icon {
         font-size: 25px !important;
         position: relative;
         left: 5px;
    }
     .timbre-over {
         position: absolute;
         top: -230px;
         left: -80px;
    }
     #img-right {
         margin-left: auto;
         margin-right: auto !important;
         left:0;
    }
     #main-footer p, #main-footer a, #main-footer li, #main-footer h4 {
         text-align: center !important;
    }
     .social-ico div {
        margin:0 auto !important;
    }
     body #page-container .et_pb_section .et_pb_button_0_tb_footer {
         margin: 0 auto;
         display: block;
         padding: 15px;
    }
}
/* Mobile */
 @media only screen and (max-width: 479px) {
	 
	 #mobile-logo img {
	margin-left: 0;
	position: absolute;
	right: 40px;
	width: 210px;
	z-index: 999999;
	top: 38px;
	left: 20px;
}
	 
     .custom-slide {
         height: 400px;
    }
     .slide-title {
         font-size: 26px;
    }
     .overlay-link {
         font-size: 16px;
    }
     .overlay-content {
         font-size: 14px !important;
         padding: 6% 3%;
    }
     .column-border-top {
         border-top:40px solid #fff;
    }
     body {
        overflow-x:hidden;
    }
     .link-fx a {
         font-size:14px !important;
    }
     .timbre-over {
         position: absolute;
         top: -175px;
         left: -52px;
         width: 200px;
    }
     .et_pb_row {
         width: 95%;
    }
}
 