/* Widget WPBakery Style 16 Sections — CSS dedicato (non usa le classi s16-* della gallery). */

.es16-vc {
	position: relative;
	margin: 0 auto;
	z-index: 10;
}

.es16-vc-desktop {
	display: block;
}

.es16-vc-mobile {
	display: none;
}

.es16-section {
	position: relative;
	overflow: hidden;
	clear: both;
	margin: 0 0 180px;
}

.es16-vc-desktop > .es16-section:first-child {
	margin-top: 80px;
}

.es16-vc-desktop > .es16-section:last-child {
	margin-bottom: 100px;
}

.es16-widget {
	text-align: left;
}

.es16-widget::after {
	content: '';
	display: table;
	clear: both;
}

.es16-widget > .es16-image {
	width: 60%;
}

.es16-widget > .es16-content-area {
	width: 40%;
}

.es16-float-left {
	float: left;
}

.es16-float-right {
	float: right;
}

.es16-content-area {
	padding: 40px 120px;
	box-sizing: border-box;
}

.es16-inner {
	position: relative;
}

.es16-inner > div {
	position: relative;
}

.es16-box {
	background-color: #f8f8f8;
	padding: 40px 60px;
	z-index: 2;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 140px;
}

.es16-border {
	position: absolute !important;
	width: calc(100% - 40%);
	height: calc(100% - 15% - 45px);
	top: calc(10% + 45px);
	z-index: 1;
	pointer-events: none;
}

.es16-border-left {
	left: calc(20% - 45px);
}

.es16-border-right {
	left: calc(20% + 45px);
}

.es16-border svg line {
	stroke-width: 10;
	stroke: #c6aa73;
	fill: none;
	transition: transform 0.5s;
}

.es16-title {
    font-family: OldStandard, 'Old Standard TT', Georgia, serif;
    font-size: 45px;
    font-style: italic;
    line-height: 1.1;
    margin: unset;
    position: absolute;
    top: -25px;
}

.es16-text {
    text-align: left;
    margin: 0;
    color: #6d6f72;
    font-family: Palanquin;
    font-size: 1rem;
    line-height: 1.6;
    font-weight: 600;
}

.es16-image img {
	display: block;
	width: 100%;
	height: auto;
}

/* Mobile */
.es16-mobile-widget {
	margin-bottom: 80px;
}

.es16-mobile-widget .es16-image {
	text-align: center;
	margin-bottom: 0;
}

.es16-mobile-wrapper {
	position: relative;
	margin-top: 50px;
	padding: 0 10%;
	text-align: center;
}

.es16-border-m {
	border: 3px solid #c6aa73;
	width: calc(100% - 20%);
	height: 100%;
	position: absolute;
	top: 45px;
}

.es16-border-m-left {
	left: calc(-45px + 10%);
}

.es16-border-m-right {
	left: calc(45px + 10%);
}

.es16-mobile-inner {
	position: relative;
	margin: 0 auto;
}

@media (max-width: 1600px) {
	.es16-content-area {
		padding: 40px;
	}

	.es16-border {
		width: calc(100% - 20px);
        height: calc(100% - 30px);
        top: calc(10% + 65px);
	}

	.es16-border-left {
		left: -30px;
	}

	.es16-border-right {
        left: 50px;
	}
}

@media (max-width: 1200px) {
	.es16-vc-desktop {
		display: none;
	}

	.es16-vc-mobile {
		display: block;
	}
}

@media (max-width: 480px) {
	.es16-border-m {
		top: 20px;
	}

	.es16-border-m-left {
		left: calc(-20px + 10%);
	}

	.es16-border-m-right {
		left: calc(20px + 10%);
	}
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.es16-border-left,
	.es16-border-right {
		border: 3px solid #c6aa73;
		width: 100%;
		height: 100%;
	}

	.es16-border-left {
		top: 45px;
		left: -45px;
	}

	.es16-border-right {
		top: 45px;
		left: 45px;
	}
}

@supports (-ms-ime-align: auto) {
	.es16-border-left,
	.es16-border-right {
		border: 3px solid #c6aa73;
		width: 100%;
		height: 100%;
	}

	.es16-border-left {
		top: 45px;
		left: -45px;
	}

	.es16-border-right {
		top: 45px;
		left: 45px;
	}
}
