@charset "utf-8";
/* Aggiungi di seguito il tuo stile personalizzato */

body{
	color: #4d6069;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.65;
    background-size: cover;
    background-attachment: fixed;
}

#topMenu > ul > li > a {
    background: #FFF;
    border: 4px solid var(--primary);
    color: var(--primary);
    padding: 8px 16px;
}

#topMenu > ul > li > a:hover {
    box-shadow: 0 0 20px;
}
#topMenu > ul > li > a:active {
    background: var(--primary);
    color: #FFF;
}

main .btn {
	padding: 15px 30px;
	border-radius: 0;
	border: 2px solid;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.articolo .social-sharing .btn {
	padding: inherit;
	border-radius: inherit;
	border: inherit;
}

.img-container .extra-info {
    top: 18px;
    left: 22px;
}

p, dl, dd, address, cite {
    margin: 0 0 20px;
}

h2 {
	font-size: 45px;
	line-height: 56px;
	font-weight: 400;
}

h3 {
    font-size: 35px;
    line-height: 42px;
    font-weight: 400;
}

h2.separatore-inferiore,
.display h2{
	margin-bottom: 3.25rem;
}

h2.separatore-inferiore:before{
	display: none;
}

h2.separatore-inferiore:after{
	width: 80px;
	bottom: -1.25rem;
}

.display p,
p.lead{
	font-family: 'Lato', sans-serif !important;
    font-size: 24px;
    line-height: 40px;
    font-weight: 300;
}

p.small {
	font-size: 18px;
}

.menu-principale {
	font-family: "Josefin Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	text-transform: uppercase;   
	font-weight: 700;
	font-size: 17px;
}

img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 .07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

.img-circle img {
	border-radius: 50%;
}

#hero {
	background-size: cover;
	background-position: center center;
}

#hero .col-12.text-center.aos-init.aos-animate {
	margin-bottom: 25vh;
}

.hero p.display-4{
	font-size: 30px;
	padding-top: 3px;
	padding-bottom: 3px;
	font-weight: 300;
    text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.5), 0 0 0px rgba(0, 0, 0, 0.5);
}

.hero h1 {
	margin-top: -5px;
	font-size: 50px;
	line-height: 1;
    text-shadow: 0 0 20px rgba(0,0,0,0.5), 0 0 90px rgba(0,0,0,0.15), 0 0 100px black;
}

.hero h2{
	font-size: 42px;
	line-height: 1.1;
	padding-top: 8px;
	padding-bottom: 6px;
}

.testimonials .card {
	background: transparent;
}

 blockquote::before {
    width: 100px;
	left: calc(50% - 50px);
	top: -18px;
}

.text-white .testimonials blockquote {
	color: #FFF;
}

.text-white blockquote::before {
    color: #FFF;
}

.testimonials blockquote {
    background: transparent;
	margin-top: 120px;
}

.testimonials .profile-picture img {
    height: 160px;
    width: 160px;
}

.testimonial .star-rating,
.profile-picture .blockquote-footer,
.autoreTestimonianza {
	display: none;
}

.profili-social .list-inline-item{
    width: 40px;
    height: 40px;
    border: 1px solid var(--primary);
    border-radius: 50%;
    line-height: 38px;
	box-shadow: inset 0 0 0 1px var(--primary);
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s
}

.profili-social .list-inline-item:hover{
    box-shadow: inset 0 0 0 20px var(--primary);
}

.profili-social .list-inline-item a{
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s
}

.profili-social .list-inline-item:hover a{
	color: #FFF;
}

.labelVisibile.portfolio .text-title {
    font-family: "Libre Bodoni", serif;
    font-optical-sizing: auto;
    font-weight: 400 !important;
    font-style: normal;
    box-shadow: 0 0 0px 2px rgba(255,255,255,0.35);
    padding: 1.25em 2em;
	backdrop-filter: blur(4px);
}

.portfolio .aspect-ratio-3-4 {
    background-color: #4d6069 !important;
}

.footer-superiore h4{
	display: none;
}

.footer-inferiore p.lead{
  font-family: "Josefin Sans", sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.footer-superiore .col-8.col-lg-4.order-lg-0 ul {
	text-align: center;
}


@media (min-width: 992px){
	
	h1 {
		font-size: 64px;
		line-height: 74px;
	}
	
	/*
	h2 {
		font-size: 58px;
		line-height: 64px;
	}
	
	h3 {
		font-size: 40px;
		line-height: 50px;
	}
	*/
	
	body.logo-centrato .menu-principale ul li a:not(.navbar-brand) {
		width: inherit;
	}
	
	.hero p.display-4{
		font-size: 42px;
		padding-top: 3px;
		padding-bottom: 3px;
		font-weight: 300;
	}

	.hero h1 {
		margin-top: -10px;
		font-size: 130px;
		line-height: 1;
	}

	.hero h2{
		font-size: 65px;
		line-height: 1.1;
		padding-top: 8px;
		padding-bottom: 6px;
	}
	
	section{
		padding-top: 6em;
		padding-bottom: 6em;
	}
	
	.footer-superiore .col-8.col-lg-4.mx-auto.order-lg-0 ul {
		text-align: left;
	}
}