/* Add your custom CSS here. */

:root {
    --dark-blue: #1f6994;
    --light-blue: #00d4e5;
	--opensans: Open Sans, sans-serif;
	--montserrat: Montserrat, sans-serif;
}

*, *::before, *::after {
    box-sizing: border-box;
}

body {
    font-family: Open Sans, sans-serif;
    font-size: 16px;
    line-height: 180%;
    color: #333;
}

h1, h2, h3, h4, h5, h6 {
    font-family: Montserrat, sans-serif;
    line-height: 130%;
    margin: 0.5em 0 1em 0;
	color: var(--dark-blue);
}

h1 {
	font-size:30px;
	font-weight: 700;
}

h2 {
	font-size:26px;
	font-weight: 700;
}

h3 {
	font-size:22px;
	font-weight: 400;
}

h4, h5, h6 {
	font-size: 18px;
	font-weight: 400;
	margin-bottom: 0.5em;
}

h2 + h3.subtitle {
    font-weight: 400;
    margin-top: -20px;
    margin-bottom: 30px;
}




a {
	color: #2a9ed4;
}

a:hover {
	color: #1a5a78;
}




/*
img {
    display: block;
}
*/

img.alignleft, 
img.alignright, 
img.aligncenter {
    margin-bottom: 10px;
}

.obj-fit {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.obj-fit-cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.obj-fit-contain {
	object-fit: contain;
}

.obj-fit-scale {
	object-fit: scale-down;
}



.default {
    background: none #00d4e5;/* #00bfd7 */
}

.default:hover {
  	opacity:1;
  	background-color:#1f6994;
}







#container {
    display: flex;
    flex-direction: column;
}


.article-top {
    display: flex;
    align-items: center;
    justify-content: center;
	padding: 40px;
    gap: 40px;
}

@media(max-width:600px) {
	.article-top {
		padding: 40px 10px;
		gap: 20px;
	}
	
}



/* used in search results */
.entry-label {
    background-color: var(--light-blue);
    border-radius: 4px;
    padding: 5px 10px;
    display: inline-block;
    line-height: 1;
    color: #fff;
    margin-bottom: 10px;
}

.entry-title, .entry-title a {
    color: #226d97;
    margin-bottom: 0.2em;
    line-height: 120%;
    margin-top: 0;
}

.entry-content h2, .entry-text h2 {
    border-bottom: 1px solid;
    padding-bottom: 5px;
    margin-top: 50px;
}

.entry-content h3, .entry-text h3 {
    margin: 30px 0 10px;
}





.post-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
	padding: 20px;
	border-top: 1px solid var(--dark-blue);
}

@media(max-width:600px) {	
	.post-navigation {
    	padding: 20px 0;
	}
}





/*-----------------------------------------------------------------------------------*/
/* ICON-LIST
/*-----------------------------------------------------------------------------------*/

.icon-list ul {
    margin-left: 5px;
}

.icon-list li {
    display: flex;
    /*align-items: center;*/
    gap: 10px;
    background: none;
    padding-left: 0;
}

.widget .icon-list li {
	padding: 0;
}


.icon-list li:before {
    font-family: dashicons;
    font-size: 20px;
}

.icon-check li:before {
    content: "\f15e";
}

.icon-star li:before {
    content: "\f155";
}

@media(max-width:480px) {
	
	.icon-list li {
		padding-left: 5px;
	}
	
}




/*-----------------------------------------------------------------------------------*/
/* INFO-BOX
/*-----------------------------------------------------------------------------------*/

.info-box {
	box-shadow: none;
	padding: 10px 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.info-box .icon {
	background-position: center center;
	width: 20px;
	height: 20px;
	padding: 0;
}




/*-----------------------------------------------------------------------------------*/
/* TB-BUTTONS
/*-----------------------------------------------------------------------------------*/

.tb-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 40px;
}

.tb-buttons.align-center {
    justify-content: center;
}

.tb-button {
    border-radius: 8px;
    border: 0 none;
    padding: 12px 40px;
    margin: 4px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: bold;
    line-height: 160%;
}

.tb-button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.tb-button.read-more {
    padding: 11px 23px;
	margin: 0;
}

.tb-button i {
    position: relative;
    left: -5px;
    height: 0;
    line-height: 0;
	font-size: 24px;
}


.tb-button.outline {
    border: 2px solid;
    background-color: transparent;
    color: #00d4e5; /* #00bfd7 */
}

.tb-button.outline:hover {
    color: #1f6994;
}

.dark-button {
    background-color: var(--dark-blue);
    color: #fff;
}

.tb-button.dark-button:hover {
    background-color: var(--light-blue);
}

.tb-button.outline.dark-button {
    color: var(--dark-blue);
}

.tb-button.outline.dark-button:hover {
    color: var(--light-blue);
    background-color: transparent;
}


.tb-button.iconic {
	position: relative;
	overflow: hidden;
	padding-left: 70px;
}

.tb-button.iconic i {
    position: absolute;
    height: auto;
    width: 44px;
	line-height: 1;
    font-size: 24px;
    top: 0;
    left: 0;
    bottom: 0;
    background: #ffffff3b;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tb-button-small {
	font-size:12px;
}




/*-----------------------------------------------------------------------------------*/
/* USERBAR
/*-----------------------------------------------------------------------------------*/

#userbar {
    background-color: #114869;
    font-size: 14px;
}

.userbar-content {
	max-width: 1100px;
	margin: auto;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.userbar-message {
	color: #fff;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	margin: 0 10px;
}

.userbar-button a {
	color: #fff;
	background-color: #165a83;
	margin-left: 1px;
	padding: 12px 18px;
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.userbar-button a:hover {
    background-color: #2172a3;
}

.userbar-button a span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.userbar-button.iscriviti-button a {
    background-color: var(--light-blue);
}

.userbar-avatar {
    width: 40px;
    height: 40px;
    border: 1px solid var(--dark-blue);
    flex-shrink: 0;
    margin-left: 10px;
	border-radius: 100%;
    overflow: hidden;
}

.userbar-avatar:hover {
    border-color: var(--light-blue);
}


@media (max-width:400px) {
	
	.userbar-message  {
		flex-basis: 100%;
	}
	
	.userbar-message span {
		display: none;
	}
	.userbar-button a {
		padding: 12px 14px;
	}
	
	.userbar-button.logout-button a {
		gap: 0;
		font-size: 0;
	}

}




/*-----------------------------------------------------------------------------------*/
/* TOP
/*-----------------------------------------------------------------------------------*/

#top {
    background: linear-gradient(#ecf8ff 0%, #f3f9ff 100%);
}

#top #branding .content {
	position: relative;
	margin: 0 auto;
}

#top #branding .header-above {
	max-width: 1100px;
	margin: auto;
}






/************************ themeblvd search ***********************/

.themeblvd-search form {
    background-color: #ecf9ff;
    padding: 6px;
    position: relative;
    display: flex;
    align-items: center;
    color: var(--dark-blue);
}

.themeblvd-search input.search-input {
    color: inherit;
    padding: 5px;
    width: 100%;
    font-size: 13px;
    font-family: 'Open Sans';
    background: transparent;
    border: none;
    max-width: none;
}

.themeblvd-search input.search-input::placeholder {
    color: var(--dark-blue);
}

.themeblvd-search i {
    position: absolute;
    right: 12px;
}

.themeblvd-search input[type="submit"] {
    border: 0;
    background: none;
    height: 28px;
    width: 40px !important;
    padding: 0;
    z-index: 1;
}


/*************************** header logo *************************/

#top #branding #header_content {
    width: 100%;
    max-width: 340px;
    padding: 20px 0;
    margin: auto;
	position: relative;
}

@media (max-width:480px) {
	
	#top #branding #header_content {
		margin-left: 20px;
		max-width: 320px;
		padding-top: 30px;
	}

}


/*************************** header menu *************************/

#header_menu {
    border-bottom: 2px solid #1f6994;
}

/*
 * global styles
 */

#access li {
	position: relative;
}

#access ul {
	list-style: none;
}

#access li a {
    font-family: 'Open Sans';
    font-weight: 600;
    font-size: 15px;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    color: #1f6994;
    display: block;
	padding: 14px;
}

#access li a:hover {
    background: transparent;
    color: #009fe3;
}

#access li.current-menu-item > a {
    color: #009fe3;
}

#access li.menu-item-has-children > a {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
}

/* arrow */
#access li a > span {
    font-size: 0;
}

#access li a > span::after {
    content: "\f347";
    font-family: 'dashicons';
    font-size: 14px;
}


/* submenu */
#access .sub-menu {
    color: #fff;
    background: #1c6c9c;
    padding: 5px;
    width: auto;
	margin: 0;
    position: absolute;
	top:-999em;
	z-index: 999;
}

#access .sub-menu li a {
    color: #fff;
    text-align: left;
	font-size: 13px;
    padding: 13px;
}

#access .sub-menu li a:hover,
#access .sub-menu li.current-menu-item a {
    background-color: #165a83;
    color: #fff;
}




/*
 * first-level submenu
 */

#primary-menu {
    display: flex;
    justify-content: center;
    gap: 1px;
	max-width: 1100px;
    margin: 0 auto;
}

#primary-menu > li {
    flex-grow: 1;
}

#primary-menu > li:hover > .sub-menu, 
#primary-menu > li.sfHover > .sub-menu {
    left:0 !important;
	top: 45px !important;
	margin-left: 0 !important;
}




/*
 * deep-level submenu 
 */

#access .sub-menu li.menu-item-has-children > a {
    justify-content: space-between;
}

#access .sub-menu li a > span::after {
    content: "\f345";
}

#access li:hover .sub-menu, 
#access li.sfHover .sub-menu {
    top: -5px;
    left: calc(100% + 6px);
}





/* search-icon */
#access li.menu-search a {
    height: 43px;
    padding: 12px;
}

/* home-item */
#access li.home {
	display: none;
}


/******************** mobile menu (mmenu.js) *********************/

#mobile-menu {
  visibility: hidden;
}

#mobile-menu.mm-menu {
  visibility: visible;
}

.admin-bar .mm-menu {
    top: 32px;
}

.mm-wrapper {
    position: unset;
}

.mm-menu--theme-dark {
    --mm-color-background: #124869;
    --mm-color-border: rgb(255, 255, 255, 0.1);
}

#mobile-menu-toggle {
    font-size: 30px;
    padding: 4px 11px;
    background: #1f6994;
    line-height: 1;
    height: 44px;
    border-radius: 5px;
    position: absolute;
    top: 20px;
    left: 20px;
    color: #fff;
	display: none;
}

@media(max-width:840px) {
	
	#access {
		display: none;
	}
	
	#mobile-menu-toggle {
		display: inline-block;
	}

}

@media(max-width:786px) {
	
	.admin-bar .mm-menu {
		top: 46px;
	}
	
}

@media(max-width:480px) {
	
	#mobile-menu-toggle {
		left: auto;
		right: 20px;
	}
	
}


/*************************** breadcrumbs *************************/

#breadcrumbs {
    color: #226d97;
    font-size: 13px;
    font-weight: bold;
	line-height: 1.5;
	text-transform: uppercase;
    width: auto;
    margin: 0;
	padding: 5px;
}

#breadcrumbs a {
	color: inherit;
	margin: 0 4px;
}

#breadcrumbs a:first-child {
    margin-left: 0;
}

#breadcrumbs a:hover {
    text-decoration: underline;
}

#breadcrumbs .current {
    font-weight: normal;
	padding: 0 4px;
}


/*************************** pagination *************************/


.pagination ul {
    list-style: none;
	display: flex;
    gap: 6px;
    margin: 0;
}

.pagination li {
    width: 40px;
	font-size: 14px;
	text-align: center;
	line-height: 1;
}

.pagination a, 
.pagination .current {
    padding: 12px;
    display: block;
}

.pagination a {
    color: #216d98;
}

.pagination a:hover, 
.pagination .current {
	background-color: #226d97;
	color: #fff;
}






/*-----------------------------------------------------------------------------------*/
/* MAIN-TOP
/*-----------------------------------------------------------------------------------*/

#main .main-top {
	background-color: #daf0fe;
    /*background-image: linear-gradient(90deg, #95c1ff, #acfafe);*/
}

#main .main-top-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
	padding: 40px 30px;
    max-width: 1100px;
	margin: auto;
}

#main .main-top-inner:empty {
    display: none;
}


@media(max-width:600px) {

	#main .main-top-inner {
		flex-direction: column;
		gap: 20px;
	}
	
	.main-top .themeblvd-search {
		width: 100%;
	}
	
}




/*-----------------------------------------------------------------------------------*/
/* MAIN-CONTENT
/*-----------------------------------------------------------------------------------*/

#main .main-content {
    max-width: 1100px;
    padding: 20px;
	margin: 0 auto;
}

.main-content-inner {
    display: flex;
    gap: 20px;
}

.main-content-inner #content {
    flex-grow: 1;
}

#sidebar {
    width: 270px;
    margin: 20px 0 0;
    flex-shrink: 0;
}

@media(max-width:840px) {
	
	.main-content-inner {
		flex-direction: column;
	}
	
	#sidebar {
		width: 100%;
		min-height: auto;
	}
	
}





/*-----------------------------------------------------------------------------------*/
/* FEATURED ABOVE
/*-----------------------------------------------------------------------------------*/








/*-----------------------------------------------------------------------------------*/
/* FEATURED BELOW
/*-----------------------------------------------------------------------------------*/

#featured_below .element-inner {
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    position: relative;
}

#featured_below .last-element {
    padding-bottom: 0;
}

#featured_below .widget {
    margin: 0;
}






/*-----------------------------------------------------------------------------------*/
/* FOOTER
/*-----------------------------------------------------------------------------------*/

#bottom .footer-content, 
#bottom .footer-copyright, 
#bottom .footer-below {
    max-width: 1100px;
	margin: 0 auto;
	padding: 0;
}

#bottom {
    padding: 20px;
    background-color: #1b4b67;
}

#bottom .footer-content {
    padding-top: 30px;
}

#bottom p {
    color: #fff;
    font-size: 15px;
    line-height: 170%;
}

#bottom h3 {
    color: #fff;
    margin-bottom: 10px;
	font-weight: 600;
}

#bottom a:hover {
    color: #fff;
    text-decoration: underline;
}



.footer-content .grid-protection {
    display: flex;
    flex-wrap: wrap;
}

.footer-content .column.grid_3 {
    width: 24%;
    padding: 20px;
    margin: 0;
}

.footer-content .column.grid_3:first-child {
    width: 28%;
}


.footer-content .widget .widget-title {
    padding: 0;
}

.footer-content .widget .menu-item a {
    color: rgb(255 255 255 / 27%);
    font-size: 15px;
    line-height: 200%;
    /* text-transform: uppercase; */
}

.footer-content .widget .menu-item a:hover {
    color: #fff !important;
    text-decoration: underline;
}

.footer-content .menu-area-soci-container .menu-item.login {
    display: none;
}


#bottom .footer-copyright {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
    border-top: 1px solid rgb(255 255 255 / 21%);
	padding-top: 20px;
}

#bottom .copyright {
    padding: 5px;
}

#bottom .copyright p {
    font-size: 13px;
    line-height: 1.5em;
    text-align: center;
	margin: 0;
}





@media(max-width: 700px) {
	
	.footer-content .column.grid_3,
	.footer-content .column.grid_3:first-child {
		width: 50%;
	}
	
	#bottom .copyright {
		margin: auto;
		width: 100%;
	}
	
}

@media(max-width: 480px) {
	
	.footer-content .column.grid_3,
	.footer-content .column.grid_3:first-child {
		width: 100%;
	}
	
}






/*-----------------------------------------------------------------------------------*/
/* WIDGETS
/*-----------------------------------------------------------------------------------*/

.widget .widget-title {
    color: var(--dark-blue);
    font-size: 16px;
	font-weight: bold;
    padding: 20px 40px 20px;
	position: relative;
}

.textwidget p {
	margin-bottom:0.3em;
    line-height:16px;
}

.textwidget img {
	margin:0 auto;
}

.textwidget .divider-solid {
    margin:24px 0 !important;
}


.column .widget {
    margin: 0 0 0;
}


#sidebar .widget {
    border: 1px solid var(--light-blue);
    border-radius: 10px;
}

#sidebar .widget .widget-inner {
    padding: 0;
}


@media(max-width:840px) {
	
	.widget-toggle {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		padding: 0 30px;
	}
	
	.widget-toggle::after {
		font-family: 'dashicons';
		content: "\f347";
	}
	
	.widget_nav_menu.expanded .widget-toggle::after {
		font-family: 'dashicons';
		content: "\f343";
	}
	
	.widget_nav_menu.mobile-toggle:not(.expanded) {
		height: 60px;
		overflow: hidden;
	}
	
}


/******************* [widget] widget_nav_menu *********************/

#sidebar .widget_nav_menu ul.menu {
    margin: 10px 35px;
}

#sidebar .widget_nav_menu .widget-title {
    border-bottom: 1px solid var(--light-blue);
	margin: 0;
}

#sidebar .widget_nav_menu li {
    border-bottom: 1px dotted #1f699440;
    color: var(--dark-blue);
    font-size: 14px;
    font-weight: bold;
    padding: 8px 5px;
    margin: 0;
}

#sidebar .widget_nav_menu .current-menu-item {
    color: var(--light-blue);
}

#sidebar .widget_nav_menu li:last-child {
    border-bottom: 0;
}

#sidebar .widget_nav_menu li a:hover {
	text-decoration:underline;
}

#sidebar .widget_nav_menu .double-row {
    line-height: 14px;
    padding: 10px;
}

#sidebar .widget_nav_menu .disable {opacity:0.5;}

#sidebar .widget_nav_menu .disable a:hover{
    text-decoration:none;
    cursor:default;
}

#sidebar .widget_nav_menu .login {
    background-color: #90ba18;
    border-radius: 4px;
    color: #fff;
    margin: 20px 0;
    position: relative;
    text-align: center;
	display: none !important;
}


#sidebar .widget_nav_menu .login a:hover {
	color:#1F6994 !important;
	text-decoration:none;
}

#sidebar .widget_nav_menu .mobile {
	display: none;
}






/*-----------------------------------------------------------------------------------*/
/* SLIDER
/*-----------------------------------------------------------------------------------*/

.element-post_list_slider,
.element-post_grid_slider {
    padding: 0;
}

.element-post_list_slider > .element-inner {
    padding: 0;
    border: 0 !important;
    background: none;
    border-radius: 0;
}

.standard-slider-wrapper .show-nav_arrows {
    padding: 0 60px;
}

/* arrows */
.standard-slider-wrapper .flex-direction-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    margin-top: -36px;
    height: auto;
    bottom: auto;
	z-index: 9;
}

.standard-slider-wrapper .flex-direction-nav li {
	padding:0 2px;
}

.standard-slider-wrapper .flex-direction-nav a {
    background: none;
    text-indent: 0;
    font-size: 0;
    width: auto;
    height: 28px;
    line-height: 1;
}
.standard-slider-wrapper .flex-prev:before {
    font-family: dashicons;
    content: "\f340";
    font-size: 28px;
}
.standard-slider-wrapper .flex-next:before {
    font-family: dashicons;
    content: "\f344";
    font-size: 28px;
}



/* dots */
.standard-slider-wrapper .flex-control-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    position: relative;
    inset: auto;
    height: auto;
    line-height: 1;
    margin-top: 20px;
    z-index: 3;
}

.standard-slider-wrapper .flex-control-nav li {
    padding: 2px;
}

.standard-slider-wrapper .flex-control-nav li a {
    background: #ddd;
    height: 12px;
    width: 12px;
    border-radius: 100%;
    cursor: pointer;
    display: block;
    text-indent: -9999px;
}

.standard-slider-wrapper .flex-control-nav li a.flex-active {
    background-color: #00bfd7;
}


@media(max-width:800px) {
	
	.standard-slider-wrapper .flex-direction-nav {
		top: 200px;
	}
	
}

@media(max-width:540px) {
	
	.element-post_list_slider .flexslider {
		padding: 0;
	}
	
	.standard-slider-wrapper .flex-direction-nav {
		left: -40px;
		right: -40px;
	}
	
}

@media(max-width:480px) {
	
	.standard-slider-wrapper .flex-direction-nav {
		top: 24%;
	}
	
}






/*-----------------------------------------------------------------------------------*/
/* POST-LIST / POST-GRID
/*-----------------------------------------------------------------------------------*/

.post-list-header, 
.post-grid-header {
    display: flex;
    flex-direction: column;
    align-items: center;
	margin-bottom: 30px;
    padding: 16px;
	gap: 20px;
}

.post-list-header .entry-title, 
.post-grid-header .entry-title {
    display: flex;
    flex-direction: column;
    align-items: center;
	text-align: center;
    margin-bottom: 0;
}

.post-list-header .entry-title::after,
.post-grid-header .entry-title::after {
    content: "";
    width: 180px;
    border-bottom: 3px solid #216d98;
    display: inline-block;
    margin-top: 15px;
}

.post-list-header .entry-subtitle,
.post-grid-header .entry-subtitle {
    text-align: center;
}

.post-list-items article {
    border: 1px solid #05d4e5;
    border-radius: 10px;
    padding: 40px;
}

.post-list-items .pagination-wrap {
    margin: 0 0 40px;
}

.post-list-items .entry-title {
	font-size: 24px;
}

.post-list-items .entry-content {
    display: flex;
    gap: 30px;
    padding: 20px 10px;
}

.post-list-items .entry-image {
    flex-basis: 25%;
	flex-shrink: 0;
    min-width: 220px;
}

.post-list-items .entry-image img {
    width: 100%;
}



.post-list-nav, .post-grid-nav {
    margin: 30px auto;
    text-align: center;
    width: 100%;
}

.post-list-nav > div, .post-grid-nav > div {
	display: inline-block;
}


.post-grid-items {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 2%;
}

.grid-item {
	flex-basis: 32%;
    border-radius: 8px;
    border: 1px solid var(--light-blue);
    overflow: hidden;
}


@media(max-width:840px) {
	
	.post-grid-items {
		gap: 20px 4%;
	}

	.grid-item {
		flex-basis: 48%;
	}
	
}

@media(max-width:700px) {
	
	.post-list-items .entry-content {
		flex-direction: column;
	}
	
	.post-list-items .entry-image {
		max-width: 300px;
		margin: auto;
	}
	
}

@media(max-width:600px) {
	
	.post-grid-items {
		gap: 20px;
	}

	.grid-item {
		flex-basis: 100%;
	}

}


@media(max-width:480px) {
	
	.post-list-items article {
		padding: 40px 20px;
	}

}




/*-----------------------------------------------------------------------------------*/
/* SINGLE PAGE / SINGLE POST
/*-----------------------------------------------------------------------------------*/

.single-page .entry-header, .single-post .entry-header {
    border: 0 none;
    padding: 30px 0;
    position: relative;
    text-align: center;
	margin: 0;
}

.single-page .entry-header {
    padding: 30px 0 15px;
}

.single-page article, .single-post article {
    min-height: 600px;
}

.single-page .entry-image {
	margin-bottom: 10px;
}

.single-page .featured-image {
	aspect-ratio: 2 / 1;
}

.single-page .featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

.single-post .entry-image {
	margin-bottom: 40px;
}

@media(max-width:480px) {
	
	.single-page .entry-header {
		padding: 20px 0 10px;
	}

	.single-post .entry-header {
		padding: 0 0 20px;
	}
		
}




/*-----------------------------------------------------------------------------------*/
/* EVENTI
/*-----------------------------------------------------------------------------------*/


/* ARTICLE EVENTI */

article.type-eventi .entry-header {
    margin-bottom: 40px;
    border: 0;
    padding: 0;
}

article.type-eventi .entry-title {
	font-size: 24px;
}

article.type-eventi .entry-meta {
	display: none;
}

article.type-eventi .entry-content {
	display: flex;
	align-items: flex-start;
	gap: 60px;
	padding: 20px;
}
article.type-eventi .entry-details {
    flex-grow: 1;
}

article.type-eventi .entry-image {
    flex-basis: 30%;
    min-width: 220px;
    flex-shrink: 0;
}

article.type-eventi .entry-image .featured-image {
    border: 1px solid #ddd;
    padding: 4px;
}

article.type-eventi .entry-image .featured-image img {
    width: 100%;
}

article.type-eventi .icon-list ul {
	margin-left: 0;
	line-height: 160%;
}

@media(max-width:700px) {

	article.type-eventi .entry-content {
		flex-direction: column;
		padding: 20px 0 !important;
	}
	
	article.type-eventi .entry-text {
		padding: 20px 0;
	}
	
	article.type-eventi .entry-image {
		max-width: 260px;
		margin: auto;
	}
	
}



/* SINGLE EVENTI */

.single-eventi article {
    padding: 40px;
    border: 2px solid var(--light-blue);
    border-radius: 20px;
}

.single-eventi .entry-header {
    display: flex;
    flex-direction: column;
    text-align: center;
    padding: 0;
    border-bottom: 1px solid #e0dede;
}

.single-eventi .entry-date {
    color: var(--light-blue);
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 5px;
}

.single-eventi .entry-text {
    padding: 20px;
}

.single-eventi .post-navigation {
	border-top:none;
}

.event-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 40px;
}

.event-buttons.align-center {
    justify-content: center;
}

.event-buttons .info-box {
    margin: 0;
    white-space: nowrap;
}


.event-details h3 {
    margin: 5px 0 30px;
}

.event-details ul {
    margin-left: 0;
}

.event-details li {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #226d97;
}

.event-details span {
    display: flex;
    align-items: baseline;
}

.event-details strong {
    margin-left: 5px;
    line-height: 1.4;
}


.box-materiale-evento {
    background-color: #f0f0f0;
    border: 1px solid #dcd8d8;
	border-radius: 10px;
    padding: 30px;
}

.box-materiale-evento h2 {
    margin-top: 0;
    margin-bottom: 15px;
	font-size: 22px;
}

.box-materiale-evento p {
	margin: 0 5px 10px;
}


@media(max-width:700px) {

	.box-materiale-evento {
		padding: 20px;
	}
	
}

@media(max-width:480px) {
	
	.single-eventi article {
		padding: 40px 20px;
	}
	
}



/* SLIDER EVENTI */

.element-post_list_slider article.type-eventi .featured-image {
    border: 0;
    box-shadow: 1px 0px 9px #aaa;
    background-color: #fff;
	display: block;
}

@media(max-width:800px) {
	
	.element-post_list_slider article.type-eventi .entry-content {
		gap: 40px;
		flex-direction: column;
		align-items: center;
		max-width: 500px;
		margin: auto;
	}
	
	.element-post_list_slider article.type-eventi .entry-image {
		min-width: 260px;
	}
	
}


@media(max-width:480px) {
	
	#content .element-post_list_slider .post_list {
		padding: 0 10px;
	}
	
	.element-post_list_slider article.type-eventi .entry-content {
		padding: 0;
	}
	
	.element-post_list_slider article.type-eventi .entry-image {
		min-width: 220px;
	}
	
}






/*
/* BUILDER
/*-----------------------------------------------------------------------------------*/

.template-builder #featured > .element {
    background-color: #fff;
    padding: 20px;
}

.template-builder #main .main-content {
    max-width: none;
	padding: 0;
}

.template-builder #content > .element {
    background-color: #fff;
	padding: 50px 20px;
}

.template-builder .element > .element-inner {
    max-width: 1100px;
	padding: 20px;
    margin: auto;
}

.template-builder #featured_below {
    background: #eaf7ff;
	padding: 50px 20px;
}




/************************** HOMEPAGE *****************************/

.section-header {
    display: flex;
    flex-direction: column;
    align-items: center;
	text-align: center;
	margin-bottom: 40px;
}

.section-header.align-left {
    align-items: flex-start;
	text-align: left;
}

.section-header.align-right {
    align-items: flex-end;
	text-align: right;
}

.section-header:after {
    content: "";
    width: 180px;
    border-bottom: 3px solid #216d98;
    margin-top: 20px;
}

.section-header.no-line:after {
    display: none;
}

.section-header h1 {
    color: #1f6994;
    font-size: 30px;
    font-weight: 900;
    margin: 0;
}

.section-header h1 a {
    color: inherit;
}

.section-header h1 a:hover {
    color: #00bfd7;
}

.section-header h2 {
    color: #1f6994;
    font-size: 20px;
    font-weight: 400;
    margin: 10px 0 0;
}

.section-header .tb-button {
    margin-top: 20px !important;
    padding: 10px 20px;
}


.section-card {
    display: flex;
    align-items: center;
    gap: 10%;
}

.section-card-media {
	max-width: 50%;
}

.section-card-text {
	flex-grow: 1;
}

.section-card-media img {
	display: block;
    border-radius: 10px;
    /* border: 1px solid #05d4e5; */
    /* padding: 4px; */
}

.section-card-text ul.menu {
    margin-bottom: 30px;
}

.section-card-text ul.menu li {
    margin: 0 0 0 10px;
    color: #05d4e5;
    font-weight: bold;
}

@media(max-width:600px) {
	
	.section-card {
		gap: 40px;
		flex-direction: column;
	}
	
	.section-card .section-card-media {
		max-width: 100% !important;
		aspect-ratio: auto !important;
	}
	
	.section-card .section-card-text {
		min-width: 90%;
	}
	
}



/* [HOME] BANNER */

.home #featured .featured-element-1 {
    padding: 0;
    background-color: #d4edf4; /*#c3dfe2;
    background-image: linear-gradient(90deg, #c3dfe2, #bce5e6);*/
}

.home #featured .featured-element-1 .element-inner {
    padding: 0;
    max-width: none;
}

.banner-home {
    border-bottom: 1px solid #1f6995;
    position: relative;
    height: 480px;
}

.banner-home img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center right;
}

.banner-content {
    position: absolute;
    bottom: 0;
    z-index: 1;
    width: 100%;
    top: 0;
}

.banner-text {
    max-width: 1200px;
    margin: auto;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 60px;
}

.banner-text .section-header {
    margin-bottom: 30px;
}

.banner-text h1 {
    font-size: 40px;
    line-height: 120%;
}

.banner-text h2 {
    display: none;
}

.banner-description {
    color: #1f6994;
    font-size: 18px;
    margin: 0;
    text-shadow: 0px 0px 3px #b9dfe3;
    max-width: 600px;
}


@media(max-width:1200px) {
	
	.banner-home img {
		object-position: 80% center;
	}
	
	.banner-text h1 {
		max-width: 460px;
	}
}

@media(max-width:840px) {
	
	.banner-home {
		height: auto;
	}
	
	.banner-content {
		position: unset;
	}
	
	.banner-text {
		max-width: none;
		margin: 0;
	}
	
	.banner-text h1 {
		font-size: 30px;
		max-width: none;
	}
	
	.banner-description {
		max-width: none;
	}
	
}

@media(max-width:480px) {
	
	.banner-home img {
		height: 220px;
		object-position: center right;
	}
	
	.banner-text {
		padding: 30px;
	}
	
	.banner-text .tb-button {
		padding: 12px 30px;
	}
	
}



/* [HOME] MISSION */

.home .primary-element-1 {
    background: #eaf7ff !important;
}


.mission-text {
	color: #1f6994;
	text-align: center;
	font-size: 19px;
	margin: 0;
}

.mission-buttons {
	display: flex;
	gap: 20px;
	padding: 20px;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
}

.mission-buttons a {
	border: 2px solid;
	padding: 8px 30px;
	white-space: nowrap;
	border-radius: 10px;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: bold;
}



/* [HOME] DIVENTA SOCIO */

#section-diventa-socio .section-card-media {
    aspect-ratio: 1.4 !important;
}

#section-diventa-socio .section-card-media img {
    object-position: center right;
}



/* [HOME] SLIDER EVENTI */

.home .primary-element-3 {
    background-color: #f0f0f0 !important;
}



/* [HOME] GALLERY */

.image-list {
    display: flex;
    gap: 20px;
    margin-top: 50px;
    flex-wrap: wrap;
}

.image-list-item {
    aspect-ratio: 1 / 0.7;
    border: 1px solid var(--light-blue);
    padding: 4px;
    flex-basis: calc(25% - 15px);
}

.image-list-item img {
    display: block;
}

@media(max-width:960px) {
	.image-list-item {
		flex-basis: calc(50% - 10px);
	}
}

@media(max-width:480px) {
	.image-list {
		gap: 10px;
	}
	.image-list-item {
		flex-basis: calc(50% - 5px);
	}
}



/* [HOME] NOTIZIE */

.primary-element-4 .section-header {
    margin-bottom: 0;
}



/* [HOME] FAD */

.home .primary-element-7 {
    background-color: #eaf7ff !important;
}

#section-area-fad .section-card-media {
    max-width: 60%;
}

#section-area-fad .section-card-text {
    min-width: 260px;
}

@media(max-width:600px) {
	
	#section-area-fad .section-card-media {
		order: -1;
		aspect-ratio: 1.6 !important;
	}
	
}



/* [HOME] AREA PAZIENTI */

/*#section-area-pazienti .section-card-media {
    aspect-ratio: 1.4;
}*/



/* [HOME] SPONSOR */

.loghi-sponsor {
    display: flex;
    align-items: center;
	flex-wrap: wrap;
    gap: 2%;
}

.loghi-sponsor a {
    flex-basis: 23.5%;
    padding: 20px;
	height: 140px;
	margin-bottom: 20px;
}

.loghi-sponsor img {
    width: 100%;
    height: 100%;
    object-fit: scale-down;
    mix-blend-mode: multiply;
}

@media (max-width: 800px) {
	
	.loghi-sponsor a {
		flex-basis: 32%;
	}
	
}

@media (max-width: 600px) {
	
	.loghi-sponsor a {
		flex-basis: 49%;
		height: 140px; 
	}
	
}






/************************* MATERIALE PRIVATO ********************/

.post-list-items .materiale-privato .entry-content {
    flex-direction: column;
}

.single-materiale-privato .divider-dashed {
	margin: 30px 10px 0;
	border-color: #bbb;
}

.single-materiale-privato .entry-image img {
	text-align: center;
	margin: auto;
	max-height: 400px;
	width: auto;
	max-width: 100%;
	height: auto;
}

.materiale-privato .entry-image {
    display: flex;
    justify-content: center;
    max-width: 220px;
    margin: auto;
}



/**************************** ANNUNCIO **************************/

.post-list-items .annuncio .entry-content {
    flex-direction: column;
}

.single-annuncio .divider-dashed {
	margin: 30px 10px 0;
	border-color: #bbb;
}

.single-annuncio .entry-image img {
	text-align: center;
	margin: auto;
	max-height: 400px;
	width: auto;
	max-width: 100%;
	height: auto;
}

.annuncio .entry-image {
    display: flex;
    justify-content: center;
    max-width: 220px;
    margin: auto;
}






/********************** PAGINA IL DIRETTIVO ********************/

.scheda-direttivo {
    box-shadow: 0 0 10px 0px #c1c1c1;
    border-radius: 20px;
    padding: 40px 60px;
    display: flex;
    gap: 40px;
    align-items: center;
    margin: 40px 10px;
}

.scheda-direttivo-image {
    width: 200px;
    aspect-ratio: 1;
    border-radius: 100%;
    overflow: hidden;
    flex-shrink: 0;
}

.scheda-direttivo-text {
    flex-grow: 1;
    padding: 0;
}

.scheda-direttivo-prefix {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 15px;
    color: var(--light-blue);
    border-bottom: 2px solid;
    display: inline-block;
}

.scheda-direttivo-title {
	font-size: 20px;
    margin-top: 0 !important;
}

.scheda-direttivo-description {
    line-height: 160%;
}

@media(max-width:700px) {
	
	.scheda-direttivo {
		flex-direction: column;
	}
	
}

@media(max-width:480px) {
	
	.scheda-direttivo {
		padding: 40px 30px;
	}
	
}



/************************** PAGINA ISCRIZIONE ********************/

.box-iscrizione {
    background-color: #F2F2F2;
    display: inline-block;
    width: 100%;
}

.box-iscrizione h2 {
  background-color: #DDDDDD;
  font-size: 17px;
  margin-top:0;
  padding: 8px;
  text-transform: uppercase;
}

.box-iscrizione .info-box-download {
    background-color: #4DBBE7;
    background-image: none;
    border: 0 none;
    box-shadow: 1px 1px 1px #333333;
    margin: 0 3%;
}

.box-iscrizione .info-box .icon > a {
    color: white;
    font-size: 15px;
    font-weight: 700;
}

.box-iscrizione small {
    font-size: 11px;
}

.box-iscrizione .info-box-notice {
  margin: auto;
  max-width: 600px;
}



/************************** PAGINA ORTOTTISTI ********************/

.scheda-socio-smo {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 2%;
	width: 29.3333%;
	min-height: 420px;
	padding: 40px 20px;
	text-align: center;
	text-transform: capitalize;
	/*box-shadow: 0px 0px 6px 2px #eee;*/
	background-color: #fafdff;
	border-radius: 14px;
	border: 1px solid var(--light-blue);
}

.scheda-socio-smo img {
    width: 150px;
    height: 150px;
    border-radius: 100%;
	margin-bottom: 20px;
}

.scheda-socio-smo img.blank {
    border: 3px solid #eaeaea;
}

.scheda-socio-smo h3 {
    margin: 0;
    padding-bottom: 8px;
    text-transform: capitalize;
	font-size: 20px;
}

.socio-professione {
    font-size: 15px;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--light-blue);
    border-bottom: 2px solid;
    display: inline-block;
}

.socio-info {
    width: 100%;
    overflow: hidden;
}

.socio-info > p {
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 150%;
    font-size: 15px;
}

.socio-info:hover > p {
  overflow: visible;
  text-overflow: unset;
  white-space: normal;
}

.socio-info > p span {
    text-transform: lowercase;
}



.filters {
    display: block;
    margin: 20px auto;
    text-align: center;
    background-color: #edf9ff;
    border-radius: 10px;
    padding: 30px 20px;
}

.filters .filter {
  background-color: #4dbbe7;/*#a3d9ef;*/
  border-radius: 4px;
  color: white;
  cursor: pointer;
  display: inline-block;
  margin: 4px;
  padding: 4px 12px;
  text-transform: capitalize;
}

.filter:hover, .filter.active {
  background-color: #1f6994;
}

.filters > p {
	margin: 0 0 10px;
    font-weight: 600;
    color: var(--dark-blue);
}



/************************** PAGINA QUIZ **************************/

.elenco-quiz ul {
    list-style: auto;
    color: #2a9ed4;
}

.elenco-quiz li {
    margin: 5px 0;
}

body.single-quiz .iphorm-success-message {
    background-position: 10px 6px;
}

article.quiz .quform {
    border: 1px solid #d4e3ea;
    padding: 20px 40px;
    margin: auto;
    background: #f5f9fb;
}

article.quiz .quform-form-title {
    font-size: 22px;
    margin-top: 20px;
}

article.quiz .post-navigation {
    padding: 20px 0;
    border: 0;
    margin-top: 10px;
}

article.quiz .post-navigation a {
    padding: 12px 20px;
}

article.quiz .post-navigation div:not(.nav-home) a {
	white-space: nowrap;
}
article.quiz .post-navigation .nav-home a {
	text-align: center;
}

@media(max-width:480px) {
	
	article.quiz .entry-content {
		padding: 0;
	}
	
	article.quiz .quform {
		padding: 20px 30px;
	}
	
	article.quiz .quform-form-title {
		margin-top: 10px;
	}
	
}



/************************ SEARCH RESULTS *************************/

.search-results .article-wrap {
    margin-bottom: 40px;
}

.search-results article {
	padding: 40px;
	border: 1px solid var(--light-blue);
	position: relative;
}

.search-results article.type-page .entry-meta {
    display: none;
}

.search-results .entry-label {
    position: absolute;
    top: -13px;
    left: 20px;
}

.search-results .entry-header {
    padding: 20px 20px 0 !important;
    margin-bottom: 0px !important;
}

.search-results .entry-content {
    padding: 20px 20px 0 !important;
}

.search-results .no-search-results {
    flex-direction: column;
    align-items: center;
    gap: 0;
}

.search-results .entry-image {
    flex-basis: 150px !important;
    min-width: auto !important;
}

.search-results .type-eventi .tb-button.read-more {
    display: none;
}










/*-----------------------------------------------------------------------------------*/
/* PLUGINS
/*-----------------------------------------------------------------------------------*/



/**************************	quform v.2 *****************************/

/*
h2.quform-form-title {
    border: 0;
    margin-bottom: 0;
    font-size: 20px;
}
*/

/* [readonly] input text */

.quform-element .quform-field-text[readonly], 
.quform-element .quform-field-text:focus {
    box-shadow: none !important;
    background: #eee !important;
    border-color: #ddd !important;
}




/************************** wp user avatar *************************/

.wpua-edit-container {
  text-align: center;
}

.wpua-edit-container h3 {
    margin-bottom: 30px;
}

.wpua-edit .submit {
  text-align: center;
}


.mepr-avatar-wrapper {
    display: flex;
    flex-direction: column-reverse;
}

/*
#wpua-upload-button-existing {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}
*/

#wpua-upload-messages-existing {
    font-size: 13px;
    line-height: 1.3;
    display: flex;
    flex-direction: column;
}


#wpua-images-existing {
    margin: 20px;
}

#wpua-images-existing .description {
  display: none;
}


#wpua-thumbnail-existing {
    display: none !important;
}

#wpua-preview-existing {
    width: 120px;
    height: 120px;
    border-radius: 100%;
    overflow: hidden;
    margin: 0 !important;
    border: 1px solid #ddd;
}

#wpua-preview-existing img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: none !important;
    border: 0 !important;
    margin: 0;
}

#wpua-remove-button-existing {
    margin: 20px;
}
#wpua-undo-button-existing {
    margin: 20px;
}


/* updated green message */
.mepr-avatar-wrapper .updated {
    background-color: #9aca40;
    color: white;
    border-radius: 6px;
    padding: 4px;
    text-align: center;
}

.mepr-avatar-wrapper .updated p {
	margin-bottom: 0;
}


/************************** memberpress ****************************/


/* mepr login form */

#mepr_loginform {
	flex-direction: column;
	align-items: center;
}

#mepr_loginform .mp-form-row input {
	border-color: var(--light-blue);
	background-color: transparent;
}

.mepr-login-actions {
	text-align: center;
}

#mepr_loginform #wp-submit {
	background-color: var(--dark-blue);
	border: 0;
	border-radius: 6px;
}


/* mepr login link */

span.mepr-login-link {
    text-align: center;
    display: none;
}

span.mepr-login-link a {
	background: var(--dark-blue);
	padding: 8px 30px;
	margin: auto;
	color: white;
	display: inline-block;
	border-radius: 6px;
}


/* mer anauthorized message */

.mepr-unauthorized-message .tb-buttons {
	justify-content: center;
	margin-top: 0;
}

.mepr-unauthorized-message {
	margin-top: 30px;
	text-align: center;
}


/* registration form */

article.type-memberpressproduct .entry-meta {
	display: none;
}

.single-memberpressproduct .post-navigation {
    display: none;
}


.mp_wrapper .mepr-form-has-errors {
    padding: 5px 16px;
    background: #f55;
    color: white;
    border-radius: 5px;
    width: 100%;
    text-align: center;
}

.cc-error {
    font-size: 0;
	line-height: 1;

}
.cc-error::before {
    content: "Obbligatorio";
    font-size: 12px;
}


.mp_wrapper .mepr_bold.mepr_price {
    width: 100% !important;
}

.mepr-signup-form .mepr_price {
    margin: 10px auto 50px;
    text-align: center;
	font-size: 18px;
}


/* signup form */

.mepr-form {
	display: flex;
	flex-wrap: wrap;
	gap: 2%;
}

.mp_wrapper .mp-form-row {
	width: 49% !important;
	margin-bottom: 30px;
}

.mp_wrapper .mp-form-row label {
    font-weight: 600;
}

.mepr-form-input {
	line-height: 1;
	background-color: transparent;
	color: #333;
}

.mepr_custom_label {
	margin-bottom: 30px;
	padding: 8px 0;
	color: var(--dark-blue);
	width: 100% !important;
	font-family: Montserrat;
	font-weight: bold;
	border-bottom: 1px solid;
}
/*
.mp_wrapper .mepr_custom_field {
    width: 48% !important;
    margin: 1% !important;
    float: left !important;
}
*/
.mp-password-strength-display {
    font-size: 11px;
    padding: 2px;
	width: 100%;
    border-color: #ccc;
    border-radius: 4px;
}
/*
.mp_wrapper .mepr_custom_field.mepr_mepr_dati_anagrafici,
.mp_wrapper .mepr_custom_field.mepr_mepr_studi,
.mp_wrapper .mepr_custom_field.mepr_mepr_sede_lavoro,
.mp_wrapper .mepr_custom_field.mepr_mepr_dati_di_accesso {
    width: 98% !important;
    padding: 8px 0;
    margin: 30px 1% 5px !important;
    color: #fff;
}
*/
.mp_wrapper .mepr_custom_field.mepr_mepr_dati_anagrafici, 
.mp_wrapper .mepr_custom_field.mepr_mepr_studi, 
.mp_wrapper .mepr_custom_field.mepr_mepr_sede_lavoro, 
.mp_wrapper .mepr_custom_field.mepr_mepr_dati_di_accesso {
	width: 100% !important;
	padding: 8px 0;
	color: var(--dark-blue);
	font-weight: bold;
	border-bottom: 1px solid;
}

.mp_wrapper .mepr_custom_field.mepr_mepr_dati_anagrafici label, 
.mp_wrapper .mepr_custom_field.mepr_mepr_studi label, 
.mp_wrapper .mepr_custom_field.mepr_mepr_sede_lavoro label, 
.mp_wrapper .mepr_custom_field.mepr_mepr_dati_di_accesso label {
	color: inherit;
	font-weight: 700;
}

.mp_wrapper .mepr_mepr_dati_anagrafici input, 
.mp_wrapper .mepr_mepr_studi input,
.mp_wrapper .mepr_custom_field.mepr_mepr_sede_lavoro input,
.mp_wrapper .mepr_custom_field.mepr_mepr_dati_di_accesso input {
    display: none;
}


.mepr_custom_field select {
    border-radius: 4px;
}


input[name="mepr_first_name"], input[name="mepr_last_name"] {
  text-transform: capitalize;
}


/*
.mp_wrapper .mepr_mepr_altre_specializzazioni {
    width: 98% !important;
}

.mp_wrapper .mepr_mepr_contatto_lavoro {
    width: 98% !important;
}
*/
/*
.mp_wrapper .mp-form-row.mepr_first_name, 
.mp_wrapper .mp-form-row.mepr_last_name {
    width: 48% !important;
    margin: 1%;
	float: left;
}
*/
.mp-form-row.mepr_custom_field.mepr_mepr-address-two {
    display: none;
}

.mp_wrapper .mp-form-row.mepr_email {
    width: 100% !important;
}
/*
.mp_wrapper .mp-form-row.mepr_username, 
.mp_wrapper .mp-form-row.mepr_password, 
.mp_wrapper .mp-form-row.mepr_password_confirm {
    width: 48% !important;
    margin: 1%;
    float: left;
}
*/
.mp_wrapper .mp-form-row.mepr_username, 
.mp_wrapper .mp-form-row.mepr_password, 
.mp_wrapper .mp-form-row.mepr_password_confirm {
    width: 49% !important;
}

.mp-form-row.mp-password-strength-area {
    margin-top: -30px;
}

/*
.mp-form-row.mp-password-strength-area {
    clear: both;
    width: 98% !important;
    margin: 1%;
}
*/

.mp-form-row.mp-password-strength-area small {
    display: none;
}

.mepr-form input.invalid,
.mepr-form select.invalid,
.mepr-form textarea.invalid,
.mepr-form label.mepr-checkbox-field.invalid,
.mepr-form div.mepr-checkboxes-field.invalid,
.mepr-form div.mepr-radios-field.invalid {
    border: 1px solid red !important;
    background-color: transparent !important;
}

.mp_wrapper textarea:focus-visible, 
.mp_wrapper select:focus-visible, 
.mp_wrapper input:focus-visible, 
.mp_wrapper .iti__selected-flag:focus-visible {
    border: 1px solid !important;
}

.mepr-loading-gif {
    margin-top: 16px;
    height: 16px;
    width: 16px;
}


@media(max-width:600px) {
	
	.mp_wrapper .mp-form-row.mepr_first_name, 
	.mp_wrapper .mp-form-row.mepr_last_name {
		width: 98% !important;
		/*margin: 10px 1% !important;*/
	}
	
	.mp_wrapper .mp-form-row.mepr_username, 
	.mp_wrapper .mp-form-row.mepr_password, 
	.mp_wrapper .mp-form-row.mepr_password_confirm {
		width: 98% !important;
		/*margin: 10px 1% !important;*/
	}
	
	.mp_wrapper .mepr_custom_field {
		width: 98% !important;
		/*margin: 10px 1% !important;*/
	}
	
	.mp-form-row.mp-password-strength-area {
		margin-top: 0;
		width: 98% !important;
	}
	
}



/* payment methods */

#mepr-payment-methods-wrapper {
    margin-top: 20px;
    display: inline-block;
    width: 100%;
}

.mp_wrapper .mp-form-row.mepr_payment_method {
    width: 100% !important;
    clear: both;
    display: inline-block;
	margin: 5px 0 !important;
}

/*.mepr-payment-methods-wrapper {
    clear: both;
    padding: 0 10px !important;
    margin-top: 20px !important;
    display: inline-block;
    width: 100%;
}*/
.mp_wrapper fieldset.mepr-payment-methods-wrapper {
	padding: 0 20px;
	margin-top: 20px;
	display: inline-block;
	width: 100%;
	border: 1px solid #2a9ed4;
	border-radius: 5px;
}

.mepr-payment-methods-wrapper legend {
	padding: 0 10px;
}

.mepr-payment-methods-wrapper hr {
    margin-bottom: 10px;
	display: none;
}

label.mepr-payment-option-label {
    /* display: flex; */
    margin: 5px 5px;
}

.mepr-payment-method-label-text {
    padding-left: 4px !important;
    position: relative;
}

.mepr-payment-method-desc-text {
	margin-left: 0px;
	margin-top: 0 !important;
	padding-top: 0 !important;
	font-size: 15px;
	line-height: 1.5;
}
/*
.mepr-payment-method-desc-text {
	padding: 10px !important;
}
*/
.mepr-submit {
    display: block !important;
    margin: 0 auto 20px !important;
    padding: 10px 50px !important;
}

body.logged-in .mepr_mepr_dati_di_accesso {
    display: none;
}

.mepr-mailpoet-signup-field {
    margin: 30px 20px;
}

#mepr-mailpoet-privacy {
    display: none;
}

.avviso-bonifico {
    background: #f55;
    color: white;
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 20px;
}


.mp-form-submit {
	margin-top: 30px;
	flex-basis: 100%;
}




#post-1550 .mepr-payment-methods-wrapper::before {
    content: "Metodo di pagamento";
	position: relative;
	top: -15px;
	background: white;
	padding: 0 10px;
}

#post-1550 .mepr-payment-methods-radios {
    display: block;
}



/* 
 * mepr account > navigation 
 *---------------------------*/

#mepr-account-nav {
	margin-bottom: 60px;
}

#mepr-account-nav ul {
    gap: 20px;
    justify-content: center;
}

.mepr-nav-item {
    padding: 0;
}

.mepr-active-nav-tab a {
    color: #fff;
    background-color: #2a9ed4;
    padding: 8px 16px;
    border-radius: 3px;
    display: inline-block;
    line-height: 1;
}


/* 
 * mepr account > avatar 
 * --------------------------- */

#mepr_account_form .userbar-avatar {
    width: 150px;
    height: 150px;
    margin: 0 auto 40px;
    border-color: #ccc;
	line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

#mepr_account_form .userbar-avatar i {
    width: auto;
    height: auto;
    font-size: 100px;
    color: #aaa;
}

#mepr_account_form .userbar-avatar:hover {
    border-color: var(--light-blue);
}

#mepr_account_form .userbar-avatar:hover i {
    color: var(--light-blue);
}


/* 
 * mepr account > full form 
 * --------------------------- */

.mepr-account-form .mepr_spacer {
  display: inline-block;
  margin-top: 20px;
  width: 100%;
}

.mepr_updated,
#mepr-account-welcome-message > .updated strong {
    background-color: #9aca40 !important;
    color: white;
    width: initial;
    display: block;
    padding: 6px;
    text-align: center;
    border-radius: 4px;
    border: 0 none !important;
}

.mepr-account-change-password {
    display: block;
    margin: -25px 0 30px;
    text-align: center;
    width: 100%;
}


#mepr-account-welcome-message > h3 {
    text-align: center;
}


/* 
 * mepr account > newpassword form 
 * ----------------------------- */

.mepr-newpassword-form {
    max-width: 500px;
    margin: 50px auto 0;
}

.mepr-newpassword-form .mp-form-row {
	width: 100% !important;
}

.mepr-newpassword-form .mp-password-strength-area {
    width: 100% !important;
    margin: 0 0 30px;
}

.mepr-newpassword-form .mepr_spacer {
    display: none;
}


/* 
 * mepr account > subscriptions & payments tables 
 * --------------------------------------------- */

.mp-no-subs,
.mepr-no-active-subscriptions {
    padding: 40px;
    text-align: center;
}

.mepr-account-table th, 
.mepr-account-table td {
	padding: 8px !important;
	text-align: center !important;
	vertical-align: middle;
}

.mepr-account-table .mepr-account-subscr-id,
.mepr-account-table .mepr-account-auto-rebill {
	display: none;
}

.mepr-account-table .mepr-account-terms {
    font-size: 100%;
}

/* hide card exp. column */
.mepr-account-table th:nth-child(5),
.mepr-account-table td:nth-child(5) {
    display: none !important;
}
.mepr-account-table th:nth-child(6),
.mepr-account-table td:nth-child(6) {
    display: none !important;
}

.mepr-account-created-at {
    white-space: nowrap;
}


.mepr-account-actions .mepr-account-upgrade {
    display: none;
}



/* PRICES TABLE (pagina iscriviti) */

.mepr-most-popular {
    display: none;
}

.mepr-price-menu.fixed .mepr-price-box-title {
	color: #4dbbe7;
	font-family: 'Montserrat' !important;
	font-size: 22px;
	font-weight: 400;
	line-height:1;
	text-transform: uppercase;
}

.mepr-price-menu.fixed .mepr-price-box-price {
    line-height: 1;
    font-size: 40px !important;
    font-family: 'Open Sans' !important;
    margin-top: 20px;
}

.mepr-price-menu.fixed .mepr-price-box-heading {
	font-family: 'Open Sans' !important;
	font-style: italic;
	min-height: 100px;
	padding-bottom: 0;
	margin: 0;
}

.mepr-price-box-benefits-list {
    margin: 0 8px !important;
}

.mepr-price-box-benefits-item {
  line-height: normal;
  margin: 0;
  padding: 3px 0;
}

.mepr-price-menu.fixed .mepr-price-box-button a {
    background-color: var(--light-blue);
    color: white;
    padding: 9px 30px;
    margin-bottom: 40px;
    font-size: 15px;
    font-weight: bold;
}

.mepr-price-menu.fixed .mepr-price-box-button a:hover {
    background-color: var(--dark-blue);
}


@media(max-width:600px) {
	
	.mepr-price-menu.fixed .mepr-price-boxes .mepr-price-box .mepr-price-box-head {
		text-align: center;
	}
	
	.mepr-price-menu.fixed .mepr-price-box-heading {
		min-height:auto;
	}

	.mp_wrapper table.mepr-account-table tr {
		border-bottom-width: 1px;
	}
	
	.mepr-account-table td:nth-child(4) {
		border-bottom: none !important;
	}
	
	.mepr-price-menu.fixed .mepr-price-boxes {
		display: flex;
		flex-direction: column;
	}
	
	.mepr-price-boxes .mepr-price-box:first-child {
		order: 2;
	}

}



/************************** mailpoet *******************************/


/* 
 *	[mailpoet] subscription form 
 *---------------------------------*/

.mepr-newsletter-wrapper {
    padding: 40px;
    margin: 0 auto;
    width: 100%;
    max-width: 600px;
    border: 2px solid #299fd4;
    border-radius: 10px;
}

form.mailpoet-manage-subscription p.mailpoet_paragraph {
    margin-bottom: 12px;
}

form.mailpoet-manage-subscription p.mailpoet_paragraph strong {
	margin-left: 65px;
}

form.mailpoet-manage-subscription p.mailpoet_paragraph br {
	display: none;
}


form.mailpoet-manage-subscription div.mailpoet_paragraph {
    margin: 5px 0;
}


form.mailpoet-manage-subscription .mailpoet_text_label, 
form.mailpoet-manage-subscription .mailpoet_select_label {
    min-width: 100px;
    margin-bottom: 10px;
	display: inline-block;
}

form.mailpoet-manage-subscription .mailpoet_text {
	min-width: 200px;
	color: #666;
}

form.mailpoet-manage-subscription .mailpoet_select {
    min-width: 141px;
    border-radius: 4px;
    background-color: #fff;
	color: #666;
}

form.mailpoet-manage-subscription .mailpoet-change-email-info {
    display: none;
}




/* global subscribe -> must be hidden! */
.mailpoet-manage-subscription .mailpoet_select_label,
.mailpoet-manage-subscription .mailpoet_select {
	display: none !important;
}

/* the lists */
.mailpoet-manage-subscription .mailpoet_segment_label {
	font-weight: bold;
	margin-bottom: 5px;
	padding-top: 20px;
}

.mailpoet-manage-subscription .mailpoet_checkbox_label {
	padding-right: 20px;
	display: inline;
}


/* the submit button */
.mailpoet-manage-subscription .mailpoet_submit {
    background-color: #299fd4;
    border: 0;
    color: white;
    margin-top: 20px;
	min-width: 90px;
}

.mailpoet-manage-subscription .mailpoet_submit:hover {
    background-color: var(--light-blue);
	color: #fff;
}

.mailpoet-manage-subscription .mailpoet-submit-success {
	background-color: #9aca40;
	color: white;
	padding: 10px;
	margin-top: 20px;
}




/* 
 *	[mailpoet] archive newsletter 
 *---------------------------------*/

ul.mailpoet_archive {
    margin:0;
}

ul.mailpoet_archive > li {
    display: flex;
    width: 100%;
    flex-direction: column;
    margin-bottom: 10px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
}

ul.mailpoet_archive span.mailpoet_archive_date {
    flex-shrink: 0;
    min-width: 130px;
    font-size: 14px;
}




/*
 * [plugin] simple download monitor 
 */
/************************************************/

/* frontend */

.sdm_download_item {
    position: relative;
    display: flex !important;
    flex-direction: column;
    line-height: 120%;
	background-color: #fbfbfb;
	border: 1px solid #d8d8d8;
}

.sdm_download_title {
    font-family: 'Montserrat';
    font-size: 20px !important;
    font-weight: bold !important;
    line-height: 1.3 !important;
    color: #2a9ed4;
    margin-bottom: 10px;
    border-bottom: 1px solid #eee;
    padding-bottom: 5px;
}


.sdm_download_item_top {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sdm_download_thumbnail {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.sdm_download_thumbnail .sdm_download_thumbnail_image {
    width: 100px !important;
    height: auto !important;
    border: 1px solid #ccc;
    padding: 2px;
    margin: 0 !important;
}
.sdm_download_thumbnail_icon {
    margin-right: 10px;
}

.sdm_download_details {
    flex-basis: 100%;
    overflow: hidden;
}


.sdm_download_description {
    margin: 10px 0 !important;
    padding-bottom: 0 !important;
}

span.sdm_download_version_label {
    font-size: 0;
    line-height: 1;
}
span.sdm_download_version_label:before {
    content: "Autore:";
    font-size: 13px;
    margin-right: 5px;
}

span.sdm_download_date_label {
    padding-right: 4px;
}

.sdm_download_size, 
.sdm_download_date, 
.sdm_download_version, 
.sdm_download_author {
    font-size: 13px;
    font-style: italic;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.sdm_download_link {
    display: flex !important;
    flex-direction: column;
    flex-shrink: 0;
}

.sdm_download {
    padding: 8px 20px !important;
    line-height: 120% !important;
}
.sdm_download i {
    font-size: 16px;
    width: 15px;
    height: 15px;
    margin-right: 5px;
}

span.sdm_download_item_count {
    margin: 3px 0 0;
    font-size: 10px;
    text-align: center;
    border: 0;
    padding: 0;
}


@media(max-width:480px) {
	
	.sdm_download_item_top {
		flex-direction: column;
		gap: 20px;
	}
	.sdm_download_link {
		position: unset;
		gap: 5px;
		border-top: 1px solid #eee;
		padding-top: 20px;
		width: 100%;
		text-align: center;
	}
	
	span.sdm_download_item_count {
		margin: 0;
	}
	
	.sdm_download_thumbnail .sdm_download_thumbnail_image {
		width: 160px !important;
	}

}









/****************************** RESPONSIVE ******************************/


@media (max-width: 768px) {

	.primary-element-1 .element-post_list_slider .element-inner {
		height: auto;
	}
	
	.scheda-socio-smo {
		margin: 1%;
		width: 48%;
	}
  
}

@media (max-width: 480px) {
  
	#sidebar .widget_nav_menu .mobile {
		display: block;
		font-size: 16px;
		line-height: 120%;
	}

	#sidebar .logged-in .widget_nav_menu .mobile {
		display: none;
	}
	
	
	#top .themeblvd-search {
		display: none;
	}

	.flexslider .slides img {
		margin: auto;
		width: auto;
	}

	.primary-element-2 .grid_tenth_7,
	.primary-element-3 .grid_tenth_7 {
		width:100%;
	}

	.primary-element-2 .grid_tenth_3,
	.primary-element-3 .grid_tenth_3 {
		width:100%;
	}

	#featured_below .element-inner {
		padding: 0 !important;
	}

	#featured_below .textwidget img {
		width: auto;
	}
	
	.scheda-socio-smo {
		margin: 20px 0;
		width: 100%;
	}
 
}



