/*
 Theme Name:     Osteria Madonnetta
 Description:    Osteria Madonnetta
 Author:         Panese Think Digital
 Author URI:     https://www.panese.it
 Template:       Divi
 Version:        1.0.0
*/
 
@import url("../Divi/style.css");
 
/* =Theme customization starts here
------------------------------------------------------- */
body{
	font-weight: 300;
}

.m_top_header .right_menu p,
.m_top_header .wpml-ls-legacy-list-horizontal{
	display: inline-block !important;
}

.wpml-ls-legacy-list-horizontal a{
	padding-left: 0px !important;
}

.wpml-ls-statics-shortcode_actions{
	padding-left: 20px !important;
	padding-top: 0px !important;
}

h1{
	font-size: 3vw !important;
	line-height: 120%;
	line-height: 1.1em;
	padding-bottom: 5px !important;
}

h2{
	font-size: 2.3vw !important;
	line-height: 1.1em;
	padding-bottom: 5px !important;
}

.home h3,
.special h3{
	font-size: 1.9vw !important;
	line-height: 1.3em;
	font-family: 'Playfair Display',Georgia,"Times New Roman",serif !important;
}

h3{
	font-size: 14px !important;
	line-height: 1.3em;
}


.madonnetta-domande h3{
	font-family: "Open Sans",Arial,sans-serif !important;
}

.team-slider h3{
	font-size: 16px !important;
}


.big-font a{
	font-size: 35px !important;
	font-family: 'Playfair Display',Georgia,"Times New Roman",serif;
	color: #312c32 !important;
	line-height: 120% !important;
}

.flexible-column{
	display: flex;
	justify-content:center;
	flex-direction:column;
}

.flex-end{
	display: flex;
	justify-content:flex-end;
	flex-direction:column;
}

.white-link a{
	color: #fff !important;
}

.white-link a:hover{
	color: #98dafc !important;
}


.et_button_no_icon .et_pb_button,
.et_button_no_icon .et_pb_button:hover{
	color: #fff !important;
	padding: 12px 25px !important;
}

.pulsante_a{
	float: left;
	margin-right: 20px;
}

.m_review i{
	color: #312c32 !important;
	padding: 10px 3px !important;
}

.m_review h4{
	font-size: 30px;
	padding-bottom: 15px;
}

.m_review p{
	padding-bottom: 0px !important;
}

.et_pb_gallery_image.portrait{
	height: 20vw !important;
}

.et_pb_gallery_image.portrait img{
	margin-top: -4vw !important;
}

.mfp-bottom-bar{
	display: none !important;
}

.m_people .et_pb_text{
	min-height: 300px;
}

.gallery_row.et_pb_gutters2.et_pb_row.et_pb_row_fullwidth{
	width: 100% !important;
	max-width: 100% !important;
}

.madonnetta-domande h2{
	font-size: 18px !important;
}

.madonnetta-domande h3{
	font-size: 14px !important;
	font-weight: 200 !important;
}

.shop-madonnetta .et_pb_text_inner h3{
	padding-bottom: 5px !important;
}

.shop-madonnetta .et_pb_text_inner p{
	font-size: 14px !important;
	line-height: 1.3em !important;
}

/* = SEZIONI SPECIALI
------------------------------------------------------- */

.column_wide{
	height: 600px !important;
}


.column_wide .column_right{
	margin-left: -5% !important;
	width: 45% !important;
	z-index: 0 !important;
}

.column_overflow{
	
}

.column_wide_right .column_left{
	margin-right: : -5% !important;
	width: 55% !important;
	z-index: 0 !important;
}

.column_wide_left .column_right{
	margin-left: : -5% !important;
	width: 55% !important;
	z-index: 0 !important;
}

.column_overflow_right{
	margin-left: -5% !important;
	padding: 5% 5% 5% 0px;
}

.column_overflow_left{
	margin-right: -5% !important;
	padding: 5% 0% 5% 10%;
}

.column_up{
	margin-top: -125px !important;
}

.et_pb_module.text_bottom{
	margin-top: 60px !important;
}


.madonnetta-menu-item{
	display: flex;
	height: 300px;
	align-items: center;
	justify-content: center;
}

.madonnetta-menu-item p{
	color: #331122 !important;
	font-weight: 500 !important;
}

.madonnetta-domande .madonnetta-menu-item{
	height: 200px !important;
}

.cta-prenotazione a{
	color: #fff !important;
	font-weight: bold !important;
}

.cta-prenotazione a:hover{
	color: #312c32 !important;
}

.cta-gruppi a{
	color: #312c32 !important;
	font-size: 30px !important;
	font-family: 'Playfair Display',Georgia,"Times New Roman",serif;
}

.cta-gruppi:hover{
	color: #fff !important;
}

.horizontal-line h3{
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.horizontal-line h3:before,
.horizontal-line h3:after{
	position: absolute;
	top: 40%;
	overflow: hidden;
	width: 48%;
	height: 1px;
	content: '';
	background-color: #eaeaea;
}

.horizontal-line h3:before{
margin-left: -50%;
text-align: right;
margin-right: 15px;
}

.horizontal-line h3:after{
	margin-left: 15px !important;
}


.ricette_madonnetta h2{
}

.ricette_madonnetta .post-content p,
.ricette_madonnetta .post-content a{
	font-size: 12px !important;
	line-height: 120% !important;
}

.madonnetta_small li{
	font-size: 14px !important;
}

.madonnetta_small p{
	padding-bottom: 10px !important;
}

.small_text{
	font-size: 14px !important;
	line-height: 110%;
}

.ricette_madonnetta .entry-title{
}

.ricette_madonnetta .post-meta{
}

.home-slider .et_pb_image_wrap{
	max-height: 33vw !important;
	overflow: hidden;
}

.home-slider .et_pb_image_wrap img{
	margin-top: -19vw !important;
}

.header-img .et_pb_image_wrap{
	max-height: 15vw !important;
	overflow: hidden;
}

.header-img .et_pb_image_wrap img{
	margin-top: -25vw !important;
}


/* = 404
------------------------------------------------------- */

.error404 #main-content{
	min-height: 500px;
}

.error404 #main-content .container:before{
	display: none !important;
}

.error404 #main-content .container {
    padding-top: 60px;
}

/* = BLOG
------------------------------------------------------- */



.blog_madonnetta .et_pb_post a img{
	max-width: 50% !important;
	position: relative;
}

.blog_madonnetta .entry-title{
	position: absolute;
	padding-left: 55%;
	padding-right: 10%;
	margin-top: -28%;
	z-index: 999999;
	font-size: 3vw !important;
}

.blog_madonnetta .post-meta{
	position: absolute;
	padding-left: 55%;
	margin-top: -30%;
	z-index: 999999;
	font-size: 12px !important;
}

.blog_madonnetta .post-content p{
	display: none;
}

.blog_madonnetta .post-content a{
	position: absolute;
	right: 0px;
	margin-top: -75px;
	z-index: 999999;
  color: #fff !important;
  padding: 12px 25px !important;
  background-color: #312c32;
  text-transform: uppercase;
  font-weight: bold;
  border-width: 1px!important;
  font-size: 14px !important;
}


/* = HEADER
------------------------------------------------------- */
.et_header_style_split #et-top-navigation{
	margin-left: 40px !important;
}


#et-top-navigation{
	height: 80px !important;
	margin-left: 0px !important;
}

#top-menu-nav{
	margin-top: -30px !important;
}

#top-menu-nav .logo_container img{
	padding-top: 20px !important;
}

.et_header_style_split .centered-inline-logo-wrap{
	height: 150px !important;
	width: 150px !important;
}

#et-top-navigation li{
	font-weight: 300;
}

.m_top_header .left_menu{
	float: left;
	padding-top: 10px;
	font-size: 12px !important;
}

.m_top_header .right_menu{
	float: right;
	padding-top: 10px;
	font-size: 12px !important;}

#main-header a{
	font-family: 'Playfair Display',Georgia,"Times New Roman",serif;
	color: #312c32 !important;
}

#main-header .m_top_header a:hover{
	text-decoration: underline;
}

.social-icons{
	padding-left: 20px !important;
}

.social-icons i{
	padding-left: 5px;
}

.social-icons i:hover{
	color: #98dafc;
}

/*** FOOTER ***/

#main-footer{
	margin-top: 100px !important;
}

#main-footer .footer-widget,
#main-footer .footer-widget .fwidget{
	width: 100% !important;
}

#main-footer .et_pb_section{
	background-color: rgba(255, 255, 255, 0) !important;
}

#main-footer #footer-credits{
	font-size: 12px !important;
	margin-top: 30px !important;
}

#main-footer h3{
	color: #fff !important;
}

#main-footer a{
	color: #fff !important;
}

#main-footer a:hover{
	color: #98dafc !important;
}

.social-footer i{
	font-size: 25px !important;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 5px;
}


/*** Responsive Styles Large Desktop And Above ***/
@media all and (min-width: 1405px) {

	.blog_madonnetta .entry-title,
	body h1{
		font-size: 40px !important;
	}
	
	h2{
		font-size: 34px !important;
	}

	.home h3,
	.team-slider h3,
	.special h3{
		font-size: 22px !important;
	}

}
 
/*** Responsive Styles Standard Desktop Only ***/
@media all and (min-width: 1404px) and (max-width: 1205px) {

}

/*** Responsive Styles Standard Desktop Only ***/
@media all and (min-width: 1105px) and (max-width: 1204px) {

}

/*** Responsive Styles Standard Desktop Only ***/
@media all and (min-width: 981px) and (max-width: 1104px) {

}
 
/*** Responsive Styles Tablet And Below ***/
@media all and (max-width: 980px) {

	#et-top-navigation{
		height: 50px !important;
	}
	
	.et_header_style_split #main-header .mobile_nav{
		background: transparent !important;
	}
	
	.et_header_style_split #et_mobile_nav_menu{
		margin-top: 0px !important;
	}
	
	.et_header_style_split #et_mobile_nav_menu .select_page{
		display: none !important;
	}
	
	#et-top-navigation{
		position: absolute !important;
		top: 0px !important;
		right: 0px;
		z-index: 99
	}
	
	.logo_container{
		width: 20% !important;
		margin: auto !important;
		padding-top: 15px !important;
		margin-bottom: -40px !important;
	}
	
	.m_top_header{
		position: absolute !important;
		z-index: 99999;
		top: -5px !important;
	}
	
	.m_top_header .social-icons,
	.m_top_header	.left_menu{
		display: none !important;
	}
	
	.m_top_header	.left_menu{
		z-index: 999999;
	}

	.et_header_style_split .et_mobile_menu{
		top: 40px !important;
	}
	
	.blog_madonnetta .entry-title{
		font-size: 20px !important;
	}
	
	h1{
		font-size: 34px !important;
	}
	
	h2{
		font-size: 26px !important;
	}

	.home h3,
	.team-slider h3,
	.special h3{
		font-size: 20px !important;
	}
	
	.column_wide_left{
		display: flex;
	}
	
	.column_wide_left .column_overflow_left{
		width: 60% !important;
	}
	
	.column_wide_left .column_right{
		width: 45% !important;
		margin-right: -5%;
	}
	
	.column_overflow{
		padding-right: 20% !important;
	}
	
	.column_wide_right .column_left{
		width: 40% !important;
	}
	
	.column_wide_right .column_overflow_right{
		width: 65% !important;
		margin-right: -5%;
	}
	
	.full_width_mobile{
	}
	
	.blog_madonnetta .et_pb_post a img{
		max-width: 50% !important;
		position: relative;
	}
	
	.blog_madonnetta .entry-title{
		padding-right: 5%;
		margin-top: -30%;
		font-size: 20px !important;
	}
	
	.blog_madonnetta .post-meta{
		margin-top: -33%;
		font-size: 12px !important;
	}
	
	.madonnetta-domande{
		padding-left: 15px !important;
		padding-right: 15px !important;
		padding-bottom: 15px !important;
	}
	
	.column-reverse-ipad{
		display: flex !important;
		flex-direction: column-reverse !important;
	}


}
 
/*** Responsive Styles Tablet Only ***/
@media all and (min-width: 768px) and (max-width: 980px) {
 
}
 
/*** Responsive Styles Smartphone Only ***/
@media all and (max-width: 767px) {	
	
	
.wpml-ls-statics-shortcode_actions{
	padding-left: 10px !important;
	padding-top: 0px !important;
}

	h1{
		font-size: 28px !important;
	}
	
	h2{
		font-size: 25px !important;
	}
	
	.column-reverse{
		display: flex !important;
		flex-direction: column-reverse !important;
	}
	
	.m_top_header{
		top: -15px !important;
	}
	
	.et_header_style_split .mobile_menu_bar{
		top: -7px !important;
	}
	
	.home-slider .et_pb_image_wrap{
		max-height: 50vw !important;
		overflow: hidden;
	}
	
	.home-slider .et_pb_image_wrap img{
		margin-top: 0vw !important;
	}
	.column_wide_left{
		display: block;
	}
	
	.column_wide_left .column_overflow_left{
		width: 100% !important;
		padding: 5% !important;
	}
	
	.column_wide_left .column_overflow_left .et_pb_text{
		text-align: left !important;
	}
	
	.et_pb_module.text_bottom{
		margin-top: 20px !important;
	}
	
	.column_wide_left .column_right{
		width: 100% !important;
		margin-right: 0%;
	}
	
	.column_overflow{
		padding-right: 0% !important;
	}
	
	.column_wide_right .column_left{
		width: 100% !important;
	}
	
	.column_wide_right .column_overflow_right{
		width: 100% !important;
		margin-right: 0%;
		padding: 5% !important;
	}

	.blog_madonnetta .et_pb_post a img{
		display: block;
		width: 100% !important;
		max-width: 100% !important;
	}
	
	.blog_madonnetta .entry-title{
		display: block;
		width: 100% !important;
    position: inherit;
    padding-left: inherit;
    padding-right: inherit;
    margin-top: inherit;
    z-index: inherit;
	}
	
	.blog_madonnetta .post-meta{
		display: block;
		width: 100% !important;
		position: inherit;
    padding-left: inherit;
    padding-right: inherit;
    margin-top: inherit;
    z-index: inherit;
	}
	
	.blog_madonnetta .post-content a{
		position: inherit;
		right: inherit;
		margin-top: inherit;
		z-index: inherit;
		display: inline-block;
		}

 
}
 
/*** Responsive Styles Smartphone Portrait ***/
@media all and (max-width: 479px) {
 
}


/* ==========================================================================
   STILE SELETTORE MENU WPML
   ========================================================================== */
   
/* Desktop: in alto a destra */
@media (min-width: 981px) {
  
  li.menu-item.wpml-ls-item { /* Questa regola potrebbe essere specifica di un altro selettore WPML, la lascio */
	display: none!important;
  }
  
  #custom-language-switcher { /* Selettore Desktop (dropdown) */
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 9999999;
	width: 80px; /* Considera se 'auto' potrebbe essere meglio con scale */
	font-size: 14px;
	color: #331121; /* Colore testo di fallback, WPML solitamente lo gestisce */
	transform: scale(0.7); /* Rende il selettore più piccolo */
  }

  /* Stili generali per il selettore desktop (non homepage) */
  #custom-language-switcher .wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover > a,
  #custom-language-switcher .wpml-ls-legacy-dropdown-click a:focus,
  #custom-language-switcher .wpml-ls-legacy-dropdown-click a:hover {
	color: #fff; /* Testo bianco su hover/focus */
	background: #63334a!important; /* 'transparent' era scritto 'tranparent' */
  }

  #custom-language-switcher .wpml-ls-legacy-dropdown-click a {
	display: block;
	text-decoration: none;
	color: #fff!important; /* Testo bianco */
	border: 1px solid #331121; /* Bordo bianco */
	background-color: #331121 !important;
	padding: 4px 10px 6px 10px;
	line-height: 13px;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 13px;
  }
  
  #custom-language-switcher .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
	border-top: 0px solid #cdcdcd!important; /* Nessun bordo superiore per il sottomenu desktop */
  }

  #custom-language-switcher .wpml-ls-legacy-dropdown-click .wpml-ls-item {
	margin-top: -1px; /* Leggera sovrapposizione per gli item del dropdown */
  }

  /* Nasconde il selettore mobile su schermi grandi */
  li.mobile-language-switcher {
	display: none !important;
  }
}

/* Stile globale per i link del dropdown WPML (potrebbe essere ereditato o sovrascritto) */
.wpml-ls-legacy-dropdown-click a { /* Questa regola era un po' isolata, verifica se serve globalmente o solo dentro #custom-language-switcher */
  background-color: transparent;
}


/* Mobile: Selettore lingue in linea dentro il menu */
@media (max-width: 980px) {
  /* Nasconde il selettore desktop su schermi piccoli */
  #custom-language-switcher {
	display: none;
  }

  /* Mostra e formatta il contenitore del selettore mobile */
  li.mobile-language-switcher {
	display: block !important; /* Assicura la visibilità sovrascrivendo regole desktop */
	width: 100%;
	padding: 10px 0; /* Spaziatura sopra/sotto il blocco lingue */
	order: 99; /* Se usi flexbox per il menu mobile, per spingerlo in fondo */
  }

  /* Contenitore principale dello shortcode WPML dentro il selettore mobile */
  .mobile-language-switcher .wpml-ls-statics-shortcode_actions {
	width: 100%;
  }

  /* Lista UL principale di WPML (livello 0) */
  .mobile-language-switcher .wpml-ls-statics-shortcode_actions > ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex; /* Allinea il suo figlio (li.wpml-ls-item-legacy-dropdown-click) */
	justify-content: center; /* Centra il blocco delle lingue */
	width: 100%;
	margin-top: 15px!important;
  }

  /* L'elemento <li> (livello 1) che contiene la lingua attiva E il sottomenu delle altre lingue */
  .mobile-language-switcher .wpml-ls-item-legacy-dropdown-click { /* Rimosso "> ul >" per maggiore flessibilità se la struttura WPML cambia leggermente */
	display: flex; /* I suoi figli (link lingua attiva e sottomenu ul) si disporranno in linea */
	flex-wrap: wrap; /* Permette alle lingue di andare a capo se non c'è abbastanza spazio */
	justify-content: left; /* Centra le lingue all'interno di questo contenitore */
	align-items: center; /* Allinea verticalmente gli elementi */
	width: auto; /* Adatta la larghezza al contenuto */
  }

  /* Link della lingua attiva (es. "English") */
  .mobile-language-switcher .wpml-ls-item-legacy-dropdown-click > a.js-wpml-ls-item-toggle {
	display: inline-block;
	padding: 5px 8px !important; /* Spaziatura e !important per sovrascrivere il 5% */
	margin: 2px 3px; /* Margine tra le lingue */
	text-decoration: none;
	border: none !important; /* Rimuovi bordi */
  }

  /* Nasconde la freccetta del dropdown (già presente nel tuo CSS) */
  .mobile-language-switcher .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
	display: none !important;
  }

  /* Sottomenu <ul> (livello 2) che contiene le altre lingue */
  .mobile-language-switcher .wpml-ls-item-legacy-dropdown-click > ul.js-wpml-ls-sub-menu {
	display: flex !important; /* Forza la visualizzazione e usa flex per i suoi <li> */
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
	position: static !important; /* Sovrascrive position:absolute */
	border: none !important; /* Sovrascrive bordi specifici del dropdown */
	background-color: transparent !important;
	box-shadow: none !important;
	width: auto !important;
  }

  /* Elementi <li> (livello 3) individuali dentro il sottomenu */
  .mobile-language-switcher .js-wpml-ls-sub-menu > li.wpml-ls-item {
	display: inline-block; /* O lascia che flex li gestisca */
	padding: 0;
	margin: 0; /* Il margine sarà sui link <a> */
  }

  /* Link <a> finali per ciascuna lingua (sia attiva che nel sottomenu) */
  .mobile-language-switcher .wpml-ls-legacy-dropdown-click .wpml-ls-link {
	display: inline-block;
	padding: 5px 8px !important; /* Spaziatura e !important per sovrascrivere il 5% */
	margin: 2px 3px; /* Margine tra le lingue */
	text-decoration: none;
	border: none !important; /* Rimuovi bordi */
  }
  
  /* Stile del testo per le lingue (unificato) */
  .mobile-language-switcher .wpml-ls-legacy-dropdown-click a span.wpml-ls-native {
	font-weight: 500 !important;
	text-transform: uppercase !important;
	font-size: 14px !important; /* Leggermente più piccolo per stare meglio in linea, puoi aggiustare */
	color: #35454f; /* Colore testo, adatta se necessario */
  }
  
  li.mobile-language-switcher a {
	  font-weight: 500 !important;
	  text-transform: uppercase !important;
	  font-size: 14px !important; /* Leggermente più piccolo per stare meglio in linea, puoi aggiustare */
	  color: #35454f!important; /* Colore testo, adatta se necessario */
  }

  /* Regola originale per il background del menu mobile Divi, la mantengo */
  body .et_pb_menu_1_tb_header.et_pb_menu .et_mobile_menu ul, body .et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu ul {
	background-color: transparent !important;
  }
}
