/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/
:root {
	--imn-purple: #5a4b99;
    --imn-blue: #31b4a7;
    --imn-green: #00a85f;
    --imn-black: #575757;
}
/*MENU*/
li.menu-item.current-menu-item a.level_1 .w-nav-title,
li.menu-item a .w-nav-title {
    position: relative;
}
li.menu-item.current-menu-item a.level_1 .w-nav-title:after {
    position: absolute;
    content: '';
    background: linear-gradient(to right, var(--imn-purple), var(--imn-green))!important;
    height: 2px;
    width: 100%!important;
    left: 0;
    bottom: -5px;
}
li.menu-item a.level_1 .w-nav-title:after,
li.menu-item a.level_2 .w-nav-title:after {
    position: absolute;
    content: '';
    background: linear-gradient(to right, var(--imn-purple), var(--imn-green))!important;
    height: 2px;
    width: 0%;
    left: 0;
    bottom: -5px;
    transition: width 0.5s ease-in-out;
}
li.menu-item:hover a.level_1 .w-nav-title:after,
li.menu-item a.level_2:hover .w-nav-title:after {
    width: 100%;
}
.w-nav-arrow:before {
    font-weight: 300;
}
/*FINE MENU*/
h1.title-slider {
    background: linear-gradient(to right, var(--imn-purple), var(--imn-green))!important;
    -webkit-background-clip: text!important;
    -webkit-text-fill-color: transparent;
    color: transparent!important;
}
.title h1,
.title h2,
.title h3,
.title h4 {
    background: linear-gradient(to right, var(--imn-purple), var(--imn-green))!important;
    -webkit-background-clip: text!important;
    -webkit-text-fill-color: transparent;
    color: transparent!important;
    font-size: 45px;
    font-weight: 600;
    padding-bottom: 30px;
}
.subtitle h1,
.subtitle h2,
.subtitle h3,
.subtitle h4 {
    color: #393939;
    font-size: 35px;
    font-weight: 600;
    padding-bottom: 30px;
}
.title-white h1,
.title-white h2,
.title-white h3,
.title-white h4 {
    font-size: 40px;
    font-weight: 600;
    padding-bottom: 30px;
    color: #fff;
}
.section-slider .l-section-shape.pos_bottom {
    z-index: 10;
}
.section-slider .l-section-h.i-cf {
    padding-top: 0!important;
}
.riga-top,
.riga-bottom,
.riga-right,
.riga-left {
    position: relative;
}
.riga-top:before {
    position: absolute;
    content: '';
    background: url("img/riga-top.svg");
    background-repeat: no-repeat;
    height: 80px;
    width: 80px;
    top: -15px;
    left: -15px;
}
.riga-bottom:after {
    position: absolute;
    content: '';
    background: url("img/riga-bottom.svg");
    background-repeat: no-repeat;
    height: 80px;
    width: 80px;
    bottom: -15px;
    right: -15px;
}
.riga-right:before {
    position: absolute;
    content: '';
    background: url("img/riga-top.svg");
    background-repeat: no-repeat;
    height: 80px;
    width: 80px;
    top: -15px;
    right: -15px;
    transform: rotateZ(90deg);
}
.riga-left:after {
    position: absolute;
    content: '';
    background: url("img/riga-bottom.svg");
    background-repeat: no-repeat;
    height: 80px;
    width: 80px;
    bottom: -15px;
    left: -15px;
    transform: rotateZ(90deg);
}
.service-name p,
.service-name p a,
p.service-name {
    color: #fff;
    font-weight: 600;
    font-size: 25px;
    z-index: 10;
}
.carosello-home .w-grid-item-h,
.service {
    position: relative;
}
.carosello-home .w-grid-item-h:after {
    position: absolute;
    content: '';
    background: linear-gradient(to top, var(--imn-purple), var(--imn-green))!important;
    height: 0;
    width: 100%;
    bottom: 0;
    left: 0;
    transition: height 0.5s ease-in-out;
    opacity: 0.5;
    z-index: 1;
}
.carosello-home .w-grid-item-h:hover:after {
    height: 100%;
}
.service:after {
    position: absolute;
    content: '';
    background: #00000040;
    height: 100%;
    width: 100%;
    bottom: 0;
    left: 0;
}
.txt-white p {
    color: #fefefe;
}
.txt-footer p {
    font-size: 16px;
    color: #e1e1e1;
    margin-top: 20px;
}
.title-footer p {
    font-size: 19px;
    text-transform: uppercase;
    color: #fff;
    padding-top: 10px;
    font-family: "Titillium Web";
    font-weight: 600;
}
.txt-footer-basso p {
    font-size: 15px;
    color: #e1e1e1;
}
.txt-footer-basso p a,
.txt-footer p a {
    color: #fff;
}
.omino-footer {
    position: relative;
}
.omino-footer:after {
    position: absolute;
    content: '';
    background: url("img/omino-bianco.svg");
    background-repeat: no-repeat;
    height: 100%;
    width: 240px;
    bottom: -75px;
    right: 100px;
    opacity: 0.2;
}
.quadrato {
    position: relative;
}
.quadrato:before {
    position: absolute;
    content: '';
    background: url("img/quadrato.svg");
    background-repeat: no-repeat;
    height: 180px;
    width: 180px;
    top: 50%;
    left: -40px;
    transform: translateY(-50%);
    z-index: 1;
}
.pb-0 h1,
.pb-0 h2,
.pb-0 h3,
.pb-0 h4 {
    padding-bottom: 0;
    position: relative;
    z-index: 3;
}
.padding-30 .w-image-h {
    padding: 30px;
}
ul.lista,
ul.sub-lista {
	list-style: none;
}
ul.lista li,
ul.sub-lista li {
	position: relative;
	font-size: 16px;
    margin-bottom: 0;
}
ul.lista li:before {
    position: absolute;
	font-family: "Font Awesome 5 Free";
    font-weight: 300;
	content: '\f192';
    left: -30px;
    color: var(--imn-purple);
    width: 15px;
    height: 15px;
	top: 8px;
	transform: translateY(-50%);
}
ul.sub-lista li:before {
    position: absolute;
	font-family: "Font Awesome 5 Free";
    font-weight: 800;
	content: '\f1ce';
    left: -30px;
    color: var(--imn-green
    );
    width: 15px;
    height: 15px;
	top: 8px;
	transform: translateY(-50%);
}
h1.post_title {
    font-size: 65px;
    color: #fff;
    font-weight: 600;
}
.post_content p strong {
    font-size: 27px;
}
h3.titolo-anteprima {
    font-size: 22px;
    margin-top: 20px;
    margin-bottom: 15px!important;
}
.post_navigation-item-title {
    font-size: 15px;
    color: #a1a1a1;
    display: none;
}
.post_navigation-item-meta {
    font-size: 16px;
    opacity: 1;
}
.post_navigation-item-arrow {
    color: var(--imn-purple);
    opacity: 1!important;
}
.post_navigation .order_second .post_navigation-item-arrow:before,
.post_navigation .order_first .post_navigation-item-arrow:before {
    font-weight: 300;
}
.w-iconbox-text p,
.w-iconbox-text p a {
    color: #fff;
    font-size: 16px;
}


/*BOTTONE*/
.btn.white {
    --bg: #fff;
}
.btn {
  --border-color: linear-gradient(-45deg, var(--imn-blue), var(--imn-purple), var(--imn-green));
  --border-width: 0.125em;
  --curve-size: 0em;
  --blur: 30px;
  --bg: #d6d6d6;
  --color: var(--imn-black);
  color: var(--color);
  cursor: pointer;
  position: relative;
  isolation: isolate;
  display: inline-grid;
  place-content: center;
  padding: 0.5em 1.5em;
  font-size: 17px;
  border: 0;
  text-transform: uppercase;
  box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.6);
  clip-path: polygon(
    /* Top-left */ 0% var(--curve-size),
    var(--curve-size) 0,
    /* top-right */ 100% 0,
    100% calc(100% - var(--curve-size)),
    /* bottom-right 1 */ calc(100% - var(--curve-size)) 100%,
    /* bottom-right 2 */ 0 100%
  );
  transition: color 250ms;
}
.btn::after,
.btn::before {
  content: "";
  position: absolute;
  inset: 0;
}
.btn::before {
  background: var(--border-color);
  background-size: 300% 300%;
  animation: move-bg7234 5s ease infinite;
  z-index: -2;
}
@keyframes move-bg7234 {
  0% {
    background-position: 31% 0%;
  }
  50% {
    background-position: 70% 100%;
  }
  100% {
    background-position: 31% 0%;
  }
}
.btn::after {
  background: var(--bg);
  z-index: -1;
  clip-path: polygon(
    /* Top-left */ var(--border-width)
      calc(var(--curve-size) + var(--border-width) * 0.5),
    calc(var(--curve-size) + var(--border-width) * 0.5) var(--border-width),
    /* top-right */ calc(100% - var(--border-width)) var(--border-width),
    calc(100% - var(--border-width))
      calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5)),
    /* bottom-right 1 */
      calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5))
      calc(100% - var(--border-width)),
    /* bottom-right 2 */ var(--border-width) calc(100% - var(--border-width))
  );
  transition: clip-path 500ms;
}
.btn:where(:hover, :focus)::after {
  clip-path: polygon(
    /* Top-left */ calc(100% - var(--border-width))
      calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5)),
    calc(100% - var(--border-width)) var(--border-width),
    /* top-right */ calc(100% - var(--border-width)) var(--border-width),
    calc(100% - var(--border-width))
      calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5)),
    /* bottom-right 1 */
      calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5))
      calc(100% - var(--border-width)),
    /* bottom-right 2 */
      calc(100% - calc(var(--curve-size) + var(--border-width) * 0.5))
      calc(100% - var(--border-width))
  );
  transition: 200ms;
}
.btn:where(:hover, :focus) {
  color: #fff;
}

/*FORM*/
.form-row p {
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}
.form-row p label {
	width: 49%;
}
/*FINE FORM*/

@media (min-width: 1025px) and (max-width: 1380px) 
{
	
}


@media (max-width: 1023.98px) 
{ 
	.title h1, .title h2
	{
		font-size: 37px;
	}
	
	
	.img-hero
	{
		height: auto;
		max-width: 50%;
	}
	
	.quadrato:before
	{
        height: 8rem;
        width: 8rem;
        left: 0rem;
        top: 2rem;
	}
	
	.cont-img-hero .vc_column-inner
	{
	display: flex;
	flex-direction: row;
    justify-content: flex-end;
	}
	
	.omino-footer:after 
	{
		position: absolute;
		content: '';
		background: url(img/omino-bianco.svg);
		background-repeat: no-repeat;
		height: 30%;
		width: 144px;
		bottom: -75px;
		right: 100px;
		opacity: 0.2;
	}
}