@charset "UTF-8";
/* CSS Document */

::-moz-selection {background: #004987; color: #fff;}
::selection {background: #004987; color: #fff;}

html {scroll-behavior: smooth;}
body {font-family: 'Rubik', sans-serif;color:#000000; font-weight:200;}

a {color:#004987}
a:hover {color:#007dc0}
a.custom-card, a.custom-card:hover {color: inherit;text-decoration: none;}

.bg-dark {background-color: #666666 !important}
.bg-light {background-color: #F2F5F7 !important}

.bg-00 {background-color: #000000 !important}
.bg-primary {background-color: #004987 !important;border-radius: 16px;}
.bg-secondary {background-color: #004987 !important}
.bg-green {background-color: #D9FAD4}
.bg-gray {background-color: #DFE6ED !important}

.text-primary {color: #004987 !important}
.text-dark {color: #000000 !important}
.text-light {color:#F2F5F7 !important}
.text-light-tl {color:#83AE30 !important}

.cta-call{
	background: #78A328;
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 12px;
	border-radius: .65rem;
}
.cta-call h5{
	font-size: 1.25rem;
}
.cta-call h3{
	font-size: 2.4rem;
	letter-spacing: 1px;
}
.cta-call:hover{
	background: #004987;
	color: #fff;
	text-decoration: none;
}
.fixed-bottom .cta-call{
	border-radius: 0;
	text-align: center;
	padding: 10px 10px 8px;
}
.fixed-bottom .cta-call p{
	text-align: center;
}

/* Small devices (landscape phones, 300px and up)*/
@media (min-width: 300px) {
h1 {font-size: 2.5rem;line-height: 1;font-weight: 500}

h2 {font-size: 1.95rem;line-height: 1.25;font-weight: 500}
h3 {font-size: 1.45rem;line-height: 1.25;font-weight: 600}
}
/* Medium devices (tablets, 500px and up)*/
@media (min-width: 500px) {
h1 {font-size: 3.25rem;line-height: 1.25;font-weight: 900}
h2 {font-size: 2.5rem;line-height: 1.25;font-weight: 700}
h3 {font-size: 1.65rem;line-height: 1.25;font-weight: 900}
}

iframe {height: 920px;}

@media (max-width: 1199px) {
    iframe {height:980px}
}
@media(max-width:1099px){
	.cta-call h5{
		font-size: 1.1rem;
	}
	.cta-call h3{
		font-size: 2rem;
	}
	.cta-call p{
		font-size: 0.9rem;
	}
	
}

@media (max-width: 436px) {
    iframe {height:1020px}
}
@media (max-width: 425px) {
    iframe {height:1080px}
}
@media (max-width: 400px) {
    iframe {height:1260px}
}

h4 {font-size: 1.5rem;line-height: 1.25;font-weight: 500}
h5 {font-size: 1.35rem;line-height: 1.25;font-weight: 500}
h6 {font-size: 1.25rem;line-height: 1.25;font-weight: 500}
p {font-size: 16px;line-height: 1.5;text-align: justify;}
strong {font-weight: 700}

.navbar {background: transparent;border-bottom: 1px solid #ced4da;}

header {background-color:#F2F5F7; background-position: center center;background-repeat: no-repeat;background-size: cover;}

footer {background-color:#000000; color:#fff;}

.card {background-color: #F2F5F7; border-radius: .65rem;border:none;}
.card-2 {word-wrap: break-word;background-clip: border-box;border: 1px solid #e0e0e0;border-radius: .65rem;box-shadow: 0px 15px 30px -9px rgba(100,103,107,0.35);}
a.card {z-index: 10;}
a.anchor {
     display: block;
    position: relative;
    top: -250px;
    visibility: hidden;
}
blockquote, .blockquote {
    padding: 1.5rem;
    background-color: #F2F5F7;
    border-left: 6px solid #004987;
    box-shadow: 0px 15px 15px -9px rgba(100,103,107,0.35);
}

.btn {display: inline-block;font-weight: 600;color: #ffffff;text-align: center;vertical-align: middle;user-select: none;background-color: transparent;border: 3px solid transparent;border-top-color: transparent;border-right-color: transparent;border-bottom-color: transparent;border-left-color: transparent;font-size: 1.125rem;line-height: 1.5;border-radius: .25rem;transition: color 0.35s ease-in-out,background-color 0.35s ease-in-out,border-color 0.35s ease-in-out,box-shadow 0.35s ease-in-out;transition-property: color, background-color, border-color, box-shadow;transition-duration: 0.35s, 0.35s, 0.35s, 0.35s;}

.btn-info {vertical-align: middle;-webkit-transform: perspective(1px) translateZ(0);transform: perspective(1px) translateZ(0);-webkit-transition-duration: .3s;transition-duration: .3s;-webkit-transition-property: box-shadow; background: #004987;background-color: #004987;color:#F2F5F7; border-radius:60px;}
.btn-info:hover, .btn-info:focus, .btn-info:active {border-color: #276AD2; color: #F2F5F7;background-color: #0075b3;text-decoration: none;transform: scale(1.01);}

.hvr-grow {vertical-align: middle;-webkit-transform: perspective(1px) translateZ(0);transform: perspective(1px) translateZ(0);-webkit-transition-duration: .5s;transition-duration: .5s;-webkit-transition-property: transform;transition-property: transform;}

.hvr-grow:hover, .hvr-grow:focus, .hvr-grow:active {-webkit-transform: scale(1.1);transform: scale(1.1);}
.wave, .wave.container, .row {position: relative;z-index:10}
.wave::after {content: "";position: absolute;left: 0;width: 100%;height: 100vh;top: 0;background: url("../img/wave.svg") no-repeat top;}
.wave2, .wave2.container, .row {position: relative;z-index:10}
.wave2::after {content: "";position: absolute;left: 0;width: 100%;height: 30vh;top: 0;background: url("../img/wave2.svg") no-repeat top;}

/* slick slider */
.slick-slide {
	 margin: 0px 20px;
	 display: none;
	 float: left;
	 height: 100%;
	 min-height: 1px;
}
 .slick-slide img {
	 height:60px;
     margin:0 auto;
	 display: block;
}
 .slick-slide.slick-loading img {
	 display: none;
}
 .slick-slide.dragging img {
	 pointer-events: none;
}
 .slick-slider {
	 position: relative;
	 display: block;
	 box-sizing: border-box;
	 -webkit-user-select: none;
	 -moz-user-select: none;
	 -ms-user-select: none;
	 user-select: none;
	 -webkit-touch-callout: none;
	 -khtml-user-select: none;
	 -ms-touch-action: pan-y;
	 touch-action: pan-y;
	 -webkit-tap-highlight-color: transparent;
}
 .slick-list {
	 position: relative;
	 display: block;
	 overflow: hidden;
	 margin: 0;
	 padding: 0;
}
 .slick-list:focus {
	 outline: none;
}
 .slick-list.dragging {
	 cursor: pointer;
	 cursor: hand;
}
 .slick-list .slick-track, .slick-list .slick-list {
	 -webkit-transform: translate3d(0, 0, 0);
	 -moz-transform: translate3d(0, 0, 0);
	 -ms-transform: translate3d(0, 0, 0);
	 -o-transform: translate3d(0, 0, 0);
	 transform: translate3d(0, 0, 0);
}
 .slick-track {
	 position: relative;
	 top: 0;
	 left: 0;
	 display: block;
}
 .slick-track:before {
	 display: table;
	 content: '';
}
 .slick-track:after {
	 clear: both;
}
 .slick-loading .slick-track {
	 visibility: hidden;
}
 .slick-loading .slick-slide {
	 visibility: visible;
}
 [dir='rtl'] .slick-slide {
	 float: right;
}
 .slick-initialized .slick-slide {
	 display: block;
}
 .slick-vertical .slick-slide {
	 display: block;
	 height: auto;
	 border: 1px solid transparent;
}
 .slick-arrow.slick-hidden {
	 display: none;
}

/* -- custom Libero tariffe -- */
.title-lt {
	font-size: 2rem;
	color: #004987;
	letter-spacing: 0.02em;
}

@media (max-width: 640px)
.title-lt {
    font-size: 1.2rem;
    line-height: 2.25rem;
	font-weight: 400;
}

.subtitle-lt {
	font-size: 18px;
	color: #000000;
	font-weight: 400;
}
@media (max-width: 500px){
	.subtitle-lt {
		font-size: 1.5rem;
    	line-height: 1.25;
	}
}
    


h3.sub3 {
	font-size: 16px;
	color: #276AD2 !important;
}

.bg-outline {
    border: 2px solid #004987;
    border-radius: 16px;
    color: #004987;
}

.bg-gradient-primary {
    background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
    --tw-gradient-from: transparent;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(0, 0, 0, 0));
    --tw-gradient-to: #d9e4c7;
}


@media (min-width: 1000px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1140px;
    }
}

/* form */
#pageloader {
         background: rgba(255, 255, 255, 0.8);
         display: none;
         height: 100%;
         position: fixed;
         width: 100%;
         z-index: 9999;
         }
         #pageloader img {
         left: 50%;
         margin-left: -32px;
         margin-top: -32px;
         position: absolute;
         top: 50%;
         }

         .form-control {
         height: calc(1.5em + 1.1rem + 6px);
         color: #000000;
         border: 2px solid #dbe4ca;
         border-radius: 30px !important;
         background: #F2F5F7;
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         }
         .form-control:focus {
         background-color: #dbe4ca;
         border-color: #83AE30;
         outline: 0;
         box-shadow: 0px 15px 15px -9px rgba(100,103,107,0.35);
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         }
         .input-group-text {
         color: #000000;
         background-color: #DFE6ED;
         border: 2px solid #DFE6ED;
         border-top-left-radius: 1.5rem;
         border-bottom-left-radius: 1.5rem;
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         }
         .custom-control-label::before {
         border: 2px solid #DFE6ED;
         top: 0;
         width: 1.25rem;
         height: 1.25rem;
         }
         .custom-control-label::after {
         top: 0;
         width: 1.25rem;
         height: 1.25rem;
         }
         .custom-control-input:checked ~ .custom-control-label::before {
         color: #F2F5F7;
         border-color: #58BF13;
         background-color: #58BF13;
         box-shadow: 0px 6px 15px rgba(100,103,107,0.35);
         }
         .btn {
         border-radius: 60px !important;
         background-color: #004987;
         padding: .85rem !important;
         font-size: 1rem;

         }
         .btn:hover, .btn-info:focus, .btn-info:active {
         color: #F2F5F7;
         background-color: #276AD2;
         border-color: #276AD2;
         transform: scale(1.01);
         }
         hr {
         margin: 0.75em 0 !important;
         color: #DFE6ED;
         }
         input[type=submit]{
         font-weight: 700;
         text-transform: uppercase;
         }
         body {
         background-color: transparent !important;
         }
         .radiobox input[type="radio"] {
         display: none;
         }
         input[type="radio"] {
         box-sizing: border-box;
         padding: 0;
         }
         button, input {
         overflow: visible;
         }
         .radiobox input[type="radio"]:checked + label {
         background-color: #83AE30;
         color: #ffffff;
         border: 2px solid #83AE30;
         box-shadow: 0px 15px 15px -9px rgba(100,103,107,0.35);
         text-transform: uppercase;
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         }
         .radiobox input[type="radio"]:checked + label:hover {
         background-color: #83AE30;
         color: #ffffff;
         border: 2px solid #83AE30;
         box-shadow: 0px 15px 15px -9px rgba(100,103,107,0.35);
         text-transform: uppercase;
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         transform: scale(1.05);
         }
         .radiobox input[type="radio"]:hover + label {
         background-color: #dbe4ca;
         color: #666666;
         border: 2px solid #dbe4ca;
         box-shadow: 0px 15px 15px -9px rgba(100,103,107,0.35);
         transform: scale(1.05);
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         }
         .radiobox label {
         position: relative;
         display: inline-block;
         font-weight: 700;
         font-size: 1rem;
         padding: .35rem 1.5rem;
         margin: 0 auto;
         text-align: center;
         border-radius: 1.5rem;
         overflow: hidden;
         cursor: pointer;
         -webkit-transition: all 300ms linear;
         transition: all 300ms linear;
         background-color: #fff;
         color: #666666;
         border: 2px solid #dbe4ca;
         text-transform: uppercase;
         padding: 0.25rem 1rem 0.25rem 1rem;
         font-size: 0.875rem;
         line-height: 1.25rem;
         }
         h5.lt{
            color:#000000;
            font-size: 16px;
            font-weight: 300;
         }
         input#btnSubmit.btn.btn-primary.btn-block.border-0.my-3.p-2 {
          text-decoration: none !important;
         }
         input#btnSubmit.btn.btn-primary.btn-block.border-0.my-3.p-2:hover {
          text-decoration: none !important;
         }
		  .autocomplete {
    position: relative;
    width: 300px;
}

.autocomplete-list {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 200px;
    overflow-y: auto;
    background: #fff;
    z-index: 1000;
    list-style: none;
    margin: 0;
    padding: 0;
}
		  .autocomplete-list.populated {
    border: 1px solid #ccc; /* Mostra il bordo solo se la lista è popolata */
}

.autocomplete-list li {
    padding: 8px 10px;
    cursor: pointer;
	font-size: 14px;
}

.autocomplete-list li:hover {
    background-color: #f0f0f0;
}
		  .autocomplete-list li.active {
    background-color: #276AD2;
    color: #fff;
}