.main-content {
  position: relative;
}

.main-content .navbar-top {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  padding-right: 0 !important;
  padding-left: 0 !important;
  background-color: transparent;
}

@media (min-width: 768px) {
  .main-content .container-fluid {
    padding-right: 39px !important;
    padding-left: 39px !important;
  }
}

.container-fluid {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px;
}

 .card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  border: 1px solid rgba(0, 0, 0, .05);
  border-radius: .375rem;
  background-clip: border-box;
}

.card>hr {
  margin-right: 0;
  margin-left: 0;
}

.card-body {
  padding: 1.5rem;
  flex: 1 1 auto;
}

.card-profile-image {
  position: relative;
}

.card-profile-image img:hover {
  transform: translate(-50%, -33%);
}

.card-profile-stats>div {
  margin-right: 1rem;
  padding: .875rem;
  text-align: center;
}

.card-profile-stats>div:last-child {
  margin-right: 0;
}

.card-profile-stats>div .heading {
  font-size: 1.1rem;
  font-weight: bold;
  display: block;
}

.card-profile-stats>div .description {
  font-size: .875rem;
} */

.heading {
  font-size: .95rem;
  font-weight: 600;
  letter-spacing: .025em;
  text-transform: uppercase;
}

.description {
  font-size: .875rem;
}

h5,
.h5 {
  font-family: inherit;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: .5rem;
  font-size: .8125rem;
}





@media (min-width: 576px) {
	.box-principale {
		max-width: 83%;
	}
	.avatar {
		width:8vw!important;
	}
	.box-principale  {
		margin-bottom: 2%;
	}
	.referenze-titolo, .sezione-custom-titolo h4, .contact-details-item h6 {
		font-size: 5vw!important;
	}
	.referenze-testo, .sezione-custom-testo p {
		font-size: 2.2vw!important;
		line-height: 3.3vw!important;
	}
}

@media (min-width: 768px){
	.box-principale {
		max-width: 66%;
	}
	.avatar {
		width:12vw!important;
	}
	.box-principale  {
		margin-bottom: 1%;
	}
	.referenze-titolo, .sezione-custom-titolo h4, .contact-details-item h6 {
		font-size: 5vw!important;
	}
	.referenze-testo, .sezione-custom-testo p {
		font-size: 2vw!important;
		line-height: 3vw!important;
	}
}		

@media (min-width: 1024px){
	.box-principale {
		max-width: 50%;
	}
	.avatar {
		width:16vw!important;
	}
	.box-principale  {
		margin-bottom: 1%;
	}
	.referenze-titolo, .sezione-custom-titolo h4, .contact-details-item h6 {
		font-size: 2.5vw!important;
	}
	.referenze-testo, .sezione-custom-testo p {
		font-size: 0.8vw!important;
		line-height: 1.2vw!important;
	}
}
.referenze-testo {
	font-weight: 100;
    font-size: 3vw;
	text-align: center;
	color: var(--card-font-color);
}


/* NEW CSS */

h1 {
	font-size: 8vw;
	color: var(--theme-gb);
}

h2 {
	font-size: 5vw;
}

h3 {
	font-size: 6vw;
}

h4 {
	font-size: 6vw;
}

h5 {
	font-size: 6vw;
}

h6 {
	font-size: 3vw;
	line-height: 3.7vw;
}

p {}

a:active, a:hover {
	color: var(--theme-gb)!important;
}

input, .form-control, ::placeholder{
	color: black!important;
}

.contact-details li {
	font-size: 4.5vw;
	line-height: 5vw;
}

.p-2 {
    padding: 2vw 2vw 5vw 2vw!important;
}

.col-md-12 {
	padding: 0 2vw 0 2vw;
}

.pt-4 {
	padding-top: 12vw!important;
}


.float-lang {
    position: absolute;
    top: -24vw;
    right: 6px;
    z-index: 99999;
	width: 25vw;
}

.float-lang button, .float-lang div {
	float: right;
    color: var(--card-gb);
    border-color: var(--card-gb);
}

.btn, .btn.btn-sm  {
	margin-top: 2vw!important;
}

.card-profile-image img {
    position: absolute;
    left: 50%;
    max-width: 180px;
    max-height: 180px;
    transition: all .15s ease;
    transform: translate(-50%, -30%);
    border-radius: 0.375rem;
    width: 180px;
    height: 180px;
    border: solid 3px;
    border-color: var(--theme-gb);
}

.card-body .mt-4 {
	margin-top: 0px!important;
}

.contact-details .icon-circle {
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    background: var(--theme-gb);
    font-size: 7vw;
    height: 11vw;
    width: 11vw;
    min-width: 11vw;
    border-radius: 100%;
    padding: 0 10px;
}

/* PULSANTI */

.pulsante {
	display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    background: var(--theme-gb);
    height: 18vw;
    width: 18vw;
    border-radius: 50%;
    margin: 4vw 6vw;
    font-size: 0px!important;
    color: transparent;
    padding-right: 1vw;
    opacity: 1;
    border: solid 3px;
    /* border-width: 0px 1px 2px 3px; */
    border-color: var(--card-font-color);
	padding-right: 1.5vw;
}

.pulsante:hover {
	background: var(--card-font-color);
}

.pulsante i {
	font-size: 6vw!important;
    background: var(--card-gb);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	visibility: none;
}

/* FOOTER */

.text-white {
	color: #ffffff !important;
    background: rgba(0,0,0,.6);
    width: 100%;
    text-align: center;
    position: absolute;
    margin-top: -20px;
    padding: 10px 0px;
}

/* PRODOTTI/SERVIZI */

.article {
	background: transparent;
	height: 163vw;
    border-radius: 3px;
    border: none;
    position: relative;
    margin-bottom: 30px;
}

.border {
	border: none!important;
}

.owl-carousel.owl-drag .owl-item {
	width: 92vw;
    margin-right: 10px;
	height: 163vw;
    min-height: 163vw;
}

.article .article-header {
    height: 92vw;
    position: relative;
    overflow: hidden;
}

.article .article-header .article-image {
    background-color: var(--theme-gb);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 92vw;
    height: 92vw;
	border: solid;
    border-radius: 50%;
	border-color: var(--theme-gb);
	border-width: 6px;
}

.article .article-header .article-title {
    position: absolute;
    top: 40vw;
    left: 0;
    width: 100%;
	background: transparent!important;
    padding: 10px;
    font-size: 7vw;
    text-align: center;
}

.article .article-header .article-title h2 a, .article.article-style-b .article-details .article-title a {
    font-weight: 700;
    text-decoration: none;
    font-size: 5vw;
	text-transform: uppercase;
}

.article .article-details {
	height: 120vw;
    background-color: rgba(255,255,255,.3);
    margin-top: -45vw;
    padding-top: 50vw;
	/*box-shadow: inset 20px -5vw 20vw 2vw rgba(0,0,0,.3);*/
}

.article .article-details .article-cta {
	position: absolute;
    bottom: 6vw;
    width: 82vw;
}

.article-details p {
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 6; /* number of lines to show */
           line-clamp: 6; 
   -webkit-box-orient: vertical;
}

/* TESTIMONIALS */

#referenze .owl-item {
	height: 50vw;
	min-height: 60vw;
}

#referenze .testimonial_descrizione {
	font-size: 3.3vw;
	line-height: 3.7vw;
	letter-spacing: .02em;
	overflow: hidden;
	padding: 0 4vw;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3; /* number of lines to show */
           line-clamp: 3; 
	-webkit-box-orient: vertical;
}

.contenuto_custom p, .contenuto_custom h4 {
	padding: 0 6vw;
}

/* MODULO CONTATTO */

.form-group {
	margin-left: 2vw;
	width: 92vw;
	background: rgba(255,255,255,.5);
}

textarea {
	resize: vertical;
	min-height: 30vw;
	width: 100%;
}

.card-footer {
    margin: auto;
}

.fas-invia:before {
	content: "\f1d8";
    margin-right: 1vw;
}

#invia {
	float: right;
}

i.fas.fas-invia {
	font-size: 6vw!important;
    margin-left: 1.2vw;
    text-align: center;
}

/* GALLERY */

.gallery.gallery-md .gallery-item {
    float: left;
    width: 42vw;
    height: 42vw;
    margin: 1.5vw;
    border-radius: 50%;
    border: solid 2px;
    border-color: var(--theme-gb);
    margin-top: -10vw;
}

/* CONTENUTO CUSTOM */

.contenuto_custom p, .contenuto_custom h4 {
	padding: 0 6vw;
}