/*======================================
Theme Name: Zamar
Theme URI: https://divicake.com/
Description: divi child theme for CDF Studio.
Version: 4.5.4
Author: Gianluca Lomarco
Author URI: https://www.gianlucalomarco.it/
Template: Divi
======================================*/


.footer_row p {
	font-size: 15px;
    line-height: 1.7!important;
}

.footer_row .et_pb_module.et_pb_text, .footer_row .fwidget.et_pb_widget {
	margin-bottom: 0;
}


body p {
	text-align: justify;
}

.et_pb_blurb p {
	text-align: left;
}

.z_text_center p, .z_all_centered p, .z_all_centered h4 {
	text-align: center;
}

.button.is-rounded {
	border: none;
}

.wp-block-column:not(:first-child) {
	margin-left: 5vw;
	position: relative;
}

.z_gut_columns .wp-block-column:not(:first-child)::before {
	content: "";
	height: 100%;
	width: 1px;
	background-color: black;
	opacity: 0.2;
	position: absolute;
	top: 0;
	left: -2.5vw;
}

/* stili pratiche */

.z_practices_container .modal {
	width: 50%;
}

.z_practices_container .z_practice {
	margin-bottom: 30px;
}

.z_practices_container .z_practice:after {
    content: "";
    display: block;
    height: 1px;
    background-color: white;
    opacity: 0.3;
    margin-top: 20px;
    margin-right: 0;
    margin-left: auto;
}

.z_main_action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0px 20px;
	border-radius: 50px;
}

.z_main_action h4 {
	font-size: 18px;
	font-weight: 600;
	color: white;
}

.z_main_action a.z_practice_action {
	height: 30px;
	display: block;
	width: fit-content;
	padding: 0 40px;
	color: white;
	font-size: 14px;
	font-weight: 500;
	border-radius: 20px;
	background-color: #99CE00;
	line-height: 30px;
}

.z_main_action a.z_practice_action:hover {
	background-color: white;
	color: #99CE00;
	transition: all 200 ease-in-out;
}

.z_alternative_actions {
	text-align: right;
	font-size: 14px;
	color: white;
	text-decoration: underline;
	letter-spacing: 1px;
	padding-right: 20px
}

.z_alternative_actions span {
	margin-left: 30px;
	cursor: pointer;
}

.modal h3 {
	font-size: 18px;
	font-weight: 600;
}

.modal p {
	font-size: 16px;
}

#mappa-cdf {
	min-height: 900px;
}

#mappa-cdf-ra, #mappa-cdf-ro {
	min-height: 400px;
}

.modulo-upload {
	margin-top: 40px;
	position: relative;
}

.modulo-upload * {
	max-width: 100%;
}

.modal .z_input, .modal .z_input_file, form .z_input, form .z_input_file {
	height: 35px;
    border-radius: 25px;
    line-height: 35px;
    padding: 0 15px!important;
	border: 1px solid #333;
	margin-bottom: 20px;
	margin-right: 20px;
}

.modal .z_input_file {
	
	margin-bottom: 20px;
}

.modal .z_button, .z_button{
	height: 35px;
    border-radius: 25px;
    line-height: 35px;
	border: none;
	background-color: #203C88;
	color: white;
	font-size: 14px;
	font-weight: 600;
	padding: 0 50px;
	text-align: center;
	
}

.modal .modulo-upload .privacy-policy, .modulo-upload .privacy-policy {
	font-size: 14px;
	font-weight: 300;
}

.modal .modulo-upload .privacy-policy a, .modulo-upload .privacy-policy a{
	color: #203C88;
	font-weight: 500;
}

.modal .modulo-upload .wpcf7-list-item, .modulo-upload .wpcf7-list-item {
	margin: 15px 0 0;
}

/* modal */

.o_close, .o_modal {
	display: none!important;
	opacity: 0!important;
}

.o_open {
	display: flex!important;
	opacity: 1!important;
	transition: opacity 150ms ease-in-out;
}

#o_modal_close_button {
	display: block;
    height: 45px;
    width: 45px;
    padding: 0;
    font-size: 40px;
    font-weight: 200;
    border: none;
    transform: rotate(45deg);
    position: absolute;
     top: -20px;
    right: 60px;
    color: black;
    background-color: transparent;
    border-radius: 50%;
}


#o_modal_button {
	display: block;
	width: fit-content;
	border-radius: 50px;
	height: 45px;
	font-weight: 500;
	font-size: 12px;
	line-height: 45px;
	text-align: center;
	width: 230px;
	background-color: #FF6B31!important;
	padding: 0!important;
	color: white;
	border: none!important;
}

/* You can add your own CSS styles here. Use !important to overwrite styles if needed. */

.d_flex {
	display: flex;
}

.d_flex_row {
	flex-direction: row;	
}

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

.team-carousel .meta-box h3 {
	font-size: 18px;
	line-height: 1.7em;
	margin-top: 50px;
}

.team-carousel .item {
	position: relative;
}

.team-carousel .meta-box p {
	font-size: 16px;
	line-height: 1.5em;
	color: #686868;
	
}

.icon_mail:before {
	content: "\e076";
}

.z_outlined_button {
	height: 35px;
	min-width: 35px;
	border: 1px solid black;
	border-radius: 20px;
	display: block;
	background: transparent;
	width: fit-content;
	margin-right: 30px;
	text-align: center;
	color: black;
	font-size: 14px;
	line-height: 35px;
	padding: 0 20px;
}

.z_circle {
	padding: 0;
}

.z_team_buttons > div {
	display: flex;
	flex-direction: row;
}

.etfont {
	font-family: ETModules!important;
}

.thin {
	font-weight: 300!important;
}

.extra-thin {
	font-weight: 200!important;
}

.semibold {
	font-weight: 600!important;
}

#z_main_header .only_mobile, .only_mobile {
	display: none;
}

#z_main_header .z_top_menu .et_pb_menu__wrap {
	justify-content: flex-end;
}

#z_main_header .z_top_menu li a {
	font-weight: 200!important;
}

#z_main_header .z_top_menu li.menu-item::after {
	display: block;
	position: absolute;
	bottom: -10px;
	background-color: white;
	height: 1px;
	width: 0px;
	left: 0px;
	content: '';
}

#z_main_header .z_top_menu li.menu-item:hover::after, #z_main_header .z_top_menu li.current-menu-item::after {
	width: 100%;
	transition: width 200ms ease-in;
}

#z_main_header .z_top_menu li.current-menu-item::after {
	background-color: #99CE00;
}

.owl-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	width:100%;
	height: 370px;
	top: 0;
	z-index: -10;
}

.owl-prev {
	transform: translate(-70px);
}

.owl-next {
	transform: translate(+70px);
}

.carousel-nav-button {
/* 	font-family: ETModules; */
	display: block;
	height: 40px;
	width: 40px;
	border: none;
	border-radius: 50%;
	line-height: 40px;
	font-size: 20px;
	color: black;
/* 	box-shadow: inset -2px -2px 4px 1px rgba(0,0,0,0.15), -3px -3px 8px 2px rgba(0,0,0,0.05); */
/* 	margin-left: 30px; */
}

.z_h1_span span {
	display: block;
	font-size: 24px !important;
	line-height: 2em;
	font-weight: 300px;
}

.z_focus_row p {
	font-weight: 200px;
}

.z_focus_row h3 {
	margin-bottom: 25px;
}

textarea {
	transition-property: height;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	min-height: auto!important;
}

.et_contact_bottom_container {
	float: left;
}

.z_contact_form .et_contact_bottom_container button {
	height: 45px;
	padding: 0 40px!important;
	line-height: 45px;
	text-align: center;
	margin-top: 60px;
	min-width: 240px;

}

.z_maps_direction {
	padding:  0px 0px 0px 50px!important;
	height: 30px;
	line-height: 30px;
	position: relative;
	
}

.z_all_centered .z_maps_direction, .z_all_centered .z_maps_direction p, .z_all_centered .z_maps_direction > div {
	width: fit-content;
	margin: 0 auto;
}

.z_maps_direction::after, .z_maps_direction::before{
	content: '';
	display: block;
	position: absolute;
	cursor: pointer;
	height: 30px;
	width: 30px;
}

.z_maps_direction::before {
	top: 0;
	left: 0;
	background-color: #203C88;
	transform: rotate(45deg);
	transform-origin: center;
	border-radius: 3px;
}

.z_maps_direction::after {
	top: 5px;
	left: 5px;
	height: 20px;
	width: 20px;
	background-image: url("data:image/svg+xml,<svg width='1em' height='1em' viewBox='0 0 16 16' class='bi bi-arrow-90deg-right' fill='white' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M9.896 2.396a.5.5 0 0 0 0 .708l2.647 2.646-2.647 2.646a.5.5 0 1 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708 0z'/><path fill-rule='evenodd' d='M13.25 5.75a.5.5 0 0 0-.5-.5h-6.5a2.5 2.5 0 0 0-2.5 2.5v5.5a.5.5 0 0 0 1 0v-5.5a1.5 1.5 0 0 1 1.5-1.5h6.5a.5.5 0 0 0 .5-.5z'/></svg>");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.z_form_candidatura .et_contact_bottom_container {
	margin-top: 0;
	padding: 0 0 0 3%;
	margin-bottom: 3%;
}

.z_form_candidatura .et_contact_bottom_container button {
	height: 50px;
	min-width: 270px;
	width: 5%;
	margin-left: 0;
}

.z_form_candidatura .et_pb_contact_field input {
	background-color: transparent;
	border: 1px solid black;
	border-radius: 30px;
	height: 50px;
	line-height: 50px;
}

.z_list_circle ul {
	list-style: circle;
}

.z_list_circle ul li {
	margin-bottom: 30px;
}

.z_service_container {
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 80px;
}

.z_service_item{
	position: relative;
}

.z_service_container .z_service_item {
	width: 27%;
	margin-bottom: 60px;
}

.z_service_item .z_service_icon, .z_service_item .z_service_meta {
	
}

.z_service_item .z_service_icon {
	min-width: 60px;
	width: 60px;
	margin-right: 40px;
	transition: all 200ms ease-in-out;
}

.z_service_item:hover .z_service_icon {
	transform: scale(1.2);
	
}

.z_service_item .z_service_meta {
	
}

.z_service_title {
	font-weight: 600;
	line-height: 1.5em;
}

.z_service_container  .z_service_title {
	font-size: 16px;
	text-transform: uppercase;
}

.z_service_container .z_service_item p {
	font-size: 14px;
	font-weight: 300;
	margin-bottom: 15px;
	line-height: 1.4em;
	text-align: left;
}

.z_service_item p.z_read_more {
	font-size: 13px;
	font-weight: 600;
	text-decoration: underline;
	text-transform: uppercase;
	
	color: black;
}

.link_overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999999;
	height: 100%;
	display: block;
	width: 100%;
}

.z_service_item:hover .z_service_title {
	color: #203C88;
	transition: color 200ms ease-in;
}

.z_service_sidebar_container .z_service_title{
	font-size: 17px;
	padding-bottom: 0px;
}

.z_service_list_item {
	margin-bottom: 20px;
	list-style: none;
	padding-left: 60px;
}

.z_service_list_item p.z_read_more {
	margin-top: 0;
}

.z_service_list_icon {
	width: 40px;
	min-width: 40px;
	position: absolute;
	left: 0px;
	top: 5px;
}

.z_post_content li {
	font-size: 17px;
}

.z_post_content p {
	font-size: 17px;
	line-height: 1.7em;
	margin-bottom: 30px;
	font-weight: 300;
}

.z_post_content h2 {
	font-size: 28px;
	font-weight: 600;
	margin: 80px 0 50px;
}

.z_post_content h3 {
	font-size: 20px;
	font-weight: 600;
}

.z_post_content figure {
	margin: 50px 0px;
	width: 100%;
	max-width: 600px;
}

.z_post_content li {
	margin-bottom: 15px;
}

body .et_pb_section.z__bg_blue {
	background-color: #203C88!important;
	transition: all 300ms ease-in-out;
}

#z_main_header .et_pb_row {
	height: 100%!important;
}

#z_main_header .et_pb_column {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.is-purple {
	background-color: #BE00CE; 
	border-color: #BE00CE; 
	color: white;
}

.is-green {
	background-color: #99ce00;
	border-color: #99ce00; 
	color: white;
}

.z_section {
	padding: 3% 80px 6%;
}

.z_row {
	padding: 2% 0;
	max-width: 1600px;
	width: 100%;
	margin: 0 auto;
}

.tags {
	border-bottom: 1px solid rgba(0,0,0,0.2);
}

.z_news_list {
	margin-top: 30px;
}

.z_news_list ul {
	list-style: none!important;
	padding: 0!important;
}

.z_news_list ul li {
	margin-bottom: 19px!important;
}

.z_news_list ul li a {
	font-weight: 600;
	font-size: 20px;
	line-height: 1.6em;
	color: black;
}

.z_news_list ul li:hover a, .z_news_list ul li span {
	color: #203C88!important;
}

.z_news_tabbed_list  {
	
}

.z_accordion .et_pb_toggle_title:before {
	content: '\4c'!important;
}

.z_accordion .et_pb_accordion_item{
	margin-bottom: 5px!important;
	border: none;
}

.z_accordion h3 {
	width: fit-content;
}

strong {
	font-weight: 600!important;
}

.z_listed_title {
	font-size: 24px;
	margin-bottom: 40px;
	padding-left: 75px;
	max-width: 525px!important;
	position: relative;
	line-height: 1.7em;
}

.z_listed_title:before {
	position: absolute;
	display: block;
	height: 100%;
	font-size: 36px;
	line-height: 1.6em;
	font-weight: 200;
	top: 0;
	left: 0;
}

body #page-container .et_pb_section #z_area_clienti .et_pb_promo .et_pb_promo_button.et_pb_button {
	padding: 0 30px!important;
}

#z_area_clienti .et_pb_button_module_wrapper {
	display: inline-block;
	float: right;
	width: fit-content;
	margin-left: 20px;
	margin-bottom: 10px!important;
}

.z_text_button {
	display: inline-block;
	height: auto;
	padding: 0;
	color: white;
	text-decoration: underline;
	font-size: 15px!important;
	line-height: 1.6em;
	border: none;
	font-weight: 300;
	letter-spacing: 1px;
	background-color: transparent;
}


.feed-item a {
	font-weight: 600;
}


.feed-item:hover a {
	color: #BE00CE;
}

.feed-item .wprss-feed-meta {
	font-size: 14px;
}

.et_pb_tab .feed-source{
	display: none;
}
/* 
.et_pb_tab_content {
	max-height: 50vh;
	overflow-y: auto;
} */

ul.et_pb_tabs_controls:after {
/* 	border: none!important; */
}

.et_pb_tabs_controls li {
	border: none!important;
	margin-right: 5px;
	margin-bottom: 15px;
}

.et_pb_tab_content ul {
	padding: 0!important;
}

.et_pb_tabs_controls li {
	border-radius: 40px;
}

.et_pb_tab_active a {
	font-weight: 600!important;
}

div.wpra-list-template .wpra-item-list > li.wpra-item {
	margin-bottom: 20px;
}

/* todo responsive service grid style */

/*** Responsive Styles Large Desktop And Above ***/
@media all and (min-width: 1405px) {
  
}
 
/*** Responsive Styles Standard Desktop Only ***/
@media all and (min-width: 1100px) and (max-width: 1405px) {
 
}
 
/*** Responsive Styles Tablet And Below ***/
@media all and (max-width: 980px) {
	
	.z_section {
		padding: 6% 50px;
	}
	
	.z_news_list ul li a {
		font-size: 18px;
	}
 
	#z_main_header .only_mobile, .only_mobile  {
		display: block;
	}
	
	.z_service_container .z_service_item {
		width: 47%;
	}
	
	.z_practices_container .modal {
		width: 100%;
	}
	
/* 	 mobile menu */
	#z_main_header .z_header_col {
		height: 80px;
		pointer-events: none;
	}
	
	#z_main_header .z_header_col div:not(.et_pb_menu__menu) {
		height: 100%;
		width: 100%;
		display: flex;
		justify-content: flex-end;
	}
	
	#z_main_header .z_header_col_special div {
		height: auto!important;
		display: block;
	}
	
	.mobile_nav {
		pointer-events: all;
	}
	
	#z_main_header:hover, #z_main_header .mobile_nav > ul {
		background-color: #203C88!important;
	}
	
	#z_main_header .z_header_col .et_mobile_nav_menu {
		margin: 0!important;
	}
	
	#z_main_header .z_header_col .et_pb_menu_0_tb_header .mobile_nav .mobile_menu_bar:before {
		color: white;
	}
	
	#z_main_header .z_header_col .mobile_menu_bar {
		margin-right: 45px;
	}

	#z_main_header .z_header_col_special {
		position: fixed;
		max-width: 90px;
		left: 50px;
		pointer-events: all;
	}

	#z_main_header .z_top_menu li.menu-item:hover::after, #z_main_header .z_top_menu li.current-menu-item::after {
		bottom: 5px
	}
	
	#z_main_header .z_top_menu li.menu-item, #z_main_header .z_top_menu li.current-menu-item {
		position: relative;
		    width: fit-content;
	}
	
	#z_main_header .z_top_menu li a {
		width: fit-content;
		white-space: nowrap;
		padding: 10px 10px 10px 0px;
	}
	
}
 
/*** Responsive Styles Tablet Only ***/
@media all and (min-width: 768px) and (max-width: 980px) {
 
}
 
/*** Responsive Styles Smartphone Only ***/
@media all and (max-width: 767px) {
	
	.z_section {
		padding: 6% 25px;
	}
	
	.z_news_list ul li a {
		font-size: 16px;
	}
	
	body p {
		text-align: initial;
	}
 
	#z_main_header .z_header_col .mobile_menu_bar {
		margin-right: 20px;
	}

	#z_main_header .z_header_col_special {
		left: 25px;
	}
	
	
	#o_modal_close_button {
		right: 0;	
	}
	
	.z_service_container .z_service_item {
		width: 100%;
	}
	
	.z_service_item {
		flex-direction: column;
	}
	
	.z_service_item .z_service_icon {
		margin-right: 0;
		margin-bottom: 15px;
	}
	
	.owl-nav {
		align-items: flex-end;
		height: calc(100% + 60px);
	}
	
	.owl-prev, .owl-next {
		transform: translate(0px);
	}
	
	.z_main_action {
		flex-direction: column;
		padding: 0px 0px 20px;
		align-items: flex-end;
	}
	
	.z_main_action h4 {
		margin-bottom: 20px;
		width: 100%;
	}
	
 	.z_alternative_actions {
		padding: 0;
		
	}
	/*
	.z_alternative_actions span {
		margin-left: 0;
		margin-right: 20px;
	} */

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

