@import url('https://fonts.googleapis.com/css2?family=Cabin+Sketch:wght@400;700&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Rubik+Dirt&display=swap');


.itemid-101 .page-header, .itemid-116 .page-header{position: absolute; top:-99999999px}


.sp-pre-loader .sp-loader-with-logo .logo{display:inline-block;width:auto; max-width:250px;}

.titolo1, .animated-heading-before-part{ font-family:  "Cabin Sketch", sans-serif;
font-size: 4rem; line-height: normal; color:#fff; clear: both; display: block  }

.titolo2, .animated-text-words-wrapper{   font-family: "Montserrat", serif;
font-size: 6rem;
font-weight: 800;
letter-spacing: 5px; line-height: normal; color:#fff}

body{
font-weight:normal;
 font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
font-style: normal;
font-size: 1.15rem!important;
line-height: 1.8;
 
}


h1, .h1, h2, .h2 {
 font-family:  "Cabin Sketch", sans-serif;
font-size: 3rem!important; line-height: normal; color: #000;
 text-transform: uppercase!important; 
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;

}

 h3 {
 font-family: "Cabin Sketch", sans-serif;
font-size: 3rem; line-height: normal; color: #116c28;

 text-transform: uppercase; 
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;
}

 h1, .h1 {
font-size: 4rem;
}

.h5, h5 {
    font-size: 1.15rem;
    text-transform: uppercase!important;
    letter-spacing: 3px;
}


 h2, .h2 {
font-size: 3.7rem;
}


/* servizi home */





.servizi .sppb-carousel-extended-item{overflow: hidden;   align-items: center;     border-radius: 15px;  }
.servizi .sppb-carousel-extended-item img {
    width: 100%;
    object-fit: cover!important;
    height: 100%;
    transition: transform .3s; /* Animation */
      
          
}
.servizi .sppb-carousel-extended-item:hover img {
   animation: spFade 0.7s;
      transition: transform .3s; /* Animation */
       transform: scale(1.2);
}


/*menu*/
#sp-header .burger-icon>span, .offcanvas-active .burger-icon>span {
    background-color: #fff;
    height: 2px;
}

#sp-header.header-sticky .burger-icon>span, .offcanvas-active .burger-icon>span {
 
    background-color: #2a7d2e;
    height: 2px;
}
.offcanvas-menu .offcanvas-inner ul.menu li.active a {
    color: #000;
   
}

#sp-header .menu-toggler-wrapper span, .menu-toggler-wrapper span {
    font-size: 12px!important;
    font-weight: 300;
    line-height: 32px;
}

#sp-header .menu-toggler-wrapper, #sp-header-topbar .menu-toggler-wrapper {
    flex: 1 0 auto;
    max-width: 321px;
    border-right: 0px solid #48595f;
    display: flex
;
    align-items: center;
    justify-content: left;
}

#sp-header #menu-module , #sp-header-topbar #menu-module{
    flex: 1 0 auto;
    max-width: 321px;
    border-left: 0px solid #48595f;
    justify-content: right;
}




#sp-top-bar {
    
}




#sp-main-body {
    
}

.sp-contact-info {

}

.sp-contact-info li {

}

/*header */
#sp-header {
    height: 120px;
    width: 100%;
    position: relative;
    z-index: 99;
    box-shadow: 0 0 0px 0 rgba(0, 0, 0, 0);
    animation: spFadeIn 0.5s;
    background:#03381b;
}

.itemid-116 #sp-header {
    height: 120px;
    width: 100%;
    position: relative;
    z-index: 99;
    box-shadow: 0 0 0px 0 rgba(0, 0, 0, 0);
    animation: spFadeIn 0.5s;
    background: transparent;
}
#sp-header.header-sticky{height: 80px;   box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.1); background: white}
#sp-header .logo {
    height: 120px;
}
#sp-header.header-sticky .logo {
    height: 80px;
}


#sp-header .logo-image {
    height: 90px!important;
        filter: brightness(0) invert(1) !important;
    -webkit-transition: padding 400msease, margin 400msease;
    transition: padding 400msease, margin 400msease;
}

#sp-header.header-sticky .logo-image {
    height: 50px !important;
    -webkit-transition: padding 400msease, margin 400msease;
    transition: padding 400msease, margin 400msease;
    padding-top: 0px;
    margin-top: 0px;
  filter: none !important;
}

#sp-header .sp-megamenu-parent>li.active>a,#sp-header .sp-megamenu-parent>li.active:hover>a, #sp-header .sp-megamenu-parent>li>a ,#sp-header .sp-megamenu-parent>li>a:hover {
    color: #fff;
}


#sp-header.header-sticky .sp-megamenu-parent>li.active>a,#sp-header.header-sticky .sp-megamenu-parent>li.active:hover>a, #sp-header.header-sticky .sp-megamenu-parent>li>a ,#sp-header.header-sticky .sp-megamenu-parent>li>a:hover {
    color: #000;
}


#sp-menu.menu-center .sp-megamenu-wrapper {
    justify-content: end;
}
.sp-megamenu-parent>li:last-child>a {
    padding: 0px!important;
}
.sp-megamenu-parent>li{     display: inline-block;  margin: 0 25px;}

.sp-megamenu-parent>li>a.preventivo{ background:#116c28; border-radius: 25px; color:#fff!important; padding: 1px 20px!important }
.sp-megamenu-parent>li>a.preventivo:hover{ background:#333; border-radius: 25px; color:#fff!important; padding: 1px 20px!important }

.sp-megamenu-parent>li>a.preventivo::before {
display: none;
}



.sp-megamenu-parent>li>a, .sp-megamenu-parent>li>span {

 
    line-height: 36px;
    font-size: 16px;
    text-transform: uppercase!important; 
    
    margin: 0;
padding: 0px;
  transition: 0.4s;
 
  text-decoration: none;
  
  position: relative;
}
.sp-megamenu-parent>li>a::before {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  bottom: 0;
  left: 50%;
  background-color:#116c28;
  transition: all 0.4s;
}
.sp-megamenu-parent>li>a:hover::before {
  width: 100%;
  left: 0;
}

#sp-header.header-with-modal-menu a {
   text-transform: uppercase;
   
        letter-spacing: .08em;
        color: #1d1d1d;
    font-size: 14px;
    font-weight: 400;
}

/*menu offcanvas*/




#sp-footer a, #sp-bottom a {
    color: #ccc;
}


.offcanvas-menu .fa-facebook:before,.offcanvas-menu .fa-instagram:before {
    font-size: 30px;
}

.offcanvas-menu .offcanvas-inner .sp-contact-info, .offcanvas-menu .offcanvas-inner .social-icons {
    font-size: 16px;
}
/*menu*/

/*bottoni*/

.btn-secondary  {
    background:#2a7d2e !important;
    border:#2a7d2e!important;
    color:#fff;

    letter-spacing: 1px;
   
      cursor: pointer;
transition: background-color 0.3s, transform 0.3s;
}

.btn-secondary:hover {
 
color: #2a7d2e;
  background-color: #ede1d4!important;
border:1px solid #2a7d2e!important;

cursor: pointer;
transition: background-color 0.3s, transform 0.3s;
}


.btn-primary, .sppb-btn-primary  {
    background:#2a7d2e !important;
    border:#2a7d2e!important;
    color:#fff;
    border-radius: 30px!important;
    text-transform: uppercase!important;
       padding: 10px 20px!important;
    font-size: 14px!important;
    letter-spacing: 1px;
   
      cursor: pointer;
transition: background-color 0.3s, transform 0.3s;
}

.btn-primary:hover, .sppb-btn-primary:hover {
  transform: scale(1.05);
color: #fff;
  background-color: #333!important;
border:1px solid #333!important;

cursor: pointer;
transition: background-color 0.3s, transform 0.3s;
}
body .sppb-btn.sppb-btn-link,body .sppb-btn.btn-link,body .btn.sppb-btn-link,body .btn.btn-link {
    padding: 0px;
    color:#116c28
}
/*footer and bottom*/




 #sp-contatti {
    padding: 4rem 0;
background: url("../../../images/footer.jpg") center bottom no-repeat #fbfaf6;
 background-size: contain;
} 
body.ltr.offcanvs-position-right.offcanvas-active .offcanvas-menu {
 background: url("../../../images/footer.jpg") center bottom no-repeat #fbfaf6;
 background-size: contain; 
}

 #sp-footer {
    background-color: #03381B;
        color: #fff;
 
}


#sp-footer2 {justify-content: flex-end; }
ul.menu-oriz {
    margin-left: 0px;
    padding-inline-start: 0px;
    list-style: none;


}

#sp-footer .sp-module {
 
 max-width:100%; 
}

ul.menu-oriz li {
    display: inline;
    list-style: none;
    font-size: small;
    text-transform: uppercase
}

#sp-footer .sp-module .menu li:first-child:after {
  display: none
}
/*home*/


/*contatti*/
.form-control {
 
    border-radius: 1.75rem!important;
   
}

.form-control:focus {
   
    border-color: #2a7d2e!important;
   
}

.bfQuickMode .form-inline .form-group, .bfQuickMode .form-inline label, .bfQuickMode .bfbs5-form-inline .bfbs5-form-group, .bfQuickMode .bfbs5-form-inline label {
    display: inline-block;
    margin-right: 0px!important;
}
.bfQuickMode .bfbs5-nonform-control, .bfQuickMode .nonform-control {
 
    width: 10%!important;
        float: left;
}

#bfLabel18 { width: 90%!important;}



.bfQuickMode .bfElemWrap .form-inline input[type="text"], .bfQuickMode .bfElemWrap .form-inline input[type="number"], .bfQuickMode .bfElemWrap .form-inline textarea, .bfQuickMode .bfElemWrap .form-inline select {
    display: inline;
     max-width:100%!important;
}

.bfQuickMode section input[type='text'], .bfQuickMode section textarea, .bfQuickMode section select {
    float: left;
    margin: 0px;
    width:100%!important;
}
.bfQuickMode section, .bfQuickMode fieldset {
    padding-right: 0px!important;
}
.bfQuickMode fieldset.bfInline {

    width: 95%!important;

}
.bfQuickMode fieldset.bfInline section {
    padding: 0px 0px 15px 0px!important;
    margin: 0px 0px 0px 0px;
}

.bfQuickMode .bfFieldset-wrapper {
margin-bottom: 0px!important;
}


.bfQuickMode section.bfElemWrap {
     padding: 0px!important;

}
#ff_elem16{width: 100%; padding: 0.5rem 0.5rem !important;
    font-size: 1rem;
    line-height: 1.25;
    color: #495057;
    background-color: #fff;
    background-image: none;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 0.25rem;
margin-bottom: 15px}


.bfQuickMode .bfLabelRight label {
    width: 95%!important;
    float: right;
    margin: 0px 0px 0px 10px;
}

 .bfQuickMode .bfLabelRight .bfElementGroupNoWrap input {
    width: auto;
    float: none;
    margin: 0px 5px 0px 0px!important;
    display: inline;
}


/* CSS BOOTSTRAP SPECIFICI */



.sp-page-builder .page-content #giardiniere .sp-background:before{
  position: absolute!important;
  content: "";
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
 background: rgb(12,39,0);
background: linear-gradient(180deg, rgba(12,39,0,0.3) 0%, rgba(12,39,0,0.2) 20%, rgba(12,39,0,0.2) 80%, rgba(12,39,0,0.4) 100%);
    z-index: 5;
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
   
}



#scritte .animated-heading-before-part {

    width: 100%;
}



.offcanvas-menu .fa, .offcanvas-menu .fab, .offcanvas-menu .far, .offcanvas-menu .fas {
    color:#116c28;
}

#sp-bottom .fa-facebook , #sp-bottom .fa-instagram {
   
    padding: 10px!important;
    border: 1px solid #333!important;
    font-size: 22px!important;
    line-height: 22px!important;
    width: 43px;
    margin-top: 20px;
}



#sp-bottom1 .sp-contact-time{display:none!important;}


#sp-bottom .far, #sp-bottom .fas {display:none}

#sp-bottom {
 
    font-size: 16px;
    line-height: 1.8;
 
}

.bfQuickMode .bfLabelRight button#ff_elem35_calendarButton{
float: right!important;}

.bfQuickMode .bfLabelRight button#ff_elem35_calendarButton:before {
    content: "\f073"!important;
        font-family: "Font Awesome 5 Free"!important;

}

/* MOBILE */
@media  screen and (max-width: 767px){
	
	h1, .h1, h2, .h2 {
    
    font-size: 2.3rem !important;

}
	
	h3 {

    font-size:  2.3rem !important;

}
	


.itemid-116 #sp-header, #sp-header {
    height: 80px;
 
}
#sp-header .logo {
    height: 80px;
}
#sp-header .logo-image {
    height: 45px !important;

}


#sp-header.header-sticky {
    height: 60px;
 
}
  


#sp-header.header-sticky .logo {
    height: 60px;
}
#sp-header.header-sticky .logo-image {
    height: 35px !important;

}

  body.ltr.offcanvs-position-right .offcanvas-menu {
    right: -100%;

}
.offcanvas-menu {
    width: 100%;
   
    
}

  
  /*contatti*/

.bfQuickMode section input[type='text'], .bfQuickMode section textarea, .bfQuickMode section select {
    float: left;
    margin: 0px;
    width:100%!important;
}

.bfQuickMode fieldset.bfInline {

    width: 100%!important;

}

.bfQuickMode input[type=text], .bfQuickMode textarea, .bfQuickMode .uneditable-input, .bfQuickMode input[type=text]:hover, .bfQuickMode textarea:hover, .bfQuickMode .uneditable-input:hover, .bfQuickMode input[type=text]:focus, .bfQuickMode textarea:focus, .bfQuickMode .uneditable-input:focus {
        width: 94%!important;
        max-width: 94%!important;
        min-width: 94%!important;
    
}

.bfQuickMode .bfLabelRight label {
    width: 100%!important;
   
}
.bfQuickMode .bfbs5-nonform-control, .bfQuickMode .nonform-control {
 
    width: 10%!important;
}

#bfLabel18 { width: 90%!important;}

  
  h2, .h2 {
    font-size: 2.7rem;
}
  
  .titolo1, .animated-heading-before-part{ font-family:  "Cabin Sketch", sans-serif;
font-size: 3rem; line-height: normal; color:#fff; clear: both; display: block  }

.titolo2, .animated-text-words-wrapper{   font-family: "Montserrat", serif;
font-size: 4rem;
font-weight: 800;
letter-spacing: 5px; line-height: normal; color:#fff}


  
  .border-image {margin-left: -1px; padding-top:90px; padding-bottom:0px; padding-right:15px; background: #fff;  animation: spFade 0.7s;
transition: width 0.5s ease-in-out;}

.border-image2 {margin-right: -1px; padding-top:0px; padding-bottom:90px; padding-left:15px; background: #fff;  animation: spFade 0.7s;
transition: width 0.5s ease-in-out;}


  
  
  
}


/* IPAD VERTICALE */
@media (min-width: 768px) and (max-width: 1023px){
  
 
.logo-image {height: 50px!important}

#sp-header {
    height: 70px;
    background: #fff;
}
}


/* IPAD ORIZZONTALE e IPAD PRO VERTICALE */
@media (min-width: 1024px) and (max-width: 1365px){
   .sp-megamenu-parent>li {
    display: inline-block;
     margin: 0 10px; 
} 
}


/* IPAD PRO ORIZZONTALE */
@media (min-width: 1365px) and (max-width: 1659px){
  
  .sp-megamenu-parent>li {
    display: inline-block;
     margin: 0 20px; 
}
}

@media (min-width: 1650px){
  
 
}




/* ------------------------------------------------------------------------------------ */







.cc-revoke.cc-top {
    right: 0!important;
    font-size: 12px;
    top: auto!important;
    bottom: 0!important;
    border-bottom-left-radius: 0!important;
    border-bottom-right-radius: 0!important;
}