/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,200..800&display=swap');

.menu-toggle {
    display: block;
    cursor: pointer;
    padding: 0px 10px;
}

.bar {
    width: 30px;
    height: 2px;
    background-color: #567194;
    margin: 5px 0;
	transition: all 0.2s ease;
}
.sezioneheader{
	width:33%;
}
.btn-mope{
	font-family:Bricolage Grotesque;
	font-weight:300;
	font-size:16px;
	padding:20px 30px;
	
	border-radius:50px;
	text-transform:uppercase;
	transition: all 0.2s ease;
}
.blucolor{
	color:#567094;
	border:1px solid #567094;
}
.whitecolor{
	color:white;
	border:1px solid white;
}
.btn-mope:hover, .btn-mope:focus, .btn-mope:visited{
	background: linear-gradient(90deg, #00A7B2 0%, #90BA2A 100%);
	font-weight:500;
}
.btn-mope.navbar-toggler{
	display:flex;
	align-items: center;
}
.btn-mope.navbar-toggler:hover .bar,.btn-mope.navbar-toggler:focus .bar, .btn-mope.navbar-toggler:visited .bar{
	background-color:white;
}
.offcanvas.menu-full{
	width:50%;
}
.menu-principale li a{
	color:#567094;
	font-family: Bricolage Grotesque;
	font-weight: 300;
	font-size: 40px;
	padding:10px 20px;
}
.menu-principale li{
	padding:0px 20px 20px 20px;
}
ul.menu-principale{
	list-style:none;
}
.sectionoffbassa{
	display: flex;
    justify-content: center;
}
.offcanvas-header{
	height:25%;
}
.menu-principale li:hover a{
	border:2px solid #567094;
	border-radius: 50px;
	font-weight:500;
}
.sectionoffbassa .btn-mope{
	width:80%;
}
.title-plus h2 {
  position: relative;
  display: inline-block;
}

.title-plus h2::after {
  content: "+";
  position: absolute;
  top: -0.4em;
  right: -0.4em;
  font-size: 1.5em;
  color: #90BA2A;
}
.blur-bg {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* per Safari */
  background-color: rgba(255, 255, 255, 0.3); /* facoltativo per evidenziare il blur */
}
.btn-mope i{
	font-weight:300;
}
.page-header{
	display:none;
}
.slider-container{
	height:550px;
}
/* Swiper slide generale */
.servizio-slide {
  position: relative;
  background-size: cover;
  background-position: center;
  height: 500px;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  transition: transform 0.3s ease;
}
.servizio-slide:hover .servizio-content{
	transform:translateY(0);
	background: linear-gradient(to top, rgba(86, 112, 148, 1), transparent 80%);
}
/* Overlay contenuto */
.servizio-content {
  position: relative;
  width: 100%;
  padding: 20px;
  background: linear-gradient(to top, rgba(86, 112, 148, 0), transparent 80%);
  color: white;
	transform:translateY(50px);
  transition: all 0.3s ease;
}

/* Titolo + descrizione */
.servizio-info {
  transition: transform 0.3s ease;
}

.servizio-info p{
	font-family:Bricolage Grotesque;
	font-weight:300;
	font-size:16px;
	line-height:18px;
}
.servizio-info h3{
	font-family:Bricolage Grotesque;
	font-weight:700;
	font-size:30px;
	line-height:30px;
	text-transform:uppercase;
}

/* Pulsante inizialmente nascosto */
.servizio-btn {
  display: inline-block;
  padding: 0.5em 1.2em;
  background: transparent;
  color: white;
  border:1px solid #90BA2A;
  text-decoration: none;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Effetto hover */
.servizio-slide:hover .servizio-info {
  transform: translateY(-20px);
}

.servizio-slide:hover .servizio-btn {
  opacity: 1;
  transform: translateY(0);
}
	.slider-servizi-navigation {
		position: absolute;
		top: auto;
		bottom:0;
		right: 0;
		display: flex;
		gap: 25px;
}

.slider-servizi-navigation .swiper-button-prev,
.slider-servizi-navigation .swiper-button-next {
    width: 40px;
    height: 40px;
    border: 1px solid white;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    cursor: pointer;
	position:relative;
	background:#567094;
}

.slider-servizi-navigation .swiper-button-prev::after,
.slider-servizi-navigation .swiper-button-next::after {
    display: none; /* Nasconde gli SVG predefiniti */
}
  .sticky-div {
    position: sticky;
    top: 0;
    z-index: 1;
  }

  .overlay-div {
    
    margin-top: 0; /* si sovrappone allo sticky */
    position: relative;
    z-index: 2;
  }
.shadoweffect {
	background: linear-gradient(90deg, #00A7B2 0%, #90BA2A 100%);
	backdrop-filter:blur(8px);
  color: white;
  font-weight: bold;
  border-radius: 12px;
  display: inline-block;
  box-shadow: 0 0 20px #72B05F; /* ombra sfumata colorata */
}

.footer-mope{
	background:#567094;
}
.div-footer{
	display:flex;
	flex-direction:row;
	justify-content: space-evenly;
	padding: 50px 0;
	width: 1300px;
    margin: auto;
}
.footer-mope h4{
	color:white;
	text-transform:uppercase;
	font-family: Bricolage Grotesque;
	font-weight:500;
}
.colonna2-footer{
	display:flex;
	flex-direction:column;
	align-items:center;
}
.colonna1-footer,.colonna2-footer{
	width:40%;
}
.colonna1-footer h5, .colonna1-footer h5 a{
	color: white;
    font-family: Bricolage Grotesque;
    font-weight: 300;
    font-size: 18px;
    line-height: 25px;
	text-transform:uppercase;
} 
.colonna1-footer p{
	color:white;
	font-family: Bricolage Grotesque;
	font-weight: 300;
	font-size: 16px;
	line-height:20px;
	padding-top:20px;
}
footer .menu_principale_mope li a{
	color:white;
}
footer .menu_principale_mope{
	list-style-type:none;
}
h3.copyright-mope{
	font-size:14px;
	text-align:center;
	color:white;
	font-family:Bricolage Grotesque;
	font-weight:400;
	margin:0;
	padding-bottom:10px;
	
}
.colonna-social i {
    font-size: 30px;
    color: white;
    padding: 10px;
}
.cardbox {
  width: 100%;
  height: 300px;
   /* cambia con la tua immagine */
  background-size: cover !important;
  background-position: center center !important;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}

.date-box {
  position: absolute;
  top: 16px;
  right: 16px;
  background: rgba(255, 255, 255, 0.9);
  padding: 8px 10px;
  border-radius: 8px;
  text-align: center;
  width: 48px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.day {
  font-size: 20px;
  font-weight: bold;
  color: #333;
}

.month {
  font-size: 12px;
  text-transform: uppercase;
  color: #777;
}
.fancy-text::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 150%;
    border-radius: 0%;
    background: linear-gradient(90deg, #00A7B2, #90BA2A);
    opacity: 1;
    filter: blur(20px);
    z-index: -1;
}
.notfound-container{
	background:white;
	color:#567094;
	padding:50px 20px 20px 20px;
	min-height:60vh;
}
.notfound-div{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	margin:0 0 0px 0px;
}
.notfound-div h1{
	font-family:Bricolage Grotesque;
	font-weight:600;
	font-size:120px;
	background: linear-gradient(0deg, #90BA2A, #00A7B2);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}
.notfound-div h3{
	font-family:Bricolage Grotesque;
	color:unset;
	font-weight:600;
	text-transform:uppercase;
}
.notfound-div h5{
	font-family:Bricolage Grotesque;
	color:unset;
	font-weight:300;
}

.notfound-div button a{
	color:#567094;
	text-decoration:none;
}
.spacer{
	height:50px;
}
.formrow p{
	display:flex;
	gap:10px;
}
.formrow input{
	border-radius:30px;
	color:#567094;
	border:1px solid #567094;
}
.rowdate{
	display: flex;
    justify-content: center;
	
}
.rowdate input{
	display:none;
}
span.wpcf7-list-item-label {
    color: #567194;
    font-size: 14px;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.btn-mope.blucolor {
    margin-top: 20px;
    padding: 15px 40px;
}
.menu-footer li a{
    color: white;
    font-family: Bricolage Grotesque;
    font-weight: 300;
    font-size: 18px;
    line-height: 25px;
    text-transform: uppercase;
}
.menu-footer li a:hover{
	font-weight:500;
	cursor:pointer;
}


ul.menu-footer{
	list-style:none;
	padding:0;
}
.btn-close{
	    font-size: 25px;
    width: 30px !important;
    height: 30px !important;
    opacity: 1;
	border:none;
}
.btn-close {
    --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' %3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
}
header {
  transition: transform 0.3s ease, opacity 0.3s ease;
  
  opacity: 1;
}
header.pre-sticky {

 
  opacity: 0;
	z-index: 9999;
	 width: 100%;
}

/* sticky vero e proprio */
header.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  background: white;
  z-index: 9999;
	
  opacity: 1;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}


