/*!
 * Bootstrap v5.0.0-beta1 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */


figure blockquote p {
	padding: 0 20px;
	max-width: 90%;
	font-style: italic;
	min-height: 100px;
	border-radius: 6px;
	box-shadow: 1px 1px 1px rgba(204, 204, 204, 1)
}

figure blockquote cite:before {
	content: "— "
}

blockquote p {
	padding: 0 20px;
	max-width: 90%;
	font-style: italic;
	min-height: 100px;
	border-radius: 6px;
	box-shadow: 1px 1px 1px rgba(204, 204, 204, 1)
}

blockquote cite:before {
	content: "— "
}

#blogs h2,
#blogs h3,
#blogs h4,
#blogs h5,
#blogs h6 {
	padding-top: 93px !important
}
.testonero{
	color: black;
}
.be {
	font-size: 12px
}

.mastfoot {
	position: absolute;
	bottom: 10px
}

.lista_02 {
	list-style: none;
	margin-left: -15px
}

.lista_02 svg {
	color: rgba(7, 121, 228, 1)
}

.grigio {
	margin-bottom: 20px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35) !important;
	color: rgba(51, 51, 51, 1);
	background: rgba(250, 250, 250, 1);
	box-sizing: border-box;
	border: 1px solid rgba(209, 209, 209, 1);
	font-size: .9em
}

.breadcrumb {
	position: relative;
	top: 32px
}

.colorblack {
	color: rgba(0, 0, 0, 1)
}

.colorblack i {
	color: rgba(7, 121, 228, 1) !important
}

.comm {
	float: right;
	margin-bottom: 10px;
	margin-top: -50px
}

.titolo-blog {
	color: rgba(7, 121, 228, 1) !important
}

.calendario {
	background: rgba(255, 255, 255, 1);
	border-radius: 50px;
	font-size: 12px;
	padding: 10px;
	margin-left: 10px;
	margin-top: 15px
}

.calendario2 {
	border-radius: 50px;
	font-size: 12px;
	padding: 0px;
	margin-left: 5px;
	margin-top: 7px !important;
	padding-bottom: 3px;
}

.titolo_indice {
	font-weight: 700;
	color: rgba(51, 51, 51, 1);
	margin-left: 32px;
	margin-top: 20px;
	font-size: 1.4em;
	font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"
}

.indice {
	background-position: initial;
	margin-bottom: 20px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15) !important;
	color: rgba(51, 51, 51, 1);
	background-image: initial;
	background-size: initial;
	background-repeat: initial;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: rgba(250, 250, 250, 1);
	box-sizing: border-box;
	border: 1px solid rgba(209, 209, 209, 1);
	font-size: .9em
}

.indice a {
	color: rgba(49, 117, 228, 1) !important;
	font-weight: 600
}

.indice a:visited {
	color: rgba(0, 3, 148, 1) !important
}

.indice li {
	list-style: none
}

.titolo_indirizzo {
	font-weight: 700;
	color: rgba(51, 51, 51, 1);
	margin-left: 32px;
	margin-top: 20px
}

.indrizzo p {
	padding-left: 30px;
	padding-right: 20px
}

.indirizzo {
	background-position: initial;
	margin-bottom: 20px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15) !important;
	color: rgba(51, 51, 51, 1);
	background-image: initial;
	background-size: initial;
	background-repeat: initial;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: rgba(250, 250, 250, 1);
	box-sizing: border-box;
	border: 1px solid rgba(209, 209, 209, 1);
	font-size: .9em;
	min-height: 170px
}

.indirizzo li {
	list-style: none
}

.indirizzo a {
	color: rgba(49, 117, 228, 1) !important;
	font-weight: 600
}

.indirizzo a:visited {
	color: rgba(0, 3, 148, 1) !important
}

.indirizzo p {
	color: rgba(49, 117, 228, 1) !important
}

.titolo_mail {
	font-weight: 700;
	color: rgba(51, 51, 51, 1);
	margin-left: 32px;
	margin-top: 20px
}

.mail p {
	padding-left: 30px;
	padding-right: 20px;
	color: rgba(49, 117, 228, 1) !important
}

.mail {
	background-position: initial;
	margin-bottom: 20px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15) !important;
	color: rgba(51, 51, 51, 1);
	background-image: initial;
	background-size: initial;
	background-repeat: initial;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: rgba(250, 250, 250, 1);
	box-sizing: border-box;
	border: 1px solid rgba(209, 209, 209, 1);
	font-size: .9em;
	min-height: 170px
}

.mail a {
	color: rgba(49, 117, 228, 1) !important;
	font-weight: 600
}

.mail a:visited {
	color: rgba(0, 3, 148, 1) !important
}

.mail li {
	list-style: none
}

.telefono p {
	padding-left: 30px;
	padding-right: 20px;
	color: rgba(49, 117, 228, 1) !important
}

.telefono {
	background-position: initial;
	margin-bottom: 20px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15) !important;
	color: rgba(51, 51, 51, 1);
	background-image: initial;
	background-size: initial;
	background-repeat: initial;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: rgba(250, 250, 250, 1);
	box-sizing: border-box;
	border: 1px solid rgba(209, 209, 209, 1);
	font-size: .9em;
	min-height: 170px
}

.telefono a {
	color: rgba(49, 117, 228, 1) !important;
	font-weight: 600
}

.telefono a:visited {
	color: rgba(0, 3, 148, 1) !important
}

.telefono li {
	list-style: none
}

.titolo_telefono {
	font-weight: 700;
	color: rgba(51, 51, 51, 1);
	margin-left: 32px;
	margin-top: 20px
}

.headtextalign {
	text-align: right;
	color: rgba(255, 255, 255, 1);
	float: right;
	width: 100%
}

.icone_tel,
.icone_facebook,
.icone_email {
	border-radius: 100px;
	border: 1px solid rgba(255, 255, 255, 1);
	padding: 5px;
	margin-right: 5px
}

.icone_tel_b,
.icone_facebook_b,
.icone_email_b {
	border-radius: 100px;
	border: 1px solid rgba(0, 0, 0, 1);
	padding: 5px;
	margin-right: 5px
}

.icone_tel_b_mobile,
.icone_facebook_b_mobile,
.icone_email_b_mobile {
	padding: 4px;
	margin-right: 5px;
	width: 150px;
	height: 150px
}

:root {
	--bs-blue: #0d6efd;
	--bs-indigo: #6610f2;
	--bs-purple: #6f42c1;
	--bs-pink: #d63384;
	--bs-red: #dc3545;
	--bs-orange: #fd7e14;
	--bs-yellow: #ffc107;
	--bs-green: #198754;
	--bs-teal: #20c997;
	--bs-cyan: #0dcaf0;
	--bs-white: #fff;
	--bs-gray: #6c757d;
	--bs-gray-dark: #343a40;
	--bs-primary: #0d6efd;
	--bs-secondary: #6c757d;
	--bs-success: #198754;
	--bs-info: #0dcaf0;
	--bs-warning: #ffc107;
	--bs-danger: #dc3545;
	--bs-light: #f8f9fa;
	--bs-dark: #212529;
	--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0))
}

*,
::before,
::after {
	box-sizing: border-box
}

body {
	margin: 0;
	font-family: "Source Sans Pro", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(0, 0, 0, 1) !important;
	background-color: rgba(255, 255, 255, 1)
}

hr {
	margin: 0 1rem 0 !important;
	color: inherit;
	background-color: currentColor;
	border: 0;
	opacity: .25
}

hr:not\(\[size\]\) {
	height: 1px
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
	font-family: "Montserrat", sans-serif;
	margin-top: 0;
	margin-bottom: .5rem;
	font-weight: 500;
	line-height: 1.2
}

h1,
.h1 {
	font-size: calc(1.375rem + 1.5vw)
}

@media (min-width: 1200px) {

	h1,
	.h1 {
		font-size: 2.5rem
	}
}

.mail div {
	padding-left: 10px
}

h2,
.h2 {
	font-size: calc(1.325rem + 0.9vw)
}

@media (min-width: 1200px) {

	h2,
	.h2 {
		font-size: 2rem
	}
}

h3,
.h3 {
	font-size: calc(1.3rem + 0.6vw)
}

@media (min-width: 1200px) {

	h3,
	.h3 {
		font-size: 1.75rem
	}
}

h4,
.h4 {
	font-size: calc(1.275rem + 0.3vw)
}

@media (min-width: 1200px) {

	h4,
	.h4 {
		font-size: 1.5rem
	}
}

h5,
.h5 {
	font-size: 1.25rem
}

h6,
.h6 {
	font-size: 1rem
}

p {
	margin-top: 0;
	margin-bottom: 1rem
}

address {
	margin-bottom: 1rem;
	font-style: normal;
	line-height: inherit
}

ol,
ul {
	padding-left: 2rem;
	margin-top: 0;
	margin-bottom: 1rem
}

ol ol,
ul ul,
ol ul,
ul ol {
	margin-bottom: 0
}

dt {
	font-weight: 700
}

b,
strong {
	font-weight: bolder
}

small,
.small {
	font-size: .875em
}

sub,
sup {
	position: relative;
	font-size: .75em;
	line-height: 0;
	vertical-align: baseline
}

sub {
	bottom: -.25em
}

sup {
	top: -.5em
}

a {
	color: rgba(13, 110, 253, 1);
	text-decoration: underline
}

a:hover {
	color: rgba(10, 88, 202, 1)
}

a:not\(\[href\]\):not\(\[class\]\),
a:not\(\[href\]\):not\(\[class\]\):hover {
	color: inherit;
	text-decoration: none
}

pre,
code {
	font-family: "Source Sans Pro", sans-serif;
	font-size: 1em;
	direction: ltr;
	unicode-bidi: bidi-override
}

pre {
	display: block;
	margin-top: 0;
	margin-bottom: 1rem;
	overflow: auto;
	font-size: .875em
}

pre code {
	font-size: inherit;
	color: inherit;
	word-break: normal
}

code {
	font-size: .875em;
	color: rgba(214, 51, 132, 1);
	word-wrap: break-word
}

a>code {
	color: inherit
}

img,
svg {
	vertical-align: middle
}

table {
	caption-side: bottom;
	border-collapse: collapse
}

caption {
	padding-top: .5rem;
	padding-bottom: .5rem;
	color: rgba(108, 117, 125, 1);
	text-align: left
}

td,
th {
	border-style: solid;
	border-width: 0
}

label {
	display: inline-block
}

button {
	border-radius: 0
}

button:focus {
	outline: 1px dotted
}

input,
button,
select,
textarea {
	margin: 0;
	font-family: "Source Sans Pro", sans-serif;
	font-size: inherit;
	line-height: inherit
}

button,
select {
	text-transform: none
}

[role="button"] {
	cursor: pointer
}

select {
	word-wrap: normal
}

button:not\(\:disabled\),
[type="button"]:not\(\:disabled\),
[type="reset"]:not\(\:disabled\),
[type="submit"]:not\(\:disabled\) {
	cursor: none pointer
}

textarea {
	resize: vertical
}

iframe {
	border: 0
}

progress {
	vertical-align: baseline
}

[hidden] {
	display: none !important
}

.list-unstyled {
	padding-left: 0;
	list-style: none
}

.img-fluid {
	max-width: 100%;
	height: auto
}

.container,
.container-fluid,
.container-xl {
	width: 100%;
	padding-right: var(--bs-gutter-x, 0.75rem);
	padding-left: var(--bs-gutter-x, 0.75rem);
	margin-right: auto;
	margin-left: auto
}

.row {
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(var(--bs-gutter-y) * -1);
	margin-right: calc(var(--bs-gutter-x) / -2);
	margin-left: calc(var(--bs-gutter-x) / -2)
}

.row>* {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
	padding-right: calc(var(--bs-gutter-x) / 2);
	padding-left: calc(var(--bs-gutter-x) / 2);
	margin-top: var(--bs-gutter-y)
}

.col {
	flex: 1 0 0
}

.g-0 {
	--bs-gutter-x: 0;
	--bs-gutter-y: 0
}

@media (min-width: 576px) {
	.slide-home {
		background-image: url(../images/background.jpg)
	}

	.col-sm-6 {
		flex: 0 0 auto;
		width: 50%
	}

	.fontsize49px {
		font-size: 37px !important
	}

	.bg-post {
		width: 110%;
		margin: 0;
		padding: 0;
		position: relative;
		height: 500px;
		top: -65px !important;
		left: -20px
	}
}

@media (min-width: 768px) {
	.bg-post {
		height: 500px;
		margin-top: 0;
		border-radius: 30px;
		background-size: contain;
		font-size: 10px;
		font-weight: 400 !important;
		width: 102.5%;
		left: -11px;
		position: relative;
		padding-top: 11px
	}

	.col-md-4 {
		flex: 0 0 auto;
		width: 33.33333%
	}

	.col-md-6 {
		flex: 0 0 auto;
		width: 50%
	}

	.col-md-7 {
		flex: 0 0 auto;
		width: 58.33333%
	}

	.col-md-8 {
		flex: 0 0 auto;
		width: 66.66667%
	}

	.col-md-9 {
		flex: 0 0 auto;
		width: 75%
	}

	.col-md-12 {
		flex: 0 0 auto;
		width: 100%
	}
}

@media (min-width: 992px) {
	.col-lg-2 {
		flex: 0 0 auto;
		width: 16.66667%
	}

	.col-lg-3 {
		flex: 0 0 auto;
		width: 25%
	}

	.col-lg-4 {
		flex: 0 0 auto;
		width: 33.33333%
	}

	.col-lg-6 {
		flex: 0 0 auto;
		width: 50%
	}

	.col-lg-7 {
		flex: 0 0 auto;
		width: 58.33333%
	}

	.col-lg-12 {
		flex: 0 0 auto;
		width: 100%
	}

	.g-lg-5 {
		--bs-gutter-x: 3rem;
		--bs-gutter-y: 3rem
	}
}

@media (min-width: 1200px) {
	.g-xl-5 {
		--bs-gutter-x: 3rem;
		--bs-gutter-y: 3rem
	}

	.fontsize49px {
		font-size: 49px !important
	}

	.bg-post {
		height: 500px;
		margin-top: 0;
		border-radius: 30px;
		background-size: contain;
		font-size: 10px;
		font-weight: 400 !important;
		width: 100.4%;
		left: -12px;
		position: relative;
		padding-top: 11px
	}

	.titolo-post {
		color: rgba(255, 255, 255, 1);
		margin: 20% auto auto;
		text-align: left;
		font-weight: 900
	}
}

.table {
	--bs-table-bg: transparent;
	--bs-table-striped-color: #212529;
	--bs-table-striped-bg: rgba(0, 0, 0, 0.05);
	--bs-table-active-color: #212529;
	--bs-table-active-bg: rgba(0, 0, 0, 0.1);
	--bs-table-hover-color: #212529;
	--bs-table-hover-bg: rgba(0, 0, 0, 0.075);
	width: 100%;
	margin-bottom: 1rem;
	color: rgba(33, 37, 41, 1);
	vertical-align: top;
	border-color: rgba(222, 226, 230, 1)
}

.table>:not\(caption\)>*>* {
	padding: .5rem;
	background-color: var(--bs-table-bg);
	background-image: linear-gradient(var(--bs-table-accent-bg), var(--bs-table-accent-bg));
	border-bottom-width: 1px
}

.table>:not\(\:last-child\)>:last-child>* {
	border-bottom-color: currentColor
}

.form-control {
	display: block;
	width: 100%;
	padding: .375rem .75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(33, 37, 41, 1);
	background-color: rgba(255, 255, 255, 1);
	background-clip: padding-box;
	border: 1px solid rgba(206, 212, 218, 1);
	border-radius: .25rem;
	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

.form-control[type="file"] {
	overflow: hidden
}

.form-control[type="file"]:not\(\:disabled\):not\(\[readonly\]\) {
	cursor: pointer
}

.form-control:focus {
	color: rgba(33, 37, 41, 1);
	background-color: rgba(255, 255, 255, 1);
	border-color: rgba(134, 183, 254, 1);
	outline: 0;
	box-shadow: 0 0 .25rem rgba(13, 110, 253, 0.25)
}

.form-control:disabled {
	background-color: #1.5em rgba(108, 117, 125, 1) #1 rgba(108, 117, 125, 1) #1 rgba(108, 117, 125, 1) #1 rgba(108, 117, 125, 1) #1 rgba(233, 236, 239, 1);
	opacity: 1
}

textarea.form-control {
	min-height: .375rem .75rem -.375rem -.75rem rgba(33, 37, 41, 1) rgba(233, 236, 239, 1) none solid 0 0 color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out rgba(221, 224, 227, 1) .375rem .75rem -.375rem -.75rem rgba(33, 37, 41, 1) rgba(233, 236, 239, 1) none solid 0 0 color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out rgba(221, 224, 227, 1) calc(1.5em + 0.75rem + 2px)
}

.btn {
	display: inline-block;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(33, 37, 41, 1);
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	cursor: pointer;
	background-color: rgba(0, 0, 0, 0);
	border: 1px solid rgba(0, 0, 0, 0);
	padding: .375rem .75rem;
	font-size: 1rem;
	border-radius: .25rem;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

.btn:hover {
	color: rgba(33, 37, 41, 1)
}

.btn:focus {
	outline: 0;
	box-shadow: 0 0 .25rem rgba(13, 110, 253, 0.25)
}

.btn:disabled,
.btn.disabled {
	pointer-events: none;
	opacity: .65
}

.btn-primary {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(13, 110, 253, 1);
	border-color: rgba(13, 110, 253, 1)
}

.btn-primary:hover {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(11, 94, 215, 1);
	border-color: rgba(10, 88, 202, 1)
}

.btn-primary:focus {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(11, 94, 215, 1);
	border-color: rgba(10, 88, 202, 1);
	box-shadow: 0 0 .25rem rgba(49, 132, 253, 0.5)
}

.btn-primary:active,
.btn-primary.active,
.show>.btn-primary.dropdown-toggle {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(10, 88, 202, 1);
	border-color: rgba(10, 83, 190, 1)
}

.btn-primary:active:focus,
.btn-primary.active:focus,
.show>.btn-primary.dropdown-toggle:focus {
	box-shadow: 0 0 .25rem rgba(49, 132, 253, 0.5)
}

.btn-primary:disabled,
.btn-primary.disabled {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(13, 110, 253, 1);
	border-color: rgba(13, 110, 253, 1)
}

.btn-outline-primary {
	color: rgba(13, 110, 253, 1);
	border-color: rgba(13, 110, 253, 1)
}

.btn-outline-primary:hover {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(13, 110, 253, 1);
	border-color: rgba(13, 110, 253, 1)
}

.btn-outline-primary:focus {
	box-shadow: 0 0 .25rem rgba(13, 110, 253, 0.5)
}

.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-outline-primary.dropdown-toggle.show {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(13, 110, 253, 1);
	border-color: rgba(13, 110, 253, 1)
}

.btn-outline-primary:active:focus,
.btn-outline-primary.active:focus,
.btn-outline-primary.dropdown-toggle.show:focus {
	box-shadow: 0 0 .25rem rgba(13, 110, 253, 0.5)
}

.btn-outline-primary:disabled,
.btn-outline-primary.disabled {
	color: rgba(13, 110, 253, 1);
	background-color: rgba(0, 0, 0, 0)
}

.fade {
	transition: opacity .15s linear
}

.fade:not\(\.show\) {
	opacity: 0
}

.collapse:not(.show) {
	display: none
}

.testo-bianco {
	color: white;
	padding: 25px;
	text-align: center;
}

.btn-register {
	color: #0779e4 !important;
	background-color: #FFF !important;
}

.testo-bianco label {
	width: 90%
}

.collapsing {
	height: 0;
	overflow: hidden;
	transition: height .35s ease
}

.dropup,
.dropend,
.dropdown,
.dropstart {
	position: relative
}

.dropdown-toggle {
	white-space: nowrap
}

.dropdown-toggle::after {
	display: inline-block;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .3em solid;
	border-right: .3em solid rgba(0, 0, 0, 0);
	border-bottom: 0;
	border-left: .3em solid rgba(0, 0, 0, 0)
}

.dropdown-toggle:empty::after {
	margin-left: 0
}

.dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 1000;
	display: none;
	min-width: 10rem;
	padding: .5rem 0;
	margin: .125rem 0 0;
	font-size: 1rem;
	color: rgba(33, 37, 41, 1);
	text-align: left;
	list-style: none;
	background-color: rgba(255, 255, 255, 1);
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, 0.15);
	border-radius: .25rem
}

.dropdown-menu[style] {
	right: auto !important
}

.dropup .dropdown-menu {
	top: auto;
	bottom: 100%;
	margin-top: 0;
	margin-bottom: .125rem
}

.dropup .dropdown-toggle::after {
	display: inline-block;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: 0;
	border-right: .3em solid rgba(0, 0, 0, 0);
	border-bottom: .3em solid;
	border-left: .3em solid rgba(0, 0, 0, 0)
}

.dropup .dropdown-toggle:empty::after {
	margin-left: 0
}

.dropend .dropdown-menu {
	top: 0;
	right: auto;
	left: 100%;
	margin-top: 0;
	margin-left: .125rem
}

.dropend .dropdown-toggle::after {
	display: inline-block;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .3em solid rgba(0, 0, 0, 0);
	border-right: 0;
	border-bottom: .3em solid rgba(0, 0, 0, 0);
	border-left: .3em solid
}

.dropend .dropdown-toggle:empty::after {
	margin-left: 0
}

.dropend .dropdown-toggle::after {
	vertical-align: 0
}

.dropstart .dropdown-menu {
	top: 0;
	right: 100%;
	left: auto;
	margin-top: 0;
	margin-right: .125rem
}

.dropstart .dropdown-toggle::after {
	display: inline-block;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	display: none
}

.dropstart .dropdown-toggle::before {
	display: inline-block;
	margin-right: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .3em solid rgba(0, 0, 0, 0);
	border-right: .3em solid;
	border-bottom: .3em solid rgba(0, 0, 0, 0)
}

.dropstart .dropdown-toggle:empty::after {
	margin-left: 0
}

.dropstart .dropdown-toggle::before {
	vertical-align: 0
}

.dropdown-item {
	display: block;
	width: 100%;
	padding: .25rem 1rem;
	clear: both;
	font-weight: 400;
	color: rgba(33, 37, 41, 1);
	text-align: inherit;
	text-decoration: none;
	white-space: nowrap;
	background-color: rgba(0, 0, 0, 0);
	border: 0
}

.dropdown-item:hover,
.dropdown-item:focus {
	color: rgba(30, 33, 37, 1);
	background-color: rgba(248, 249, 250, 1)
}

.dropdown-item.active,
.dropdown-item:active {
	color: rgba(255, 255, 255, 1);
	text-decoration: none;
	background-color: rgba(13, 110, 253, 1)
}

.dropdown-item.disabled,
.dropdown-item:disabled {
	color: rgba(108, 117, 125, 1);
	pointer-events: none;
	background-color: rgba(0, 0, 0, 0)
}

.dropdown-menu.show {
	display: block
}

.nav {
	display: flex;
	flex-wrap: wrap;
	padding-left: 0;
	margin-bottom: 0;
	list-style: none
}

.nav-link {
	display: block;
	padding: .5rem 1rem;
	text-decoration: none;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out
}

.nav-link.disabled {
	color: rgba(108, 117, 125, 1);
	pointer-events: none;
	cursor: default
}

.nav-tabs {
	border-bottom: 1px solid rgba(222, 226, 230, 1)
}

.nav-tabs .nav-link {
	margin-bottom: -1px;
	border: 1px solid rgba(0, 0, 0, 0);
	border-top-left-radius: .25rem;
	border-top-right-radius: .25rem
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
	border-color: rgba(233, 236, 239, 1) rgba(233, 236, 239, 1) rgba(222, 226, 230, 1)
}

.nav-tabs .nav-link.disabled {
	color: rgba(108, 117, 125, 1);
	background-color: rgba(0, 0, 0, 0);
	border-color: rgba(0, 0, 0, 0)
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
	color: rgba(73, 80, 87, 1);
	background-color: rgba(255, 255, 255, 1);
	border-color: rgba(222, 226, 230, 1) rgba(222, 226, 230, 1) rgba(255, 255, 255, 1)
}

.nav-tabs .dropdown-menu {
	margin-top: -1px;
	border-top-left-radius: 0;
	border-top-right-radius: 0
}

.tab-content>.tab-pane {
	display: none
}

.tab-content>.active {
	display: block
}

.navbar {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding-top: .5rem;
	padding-bottom: .5rem
}

.navbar>.container,
.navbar>.container-fluid,
.navbar>.container-xl {
	display: flex;
	flex-wrap: inherit;
	align-items: center;
	justify-content: space-between
}

.navbar-brand {
	padding-top: .3125rem;
	padding-bottom: .3125rem;
	margin-right: 1rem;
	font-size: 1.25rem;
	text-decoration: none;
	white-space: nowrap
}

.navbar-nav {
	display: flex;
	flex-direction: column;
	padding-left: 0;
	margin-bottom: 0;
	list-style: none
}

.navbar-nav .nav-link {
	padding-right: 0;
	padding-left: 0
}

.navbar-nav .dropdown-menu {
	position: static
}

.navbar-collapse {
	align-items: center;
	width: 100%
}

.navbar-toggler {
	padding: .25rem .75rem;
	font-size: 1.25rem;
	line-height: 1;
	background-color: rgba(0, 0, 0, 0);
	border: 1px solid rgba(0, 0, 0, 0);
	border-radius: .25rem;
	transition: box-shadow .15s ease-in-out
}

.navbar-toggler:hover {
	text-decoration: none
}

.navbar-toggler:focus {
	text-decoration: none;
	outline: 0;
	box-shadow: 0 0 .25rem
}

@media (min-width: 992px) {
	.navbar-expand-lg {
		flex-wrap: nowrap;
		justify-content: flex-start
	}

	.navbar-expand-lg .navbar-nav {
		flex-direction: row
	}

	.navbar-expand-lg .navbar-nav .dropdown-menu {
		position: absolute
	}

	.navbar-expand-lg .navbar-nav .nav-link {
		padding-right: .5rem;
		padding-left: .5rem
	}

	.navbar-expand-lg .navbar-collapse {
		display: flex !important
	}

	.navbar-expand-lg .navbar-toggler {
		display: none
	}
}

.alert {
	position: relative;
	padding: 1rem;
	margin-bottom: 1rem;
	border: 1px solid rgba(0, 0, 0, 0);
	border-radius: .25rem
}

@keyframes progress-bar-stripes {
	0% {
		background-position-x: 1rem
	}
}

.progress {
	display: flex;
	height: 1rem;
	overflow: hidden;
	font-size: .75rem;
	background-color: rgba(233, 236, 239, 1);
	border-radius: .25rem
}

.progress-bar {
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	color: rgba(255, 255, 255, 1);
	text-align: center;
	white-space: nowrap;
	background-color: rgba(13, 110, 253, 1);
	transition: width .6s ease
}

.list-group {
	display: flex;
	flex-direction: column;
	padding-left: 0;
	margin-bottom: 0;
	border-radius: .25rem
}

.list-group-item {
	position: relative;
	display: block;
	padding: .5rem 1rem;
	text-decoration: none;
	background-color: rgba(255, 255, 255, 1);
	border: 1px solid rgba(0, 0, 0, 0.13)
}

.list-group-item:first-child {
	border-top-left-radius: inherit;
	border-top-right-radius: inherit
}

.list-group-item:last-child {
	border-bottom-right-radius: inherit;
	border-bottom-left-radius: inherit
}

.list-group-item.disabled,
.list-group-item:disabled {
	color: rgba(108, 117, 125, 1);
	pointer-events: none;
	background-color: rgba(255, 255, 255, 1)
}

.list-group-item.active {
	z-index: 2;
	color: rgba(255, 255, 255, 1);
	background-color: rgba(13, 110, 253, 1);
	border-color: rgba(13, 110, 253, 1)
}

.list-group-item+.list-group-item {
	border-top-width: 0
}

.list-group-item+.list-group-item.active {
	margin-top: -1px;
	border-top-width: 1px
}

.toast {
	width: 350px;
	max-width: 100%;
	font-size: .875rem;
	pointer-events: auto;
	background-color: rgba(255, 255, 255, 0.85);
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, 0.1);
	box-shadow: 0 .5rem 1rem rgba(0, 0, 0, 0.15);
	border-radius: .25rem
}

.toast:not\(\.showing\):not\(\.show\) {
	opacity: 0
}

.toast.hide {
	display: none
}

@media (min-width: 500px) {
	#scrolltop {
		position: fixed;
		bottom: 45px !important;
		right: 15px;
		padding: 30px;
		background-color: rgba(0, 102, 225, 0.5);
		background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAe1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////NgkbwAAAAKHRSTlMAAQIDDRITFBcdHh8gIyQlJjdDREx1d4CCg4WXmpu5urzZ6e3v+fv9pStiuwAAAI9JREFUOE/dylkWgkAMRNFqUXEW53kC1Ox/hWKOtG3SZgHkq3LuAxp4q7xv+oboPrDdLNiNYktkFt7/FIFHix+viqHwHYkThffr7Bkrvp4gixT7wIHsURcj6ZeE/6kopMtirTwsUuCmHZjUxRxIS17n0H1xctXultqB8bs4Ot6dQjsXB/fZ7WVLOdBbODTmXgKJJx7c/fm3AAAAAElFTkSuQmCC);
		background-repeat: no-repeat;
		background-position: center;
		border-radius: 5px;
		z-index: 9999;
		border: 0
	}

	.slide-home {
		background-image: url(../images/background.jpg)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: none
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: block
	}

	.container {
		max-width: 540px
	}

	.slideimg {
		display: none
	}
}

@media (min-width: 576px) {
	.slide-home {
		background-image: url(../images/background.jpg)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: none
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: block
	}

	.container {
		max-width: 540px
	}

	.slideimg {
		display: none
	}
}

@media (min-width: 768px) {
	.slide-home {
		background-image: url(../images/background-home.webp)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: none
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: block
	}

	.container {
		max-width: 720px
	}

	.slideimg {
		display: none
	}
}

@media (min-width: 1200px) {
	.slide-home {
		background-image: url(../images/background-home.webp)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: block
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: none
	}

	.container,
	.container-xl {
		max-width: 1000px
	}

	.slideimg {
		display: block
	}
}

@media (min-width: 1400px) {
	.slide-home {
		background-image: url(../images/background-home.webp)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: block
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: none
	}

	.container,
	.container-xl {
		max-width: 1020px
	}

	.slideimg {
		display: block
	}
}

@media (min-width: 992px) {
	.slide-home {
		background-image: url(../images/background-home.webp)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: block
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: none
	}

	.container {
		max-width: 960px
	}

	.slideimg {
		display: block
	}
}

.email_hide,
.tel_hide {
	margin-left: 15px;
	float: left
}

.menuhead {
	text-align: right;
	color: rgba(255, 255, 255, 1);
	float: right;
	width: 100%
}

.scroll .w {
	display: none
}

.w {
	display: block;
	padding-right: 20px;
	width: 100%;
	float: right
}

.o {
	display: block;
	width: 100%;
	margin: auto
}

.modal-open {
	overflow: hidden
}

.modal-open .modal {
	overflow-x: hidden;
	overflow-y: auto
}

.modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1050;
	display: none;
	width: 100%;
	height: 100%;
	overflow: hidden;
	outline: 0
}

.modal-dialog {
	position: relative;
	width: auto;
	margin: .5rem;
	pointer-events: none
}

.modal.fade .modal-dialog {
	transition: transform .3s ease-out;
	transform: translate(0, -50px)
}

.modal.show .modal-dialog {
	transform: none
}

.modal.modal-static .modal-dialog {
	transform: scale(1.02)
}

.modal-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1040;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, 1)
}

.modal-backdrop.fade {
	opacity: 0
}

.modal-backdrop.show {
	opacity: .5
}

.modal-body {
	position: relative;
	flex: 1 1 auto;
	padding: 1rem
}

.modal-scrollbar-measure {
	position: absolute;
	top: -9999px;
	width: 50px;
	height: 50px;
	overflow: scroll
}

@media (min-width: 576px) {
	.modal-dialog {
		max-width: 500px;
		margin: 1.75rem auto
	}

	.slide-home {
		background-image: url(../images/background.jpg)
	}
}

.tooltip {
	position: absolute;
	z-index: 1070;
	display: block;
	margin: 0;
	font-family: "Source Sans Pro", sans-serif;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	text-decoration: none;
	text-shadow: none;
	text-transform: none;
	letter-spacing: normal;
	word-break: normal;
	word-spacing: normal;
	white-space: normal;
	font-size: .875rem;
	word-wrap: break-word;
	opacity: 0
}

.tooltip.show {
	opacity: .9
}

.tooltip .tooltip-arrow {
	position: absolute;
	display: block;
	width: .8rem;
	height: .4rem
}

.tooltip .tooltip-arrow::before {
	position: absolute;
	content: "";
	border-color: rgba(0, 0, 0, 0);
	border-style: solid
}

.tooltip-inner {
	max-width: 200px;
	padding: .25rem .5rem;
	color: rgba(255, 255, 255, 1);
	text-align: center;
	background-color: rgba(0, 0, 0, 1);
	border-radius: .25rem
}

.popover {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1060;
	display: block;
	max-width: 276px;
	font-family: "Source Sans Pro", sans-serif;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	text-decoration: none;
	text-shadow: none;
	text-transform: none;
	letter-spacing: normal;
	word-break: normal;
	word-spacing: normal;
	white-space: normal;
	font-size: .875rem;
	word-wrap: break-word;
	background-color: rgba(255, 255, 255, 1);
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: .3rem
}

.popover .popover-arrow {
	position: absolute;
	display: block;
	width: 1rem;
	height: .5rem;
	margin: 0 .3rem
}

.popover .popover-arrow::before,
.popover .popover-arrow::after {
	position: absolute;
	display: block;
	content: "";
	border-color: rgba(0, 0, 0, 0);
	border-style: solid
}

.popover-header {
	padding: .5rem 1rem;
	margin-bottom: 0;
	font-size: 1rem;
	background-color: rgba(240, 240, 240, 1);
	border-bottom: 1px solid rgba(216, 216, 216, 1);
	border-top-left-radius: calc(0.3rem - 1px);
	border-top-right-radius: calc(0.3rem - 1px)
}

.popover-header:empty {
	display: none
}

.popover-body {
	padding: 1rem;
	color: rgba(33, 37, 41, 1)
}

.carousel {
	position: relative
}

.carousel-item {
	position: relative;
	display: none;
	float: left;
	width: 100%;
	margin-right: -100%;
	backface-visibility: hidden;
	transition: transform .6s ease-in-out
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
	display: block
}

.carousel-item-next:not\(\.carousel-item-start\),
.active.carousel-item-end {
	transform: translateX(100%)
}

.carousel-item-prev:not\(\.carousel-item-end\),
.active.carousel-item-start {
	transform: translateX(-100%)
}

.carousel-indicators {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	display: flex;
	justify-content: center;
	padding-left: 0;
	margin-right: 15%;
	margin-left: 15%;
	list-style: none
}

.carousel-indicators li {
	box-sizing: content-box;
	flex: 0 1 auto;
	width: 30px;
	height: 3px;
	margin-right: 3px;
	margin-left: 3px;
	text-indent: -999px;
	cursor: pointer;
	background-color: rgba(255, 255, 255, 1);
	background-clip: padding-box;
	border-top: 10px solid rgba(0, 0, 0, 0);
	border-bottom: 10px solid rgba(0, 0, 0, 0);
	opacity: .5;
	transition: opacity .6s ease
}

.carousel-indicators .active {
	opacity: 1
}

@keyframes spinner-border {
	100% {
		transform: rotate(360deg)
	}
}

@keyframes spinner-grow {
	0% {
		transform: scale(0)
	}

	50% {
		opacity: 1;
		transform: none
	}
}

.ratio {
	position: relative;
	width: 100%
}

.ratio::before {
	display: block;
	padding-top: var(--aspect-ratio);
	content: ""
}

.ratio>* {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.fixed-top {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1030
}

.fixed-bottom {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1030
}

.sticky-top {
	position: sticky;
	top: 0;
	z-index: 1020
}

.d-block {
	display: block !important
}

.d-flex {
	display: flex !important
}

.w-100 {
	width: 100% !important
}

.justify-content-end {
	justify-content: flex-end !important
}

.justify-content-center {
	justify-content: center !important
}

.justify-content-between {
	justify-content: space-between !important
}

.align-items-start {
	align-items: flex-start !important
}

.align-items-center {
	align-items: center !important
}

.align-items-stretch {
	align-items: stretch !important
}

.my-5 {
	margin-top: 3rem !important;
	margin-bottom: 3rem !important
}

.mt-2 {
	margin-top: .5rem !important
}

.mt-5 {
	margin-top: 3rem !important
}

.me-1 {
	margin-right: .25rem !important
}

.me-2 {
	margin-right: .5rem !important
}

.me-4 {
	margin-right: 1.5rem !important
}

.mb-0 {
	margin-bottom: 0 !important
}

.mb-2 {
	margin-bottom: .5rem !important
}

.mb-3 {
	margin-bottom: 1rem !important
}

.mb-4 {
	margin-bottom: 1.5rem !important
}

.mb-5 {
	margin-bottom: 3rem !important
}

.ms-auto {
	margin-left: auto !important
}

.p-4 {
	padding: 1.5rem !important
}

.px-0 {
	padding-right: 0 !important;
	padding-left: 0 !important
}

.px-2 {
	padding-right: .5rem !important;
	padding-left: .5rem !important
}

.px-4 {
	padding-right: 1.5rem !important;
	padding-left: 1.5rem !important
}

.py-3 {
	padding-top: 1rem !important;
	padding-bottom: 1rem !important
}

.py-4 {
	padding-top: 1.5rem !important;
	padding-bottom: 1.5rem !important
}

.py-5 {
	padding-top: 3rem !important;
	padding-bottom: 3rem !important
}

.pt-5 {
	padding-top: 3rem !important
}

.pb-4 {
	padding-bottom: 1.5rem !important
}

.pb-5 {
	padding-bottom: 3rem !important
}

.ps-3 {
	padding-left: 1rem !important
}

.text-center {
	text-align: center !important
}

.bg-primary {
	background-color: rgba(13, 110, 253, 1) !important
}

.bg-light {
	background-color: rgba(248, 249, 250, 1) !important
}

.bg-white {
	background-color: rgba(255, 255, 255, 1) !important
}

.rounded {
	border-radius: .25rem !important
}

.visible {
	visibility: visible !important
}

@media (min-width: 768px) {
	.slide-home {
		background-image: url(../images/background-home.webp)
	}

	.me-md-4 {
		margin-right: 1.5rem !important
	}

	.p-md-5 {
		padding: 3rem !important
	}
}

@media (min-width: 992px) {
	.order-lg-last {
		order: 6 !important
	}

	.mb-lg-0 {
		margin-bottom: 0 !important
	}

	.ms-lg-2 {
		margin-left: .5rem !important
	}

	.p-lg-5 {
		padding: 3rem !important
	}

	.px-lg-5 {
		padding-right: 3rem !important;
		padding-left: 3rem !important
	}
}

.servizi {
	margin-bottom: 40px
}

body {
	font-family: "Source Sans Pro", sans-serif;
	background: rgba(248, 248, 248, 1);
	font-size: 15px;
	line-height: 1.8;
	font-weight: 400;
	color: rgba(0, 0, 0, 1) !important
}

a,
button {
	transition: all .3s ease;
	color: rgba(7, 121, 228, 1);
	text-decoration: none
}

a:hover,
a:focus,
button:hover,
button:focus {
	text-decoration: none;
	color: rgba(7, 121, 228, 1);
	outline: none !important;
	box-shadow: none !important
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
.h1,
.h2,
.h3,
.h4,
.h5 {
	font-family: "Montserrat", sans-serif;
	line-height: 1.5;
	color: rgba(0, 0, 0, 0.8);
	font-weight: 400
}

.ftco-navbar-light {
	transition: all .6s ease
}

.ftco-navbar-light.scroll {
	background-color: rgba(7, 121, 228, 1);
	padding: 0
}

.ftco-navbar-light.scroll .navbar-nav>.nav-item>.nav-link.activeme {
	background: rgba(62, 159, 249, 1);
	color: rgba(255, 255, 255, 1);
	position: relative
}

.ftco-navbar-light.scroll .navbar-nav>.nav-item>.nav-link.activeme:after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: 0;
	height: 0;
	border-top: 10px solid rgba(62, 159, 249, 1);
	border-right: 10px solid rgba(0, 0, 0, 0);
	border-bottom: 0 solid rgba(0, 0, 0, 0);
	border-left: 10px solid rgba(0, 0, 0, 0)
}

@media (max-width: 991.98px) {
	.ftco-navbar-light.scroll {
		padding: 15px 0 !important
	}

	.ftco-navbar-light.scroll .navbar-nav>.nav-item>.nav-link.activeme {
		background: rgba(0, 0, 0, 0);
		color: rgba(255, 255, 255, 1) !important
	}

	.ftco-navbar-light.scroll .navbar-nav>.nav-item>.nav-link.activeme:after {
		display: none
	}

	.ftco-navbar-light {
		background: rgba(13, 134, 248, 1) !important;
		height: 110px;
	}
}

.ftco-navbar-light .navbar-brand {
	color: rgba(255, 255, 255, 1);
	padding: 0;
	position: relative;
	z-index: 0
}

.ftco-navbar-light .navbar-brand:hover,
.ftco-navbar-light .navbar-brand:focus {
	color: rgba(255, 255, 255, 1) !important
}

@media (max-width: 991.98px) {
	.ftco-navbar-light .navbar-nav {
		padding-top: 20px;
		padding-bottom: 20px
	}
}

@media (max-width: 767.98px) {
	.slide-home {
		background-image: url(../images/background.jpg)
	}

	.ftco-navbar-light .navbar-nav {
		padding-top: 20px;
		padding-bottom: 20px;
		margin-right: 0
	}

	.ftco-navbar-light .navbar-brand {
		color: rgba(255, 255, 255, 1)
	}

	.scroll .logo_bing {
		display: none
	}

	.logo_bing {
		display: none
	}

	.scroll .logo_smail {
		display: block
	}

	.logo_smail {
		display: block
	}
}

.ftco-navbar-light .navbar-nav .dropdown:hover .dropdown-menu {
	display: block;
	margin-top: 0;
	transition: all .3s ease
}

.ftco-navbar-light .navbar-nav>.nav-item>.nav-link {
	font-size: 15px;
	padding: 1.4rem 25px;
	color: rgba(255, 255, 255, 0.7);
	font-weight: 500
}

.ftco-navbar-light .navbar-nav>.nav-item>.nav-link span {
	position: relative;
	display: block;
	padding-bottom: 2px
}

@media (max-width: 991.98px) {
	.ftco-navbar-light .navbar-nav>.nav-item>.nav-link span {
		display: inline-block
	}

	.ftco-navbar-light .navbar-nav>.nav-item>.nav-link {
		padding: 0 10px 1rem
	}
}

#scrolltop {
	position: fixed;
	bottom: 45px !important;
	right: 15px;
	padding: 30px;
	background-color: rgba(0, 102, 225, 0.5);
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAe1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////NgkbwAAAAKHRSTlMAAQIDDRITFBcdHh8gIyQlJjdDREx1d4CCg4WXmpu5urzZ6e3v+fv9pStiuwAAAI9JREFUOE/dylkWgkAMRNFqUXEW53kC1Ox/hWKOtG3SZgHkq3LuAxp4q7xv+oboPrDdLNiNYktkFt7/FIFHix+viqHwHYkThffr7Bkrvp4gixT7wIHsURcj6ZeE/6kopMtirTwsUuCmHZjUxRxIS17n0H1xctXultqB8bs4Ot6dQjsXB/fZ7WVLOdBbODTmXgKJJx7c/fm3AAAAAElFTkSuQmCC);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	z-index: 9999;
	border: 0
}

.slideimg {
	display: none
}

.hero-wrap-page {
	min-height: 90%;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top;
	background-attachment: fixed;
	z-index: 0
}

.hero-wrap-page h1 {
	font-family: "Montserrat", sans-serif
}

.ftco-navbar-light .navbar-nav>.nav-item>.nav-link.activeme {
	color: rgba(255, 255, 255, 1);
	position: relative;
	z-index: 0
}

@media (max-width: 767.98px) {
	.ftco-navbar-light .navbar-nav>.nav-item.activeme>a {
		color: rgba(255, 255, 255, 1);
		background: rgba(0, 0, 0, 0)
	}
}

.ftco-navbar-light .navbar-toggler {
	border: none;
	color: rgba(255, 255, 255, 0.9) !important;
	cursor: pointer;
	padding-right: 0;
	text-transform: uppercase;
	font-size: 20px;
	letter-spacing: .1em
}

.ftco-navbar-light .navbar-toggler:hover,
.ftco-navbar-light .navbar-toggler:focus {
	text-decoration: none;
	color: rgba(7, 121, 228, 1);
	outline: none !important;
	box-shadow: none
}

.navbar-brand {
	font-weight: 800;
	font-size: 20px;
	color: rgba(255, 255, 255, 1);
	z-index: 3;
	position: relative;
	line-height: 1.1
}

@media (min-width: 575.98px) and (max-width: 575.98px) {
	.slide-home {
		background-image: url(../images/background.jpg)
	}

	.navbar-brand {
		line-height: 1
	}

	.hero-wrap-home {
		min-height: 100%;
		position: relative;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: top;
		z-index: 0
	}

	.hero-wrap-page {
		min-height: 90%;
		position: relative;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: top;
		background-attachment: fixed;
		z-index: 0
	}

	.hero-wrap-post {
		min-height: 90%;
		position: relative;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: top;
		background-attachment: fixed;
		z-index: 0
	}

	.hero-wrap-home .overlay,
	.hero-wrap-post .overlay,
	.hero-wrap .overlay {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		opacity: 0;
		background: rgba(17, 17, 17, 1);
		z-index: -1
	}

	.hero-wrap-page .overlay {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 20px;
		opacity: 0;
		background: rgba(17, 17, 17, 1);
		z-index: -1
	}

	.hero-wrap-home.hero-wrap-2,
	.hero-wrap.hero-wrap-2,
	.hero-wrap-page .hero-wrap-2,
	.hero-wrap-post .hero-wrap-2 {
		height: 700px;
		background-position: top;
		background-attachment: fixed
	}

	.hero-wrap-home.hero-wrap-2 .overlay,
	.hero-wrap.hero-wrap-2 .overlay {
		opacity: 0
	}

	.hero-wrap .slider-text,
	.hero-wrap-home .slider-text,
	.hero-wrap-page .slider-text,
	.hero-wrap-post .slider-text {
		color: rgba(255, 255, 255, 0.8);
		z-index: 3
	}

	.hero-wrap .slider-text .text,
	.hero-wrap-home .slider-text .text,
	.hero-wrap-post .slider-text .text {
		position: relative;
		z-index: 0
	}

	.hero-wrap-post .slider-text .subheading,
	.hero-wrap-home .slider-text .subheading,
	.hero-wrap-home .slider-text .subheading,
	.hero-wrap-page .slider-text .subheading,
	.hero-wrap-page .slider-text .subheading {
		font-weight: 700;
		color: rgba(7, 121, 228, 1);
		font-size: 13px;
		display: inline-block;
		letter-spacing: 1px;
		margin-bottom: 5px;
		position: relative;
		z-index: 0;
		background: rgba(255, 255, 255, 1);
		border-radius: 4px;
		padding: 4px 9px
	}

	.hero-wrap-home .slider-text .subheading:after,
	.hero-wrap-post .slider-text .subheading:after,
	.hero-wrap .slider-text .subheading:after,
	.hero-wrap-page .slider-text .subheading:after {
		position: absolute;
		bottom: -5px;
		left: 50%;
		transform: translateX(-50%);
		content: "";
		width: 0;
		height: 0;
		border-top: 5px solid rgba(255, 255, 255, 1);
		border-right: 5px solid rgba(0, 0, 0, 0);
		border-bottom: 0 solid rgba(0, 0, 0, 0);
		border-left: 5px solid rgba(0, 0, 0, 0);
		background-image: url(../images/background.jpg)
	}

	.hero-wrap-post .slider-text h1,
	.hero-wrap-home .slider-text h1,
	.hero-wrap .slider-text h1,
	.hero-wrap .slider-text .h1,
	.hero-wrap-home .slider-text .h1,
	.hero-wrap-page .slider-text h1,
	.hero-wrap-page .slider-text .h1 {
		font-weight: 400;
		color: rgba(255, 255, 255, 1);
		font-size: 60px;
		line-height: 1.2;
		font-family: "Montserrat", sans-serif
	}

	.hero-wrap-home .slider-text h1 span,
	.hero-wrap .slider-text .h1 span,
	.hero-wrap-page .slider-text-page h1 span,
	.hero-wrap-page .slider-text .h1 span {
		color: rgba(255, 255, 255, 1);
		font-family: "Montserrat", sans-serif
	}

	.hero-wrap-post .slider-text h1 span .wrap,
	.hero-wrap-home .slider-text h1 span .wrap,
	.hero-wrap .slider-text h1 span .wrap,
	.hero-wrap .slider-text .h1 span .wrap {
		font-family: "Montserrat", sans-serif;
		border-right: 1px solid rgba(0, 0, 0, 0);
		position: relative
	}

	.hero-wrap-post .slider-text h1 span .wrap:after,
	.hero-wrap-home .slider-text h1 span .wrap:after,
	.hero-wrap .slider-text h1 span .wrap:after,
	.hero-wrap .slider-text .h1 span .wrap:after {
		font-family: "Montserrat", sans-serif;
		position: absolute;
		bottom: 15px;
		right: -22px;
		content: "";
		width: 20px;
		height: 4px;
		background: rgba(255, 255, 255, 1);
		animation: 1s linear infinite blink
	}
}

.h1-titolo-home {
	margin-top: 41%;
	font-size: 50px !important
}

.hero-wrap {
	min-height: 100%;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top;
	background-attachment: fixed;
	z-index: 0
}

.hero-wrap-home {
	min-height: 100%;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top;
	z-index: 0
}

.hero-wrap-page {
	min-height: 100%;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top;
	background-attachment: fixed;
	z-index: 0
}

.hero-wrap-post {
	min-height: 90%;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top;
	background-attachment: fixed;
	z-index: 0
}

.hero-wrap-home .overlay,
.hero-wrap-post .overlay,
.hero-wrap .overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	background: rgba(17, 17, 17, 1);
	z-index: -1
}

.hero-wrap-page .overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 20px;
	opacity: 0;
	background: rgba(17, 17, 17, 1);
	z-index: -1
}

.hero-wrap-home.hero-wrap-2,
.hero-wrap.hero-wrap-2,
.hero-wrap-page .hero-wrap-2,
.hero-wrap-post .hero-wrap-2 {
	height: 700px;
	background-position: top;
	background-attachment: fixed
}

.hero-wrap-home.hero-wrap-2 .overlay,
.hero-wrap.hero-wrap-2 .overlay {
	opacity: 0
}

.hero-wrap .slider-text,
.hero-wrap-home .slider-text,
.hero-wrap-page .slider-text,
.hero-wrap-post .slider-text {
	color: rgba(255, 255, 255, 0.8);
	z-index: 3
}

.hero-wrap .slider-text .text,
.hero-wrap-home .slider-text .text,
.hero-wrap-post .slider-text .text {
	position: relative;
	z-index: 0
}

.hero-wrap-post .slider-text .subheading,
.hero-wrap-home .slider-text .subheading,
.hero-wrap-home .slider-text .subheading,
.hero-wrap-page .slider-text .subheading,
.hero-wrap-page .slider-text .subheading {
	font-weight: 700;
	color: rgba(7, 121, 228, 1);
	font-size: 13px;
	display: inline-block;
	letter-spacing: 1px;
	margin-bottom: 5px;
	position: relative;
	z-index: 0;
	background: rgba(255, 255, 255, 1);
	border-radius: 4px;
	padding: 4px 9px
}

.hero-wrap-home .slider-text .subheading:after,
.hero-wrap-post .slider-text .subheading:after,
.hero-wrap .slider-text .subheading:after,
.hero-wrap-page .slider-text .subheading:after {
	position: absolute;
	bottom: -5px;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: 0;
	height: 0;
	border-top: 5px solid rgba(255, 255, 255, 1);
	border-right: 5px solid rgba(0, 0, 0, 0);
	border-bottom: 0 solid rgba(0, 0, 0, 0);
	border-left: 5px solid rgba(0, 0, 0, 0)
}

.hero-wrap-post .slider-text h1,
.hero-wrap-home .slider-text h1,
.hero-wrap .slider-text h1,
.hero-wrap .slider-text .h1,
.hero-wrap-home .slider-text .h1,
.hero-wrap-page .slider-text h1,
.hero-wrap-page .slider-text .h1 {
	font-family: "Montserrat", sans-serif;
	font-weight: 400;
	color: rgba(255, 255, 255, 1);
	font-size: 200%;
	line-height: 1.2
}

.hero-wrap-home .slider-text h1 span,
.hero-wrap .slider-text .h1 span,
.hero-wrap-page .slider-text-page h1 span,
.hero-wrap-page .slider-text .h1 span {
	font-family: "Montserrat", sans-serif;
	color: rgba(255, 255, 255, 1)
}

.hero-wrap-post .slider-text h1 span .wrap,
.hero-wrap-home .slider-text h1 span .wrap,
.hero-wrap .slider-text h1 span .wrap,
.hero-wrap .slider-text .h1 span .wrap {
	font-family: "Montserrat", sans-serif;
	border-right: 1px solid rgba(0, 0, 0, 0);
	position: relative
}

.hero-wrap-post .slider-text h1 span .wrap:after,
.hero-wrap-home .slider-text h1 span .wrap:after,
.hero-wrap .slider-text h1 span .wrap:after,
.hero-wrap .slider-text .h1 span .wrap:after {
	font-family: "Montserrat", sans-serif;
	position: absolute;
	bottom: 15px;
	right: -22px;
	content: "";
	width: 20px;
	height: 4px;
	background: rgba(255, 255, 255, 1);
	animation: 1s linear infinite blink
}

@keyframes blink {
	0% {
		opacity: 0
	}

	50% {
		opacity: .5
	}

	100% {
		opacity: 1
	}
}

@media (max-width: 767.98px) {

	.hero-wrap-home .slider-text h1,
	.hero-wrap-home .slider-text .h1,
	.hero-wrap .slider-text h1,
	.hero-wrap .slider-text .h1 {
		font-family: "Montserrat", sans-serif;
		font-size: 40px
	}
}

.hero-wrap-home .slider-text .social-media,
.hero-wrap .slider-text .social-media {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: 1px
}

.hero-wrap-home .slider-text .social-media a,
.hero-wrap-home .slider-text .social-media a {
	color: rgba(255, 255, 255, 1);
	margin-right: 15px
}

@media (max-width: 575.98px) {

	.hero-wrap .slider-text .btn,
	.hero-wrap-home .slider-text .btn {
		width: 100%;
		display: block;
		margin-bottom: 5px
	}
}

.hero-wrap .slider-text .breadcrumbs,
.hero-wrap-home .slider-text .breadcrumbs {
	font-size: 14px;
	margin-bottom: 10px;
	z-index: 99;
	font-weight: 600;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.8)
}

.hero-wrap .slider-text .breadcrumbs span,
.hero-wrap-home .slider-text .breadcrumbs span {
	color: rgba(255, 255, 255, 0.8)
}

.hero-wrap .slider-text .breadcrumbs span i,
.hero-wrap-home .slider-text .breadcrumbs span i {
	color: rgba(255, 255, 255, 0.8);
	font-size: 12px
}

.hero-wrap .slider-text .breadcrumbs span a,
.hero-wrap-home .slider-text .breadcrumbs span a {
	color: rgba(255, 255, 255, 0.8)
}

.hero-wrap-home .slider-text .breadcrumbs span a:hover,
.hero-wrap-home .slider-text .breadcrumbs span a:focus,
.hero-wrap .slider-text .breadcrumbs span a:hover,
.hero-wrap .slider-text .breadcrumbs span a:focus {
	color: rgba(7, 121, 228, 1)
}

.hero-wrap .slider-text .breadcrumbs span a:hover i,
.hero-wrap .slider-text .breadcrumbs span a:focus i,
.hero-wrap-home .slider-text .breadcrumbs span a:hover i,
.hero-wrap-home .slider-text .breadcrumbs span a:focus i {
	color: rgba(7, 121, 228, 1)
}

.hero-wrap-home .slider-text .bread,
.hero-wrap-home .slider-text .bread {
	font-weight: 400;
	color: rgba(255, 255, 255, 1);
	font-size: 70px
}

.bg-light {
	background: rgba(248, 248, 248, 1) !important
}

.bg-primary {
	background: rgba(7, 121, 228, 1) !important
}

.bg-darken {
	background: rgba(17, 17, 17, 1) !important
}

.btn {
	padding: 9px 12px;
	cursor: pointer;
	border-radius: 4px;
	box-shadow: 0 24px 36px -11px rgba(0, 0, 0, 0.09);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px
}

.btn span {
	font-size: 16px;
	line-height: 1;
	margin-left: 10px
}

.btn:hover,
.btn:active,
.btn:focus {
	outline: none
}

.btn.btn-primary {
	background: rgba(7, 121, 228, 1) !important;
	border: 1px solid rgba(7, 121, 228, 1) !important;
	color: rgba(255, 255, 255, 1) !important
}

.btn.btn-primary span {
	color: rgba(255, 255, 255, 1) !important
}

.btn.btn-primary:hover {
	border: 1px solid rgba(7, 121, 228, 1);
	background: rgba(0, 0, 0, 0);
	color: rgba(7, 121, 228, 1)
}

.btn.btn-primary.btn-outline-primary {
	border: 1px solid rgba(7, 121, 228, 1) !important;
	background: rgba(0, 0, 0, 0) !important;
	color: rgba(7, 121, 228, 1) !important
}

.btn.btn-primary.btn-outline-primary:hover {
	border: 1px solid rgba(0, 0, 0, 0) !important;
	background: rgba(7, 121, 228, 1) !important;
	color: rgba(255, 255, 255, 1) !important
}

.btn.btn-white {
	background: rgba(255, 255, 255, 1) !important;
	border: 1px solid rgba(255, 255, 255, 1) !important;
	color: rgba(7, 121, 228, 1) !important
}

.btn.btn-white:hover {
	border: 1px solid rgba(255, 255, 255, 1);
	background: rgba(0, 0, 0, 0);
	color: rgba(255, 255, 255, 1)
}

.btn.btn-white.btn-outline-white {
	border: 1px solid rgba(255, 255, 255, 0.7) !important;
	background: rgba(0, 0, 0, 0) !important;
	color: rgba(255, 255, 255, 1) !important
}

.btn.btn-white.btn-outline-white:hover {
	border: 1px solid rgba(0, 0, 0, 0) !important;
	background: rgba(255, 255, 255, 1) !important;
	color: rgba(0, 0, 0, 1) !important
}

.img-about {
	height: 600px;
	position: relative;
	width: 100%
}

.img-about:after {
	position: absolute;
	bottom: 30px;
	left: -30px;
	width: 100%;
	height: 100px;
	content: "";
	background: rgba(87, 171, 250, 1);
	z-index: -1
}

.img-about:before {
	position: absolute;
	bottom: 130px;
	left: -30px;
	width: 100%;
	height: 100px;
	content: "";
	background: rgba(137, 196, 251, 1);
	z-index: -1
}

.nav-tabs {
	border: none
}

.nav-tabs .nav-item {
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 700
}

.nav-tabs .nav-item .nav-link {
	border: none;
	color: rgba(119, 119, 119, 1);
	background: rgba(255, 255, 255, 1);
	margin-right: 10px
}

.nav-tabs .nav-item .nav-link.active {
	background: rgba(7, 121, 228, 1);
	border-radius: 4px;
	color: rgba(255, 255, 255, 1);
	position: relative
}

.nav-tabs .nav-item .nav-link.active:after {
	position: absolute;
	bottom: -5px;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: 0;
	height: 0;
	border-top: 5px solid rgba(7, 121, 228, 1);
	border-right: 5px solid rgba(0, 0, 0, 0);
	border-bottom: 0 solid rgba(0, 0, 0, 0);
	border-left: 5px solid rgba(0, 0, 0, 0)
}

.progress-wrap {
	width: 100%;
	margin-bottom: 30px
}

.progress-wrap h3,
.progress-wrap .h3 {
	font-size: 14px !important;
	margin-bottom: 10px;
	font-weight: 500;
	text-transform: uppercase
}

.progress {
	height: 8px;
	box-shadow: none;
	background: rgba(0, 0, 0, 0.05);
	overflow: visible
}

.progress-bar {
	background: rgba(7, 121, 228, 1);
	box-shadow: none;
	font-size: 12px;
	line-height: 1.2;
	color: rgba(0, 0, 0, 1);
	font-weight: 600;
	position: relative;
	overflow: visible;
	border-radius: 2px
}

.progress-bar:after {
	position: absolute;
	top: -2px;
	right: 0;
	width: 34px;
	height: 34px;
	content: "";
	background: rgba(7, 121, 228, 1);
	border-radius: 2px;
	opacity: 0
}

.progress-bar span {
	position: absolute;
	top: -30px;
	right: 0;
	font-size: 16px;
	font-weight: 400;
	color: rgba(7, 121, 228, 1)
}

.resume-wrap {
	padding: 0;
	position: relative;
	margin-bottom: 10px
}

.resume-wrap span.date {
	font-size: 13px;
	font-weight: 500;
	color: rgba(7, 121, 228, 1)
}

.resume-wrap h2,
.resume-wrap .h2 {
	font-size: 20px !important;
	margin-bottom: 0
}

.resume-wrap span.position {
	font-size: 13px;
	font-weight: 500;
	color: rgba(204, 204, 204, 1)
}

.resume-wrap span.position i {
	color: rgba(7, 121, 228, 1)
}

.project {
	width: 100%;
	height: 350px;
	margin-bottom: 25px;
	position: relative;
	z-index: 0
}

.project .overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: "";
	opacity: 0;
	background: rgba(7, 121, 228, 1);
	z-index: -1;
	transition: all .3s ease
}

@media (max-width: 575.98px) {
	.project .overlay {
		opacity: .2
	}
}

.project .text {
	max-width: 80%;
	z-index: 1;
	opacity: 0;
	transition: all .3s ease
}

.project .text h3,
.project .text .h3 {
	font-size: 20px
}

.project .text h3 a,
.project .text .h3 a {
	color: rgba(255, 255, 255, 1)
}

.project .text span {
	color: rgba(255, 255, 255, 0.8);
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 12px;
	font-weight: 600
}

@media (max-width: 575.98px) {
	.project .text {
		opacity: 1
	}

	.project .text span {
		color: rgba(255, 255, 255, 0.8)
	}
}

.project:hover .overlay,
.project:focus .overlay {
	opacity: .9
}

.project:hover .text,
.project:focus .text {
	opacity: 1
}

.form-control {
	height: 45px;
	background: rgba(255, 255, 255, 1);
	color: rgba(0, 0, 0, 0.8);
	font-size: 14px;
	border-radius: 2px;
	box-shadow: none !important;
	border: 1px solid rgba(0, 0, 0, 0.1)
}

.form-control:focus,
.form-control:active {
	border-color: rgba(0, 0, 0, 0.3) !important
}

textarea.form-control {
	height: inherit !important
}

.services-2 {
	width: 100%;
	background: rgba(255, 255, 255, 1);
	padding: 40px;
	margin-bottom: 0;
	border-radius: 4px;
	transition: all .3s ease;
	box-shadow: 0 5px 25px -2px rgba(0, 0, 0, 0.01)
}

@media (max-width: 1199.98px) {
	.services-2 {
		margin-bottom: 20px
	}
}

@media (max-width: 767.98px) {
	.services-2 {
		border-radius: 2px;
		margin-bottom: 10px
	}
}

.services-2 .icon {
	width: 70px;
	height: 60px;
	background: rgba(7, 121, 228, 1);
	margin-bottom: 20px;
	position: relative
}

.services-2 .icon:after {
	position: absolute;
	bottom: -5px;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: 0;
	height: 0;
	border-top: 5px solid rgba(7, 121, 228, 1);
	border-right: 5px solid rgba(0, 0, 0, 0);
	border-bottom: 0 solid rgba(0, 0, 0, 0);
	border-left: 5px solid rgba(0, 0, 0, 0)
}

.services-2 .icon span {
	font-size: 40px;
	line-height: 1.2;
	color: rgba(255, 255, 255, 1) !important;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}

.services-2 .icon span:after {
	position: absolute;
	top: -2px;
	right: 0;
	width: 34px;
	height: 34px;
	content: "";
	background: rgba(7, 121, 228, 1);
	border-radius: 2px;
	opacity: 0
}

.services-2 .text {
	width: 100%
}

.services-2 .text h2,
.services-2 .text .h2 {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 10px;
	font-family: "Source Sans Pro", sans-serif;
	color: rgba(7, 121, 228, 1)
}

.block-7 {
	width: 100%;
	position: relative;
	z-index: 0;
	margin-bottom: 30px;
	padding: 40px 0;
	background: rgba(255, 255, 255, 1);
	box-shadow: 0 24px 48px -13px rgba(0, 0, 0, 0.05);
	transition: all .3s ease
}

@media (max-width: 767.98px) {
	.block-7 {
		margin-top: 30px
	}
}

.block-7 .price {
	margin: 0;
	padding: 0;
	display: block
}

.block-7 .price sup {
	font-size: 24px;
	top: -.8em;
	color: rgba(7, 121, 228, 1)
}

.block-7 .price .number {
	font-size: 50px;
	font-weight: 600;
	color: rgba(7, 121, 228, 1)
}

.block-7 .excerpt {
	margin-bottom: 0;
	color: rgba(7, 121, 228, 1);
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 1px;
	font-weight: 700
}

.block-7 .btn-primary {
	color: rgba(255, 255, 255, 1);
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 1px;
	width: 60%;
	margin: 0 auto
}

.block-7:hover,
.block-7:focus {
	box-shadow: 0 24px 48px -13px rgba(0, 0, 0, 0.11)
}

.about-author .bio {
	border-radius: 50%;
	width: 80px;
	height: 80px;
	display: block
}

.about-author .desc {
	width: calc(100% - 80px)
}

.about-author .desc h3,
.about-author .desc .h3 {
	font-size: 30px;
	font-weight: 400
}

.ftco-section {
	padding: 5em 0;
	position: relative;
	width: 100%;
	overflow-x: hidden
}

.ftco-section-2 {
	padding: 2em 0;
	position: relative;
	width: 100%;
	overflow-x: hidden
}

@media (max-width: 575.98px) {
	.ftco-section {
		padding: 6em 0
	}
}

.ftco-no-pb {
	padding-bottom: 0 !important
}

.ftco-intro {
	width: 100%;
	position: relative;
	z-index: 0;
	color: rgba(255, 255, 255, 0.8)
}

.ftco-intro h2,
.ftco-intro .h2 {
	color: rgba(255, 255, 255, 1);
	font-size: 27px;
	font-weight: 500
}

.ftco-intro .subscribe-form {
	width: 100%
}

.ftco-intro .subscribe-form .form-group {
	position: relative;
	margin-bottom: 0;
	border-radius: 0;
	border: 1px solid rgba(255, 255, 255, 0.5)
}

.ftco-intro .subscribe-form .form-group input {
	background: rgba(0, 0, 0, 0) !important;
	color: rgba(255, 255, 255, 1) !important;
	font-size: 16px;
	padding: 0 15px;
	border-radius: 5px 0 0 5px;
	border: none !important
}

.ftco-intro .subscribe-form .form-group input:focus {
	outline: rgba(255, 255, 255, 1) !important rgba(255, 255, 255, 1) !important rgba(255, 255, 255, 1) !important rgba(255, 255, 255, 1) !important none !important;
	border: none !important
}

.ftco-intro .subscribe-form .form-group .btn-icon span {
	color: rgba(255, 255, 255, 1)
}

.ftco-intro .subscribe-form .icon {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	color: rgba(255, 255, 255, 0.8)
}

.ftco-footer {
	padding: 5em 0 0;
	background: rgba(238, 238, 238, 1)
}

.ftco-footer .logo a {
	position: relative;
	text-decoration: none;
	color: rgba(17, 17, 17, 1);
	font-size: 22px
}

.ftco-footer .logo a span {
	color: rgba(7, 121, 228, 1)
}

.ftco-footer .ftco-footer-widget h2,
.ftco-footer .ftco-footer-widget .h2 {
	color: rgba(17, 17, 17, 1);
	margin-bottom: 40px;
	font-size: 18px;
	font-weight: 500;
	font-family: "Source Sans Pro", sans-serif
}

.ftco-footer .ftco-footer-widget ul li {
	margin-bottom: 10px
}

.ftco-footer .ftco-footer-widget ul li a {
	color: rgba(102, 102, 102, 1)
}

.ftco-footer .ftco-footer-widget ul li a span {
	font-size: 14px;
	color: rgba(7, 121, 228, 1)
}

.ftco-footer .ftco-footer-widget ul li a:hover {
	color: rgba(7, 121, 228, 1)
}

.ftco-footer .ftco-footer-widget ul li a:hover span {
	color: rgba(7, 121, 228, 1)
}

.ftco-footer .ftco-footer-widget .btn-primary {
	background: rgba(255, 255, 255, 1) !important;
	border: 2px solid rgba(255, 255, 255, 1) !important
}

.ftco-footer .ftco-footer-widget .btn-primary:hover {
	background: rgba(255, 255, 255, 1);
	border: 2px solid rgba(255, 255, 255, 1) !important
}

.ftco-footer .block-23 ul {
	padding: 0
}

.ftco-footer .block-23 ul li {
	font-size: 15px
}

.ftco-footer .block-23 ul li,
.ftco-footer .block-23 ul li>a {
	display: table;
	line-height: 1.5;
	margin-bottom: 15px;
	font-size: 15px
}

.ftco-footer .block-23 ul li span {
	color: rgba(7, 121, 228, 1)
}

.ftco-footer .block-23 ul li .icon,
.ftco-footer .block-23 ul li .text {
	display: table-cell;
	vertical-align: top;
	color: rgba(0, 0, 0, 0.8) !important
}

.ftco-footer .block-23 ul li .icon {
	width: 40px;
	font-size: 15px;
	padding-top: 2px;
	color: rgba(7, 121, 228, 1) !important
}

.ftco-footer .bg-darken {
	background: #007bff !important;
	color: white
}

.ftco-footer-social li {
	list-style: none;
	margin: 0 5px 0 0;
	display: inline-block
}

.ftco-footer-social li a {
	height: 40px;
	width: 40px;
	display: block;
	color: rgba(255, 255, 255, 1);
	border-radius: 50%;
	position: relative;
	background: rgba(7, 121, 228, 1)
}

.ftco-footer-social li a span {
	position: absolute;
	font-size: 24px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: rgba(255, 255, 255, 1) !important
}

.ftco-footer-social li a:hover {
	color: rgba(255, 255, 255, 1) !important
}

#map {
	width: 100%
}

@media (max-width: 767.98px) {
	#map {
		height: 300px
	}
}

@keyframes pulse {
	0% {
		box-shadow: 0 0 rgba(7, 121, 228, 0.4)
	}

	70% {
		box-shadow: 0 0 30px rgba(7, 121, 228, 0)
	}

	100% {
		box-shadow: 0 0 rgba(7, 121, 228, 0)
	}
}

.heading-section .subheading {
	font-size: 13px;
	display: block;
	margin-bottom: 5px;
	color: rgba(7, 121, 228, 1);
	font-weight: 700;
	text-transform: uppercase
}

.heading-section h2,
.heading-section .h2 {
	font-size: 40px;
	font-weight: 700;
	line-height: 1.4
}

@media (max-width: 991.98px) {

	.heading-section h2,
	.heading-section .h2 {
		font-size: 30px
	}
}

.heading-section h3,
.heading-section .h3 {
	font-size: 24px;
	font-weight: 700
}

.img,
.blog-img,
.user-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center
}

.testimony-section {
	position: relative;
	z-index: 0
}

.testimony-section .tns-outer {
	position: relative;
	padding-bottom: 3em !important
}

.testimony-section .tns-ovh {
	padding: 2em 0 0
}

.testimony-section .tns-controls {
	text-align: center;
	margin-bottom: 10px
}

.testimony-section .tns-nav {
	text-align: center;
	margin: 0;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 99
}

.testimony-section .tns-nav>[aria-controls] {
	width: 30px;
	height: 2px;
	padding: 0;
	margin: 0 5px;
	background: rgba(221, 221, 221, 1);
	border: 0
}

.testimony-section .tns-outer [aria-controls],
.testimony-section .tns-outer [data-action] {
	cursor: pointer
}

.testimony-section .tns-nav>.tns-nav-active {
	background: rgba(7, 121, 228, 1)
}

.testimony-section .tns-item:not\(\.tns-slide-active\)+.tns-slide-active+.tns-slide-active .testimony-wrap {
	background: rgba(7, 121, 228, 1);
	color: rgba(255, 255, 255, 0.9)
}

.testimony-section .tns-item:not\(\.tns-slide-active\)+.tns-slide-active+.tns-slide-active .testimony-wrap .icon {
	background: rgba(255, 255, 255, 1)
}

.testimony-section .tns-item:not\(\.tns-slide-active\)+.tns-slide-active+.tns-slide-active .testimony-wrap .icon span {
	color: rgba(7, 121, 228, 1)
}

.testimony-section .tns-item:not\(\.tns-slide-active\)+.tns-slide-active+.tns-slide-active .testimony-wrap .name {
	color: rgba(255, 255, 255, 1)
}

.testimony-section .tns-item:not\(\.tns-slide-active\)+.tns-slide-active+.tns-slide-active .testimony-wrap .position {
	color: rgba(255, 255, 255, 1)
}

.testimony-wrap {
	display: block;
	position: relative;
	background: rgba(255, 255, 255, 1);
	padding: 35px 30px 30px !important;
	width: 98%;
	margin: 0 auto;
	box-shadow: 0 5px 12px -9px rgba(0, 0, 0, 0.17)
}

.testimony-wrap .icon {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: rgba(7, 121, 228, 1)
}

.testimony-wrap .icon span {
	color: rgba(255, 255, 255, 1)
}

.testimony-wrap .tx {
	width: calc(100% - 80px)
}

.testimony-wrap .user-img {
	width: 80px;
	height: 80px;
	position: relative;
	border-radius: 50%
}

.testimony-wrap .name {
	font-weight: 600;
	font-size: 20px;
	margin-bottom: 0;
	color: rgba(17, 17, 17, 1);
	text-transform: uppercase
}

.testimony-wrap .position {
	font-size: 13px;
	text-transform: uppercase;
	color: rgba(7, 121, 228, 1);
	font-weight: 500
}

.ftco-section-counter-home {
	padding: 6em 0;
	position: relative;
	z-index: 0;
	padding: 3em 0;
	position: relative;
	z-index: 0
}

.ftco-section-counter-home .overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: .9;
	background: rgba(7, 121, 228, 1);
	z-index: -1
}

.ftco-section-counter {
	padding: 6em 0;
	position: relative;
	z-index: 0;
	padding: 3em 0;
	position: relative;
	z-index: 0
}

.ftco-section-counter .overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: .9;
	background: rgba(7, 121, 228, 1);
	z-index: -1
}

.section-counter .counter-wrap-2 {
	width: 100%;
	position: relative;
	z-index: 0;
	display: block
}

@media (max-width: 991.98px) {
	.section-counter .counter-wrap-2 {
		margin-bottom: 20px !important
	}
}

.section-counter .text {
	padding-left: 20px
}

.section-counter .icon span {
	font-size: 60px;
	line-height: 1;
	color: rgba(255, 255, 255, 1)
}

.section-counter .number {
	font-size: 38px;
	font-weight: 700;
	color: rgba(255, 255, 255, 1);
	line-height: 1;
	display: block;
	margin-bottom: 5px
}

.section-counter .caption {
	display: block;
	color: rgba(255, 255, 255, 0.9);
	text-transform: uppercase;
	font-size: 14px;
	font-weight: 700
}

.block-20 {
	overflow: hidden;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	display: block;
	width: 100%;
	height: 340px;
	z-index: -1
}

.blog-entry {
	width: 100%;
	position: relative;
	z-index: 0;
	overflow: hidden;
	border-radius: 4px;
	box-shadow: 0 10px 25px -13px rgba(0, 0, 0, 0.1);
	background: rgba(255, 255, 255, 1)
}

@media (min-width: 768px) {
	.blog-entry {
		margin-bottom: 40px
	}
}

@media (max-width: 575.98px) {
	.blog-entry {
		margin-bottom: 30px
	}
}

.blog-entry .text {
	position: relative;
	width: 100%;
	margin: 0 auto;
	z-index: 0;
	padding: 30px
}

.blog-entry .text .heading {
	font-size: 20px;
	margin-bottom: 0;
	font-weight: 500
}

.blog-entry .text .heading a {
	color: rgba(0, 0, 0, 1)
}

.blog-entry .text .heading a:hover,
.blog-entry .text .heading a:focus,
.blog-entry .text .heading a:active {
	color: rgba(7, 121, 228, 1)
}

.blog-entry .meta {
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 600
}

.blog-entry .meta span {
	margin-right: 10px
}

.blog-entry .meta span i {
	color: rgba(7, 121, 228, 1)
}

.blog-single h2,
.blog-single .h2 {
	font-size: 40px;
	line-height: 1.2;
	font-weight: 500
}

.wrapper {
	width: 100%
}

.wrapper .social-media h3,
.wrapper .social-media .h3 {
	font-size: 20px;
	font-weight: 400
}

.wrapper .social-media p a {
	color: rgba(7, 121, 228, 1);
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 600;
	margin-right: 10px
}

.wrapper .social-media p a:hover {
	color: rgba(0, 0, 0, 1)
}

.contact-wrap {
	background: rgba(255, 255, 255, 1)
}

.contact-wrap h3,
.contact-wrap .h3 {
	color: rgba(0, 0, 0, 1);
	font-weight: 400;
	font-size: 30px
}

.dbox {
	width: 100%;
	margin-bottom: 25px
}

@media (min-width: 768px) {
	.dbox {
		margin-bottom: 0
	}
}

.dbox p {
	margin-bottom: 0
}

.dbox p span {
	font-weight: 700;
	color: rgba(0, 0, 0, 1);
	display: block;
	text-transform: uppercase;
	font-size: 13px
}

.dbox p a {
	color: rgba(0, 0, 0, 1)
}

.dbox .text {
	width: 100%
}

.contactForm .label {
	color: rgba(7, 121, 228, 1);
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 600
}

.contactForm .form-group {
	width: 100%;
	margin-bottom: 10px
}

.contactForm .form-control {
	border: 1px solid rgba(0, 0, 0, 0.1)
}

.block-21 .blog-img {
	display: block;
	height: 80px;
	width: 80px
}

.block-21 .text {
	width: calc(100% - 90px)
}

.block-21 .text .heading {
	font-size: 18px;
	font-weight: 400;
	margin-bottom: 0
}

.block-21 .text .heading a {
	color: rgba(0, 0, 0, 1)
}

.block-21 .text .heading a:hover,
.block-21 .text .heading a:active,
.block-21 .text .heading a:focus {
	color: rgba(7, 121, 228, 1)
}

.block-21 .text .meta>div {
	display: inline-block;
	font-size: 12px;
	margin-right: 5px
}

.block-21 .text .meta>div a {
	color: rgba(7, 121, 228, 1)
}

.tagcloud a {
	text-transform: uppercase;
	display: inline-block;
	padding: 4px 10px;
	margin-bottom: 7px;
	margin-right: 4px;
	border-radius: 4px;
	color: rgba(7, 121, 228, 1);
	font-weight: 500;
	font-size: 12px;
	background: rgba(255, 255, 255, 1)
}

.comment-form-wrap {
	clear: both
}

.comment-form-wrap .comment-form {
	background: rgba(255, 255, 255, 1)
}

.comment-form-wrap .form-group {
	width: 100%;
	margin-bottom: 10px
}

.comment-form-wrap .form-group label {
	font-size: 13px;
	text-transform: uppercase;
	color: rgba(7, 121, 228, 1);
	font-weight: 700;
	margin-bottom: 10px
}

.comment-form-wrap .form-control {
	height: 45px;
	background: rgba(0, 0, 0, 0);
	color: rgba(0, 0, 0, 0.8);
	font-size: 14px;
	border-radius: 2px;
	box-shadow: none !important;
	border: 1px solid rgba(0, 0, 0, 0.1)
}

.comment-form-wrap .form-control:focus,
.comment-form-wrap .form-control:active {
	border-color: rgba(0, 0, 0, 0.3) !important
}

.comment-form-wrap textarea.form-control {
	height: inherit !important
}

.comment-list {
	padding: 0;
	margin: 0
}

.comment-list .children {
	padding: 50px 0 0 40px;
	margin: 0;
	float: left;
	width: 100%
}

.comment-list li {
	padding: 0;
	margin: 0 0 30px;
	float: left;
	width: 100%;
	clear: both;
	list-style: none
}

.comment-list li .vcard {
	width: 80px;
	float: left
}

.comment-list li .vcard img {
	border-radius: 50%
}

.comment-list li .comment-body {
	float: right;
	width: calc(100% - 80px)
}

.comment-list li .comment-body h3,
.comment-list li .comment-body .h3 {
	font-size: 18px;
	font-weight: 500
}

.comment-list li .comment-body .meta {
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: .1em;
	font-weight: 500;
	display: block;
	margin-bottom: 10px
}

.comment-list li .comment-body .reply {
	padding: 5px 10px;
	background: rgba(7, 121, 228, 1);
	color: rgba(255, 255, 255, 1);
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: .1em;
	font-weight: 600;
	border-radius: 4px
}

.comment-list li .comment-body .reply:hover {
	color: rgba(255, 255, 255, 1);
	background: rgba(0, 0, 0, 1)
}

#menu-menu-pricipale,
#navbarSupportedContent {
	float: right;
	text-align: right
}

.avatar-post .avatar {
	border-radius: 20px;
	width: 30px;
	height: 30px;
	margin-top: 4px;
	margin-left: 0px;
	margin-right: 15px;
	margin-bottom: 3px;
	object-fit: cover;
	object-position: top
}

.avatar {
	border-radius: 30px;
	width: 30px;
	height: 30px;
	margin-top: -30px;
	margin-left: 0px
}

#scrolltop {
	position: fixed;
	bottom: 15px;
	right: 15px;
	padding: 30px;
	background-color: rgba(0, 102, 225, 0.5);
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAe1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////NgkbwAAAAKHRSTlMAAQIDDRITFBcdHh8gIyQlJjdDREx1d4CCg4WXmpu5urzZ6e3v+fv9pStiuwAAAI9JREFUOE/dylkWgkAMRNFqUXEW53kC1Ox/hWKOtG3SZgHkq3LuAxp4q7xv+oboPrDdLNiNYktkFt7/FIFHix+viqHwHYkThffr7Bkrvp4gixT7wIHsURcj6ZeE/6kopMtirTwsUuCmHZjUxRxIS17n0H1xctXultqB8bs4Ot6dQjsXB/fZ7WVLOdBbODTmXgKJJx7c/fm3AAAAAElFTkSuQmCC);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	z-index: 9999;
	border: 0
}

#scrolltop_left_1 {
	width: 60px;
	height: 60px;
	padding: 15px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

#scrolltop_left_2 {
	padding: 15px;
	width: 60px;
	height: 60px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

#scrolltop_left_3 {
	padding: 15px;
	width: 60px;
	height: 60px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

#scrolltop_left_4 {
	padding: 15px;
	width: 60px;
	height: 60px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

#scrolltop_left_5 {
	padding: 15px;
	width: 60px;
	height: 60px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

#scrolltop_left_6 {
	padding: 15px;
	width: 60px;
	height: 60px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

#scrolltop_left_7 {
	padding: 15px;
	width: 60px;
	height: 60px;
	background-color: rgba(0, 102, 225, 0.5);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	border: 0
}

.maintelefono {
	position: fixed;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.9);
	height: 100vh;
	min-height: 100%;
	z-index: 9999;
	top: 0;
	text-align: center;
	left: 0;
	visibility: hidden
}

.closemain {
	width: 100px;
	text-align: right;
	font-size: 39px;
	height: 20px !important;
	position: absolute;
	right: 38px;
	z-index: 100000;
	cursor: pointer
}

.bottone-telefono {
	position: relative;
	left: 27%;
	top: 30%;
	width: 200px;
	height: 100px;
	display: block
}

.m-center {
	margin: 30% auto
}

.bottone-menu {
	position: fixed;
	z-index: 9999;
	bottom: 15px;
	left: 5px
}

[data-aos][data-aos][data-aos-duration="50"],
body[data-aos-duration="50"] [data-aos] {
	transition-duration: 50ms
}

[data-aos][data-aos][data-aos-delay="50"],
body[data-aos-delay="50"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="50"].aos-animate,
body[data-aos-delay="50"] [data-aos].aos-animate {
	transition-delay: 50ms
}

[data-aos][data-aos][data-aos-duration="100"],
body[data-aos-duration="100"] [data-aos] {
	transition-duration: .1s
}

[data-aos][data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
	transition-delay: .1s
}

[data-aos][data-aos][data-aos-duration="200"],
body[data-aos-duration="200"] [data-aos] {
	transition-duration: .2s
}

[data-aos][data-aos][data-aos-delay="200"],
body[data-aos-delay="200"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="200"].aos-animate,
body[data-aos-delay="200"] [data-aos].aos-animate {
	transition-delay: .2s
}

[data-aos][data-aos][data-aos-duration="250"],
body[data-aos-duration="250"] [data-aos] {
	transition-duration: .25s
}

[data-aos][data-aos][data-aos-delay="250"],
body[data-aos-delay="250"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="250"].aos-animate,
body[data-aos-delay="250"] [data-aos].aos-animate {
	transition-delay: .25s
}

[data-aos][data-aos][data-aos-duration="300"],
body[data-aos-duration="300"] [data-aos] {
	transition-duration: .3s
}

[data-aos][data-aos][data-aos-delay="300"],
body[data-aos-delay="300"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="300"].aos-animate,
body[data-aos-delay="300"] [data-aos].aos-animate {
	transition-delay: .3s
}

[data-aos][data-aos][data-aos-duration="400"],
body[data-aos-duration="400"] [data-aos] {
	transition-duration: .4s
}

[data-aos][data-aos][data-aos-delay="400"],
body[data-aos-delay="400"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="400"].aos-animate,
body[data-aos-delay="400"] [data-aos].aos-animate {
	transition-delay: .4s
}

[data-aos][data-aos][data-aos-duration="500"],
body[data-aos-duration="500"] [data-aos] {
	transition-duration: .5s
}

[data-aos][data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
	transition-delay: .5s
}

[data-aos][data-aos][data-aos-duration="600"],
body[data-aos-duration="600"] [data-aos] {
	transition-duration: .6s
}

[data-aos][data-aos][data-aos-delay="600"],
body[data-aos-delay="600"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="600"].aos-animate,
body[data-aos-delay="600"] [data-aos].aos-animate {
	transition-delay: .6s
}

[data-aos][data-aos][data-aos-duration="700"],
body[data-aos-duration="700"] [data-aos] {
	transition-duration: .7s
}

[data-aos][data-aos][data-aos-delay="700"],
body[data-aos-delay="700"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="700"].aos-animate,
body[data-aos-delay="700"] [data-aos].aos-animate {
	transition-delay: .7s
}

[data-aos][data-aos][data-aos-duration="750"],
body[data-aos-duration="750"] [data-aos] {
	transition-duration: .75s
}

[data-aos][data-aos][data-aos-delay="750"],
body[data-aos-delay="750"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="750"].aos-animate,
body[data-aos-delay="750"] [data-aos].aos-animate {
	transition-delay: .75s
}

[data-aos][data-aos][data-aos-duration="900"],
body[data-aos-duration="900"] [data-aos] {
	transition-duration: .9s
}

[data-aos][data-aos][data-aos-delay="900"],
body[data-aos-delay="900"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="900"].aos-animate,
body[data-aos-delay="900"] [data-aos].aos-animate {
	transition-delay: .9s
}

[data-aos][data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
	transition-duration: 1s
}

[data-aos][data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
	transition-delay: 1s
}

[data-aos][data-aos][data-aos-duration="2000"],
body[data-aos-duration="2000"] [data-aos] {
	transition-duration: 2s
}

[data-aos][data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
	transition-delay: 2s
}

[data-aos][data-aos][data-aos-duration="3000"],
body[data-aos-duration="3000"] [data-aos] {
	transition-duration: 3s
}

[data-aos][data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
	transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
	transition-delay: 3s
}

[data-aos][data-aos][data-aos-easing=ease],
body[data-aos-easing=ease] [data-aos] {
	transition-timing-function: ease
}

[data-aos][data-aos][data-aos-easing=ease-out],
body[data-aos-easing=ease-out] [data-aos] {
	transition-timing-function: ease-out
}

[data-aos^=fade][data-aos^=fade] {
	opacity: 0;
	transition-property: opacity, transform
}

[data-aos^=fade][data-aos^=fade].aos-animate {
	opacity: 1;
	transform: translateZ(0)
}

[data-aos=fade-up] {
	transform: translate3d(0, 100px, 0)
}

[data-aos^=zoom][data-aos^=zoom] {
	opacity: 0;
	transition-property: opacity, transform
}

[data-aos^=zoom][data-aos^=zoom].aos-animate {
	opacity: 1;
	transform: translateZ(0) scale(1)
}

[data-aos^=slide][data-aos^=slide] {
	transition-property: transform
}

[data-aos^=slide][data-aos^=slide].aos-animate {
	transform: translateZ(0)
}

[data-aos^=flip][data-aos^=flip] {
	backface-visibility: hidden;
	transition-property: transform
}

[data-aos=flip-left] {
	transform: perspective(2500px) rotateY(-100deg)
}

[data-aos=flip-left].aos-animate {
	transform: perspective(2500px) rotateY(0)
}

.glightbox-container {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999999 !important;
	overflow: hidden;
	-ms-touch-action: none;
	touch-action: none;
	-webkit-text-size-adjust: 100%;
	-webkit-backface-visibility: hidden;
	outline: 0;
	overflow: hidden
}

.glightbox-container .gcontainer {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 9999;
	overflow: hidden
}

.glightbox-container .gslider {
	-webkit-transition: -webkit-transform .4s ease;
	transition: -webkit-transform .4s ease;
	transition: transform .4s ease;
	transition: transform .4s ease, -webkit-transform .4s ease;
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
	position: relative;
	overflow: hidden;
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0)
}

.glightbox-container .gslide {
	width: 100%;
	position: absolute;
	opacity: 1;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	opacity: 0
}

.glightbox-container .gslide.current {
	opacity: 1;
	z-index: 99999;
	position: relative
}

.glightbox-container .gslide.prev {
	opacity: 1;
	z-index: 9999
}

.glightbox-container .gslide-inner-content {
	width: 100%
}

.glightbox-container .ginner-container {
	position: relative;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	max-width: 100%;
	margin: auto;
	height: 100vh
}

.glightbox-container .ginner-container.gvideo-container {
	width: 100%
}

.gslide iframe,
.gslide video {
	outline: 0 !important;
	border: none;
	min-height: 165px;
	-webkit-overflow-scrolling: touch;
	-ms-touch-action: auto;
	touch-action: auto
}

.gslide-image {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.gslide-image img {
	max-height: 100vh;
	display: block;
	max-width: 100%;
	margin: 0;
	padding: 0;
	float: none;
	outline: 0;
	border: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	max-width: 100vw;
	width: auto;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;
	-ms-touch-action: none;
	touch-action: none;
	margin: auto;
	min-width: 200px
}

.gslide-image img.zoomable {
	position: relative
}

.gslide-image img.dragging {
	cursor: -webkit-grabbing !important;
	cursor: grabbing !important;
	-webkit-transition: none;
	transition: none
}

.gslide-inline {
	background: #fff;
	text-align: left;
	max-height: calc(100vh - 40px);
	overflow: auto;
	max-width: 100%
}

.gslide-inline .ginlined-content {
	padding: 20px;
	width: 100%
}

.gslide-inline .dragging {
	cursor: -webkit-grabbing !important;
	cursor: grabbing !important;
	-webkit-transition: none;
	transition: none
}

.ginlined-content {
	overflow: auto;
	display: block !important;
	opacity: 1
}

.gslide-media {
	display: block;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: auto
}

.zoomed .gslide-media {
	-webkit-box-shadow: none !important;
	box-shadow: none !important
}

.gslide-description {
	position: relative;
	-webkit-box-flex: 1;
	-ms-flex: 1 0 100%;
	flex: 1 0 100%
}

.gslide-description.description-bottom,
.gslide-description.description-top {
	margin: 0 auto;
	width: 100%
}

.gslide-description p {
	margin-bottom: 12px
}

.gslide-description p:last-child {
	margin-bottom: 0
}

.zoomed .gslide-description {
	display: none
}

.glightbox-mobile .glightbox-container .gslide-description {
	height: auto !important;
	width: 100%;
	background: 0 0;
	position: absolute;
	bottom: 15px;
	padding: 19px 11px;
	max-width: 100vw !important;
	-webkit-box-ordinal-group: 3 !important;
	-ms-flex-order: 2 !important;
	order: 2 !important;
	max-height: 78vh;
	overflow: auto !important;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, .75)));
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .75) 100%);
	-webkit-transition: opacity .3s linear;
	transition: opacity .3s linear;
	padding-bottom: 50px
}

.glightbox-mobile .glightbox-container .gslide-title {
	color: #fff;
	font-size: 1em
}

.glightbox-mobile .glightbox-container .gslide-desc {
	color: #a1a1a1
}

.glightbox-mobile .glightbox-container .gslide-desc a {
	color: #fff;
	font-weight: 700
}

.glightbox-mobile .glightbox-container .gslide-desc * {
	color: inherit
}

.glightbox-mobile .glightbox-container .gslide-desc string {
	color: #fff
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
	color: #fff;
	opacity: .4
}

.gdesc-open .gslide-media {
	-webkit-transition: opacity .5s ease;
	transition: opacity .5s ease;
	opacity: .4
}

.gdesc-open .gdesc-inner {
	padding-bottom: 30px
}

.gdesc-closed .gslide-media {
	-webkit-transition: opacity .5s ease;
	transition: opacity .5s ease;
	opacity: 1
}

.greset {
	-webkit-transition: all .3s ease;
	transition: all .3s ease
}

.gabsolute {
	position: absolute
}

.glightbox-desc {
	display: none !important
}

.glightbox-open {
	overflow: hidden
}

.gloader {
	height: 25px;
	width: 25px;
	-webkit-animation: lightboxLoader .8s infinite linear;
	animation: lightboxLoader .8s infinite linear;
	border: 2px solid #fff;
	border-right-color: transparent;
	border-radius: 50%;
	position: absolute;
	display: block;
	z-index: 9999;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 47%
}

.goverlay {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: #000;
	will-change: opacity
}

.glightbox-mobile .goverlay {
	background: #000
}

.gclose,
.gnext,
.gprev {
	background-repeat: no-repeat;
	z-index: 99999;
	cursor: pointer;
	width: 26px;
	height: 44px;
	display: block;
	background-position: 0 0;
	border: none
}

.gclose svg,
.gnext svg,
.gprev svg {
	display: block;
	width: 100%;
	height: auto
}

.gclose.disabled,
.gnext.disabled,
.gprev.disabled {
	opacity: .1
}

.glightbox-closing .gclose,
.glightbox-closing .gnext,
.glightbox-closing .gprev {
	opacity: 0 !important
}

@keyframes lightboxLoader {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0)
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

@-webkit-keyframes gfadeIn {
	from {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@keyframes gfadeIn {
	from {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@-webkit-keyframes gfadeOut {
	from {
		opacity: 1
	}

	to {
		opacity: 0
	}
}

@keyframes gfadeOut {
	from {
		opacity: 1
	}

	to {
		opacity: 0
	}
}

@-webkit-keyframes gslideInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-60%, 0, 0);
		transform: translate3d(-60%, 0, 0)
	}

	to {
		visibility: visible;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		opacity: 1
	}
}

@keyframes gslideInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-60%, 0, 0);
		transform: translate3d(-60%, 0, 0)
	}

	to {
		visibility: visible;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		opacity: 1
	}
}

@-webkit-keyframes gslideOutLeft {
	from {
		opacity: 1;
		visibility: visible;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	to {
		-webkit-transform: translate3d(-60%, 0, 0);
		transform: translate3d(-60%, 0, 0);
		opacity: 0;
		visibility: hidden
	}
}

@keyframes gslideOutLeft {
	from {
		opacity: 1;
		visibility: visible;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	to {
		-webkit-transform: translate3d(-60%, 0, 0);
		transform: translate3d(-60%, 0, 0);
		opacity: 0;
		visibility: hidden
	}
}

@-webkit-keyframes gslideInRight {
	from {
		opacity: 0;
		visibility: visible;
		-webkit-transform: translate3d(60%, 0, 0);
		transform: translate3d(60%, 0, 0)
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		opacity: 1
	}
}

@keyframes gslideInRight {
	from {
		opacity: 0;
		visibility: visible;
		-webkit-transform: translate3d(60%, 0, 0);
		transform: translate3d(60%, 0, 0)
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		opacity: 1
	}
}

@-webkit-keyframes gslideOutRight {
	from {
		opacity: 1;
		visibility: visible;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	to {
		-webkit-transform: translate3d(60%, 0, 0);
		transform: translate3d(60%, 0, 0);
		opacity: 0
	}
}

@keyframes gslideOutRight {
	from {
		opacity: 1;
		visibility: visible;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	to {
		-webkit-transform: translate3d(60%, 0, 0);
		transform: translate3d(60%, 0, 0);
		opacity: 0
	}
}

@-webkit-keyframes gzoomIn {
	from {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3)
	}

	to {
		opacity: 1
	}
}

@keyframes gzoomIn {
	from {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3)
	}

	to {
		opacity: 1
	}
}

@-webkit-keyframes gzoomOut {
	from {
		opacity: 1
	}

	to {
		opacity: 0
	}
}

@keyframes gzoomOut {
	from {
		opacity: 1
	}

	50% {
		opacity: 0;
		-webkit-transform: scale3d(.3, .3, .3);
		transform: scale3d(.3, .3, .3)
	}

	to {
		opacity: 0
	}
}

@media (min-width:769px) {
	.glightbox-container .ginner-container {
		width: auto;
		height: auto;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row
	}

	.gslide-image img {
		max-height: 97vh;
		max-width: calc(100% - 20px);
		max-width: 100%
	}

	.gslide-image img.zoomable {
		cursor: -webkit-zoom-in;
		cursor: zoom-in
	}

	.zoomed .gslide-image img.zoomable {
		cursor: -webkit-grab;
		cursor: grab
	}

	.gslide-inline {
		max-height: 95vh
	}

	.glightbox-open {
		height: auto
	}

	.goverlay {
		background: rgba(0, 0, 0, .92)
	}
}

@media screen and (max-height:420px) {
	.goverlay {
		background: #000
	}
}

.comments-area {
	margin-top: 40px;
}

.comments-area h2.comments-title {
	font-size: 25px;
	margin-bottom: 20px;
}

.comment-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.comment-meta {
	margin-bottom: 20px;
}

.comment-meta a {
	color: #333;
}

.comment-meta img {}

.comment-author.vcard {
	position: relative;
	padding-left: 50px;
}

.comment-author.vcard img {
	position: absolute;
	left: 0;
	top: 5px;
}

.comment-metadata {
	margin-left: 50px;
}

.comments-area table {
	border-left: 1px solid #dddd;
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
}

.comments-area table td,
.comments-area table th {
	border-right: 1px solid #ddd;
	border-top: 1px solid #ddd;
	padding: 10px;
}

.comments-area th {
	background: #278cc1;
	color: #fff;
}

.comments-area dd {
	margin-bottom: 15px;
}

.comments-area .comments-content ul,
.comments-area .comments-content ol {
	padding-left: 15px;
	list-style: none;
}

.comments-area .comment-content ul,
.comments-area .comment-content ol {
	padding-left: 15px;
}

.comment-reply-link {
	background: #1e71f9;
	display: inline-block;
	padding: 5px 20px;
	color: #fff;
	border-radius: 5px;
}

.comment-list li.comment {
	margin-bottom: 30px;
	padding-bottom: 30px;
}

.comment-metadata {
	font-size: 14px;
}

.comment-reply-link {
	margin-top: 10px;
}

.comment-list li ol.children {
	padding-left: 50px;
	margin: 0;
	list-style: none;
	margin-top: 25px;
}

.comment-list li ol.children ol.children {
	padding-left: 20px;
}

.comment-list li.comment:last-child {
	border-bottom: 0px solid;
	padding-bottom: 0;
	margin-bottom: 0;
}

.comment-respond {
	margin-top: 50px;
}

.comment-notes {
	font-size: 12px;
	margin-bottom: 40px;
}

.comment-form label {
	display: block;
	margin-bottom: 10px;
}

.comment-form input,
.comment-form textarea {
	width: 100%;
	margin-bottom: 20px;
}

.comment-form input[type=submit] {
	width: auto;
}

.comment-respond,
.entry-pings,
.entry-comments {
	color: #444;
	padding: 20px 45px 40px 45px;
	border: 1px solid #ccc;
	overflow: hidden;
	background: #fff;
	-webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
	border-left: 4px solid #444;
}

.comment-body {
	text-align: right !important;
	font-size: 10px
}

.entry-comments h3 {
	font-size: 30px;
	margin-bottom: 30px;
}

.comment-list li .comment-body {
	text-align: right !important;
}

.comment-respond h3,
.entry-pings h3 {
	font-size: 20px;
	margin-bottom: 30px;
}

.comment-respond {
	padding-bottom: 5%;
	margin: 20px 1px 20px 1px;
	border-left: none !important;
}

.comment-header {
	color: #adaeb3;
	font-size: 16px;
	margin-bottom: 20px;
}

.comment-header cite a {
	border: none;
	font-style: normal;
	font-size: 16px;
	font-weight: bold;
}

.comment-header .comment-meta a {
	border: none;
	color: #adaeb3;
}

li.comment {
	background-color: #fff;
	list-style: none;
	font-style: 16px
}

.comment-content {
	clear: both;
	overflow: hidden;
}

.comment-list li {
	font-size: 16px;
	padding: 20px 30px 20px 5px;
	list-style: none;
}

.comment-list .children {
	margin-top: 40px;
}

.comment-list li li {
	padding: 20px;
	list-style: none;
}

.comment-list li li li {
	background-color: #fff;
	list-style: none;
}

.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"] {
	width: 50%;
}

.comment-respond label {
	display: block;
	margin-right: 12px;
}

.entry-comments .comment-author {
	margin-bottom: 0;
	position: relative;
}

.entry-comments .comment-author img {
	border-radius: 50%;
	border: 5px solid #fff;
	left: -80px;
	top: -5px;
	position: absolute;
	width: 60px;
}

.entry-pings .reply {
	display: none;
}

.form-allowed-tags {
	background-color: #f5f5f5;
	font-size: 16px;
	padding: 24px;
}

.comment-reply-link {
	cursor: pointer;
	border: none;
	border-radius: 3px;
	color: #fff;
	font-size: 16px;
	font-weight: 300;
	letter-spacing: 1px;
	padding: 4px 10px 4px;
	text-transform: uppercase;
	width: auto;
}

.children p {
	font-size: 20px
}

.risorse-host-banner {
	background: #FFF;
	border: 1px solid #E0E0E0;
	border-radius: 8px;
	padding: 20px;
	margin: 20px 0;
}

.risorse-host-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.risorse-host-icon-text {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1 1 300px;
}

.icon-user svg {
	background: #0779E4;
	border-radius: 50%;
	padding: 6px;
}

.icon-doc {
	margin-right: 20px;
}

.risorse-host-btn {
	background: #004B87;
	color: #fff;
	padding: 12px 20px;
	border-radius: 6px;
	text-decoration: none;
	font-weight: bold;
	transition: background 0.3s ease;
}

.risorse-host-btn:hover {
	background: #003366;
}

.risorse-host-content h3 {
	margin: 0;
	font-size: 1.3em;
	color: #004B87;
}

.risorse-host-content p {
	margin: 0;
	color: #333;
	font-size: 0.95em;
}

.icon-doc {
	height: 100px
}

.comment-notes {
	display: none;
}

.comments-p {
	padding-left: 80px
}

.disattivare_frase_prezziario_con_link {
	margin: auto;
	width: 100% !important;
	text-align: center !important;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 30px;
}

.lwptoc {
	margin: 32px 0;
	margin-bottom: 32px;
	background-position: initial;
	margin-bottom: 20px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15) !important;
	color: rgba(51, 51, 51, 1) !important;
	background-image: initial;
	background-size: initial;
	background-repeat: initial;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: rgba(250, 250, 250, 1) !important;
	box-sizing: border-box;
	border: 1px solid rgba(209, 209, 209, 1) !important;
	font-size: .9em;
}

.lwptoc-light .lwptoc_i A {
	font-weight: bold !important;
	font-size: 100% !important;
	font-weight: bold;
}

.lwptoc_title {
	color: rgba(51, 51, 51, 1) !important;
	margin-left: 32px !important;
	margin-top: 20px !important;
	font-size: 1.4em !important;
	font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.social-login-google {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	font-family: Google Sans, Roboto, Arial, sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: normal;
	line-height: 20px;
	border-radius: 0;
	color: inherit;
	transition: none;
	-moz-box-align: center;
	align-items: center;
	border-radius: 4px;
	border-style: solid;
	border-width: 1px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
	display: -moz-inline-box;
	display: inline-flex;
	-moz-box-pack: center;
	justify-content: center;
	min-height: 38px;
	min-width: auto;
	padding: 0px 14px;
	position: relative;
	text-align: left;
	text-decoration: none;
	text-transform: none;
	transition: background-color .2s, box-shadow .2s, color .2s;
	vertical-align: inherit;
	background: #fff;
	width: 280px;
	text-align: left;
	border-color: #ddd;
	font-weight: bold;
}

.social-login-fb {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	font-family: Google Sans, Roboto, Arial, sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: normal;
	line-height: 20px;
	border-radius: 0;
	color: inherit;
	transition: none;
	-moz-box-align: center;
	align-items: center;
	border-radius: 4px;
	border-style: solid;
	border-width: 1px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
	display: -moz-inline-box;
	display: inline-flex;
	-moz-box-pack: center;
	justify-content: center;
	min-height: 38px;
	min-width: auto;
	padding: 0px 14px;
	position: relative;
	text-align: left;
	text-decoration: none;
	text-transform: none;
	transition: background-color .2s, box-shadow .2s, color .2s;
	vertical-align: inherit;
	background: #1877f2;
	width: 280px;
	text-align: left;
	border-color: #ddd;
	font-weight: bold;
	color: white;
}

.titolo-footer {
	color: rgba(17, 17, 17, 1);
	margin-bottom: 0px;
	font-size: 18px;
	font-weight: 500;
	font-family: "Source Sans Pro", sans-serif;
}

.bar-banner {
	padding-top: 100px;
}

.nav-banner {
	margin-top: 0px !important;
}

.hero-wrap-page-banner {
	margin-top: 100px;
}

.mrg-banner {
	margin-top: 100px;
}

@media screen and (max-width: 600px) {
	.guida-btn {
		width: 100% !important;
		font-size: 13px !important;

	}

}

@media screen and (max-width: 782px) {
	body {
		font-size: 20px;
	}

	.hero-wrap-page-banner {
		margin-top: 200px !important;
	}

	.nav-banner {
		margin-top: 0px !important;
	}

	.bar-banner {
		padding-top: 0px;
	}

	.ftco-navbar-light .navbar-nav>.nav-item>.nav-link {
		font-size: 30px !important;
		padding: 0.4rem 25px;
		color: rgba(255, 255, 255, 0.8) !important;
		font-weight: 400 !important;
	}

	.ftco-navbar-light .navbar-nav {

		height: 100vh;
	}

	.navigazione {
		padding-left: 0;
		padding-right: 0;
	}

	.icon-doc {
		margin: 40px auto;
		height: 100px
	}

	.risorse-host-btn {
		margin: auto;
	}

	.h1-titolo-home {
		margin-top: 6%;
		font-size: 50px !important;
		text-align: center;
	}

	.primo-section {
		padding: 2em 0 !important;
	}

	.ftco-footer {
		padding: 0 !important;
		background: rgba(238, 238, 238, 1);
	}

	.guida-btn {
		width: 100% !important;
		font-size: 18px;

	}

	.menu-item {
		border-bottom: 1px solid;
		padding-bottom: 5px;
		padding-top: 15px;

		text-align: left !important;
		font-size: 25px;
		color: white !important;


	}

	.menu-item a {
		font-size: 25px;
		color: white;
	}

	#menu-menu-pricipale,
	#navbarSupportedContent {
		float: right;
		text-align: center !important;
		background: rgb(13, 134, 248, 0.9);
		width: 100% !important;
		font-size: 20px !important;
	}
}

#popup-ferie {
	margin-top: 0;
}

.popup-overlay {}

.popup-box {}

.popup-box h3 {
	margin-top: 0;
	font-size: 20px;
	font-weight: bold;
}

.popup-box p {
	font-size: 16px;
	margin: 15px 0 0;
}

.popup-close {
	position: absolute;
	top: 10px;
	right: 15px;
	font-size: 24px;
	font-weight: bold;
	cursor: pointer;
	color: #000;
	transition: color 0.3s;
	z-index: 999999999
}

.popup-close:hover {
	color: #c00;
}


.guida-btn {
	display: inline-flex;
	align-items: center;
	background-color: #002b64;
	/* blu scuro */
	color: white;
	padding: 12px 20px;
	border-radius: 8px;
	text-decoration: none;
	font-weight: bold;
	font-size: 18px;
	font-family: sans-serif;
	transition: background 0.3s ease;
	width: 100%;
	text-align: left;
}

.guida-btn:hover {
	background-color: #004087;
}

.guida-btn .icon-dwn-home {
	width: 42px !important;
	height: 53px !important;
	margin-right: 20px;
	background: transparent;
}

.breadcrumb,
#breadcrumb,
.breadcrumbs,
#breadcrumbs {
	font-size: 12px;
}

.cta-prezzi-servizi {
	text-align: center;
	margin: 20px 0;
}

.btn-prezzi-outline {
	display: inline-block;
	background-color: #ffffff;
	color: #007bff;
	font-weight: 600;
	font-size: 18px;
	padding: 14px 24px;
	border-radius: 12px;
	border: 2px solid #007bff;
	text-decoration: none;
	transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}

.btn-prezzi-outline:hover {
	background-color: #007bff;
	color: #ffffff;
	transform: translateY(-2px);
}

.elenco-burocrazia ul {
	list-style: none;
	padding: 0;
}

.elenco-burocrazia li {
	margin-bottom: 12px;
	position: relative;
	padding-left: 20px;
	list-style: none;
	margin-left: -20px;
}

.elenco-burocrazia li::before {
	content: "✔";
	color: white;
	font-weight: bold;
	position: absolute;
	left: 0;
}

.elenco-burocrazia p {
	font-style: italic;
	font-size: 16px;
	margin-top: 30px;
}

.section-servizi {
	margin-bottom: 0px;
	padding-bottom: 0px !important;
}

.section-blog {
	padding: 2em 0 5em 0 !important;
	margin-top: 3px;
}

.cursore {
	font-style: italic;
}

#custom-popup .popup-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(230, 230, 230, 0.7);
	/* Grigio chiaro trasparente */
	z-index: 9998;
}

#custom-popup .popup-box {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #f5e4b1;
	padding: 30px;
	border-radius: 12px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
	z-index: 9999;
	max-width: 90%;
	width: 400px;
	text-align: center;
}

#custom-popup .popup-box h2 {
	margin-top: 0;
}

#custom-popup .popup-box button {
	margin-top: 15px;
	padding: 10px 20px;
	border: none;
	background-color: #555;
	color: white;
	border-radius: 5px;
	cursor: pointer;
}


.accordion-body {
	padding: 10px;
	background: white;
	margin-bottom: 20px;
	margin-top: -13px;
	border: 2px #0056b3;
	border-style: dashed;
	cursor: pointer;
}

.accordion-item h4 {
	cursor: pointer;
}

.accordion-button:not(.collapsed) {
	border-top: 2px solid #0056b3;
	border-left: 2px solid #0056b3;
	border-right: 2px solid #0056b3;
}

/* stato chiuso (ha .collapsed) */
.accordion-button.collapsed .freccia svg {
	display: inline-block;
	transform: rotate(0deg);
}

/* stato aperto */
.accordion-button:not(.collapsed) .freccia svg {
	transform: rotate(90deg);
	/* o 180deg, come preferisci */
}

/* ====== FAQ (homepage) ====== */
.homepage-faq-v1 {
	font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
	margin: 40px 0;
}

.homepage-faq-v1 .homepage-faq__title {
	font-size: 18px;
	font-weight: 700;
	color: #1a1a1a;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 22px;
}

.homepage-faq-v1 .homepage-faq__title .homepage-dot {
	width: 8px;
	height: 8px;
	border-radius: 5px;
	background: #007bff;
}

/* Box FAQ */
.homepage-faq-v1 details.homepage-faq-item {
	background: linear-gradient(180deg, #f9fbff 0%, #f3f8ff 100%) !important;
	border: 1px solid #cfe4ff !important;
	border-radius: 5px;
	margin-bottom: 14px;
	transition: all 0.25s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
	overflow: hidden;
}

.homepage-faq-v1 details[open].homepage-faq-item {
	background: #ffffff !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
	border-color: #b9d9ff;
	transform: translateY(-1px);
}

/* Domanda */
.homepage-faq-v1 summary.homepage-faq-question {
	list-style: none;
	background: transparent;
	border: none;
	color: #007bff;
	font-size: 16px;
	font-weight: 600;
	padding: 18px 22px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	text-align: left;
	transition: background 0.25s ease;
}

.homepage-faq-v1 summary.homepage-faq-question::-webkit-details-marker {
	display: none;
}

.homepage-faq-v1 summary.homepage-faq-question:hover {
	background: #eaf3ff;
}

.homepage-faq-v1 summary.homepage-faq-question svg {
	width: 18px;
	height: 18px;
	stroke: #007bff;
	transition: transform .3s ease, stroke .3s ease;
}

.homepage-faq-v1 details[open] summary.homepage-faq-question svg {
	transform: rotate(180deg);
	stroke: #005ec7;
}

/* Risposta */
.homepage-faq-v1 .homepage-faq-answer {
	background: #fff;
	border-top: 1px solid #e5efff;
	padding: 16px 22px 22px;
	color: #333;
	font-size: 15px;
	line-height: 1.7;
	transition: all .35s ease;
}

.homepage-faq-v1 .homepage-faq-answer p {
	margin: 0;
}

/* Hover elegante */
.homepage-faq-v1 details.homepage-faq-item:hover {
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}

/* Mobile */
@media (max-width:768px) {
	.homepage-faq-v1 summary.homepage-faq-question {
		font-size: 15px;
		padding: 16px 18px;
	}

	.homepage-faq-v1 .homepage-faq-answer {
		padding: 14px 18px 20px;
		font-size: 14.5px;
	}
}

/* ====== Pre-CTA + Pricing (homepage) ====== */
.homepage-intro-cta.homepage-bordered {
	background: #ffffff;
	border: 2px solid #007bff;
	padding: 30px 20px;
	margin: 0 auto 40px;
	text-align: center;
}

.homepage-intro-cta.homepage-bordered h2 {
	font-size: 1.5rem;
	font-weight: 800;
	color: #0056b3;
	margin-bottom: 12px;
}

.homepage-intro-cta.homepage-bordered p {
	font-size: 1rem;
	line-height: 1.5;
	color: #333;
}

.homepage-undefined {
	display: none;
}

.homepage-cta-pricing {
	text-align: center;
	background: #0779e4;
	padding: 50px 20px;
}

.homepage-cta-pricing h2 {
	font-size: 1.9rem;
	font-weight: 800;
	color: #fff;
	margin-bottom: 40px;
}

.homepage-cards-prezzi {
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.homepage-card-prezzi {
	background: #fff;
	padding: 25px;
	width: 300px;
	position: relative;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
	text-align: left;
	transition: transform .3s ease, box-shadow .3s ease;
}

.homepage-card-prezzi:hover {
	transform: scale(1.03) translateY(-6px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

.homepage-card-prezzi h3 {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 12px;
}

.homepage-price {
	font-size: 1.7rem;
	font-weight: 800;
	color: #007bff;
	margin-bottom: 18px;
	text-align: center;
}

.homepage-features {
	list-style: none;
	margin: 0 0 25px;
	padding: 0;
}

.homepage-features li {
	display: flex;
	align-items: flex-start;
	margin-bottom: 10px;
}

.homepage-features .homepage-icon {
	color: #007bff;
	font-weight: bold;
	margin-right: 8px;
	flex-shrink: 0;
}

.homepage-features span {
	font-size: .95rem;
	line-height: 1.45;
}

.homepage-btncta {
	display: block;
	text-align: center;
	background: #007bff;
	color: #fff;
	padding: 12px;
	border-radius: 6px;
	text-decoration: none;
	font-size: 1rem;
	font-weight: 700;
	transition: background .2s;
}

.homepage-btncta:hover {
	background: #0056b3;
	color: #fff;
}

.homepage-featured {
	border: 2px solid #ff9800;
}

.homepage-badge {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	background: #ff9800;
	color: #fff;
	font-size: .8rem;
	font-weight: bold;
	padding: 5px 12px;
	border-radius: 14px;
}

/* ====== Hero card immagine + overlay (homepage) ====== */
.homepage-block-20.homepage-img {
	position: relative;
	display: block;
	background-size: cover;
	background-position: center;
	min-height: 320px;
	overflow: hidden;
}

/* overlay alto */
.homepage-overlay-top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: 14px 16px;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 10px 12px;
	background: linear-gradient(to bottom, rgba(0, 0, 0, .55), rgba(0, 0, 0, 0));
	color: #fff;
}

.homepage-overlay-top .homepage-avatar {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(255, 255, 255, .6);
	grid-row: 1 / span 2;
}

.homepage-overlay-top .homepage-author-name {
	font-size: .9rem;
	opacity: .95;
}

.homepage-overlay-top .homepage-overlay-title {
	margin: 0;
	line-height: 1.2;
	font-size: 1.05rem;
	font-weight: 700;
	color: #fff;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}

.homepage-titolo-blog {
	color: #fff !important;
}

/* (Lasciamo intatto il selettore del widget per non rompere integrazioni) */
.ti-widget.ti-goog .ti-header-write-btn-container .ti-header-write-btn {
	display: none;
}

/* ====== Sezione articoli (homepage) ====== */
.homepage-articoli-approfondimento.homepage-hybrid {
	background-color: #f8f9fc;
	padding: 70px 20px;
	text-align: center;
}

.homepage-articoli-approfondimento.homepage-hybrid h2 {
	font-size: 2rem;
	font-weight: 800;
	color: #222;
	margin-bottom: 50px;
}

/* griglia */
.homepage-articoli-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
	justify-items: center;
	align-items: start;
	max-width: 1200px;
	margin: 0 auto;
}

/* card */
.homepage-article-card {
	max-width: 340px;
	width: 100%;
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
	transition: transform .3s ease, box-shadow .3s ease;
}

.homepage-article-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.15);
}

/* immagine */
.homepage-article-img {
	position: relative;
	width: 100%;
	height: 220px;
	overflow: hidden;
	border-radius: 14px 14px 0 0;
}

.homepage-article-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.homepage-article-card:hover img {
	transform: scale(1.05);
}

.homepage-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.35);
	z-index: 1;
	transition: background .3s ease;
}

.homepage-article-card:hover .homepage-overlay {
	background: rgba(0, 0, 0, 0.45);
}

.homepage-article-top {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 20px;
	text-align: left;
	z-index: 2;
	color: #fff;
}

.homepage-article-top h3 {
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 6px;
	text-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

/* date pill a destra e più in basso */
.homepage-article-dates-minimal {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 12px;
	padding-right: 4px;
	position: relative;
	right: 4px;
	bottom: -2px;
}

.homepage-article-dates-minimal.homepage-right {
	justify-content: flex-end;
}

.homepage-pill {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: #007bff;
	color: #fff;
	font-size: .7rem;
	font-weight: 600;
	padding: 3px 8px;
	border-radius: 6px;
	white-space: nowrap;
	opacity: .9;
	letter-spacing: .2px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.homepage-pill:hover {
	opacity: 1;
}

/* body */
.homepage-article-body {
	padding: 18px 22px 25px 22px;
	text-align: left;
}

.homepage-article-author {
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	font-size: .9rem;
	color: #444;
	margin-bottom: 10px;
}

.homepage-article-author img {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	object-fit: cover;
}

.homepage-article-body p {
	font-size: .92rem;
	color: #555;
	line-height: 1.6;
	margin-bottom: 10px;
}

.homepage-article-meta {
	font-size: .85rem;
	color: #666;
	margin-top: 6px;
}

/* responsive */
@media (max-width:1100px) {
	.homepage-articoli-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width:700px) {
	.homepage-articoli-grid {
		grid-template-columns: 1fr;
	}

	.homepage-article-dates-minimal.homepage-right {
		justify-content: flex-start;
	}
}

/* colore testo nell'immagine */
.homepage-article-top,
.homepage-article-top h3,
.homepage-article-top .homepage-pill {
	color: #fff !important;
}

/* ===== Container dedicato ===== */
.ab360-faq-v1 {
	font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
	margin: 40px 0;
}

.ab360-faq-v1 .ab360-faq__title {
	font-size: 18px;
	font-weight: 700;
	color: #1a1a1a;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 22px;
}

.ab360-faq-v1 .ab360-faq__title .dot {
	width: 8px;
	height: 8px;
	border-radius: 5px;
	background: #007bff;
}

/* ===== Box FAQ ===== */
.ab360-faq-v1 details.faq-item {
	background: linear-gradient(180deg, #f9fbff 0%, #f3f8ff 100%) !important;
	border: 1px solid #cfe4ff !important;
	border-radius: 5px;
	margin-bottom: 14px;
	transition: all 0.25s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
	overflow: hidden;
}

.ab360-faq-v1 details[open].faq-item {
	background: #ffffff !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
	border-color: #b9d9ff;
	transform: translateY(-1px);
}

/* ===== Domanda (summary) ===== */
.ab360-faq-v1 summary.faq-question {
	list-style: none;
	background: transparent;
	border: none;
	color: #007bff;
	font-size: 16px;
	font-weight: 600;
	padding: 18px 22px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	text-align: left;
	transition: background 0.25s ease;
}

.ab360-faq-v1 summary.faq-question::-webkit-details-marker {
	display: none;
	/* rimuove il marker predefinito */
}

.ab360-faq-v1 summary.faq-question:hover {
	background: #eaf3ff;
}

.ab360-faq-v1 summary.faq-question svg {
	width: 18px;
	height: 18px;
	stroke: #007bff;
	transition: transform 0.3s ease, stroke 0.3s ease;
}

.ab360-faq-v1 details[open] summary.faq-question svg {
	transform: rotate(180deg);
	stroke: #005ec7;
}

/* ===== Risposta ===== */
.ab360-faq-v1 .faq-answer {
	background: #fff;
	border-top: 1px solid #e5efff;
	padding: 16px 22px 22px;
	color: #333;
	font-size: 15px;
	line-height: 1.7;
	transition: all 0.35s ease;
}

.ab360-faq-v1 .faq-answer p {
	margin: 0;
}

/* ===== Hover elegante ===== */
.ab360-faq-v1 details.faq-item:hover {
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}

/* ===== Mobile ===== */
@media (max-width: 768px) {
	.ab360-faq-v1 summary.faq-question {
		font-size: 15px;
		padding: 16px 18px;
	}

	.ab360-faq-v1 .faq-answer {
		padding: 14px 18px 20px;
		font-size: 14.5px;
	}
}


/* Box pre-CTA (bianco con bordo blu) */
.intro-cta.bordered {
	background: #ffffff;
	border: 2px solid #007bff;
	padding: 30px 20px;
	margin: 0 auto 40px;
	text-align: center;
}

.intro-cta.bordered h2 {
	font-size: 1.5rem;
	font-weight: 800;
	color: #0056b3;
	margin-bottom: 12px;
}

.intro-cta.bordered p {
	font-size: 1rem;
	line-height: 1.5;
	color: #333;
}

.undefined {
	display: none;
}

.cta-pricing {
	text-align: center;
	background: #0779e4;
	padding: 50px 20px;

}

.cta-pricing h2 {
	font-size: 1.9rem;
	/* più grande della pre-CTA */
	font-weight: 800;
	/* extra bold */
	color: #fff;
	margin-bottom: 40px;
}

.cards-prezzi {
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.card-prezzi {
	background: #fff;
	padding: 25px;
	width: 300px;
	position: relative;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
	text-align: left;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-prezzi:hover {
	transform: scale(1.03) translateY(-6px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

.card-prezzi h3 {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 12px;
}

.price {
	font-size: 1.7rem;
	/* più grande */
	font-weight: 800;
	/* extra bold */
	color: #007bff;
	margin-bottom: 18px;
	text-align: center;
}

.features {
	list-style: none;
	margin: 0 0 25px;
	padding: 0;
}

.features li {
	display: flex;
	align-items: flex-start;
	margin-bottom: 10px;
}

.features .icon {
	color: #007bff;
	font-weight: bold;
	margin-right: 8px;
	flex-shrink: 0;
}

.features span {
	font-size: 0.95rem;
	line-height: 1.45;
}

.btncta {
	display: block;
	text-align: center;
	background: #007bff;
	color: #fff;
	padding: 12px;
	border-radius: 6px;
	text-decoration: none;
	font-size: 1rem;
	font-weight: 700;
	/* più grassetto */
	transition: background 0.2s;
}

.btncta:hover {
	background: #0056b3;
	color: #fff;
}

.featured {
	border: 2px solid #ff9800;
}

.badge {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	background: #ff9800;
	color: #fff;
	font-size: 0.8rem;
	font-weight: bold;
	padding: 5px 12px;
	border-radius: 14px;
}

.block-20.img {
	position: relative;
	display: block;
	background-size: cover;
	background-position: center;
	min-height: 320px;
	/* regola a piacere */
	overflow: hidden;
}

/* Overlay in alto: avatar + titolo */
.overlay-top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: 14px 16px;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 10px 12px;
	background: linear-gradient(to bottom, rgba(0, 0, 0, .55), rgba(0, 0, 0, 0));
	color: #fff;
}

.overlay-top .avatar {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(255, 255, 255, .6);
	grid-row: 1 / span 2;
	/* avatar su due righe (autore + titolo) */
}

.overlay-top .author-name {
	font-size: .9rem;
	opacity: .95;
}

.overlay-top .overlay-title {
	margin: 0;
	line-height: 1.2;
	font-size: 1.05rem;
	font-weight: 700;
	color: #fff;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}

.titolo-blog {

	color: #fff !important;
}

.ti-widget.ti-goog .ti-header-write-btn-container .ti-header-write-btn {
	display: none;
}

/* --- SEZIONE --- */
.articoli-approfondimento.hybrid {
	background-color: #f8f9fc;
	padding: 70px 20px;
	text-align: center;
}

.articoli-approfondimento.hybrid h2 {
	font-size: 2rem;
	font-weight: 800;
	color: #222;
	margin-bottom: 50px;
}

/* --- GRIGLIA --- */
.articoli-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
	justify-items: center;
	align-items: start;
	max-width: 1200px;
	margin: 0 auto;
}

/* --- CARD --- */
.article-card {
	max-width: 340px;
	width: 100%;
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.article-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.15);
}

/* --- IMMAGINE + TITOLO --- */
.article-img {
	position: relative;
	width: 100%;
	height: 220px;
	overflow: hidden;
	border-radius: 14px 14px 0 0;
}

.article-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

.article-card:hover img {
	transform: scale(1.05);
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.35);
	z-index: 1;
	transition: background 0.3s ease;
}

.article-card:hover .overlay {
	background: rgba(0, 0, 0, 0.45);
}

.article-top {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 20px;
	text-align: left;
	z-index: 2;
	color: #fff;
}

.article-top h3 {
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 6px;
	text-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

/* --- DATE MINIMAL BLU (posizionate più in basso e più a destra) --- */
.article-dates-minimal {
	display: flex;
	justify-content: flex-end;
	/* spinge verso destra */
	gap: 8px;
	margin-top: 12px;
	/* più distanza dal titolo */
	padding-right: 4px;
	/* piccolo margine interno destro */
	position: relative;
	right: 4px;
	/* spostamento leggero verso il bordo destro */
	bottom: -2px;
	/* le abbassa leggermente */
}

.article-dates-minimal.right {
	justify-content: flex-end;
}

.pill {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: #007bff;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 600;
	padding: 3px 8px;
	border-radius: 6px;
	white-space: nowrap;
	opacity: 0.9;
	letter-spacing: 0.2px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.pill:hover {
	opacity: 1;
}

/* --- BODY --- */
.article-body {
	padding: 18px 22px 25px 22px;
	text-align: left;
}

.article-author {
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	font-size: 0.9rem;
	color: #444;
	margin-bottom: 10px;
}

.article-author img {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	object-fit: cover;
}

.article-body p {
	font-size: 0.92rem;
	color: #555;
	line-height: 1.6;
	margin-bottom: 10px;
}

.article-meta {
	font-size: 0.85rem;
	color: #666;
	margin-top: 6px;
}

/* --- RESPONSIVE --- */
@media (max-width: 1100px) {
	.articoli-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 700px) {
	.articoli-grid {
		grid-template-columns: 1fr;
	}

	.article-dates-minimal.right {
		justify-content: flex-start;
	}
}

/* --- COLORE TESTO NELL'IMMAGINE --- */
.article-top,
.article-top h3,
.article-top .pill {
	color: #fff !important;
}

.homepage-claim {
	text-align: center;
	font-size: 1.3rem;
	margin-bottom: 40px;
	font-weight: bold;
	color: #333;
}

/* griglie */
.homepage-servizi,
.homepage-servizi-secondari {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 40px;
}

/* box */
.homepage-servizio-box,
.homepage-servizio-small {
	background: #ffffff;
	border-radius: 6px;
	padding: 30px 20px;
	text-align: center;
	transition: 0.3s;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.homepage-servizio-box:hover,
.homepage-servizio-small:hover {
	transform: scale(1.03) translateY(-6px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

/* titoli */
.homepage-servizio-box h2,
.homepage-servizio-small h2 {
	font-size: 1.3rem;
	margin-bottom: 10px;
	font-weight: bold;
	line-height: 1.4;
	text-transform: uppercase;
}

/* utility */
.homepage-nowrap {
	white-space: nowrap;
	font-size: 1.5rem;
	font-weight: bold;
}

.homepage-underline-non {
	text-decoration: underline;
	/* sottolinea solo la parola NON */
}

/* testo */
.homepage-servizio-box p,
.homepage-servizio-small p {
	font-size: 1rem;
	line-height: 1.6;
	margin-bottom: 20px;
}

/* link */
.homepage-servizio-box a,
.homepage-servizio-small a {
	display: inline-block;
	background: #007bff;
	color: #fff;
	padding: 12px 30px;
	border-radius: 8px;
	text-decoration: none;
	font-weight: bold;
	transition: 0.3s;
	white-space: nowrap;
}

.homepage-servizio-box a:hover,
.homepage-servizio-small a:hover {
	background: #0056b3;
}

/* icone */
.homepage-icon {
	font-size: 40px;
	margin-bottom: 15px;
	color: #007bff;
}

/* responsive */
@media (max-width: 800px) {

	.homepage-servizi,
	.homepage-servizi-secondari {
		grid-template-columns: 1fr;
	}
}

.ti-widget.ti-goog .ti-header-write-btn-container {
	margin-top: 12px;
	position: relative;
	display: none;
}

/* ====== STILE PAGINA CONTATTI AFFITTI BREVI 360 ====== */
section.contatti-page {
	padding: 60px 20px;
	max-width: 1100px;
	margin: 0 auto;
	font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
	color: #222;
}

/* --- TITOLI DI SEZIONE --- */
.contatti-page h1.section-title {
	font-size: 1.8rem;
	color: #007bff;
	border-bottom: 3px solid #007bff;
	display: inline-block;
	padding-bottom: 4px;
	margin-bottom: 30px;
}

/* --- CARD CONTATTI --- */
.contact-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 25px;
	margin-bottom: 30px;
}

.contact-card {
	background: #fff;
	border: 1px solid #cfe2ff;
	border-radius: 4px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
	padding: 25px 20px;
	transition: all 0.3s ease;
}

.contact-card:hover {
	border-color: #007bff;
	transform: translateY(-3px);
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
}

.contact-card h3 {
	font-size: 1rem;
	color: #333;
	margin-bottom: 10px;
}

.contact-card p {
	font-size: 0.95rem;
	line-height: 1.6;
	color: #333;
}

.contact-card a {
	color: #007bff;
	font-weight: 600;
	text-decoration: none;
}

.contact-card a:hover {
	text-decoration: underline;
}

/* --- ENFASI SU IMPRENDITORIALE / NON IMPRENDITORIALE --- */
.imprenditoriale,
.non-imprenditoriale {
	color: #0056b3;
	/* blu più scuro */
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: underline;
	/* aggiunge sottolineatura */
	text-underline-offset: 2px;
	/* sposta leggermente la linea */
}


/* --- PULSANTE WHATSAPP BLU BRAND CON ICONA --- */
.whatsapp-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
	background: #007bff;
	color: #fff !important;
	font-weight: 600;
	font-size: 0.95rem;
	padding: 10px 16px;
	border-radius: 6px;
	text-decoration: none;
	transition: background 0.3s ease, transform 0.2s ease;
}

.whatsapp-btn svg {
	width: 18px;
	height: 18px;
	fill: #fff;
}

.whatsapp-btn:hover {
	background: #005fdd;
	transform: translateY(-2px);
}

/* --- SEZIONE SOCIAL --- */
.social-invite {
	text-align: center;
	border-top: 1px solid #e2e8ff;
	margin: 40px auto 20px;
	padding-top: 25px;
	font-size: 0.95rem;
}

.social-invite a {
	color: #007bff;
	font-weight: 600;
	text-decoration: none;
}

.social-invite a:hover {
	text-decoration: underline;
}

/* --- FORM CONTATTI --- */
.contact-form {
	margin-top: 40px;
}

.contact-form h2 {
	font-size: 1.4rem;
	color: #222;
	margin-bottom: 20px;
	border-bottom: 2px solid #007bff;
	display: inline-block;
	padding-bottom: 4px;
}

.contact-form form {
	display: grid;
	gap: 15px;
}

.contact-form .form-row {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

.contact-form input,
.contact-form textarea {
	border: 1px solid #dbe9ff;
	border-radius: 4px;
	padding: 10px;
	font-size: 0.95rem;
	width: 100%;
	transition: border-color 0.3s ease;
}

.contact-form input:focus,
.contact-form textarea:focus {
	border-color: #007bff;
	outline: none;
}

.contact-form textarea {
	min-height: 130px;
	resize: vertical;
}

.contact-form button {
	background: #007bff;
	border: none;
	color: #fff;
	font-weight: 600;
	border-radius: 4px;
	padding: 12px 25px;
	transition: background 0.3s ease;
	cursor: pointer;
}

.contact-form button:hover {
	background: #005fdd;
}

/* --- CTA FINALE --- */
.cta-finale {
	text-align: center;
	background: linear-gradient(135deg, #007bff 0%, #4ea3ff 100%);
	color: #fff;
	border-radius: 10px;
	padding: 60px 40px;
	margin-top: 60px;
}

.cta-finale h3 {
	font-size: 1.7rem;
	margin-bottom: 15px;
}

.cta-finale p {
	font-size: 1.1rem;
	margin-bottom: 30px;
}

.cta-finale a {
	background: #fff;
	color: #007bff;
	text-decoration: none;
	font-weight: 600;
	padding: 12px 28px;
	border-radius: 8px;
	transition: background 0.3s ease, color 0.3s ease;
}

.cta-finale a:hover {
	background: #007bff;
	color: #fff;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
	.contact-grid {
		grid-template-columns: 1fr;
	}

	.contact-form .form-row {
		flex-direction: column;
	}

	.whatsapp-btn {
		justify-content: center;
		width: 100%;
		text-align: center;
	}
}

.cta-finale h3 {
	font-size: 1.7rem;
	margin-bottom: 15px;
	color: white;
	font-weight: bold;
}

section .chi-siamo {
	padding: 60px 20px;
	max-width: 1100px;
	margin: 0 auto;
	font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
	color: #222;
}

/* --- TITOLI DI SEZIONE --- */
h2.section-title {
	font-size: 1.7rem;
	color: #007bff;
	margin-bottom: 10px;
	border-bottom: 3px solid #007bff;
	display: inline-block;
	padding-bottom: 4px;
}

.section-subtitle {
	font-weight: 600;
	color: #333;
	margin-bottom: 25px;
}

/* --- LA NOSTRA STORIA --- */
.story p {
	line-height: 1.7;
	margin-bottom: 15px;
}

/* --- CARTA DEI VALORI --- */
.valori {
	background: #fff;
	border: 1px solid #dbe9ff;
	border-radius: 10px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	padding: 40px;
}

.valori-intro {
	text-align: center;
	margin-bottom: 40px;
}

.valori-intro p {
	color: #555;
	max-width: 800px;
	margin: 0 auto;
}

.valori-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 25px;
}

.valore-card {
	background: #f8faff;
	border: 1px solid #dbe9ff;
	border-radius: 8px;
	padding: 25px 20px;
	transition: all 0.3s ease;
}

.valore-card:hover {
	background: #eef5ff;
	transform: translateY(-4px);
}

.valore-card h4 {
	color: #007bff;
	font-size: 1.1rem;
	margin-bottom: 10px;
}

.valore-card p {
	font-size: 0.95rem;
	line-height: 1.6;
	color: #333;
}

/* --- LA NOSTRA SQUADRA --- */
.team {
	margin-top: 60px;
}

.member {
	background: #fff;
	border: 1px solid #dbe9ff;
	border-radius: 8px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	margin-bottom: 15px;
	/* ridotto ulteriormente */
	padding: 30px;
}

.member img {
	width: 220px;
	border-radius: 10px;
	flex-shrink: 0;
}

.member-info {
	flex: 1;
	min-width: 260px;
}

.member-info h4 {
	font-size: 1.1rem;
	color: #007bff;
	margin-bottom: 5px;
}

.member-info span {
	display: block;
	font-weight: 600;
	color: #444;
	margin-bottom: 10px;
}

.member-info p {
	line-height: 1.6;
	font-size: 0.95rem;
	color: #333;
}

/* --- CTA FINALE --- */
.cta-finale {
	text-align: center;
	background: linear-gradient(135deg, #007bff 0%, #4ea3ff 100%);
	color: #fff;
	border-radius: 10px;
	padding: 60px 40px;
	margin-top: 25px;
	/* distacco più compatto */
}

.cta-finale h3 {
	font-size: 1.7rem;
	margin-bottom: 15px;
}

.cta-finale p {
	font-size: 1.1rem;
	margin-bottom: 30px;
}

.cta-finale a {
	background: #fff;
	color: #007bff;
	text-decoration: none;
	font-weight: 600;
	padding: 12px 28px;
	border-radius: 8px;
	transition: background 0.3s ease, color 0.3s ease;
}

.cta-finale a:hover {
	background: #007bff;
	color: #fff;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
	.member {
		flex-direction: column;
		text-align: center;
	}

	.member img {
		width: 180px;
	}

	.member-info {
		text-align: center;
	}
}