/*
Theme Name: bravi-a-costruire-theme-child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

@import './css/ali-font.css';

/*************** ADD CUSTOM CSS HERE.   ***************/
/*************** FONTS ******************/

@font-face {
    font-family: 'Baorue';
    src: url('./fonts/Baorue/Baorue.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('./fonts/Montserrat/Montserrat-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('./fonts/Montserrat/Montserrat-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('./fonts/Montserrat/Montserrat-SemiBold.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('./fonts/Montserrat/Montserrat-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}


/* Applicazione dei font agli elementi */
h1 {
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
}

h2,
h3,
h4,
h5,
h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
}

body,
p,
a,
li {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
}

/*************** END FONTS ******************/
/*************** Icons *********************/

/*************** END Icons *********************/
/*************** Utility  *******************/
.wpcf7-not-valid-tip{
    font-size: 14px !important;
}
/*************** END Utility  *******************/


/****** Header ********/
.header-nav-main.nav-line-bottom > li > a:before{
    background-color: #f5b335 !important;
    max-width: 40px;
    height: 2.2px ;
}

.header-nav-main.nav-line-bottom > li > a{
    font-weight: 500;
}
.nav-spacing-xlarge>li {
    margin: 0 20px;
}
/****** END Header ********/


/***** Home page *******/

/*** Card dei numeri ***/


.numeri-row {
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

.numeri-cards .col-inner.box-shadow-5-hover:hover {
    position: absolute;
    z-index: 2;
   /* height: 200%;*/
}

.numeri-cards .col-inner.box-shadow-5-hover:hover {
    background-color: #F5B335 !important;
    color: white !important;
}

.numeri-cards .col-inner.box-shadow-5-hover:hover * {

    color: white !important;
}

.numeri-cards .col-inner.box-shadow-5-hover:hover img {
    -webkit-filter: brightness(10);
    filter: brightness(10);
}
@media screen and (min-width: 850px) {
.numeri-row{
    background-color: white ;
    position: relative;
    bottom: 5rem !important;
}

}
@media screen and (min-width: 600px) {
 .numeri-cards:hover > .col-inner{

    color: white !important;
    transform: scale(1.1);
}
.numeri-cards > .col-inner{
transition: all 0.5s ease-in-out;
}
.numeri-cards *{
   transition: all 0.5s ease-in-out;
}
.numeri-cards:hover h2,
.numeri-cards:hover h3{
    color: white !important;
}

.numeri-cards:hover img{
    filter: invert(100%) grayscale(50%) sepia(15%) brightness(1.75);

}

.numeri-cards:hover > .col-inner{
    background-color: #F5B335 !important;
    color: white !important;
    transform: scale(1.1);
}

.jumbo-servizi-row:has(.numeri-cards:hover)  .numeri-cards:not(:hover) > .col-inner{
     transform: scale(0.90);
}
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    background-color: rgb(71 71 71 / 17%);
    color: #000000;
    border-color: #f5b335 !important;
}
.wpcf7 form.sent .wpcf7-response-output {
    background-color: rgb(0 0 0 / 0%);
    color: #000000;
    border-color: #3a8a42 !important;
}
/*** END Card dei numeri ***/
.numeri-cards > .col-inner > .row {
height: 100% !important;
}

/*** Sezione Servizi ***/
 .servizi-img-height, .servizi-img-height .img-inner{
     height: 100% !important;
     object-fit: fill !important;
 }
 

.custom-icon {
    display: flex;
    background-color: #243646;
    height: 90px !important;
    width: 90px !important;
    justify-content: center;
    align-items: center;
    margin: 1.5rem auto !important;
    padding-top: 0.6rem;
transition: background-color 200ms linear;
}

/*.custom-icon:hover {
    background-color: #F5B335 !important;
    -webkit-transition: background-color 200ms linear;
    -ms-transition: background-color 200ms linear;
    transition: background-color 200ms linear;
}*/

.custom-icon i::before {
    font-size: 40px;
    color: white;

}

.btn-servizi-cstm {
    color: #243646 !important;
    font-weight: 600 !important;
}

.btn-servizi-cstm:hover {
    color: #F5B335 !important;
    -webkit-transition: color 200ms linear;
    -ms-transition: color 200ms linear;
    transition: color 200ms linear;
}
.btn-servizi-cstm::after {
transition: transform 0.3s ease;
}
.btn-servizi-cstm:hover::after {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}

.btn-servizi-cstm::after {
    content: "c";
    font-family: "ali-font" !important;
    font-size: 2rem;
    position: relative;
    bottom: -10px;
    left: 10px;
    display: inline-block;
    transform: rotate(-45deg);
}

.contact-form-btn::after {
    content: "c";
    font-family: "ali-font" !important;
    font-size: 2rem;
    position: relative;
    bottom: -10px;
    left: 10px;
    display: inline-block;
    transform: rotate(-45deg);
}

.card-servizi:has(.btn-servizi-cstm:hover) .custom-icon {
    background-color: #F5B335;
}

.bg-pattern-right{
     background-image: url("/wp-content/uploads/2024/12/pattern.svg");
     background-size: 45%;
     background-repeat: no-repeat;
     background-position: right;
}

@media only screen and (max-width: 550px) {
.bg-pattern-right {
    background-image: url(/wp-content/uploads/2024/12/pattern.svg);
    background-size: 100% !important;
    background-repeat: no-repeat;
    background-position: center;
}
}
/*** END Sezione Servizi ***/
/**** Chi siamo *****/
.anni-div {
    height: 25.1%;
    width: 24.9%;
    background-color: rgba(0, 33, 66, 0.9);
    color: white;
    padding: 0.7rem 0.8rem;
    position: absolute;
    top: calc(100% - 25.1%) !important;
    right: 0;
}
.anni-number::after{
    content: "+";
}
.anni-txt{
    font-size: 0.7rem;
    color: white;
    text-transform: none;
}
.anni-img{
position: relative;
top: 0;
}
@media only screen and  (min-width: 950px)  {
.anni-number{
    font-size: 1.8rem !important;
    font-weight: bold;
}

}
@media only screen and  (max-width:949px) and (min-width: 851px)  {
.anni-number{
    font-size: 2rem !important;
    font-weight: bold;
}

}
@media only screen and  (max-width: 550px) and (min-width: 350px)  {
.anni-number{
    font-size: 2rem !important;
    font-weight: bold;
}
.anni-div {
    padding: 0.3rem 0.7rem !important;

}
}

.img-bordo{
    border-top: 10px solid white;
    border-right: 10px solid white;
    z-index: 5;
}


/**** END Chi siamo *****/

/**** Servizi ****/
.row-servizi .card-servizi{
    display: flex;
    align-items: center;
    background-color: rgba(36, 54, 70, 0.924) ;
}

.row-servizi .card-servizi .col-inner{
    background-color: transparent !important;
}
.card-servizi{
        background-image: url(http://braviacostruire.sviluppo.host/wp-content/uploads/2024/12/pattern.svg);
    background-size: contain;
}
.form-contatto-row .col{
    padding-bottom: 10px;
}



.form-contatto-row select{
    margin-bottom: 0;
    background-color: #f7f7f7 !important;
    box-shadow: none !important;
    border: none;
}


.form-contatto-row .col-inner:has(.cstm-tooltip) {
    display: flex;
    justify-items: center;
    align-items: center;
    margin-bottom: 1rem;

}

.form-contatto-row .col-inner:has(.cstm-tooltip) .wpcf7-form-control-wrap {
   flex-grow: 1;
}

.form-contatto-row .col-inner .cstm-tooltip {
	cursor: pointer;
	display: block;
    margin-left: 5px;
    width: 20px !important;
    min-width: 20px;
    height: 20px !important;
    background-size: cover;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciICB2aWV3Qm94PSIwIDAgNTAgNTAiIHdpZHRoPSI1MHB4IiBoZWlnaHQ9IjUwcHgiPjxwYXRoIGQ9Ik0gMjUgMiBDIDEyLjMwOTI5NSAyIDIgMTIuMzA5Mjk1IDIgMjUgQyAyIDM3LjY5MDcwNSAxMi4zMDkyOTUgNDggMjUgNDggQyAzNy42OTA3MDUgNDggNDggMzcuNjkwNzA1IDQ4IDI1IEMgNDggMTIuMzA5Mjk1IDM3LjY5MDcwNSAyIDI1IDIgeiBNIDI1IDQgQyAzNi42MDk4MjQgNCA0NiAxMy4zOTAxNzYgNDYgMjUgQyA0NiAzNi42MDk4MjQgMzYuNjA5ODI0IDQ2IDI1IDQ2IEMgMTMuMzkwMTc2IDQ2IDQgMzYuNjA5ODI0IDQgMjUgQyA0IDEzLjM5MDE3NiAxMy4zOTAxNzYgNCAyNSA0IHogTSAyNSAxMSBBIDMgMyAwIDAgMCAyMiAxNCBBIDMgMyAwIDAgMCAyNSAxNyBBIDMgMyAwIDAgMCAyOCAxNCBBIDMgMyAwIDAgMCAyNSAxMSB6IE0gMjEgMjEgTCAyMSAyMyBMIDIyIDIzIEwgMjMgMjMgTCAyMyAzNiBMIDIyIDM2IEwgMjEgMzYgTCAyMSAzOCBMIDIyIDM4IEwgMjMgMzggTCAyNyAzOCBMIDI4IDM4IEwgMjkgMzggTCAyOSAzNiBMIDI4IDM2IEwgMjcgMzYgTCAyNyAyMSBMIDI2IDIxIEwgMjIgMjEgTCAyMSAyMSB6Ii8+PC9zdmc+) !important;
    background-repeat: no-repeat;
}
.tippy-box{
    background-color: #243646 !important;
}

.tippy-arrow::before{
    color: #243646 !important;
}

/**** END Servizi ****/

/***** END Home page *******/

/**** Progetti ****/
.portfolio-box-excerpt{
    font-size: 0.9rem !important;

}

.portfolio-box-title{
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
            opacity: 1 !important;
}

.portfolio-box-category{
    font-size: 1rem !important;
    font-weight: 500 !important;
    color: white !important;
    opacity: 1 !important;
}

.section-progetti-porfolio ul.filter-nav{
    margin-bottom: 3rem;
    justify-content: start;
}

.section-progetti-porfolio ul.filter-nav li{

    padding: 0.2rem 1.5rem;
}

.section-progetti-porfolio ul.filter-nav li a{
    color: black;
}

.section-progetti-porfolio ul.filter-nav li.active{
    background-color: #F5B335;
    padding: 0.2rem 1.5rem;
    color: white !important;
}

.section-progetti-porfolio ul.filter-nav li.active a{

    color: white !important;
}
.section-progetti-porfolio ul.filter-nav li a::before{
   display: none !important;
}

@media only screen and (max-width: 550px) {
  .section-progetti-porfolio ul.filter-nav li{
    padding: 0.2rem 0.56rem;
}

.section-progetti-porfolio ul.filter-nav li a{
    font-size: 0.7rem;
}

.section-progetti-porfolio ul.filter-nav{
margin-bottom: 2rem;
   justify-content: center !important;
	        flex-wrap: nowrap;
}
	.row.progetti-portfolio .col{
    padding-right: 10px !important;
    padding-left: 10px !important;
}

.row.progetti-portfolio {
    margin: 0px !important;
}
	.section-progetti-porfolio ul.filter-nav li.active{
    padding: 0.2rem .5rem;

}
}


/**** END Progetti ****/
/*** Come lavoriamo ***/
.tabs-come-lavoriamo .nav-vertical > li p{
    color: #b2b2b2;
    font-weight: 300;
    font-size: .8rem;
}
.tabs-come-lavoriamo .nav-vertical > li h5{
    color: #b2b2b2;
    font-weight: 500;
    margin-bottom: 0px;
    font-size: 1rem;
}

.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.tab::before{
content: "";
height: 27px;
width: 27px;
border-radius: 999rem;
background-color: transparent;
display: inline;
position: relative;
right: 0px;
bottom: 5px;
z-index: 999999;
border: 8px solid #b2b2b2;

}
.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.active.tab::before{
    border: 8px solid #f5b335;
}
.tabs-come-lavoriamo .nav-vertical > li.active h5{
    color: #f5b335;
}
.tabs-come-lavoriamo .nav-vertical>li {
    flex-flow: nowrap;
    border: 0;
}

.tabs-come-lavoriamo .nav-vertical.nav-tabs>li.active>a {
    border-left: 0px ;
}
.nav-vertical.nav-tabs>li>a {
   background-color: transparent !important;
   padding:  13px;
  
}

@media only screen and (min-width: 850px) {
   .tabs-come-lavoriamo.tabbed-content .nav-vertical {
        width: 45% !important;
    }
}

.img-bordo-img .img-inner{
    border-top: 10px solid white;
    border-right: 10px solid white;
    z-index: 5;
}

.tabs-come-lavoriamo .nav-tabs+.tab-panels{
        border: 0px solid transparent !important;
}
/*@media only screen and (min-width: 850px) {
.tabs-come-lavoriamo-title{
    position: absolute;
    bottom: 100%;
}
}*/

@media only screen and (max-width: 850px) {
.tabs-come-lavoriamo .nav-tabs+.tab-panels {
    padding-left: 10px;
     padding-right: 10px;
}
}



.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.tab::after {
    content: "";
    height: 50%;
    width: 1px;
    border-radius: 999rem;
    background-color: transparent;
    display: inline;
    position: relative;
    right: 96.9%;
    bottom: -30px;
    border: 1.4px solid #b2b2b2;
}

.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.active.tab::after{
    border: 1.4px solid #f5b335;
}




@media only screen and (max-width: 850px) {
    .tabs-come-lavoriamo .nav-vertical.nav-tabs > li.tab::after {
    height: 45%;
    width: 1px;
    right: 98%;
    bottom: -30px;

}
}
@media only screen and (max-width: 550px) {
    .tabs-come-lavoriamo .nav-vertical.nav-tabs > li.tab::after {
    height: 45%;
    width: 1px;
    right: 96%;
    bottom: -30px;

}
}

/*** effetto tab ***/
/*.tabs-come-lavoriamo .nav-vertical.nav-tabs {
    display: flex;
    flex-direction: column-reverse;  justify-content: start;
}

.tabs-come-lavoriamo .nav-vertical.nav-tabs > li::after,
.tabs-come-lavoriamo .nav-vertical.nav-tabs > li::before {
    border: 1.4px solid transparent; 
}

.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.active ~ li::after,
.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.active ~ li::before {
    border: 1.4px solid #f5b335; 
}

.tabs-come-lavoriamo .nav-vertical.nav-tabs > li.active::after {
    border: 1.4px solid #f5b335;
}
*/
/***************************************/




/**** Contatti *****/
/** Form **/
.form-contatto-row .contact-form-input,
.form-contatto-row .contact-form-textarea,
.form-contatto-row .wpcf7-select{
    background-color: #f7f7f7 !important;
    box-shadow: none !important;
    border: none;
}

.form-contatto-row .contact-form-input::placeholder,
.form-contatto-row .contact-form-textarea::placeholder{
    color: black;
}
.form-contatto-row .contact-form-checkbox + span{
    color: #b2b2b2 !important;
    font-weight: 200;
}

.form-contatto-row .contact-form-btn{
    background-color: #f5b335 !important;
    margin-top: 2rem;
    font-weight: 200;
}

.form-contatto-row .contact-form-btn{
    background-color: #f5b335 !important;
    margin-top: 2rem;
    font-weight: 200;
}


.form-contatto-row input::placeholder, .form-contatto-row textarea::placeholder{
    opacity: 0.5  !important;
    font-weight: 200;
}

.form-contatto-row input:not(.wpcf7-submit), .form-contatto-row textarea{
    color: black;
    font-weight: 500;
}


.form-contatto-row select option:not(:first-child) {
  color: black;
}
.form-contatto-row select option:first-child {
   opacity: 0.5  !important;
    font-weight: 200;
}

.form-contatto-row select option {
  font-weight: 500;
}





/** END Form **/
/**** END Contatti *****/

/**** Footer *****/
#footer .footer-blu-bg{
     background-image: url("/wp-content/uploads/2024/12/pattern.svg");
     background-size: 55%;
     background-repeat: no-repeat;
}


/*** Test Slider ****/
.navigation-fixed{
    position: relative !important;
    top: 0;
    left: 0;

}
.navigation-fixed > .col-inner{

    position: sticky;
    top: 150px;
}

.navigation-fixed .sticky-list p{
    font-size: .8rem;
    font-weight: 400;
    opacity: .8;
}
.navigation-fixed .sticky-list h5{
    margin-bottom: 0;
    font-weight: 400;
}

.navigation-fixed .sticky-list ul{
    list-style: none;

}
.navigation-fixed .sticky-list li{
    margin-bottom: 1.7rem !important;
    position: relative;
    top: 0;
    left: 0;

}
.navigation-fixed .sticky-list h5::before{
   content: "";
   height: 23px;
   width: 23px;
   border-radius: 999rem !important;
   background-color: white;
   display: inline-block;
   position: absolute;
   border: 7px solid #b2b2b2;
   right: 101%;
}
.navigation-fixed .sticky-list h5::after {
    content: "";
    height: 60%;
    width: 3px;
    display: inline-block;
    position: absolute;
    background-color: #b2b2b2;
    right: calc(101% + 10px);
    top: 40%;
}

.current-active h5{
    color: #F5B335 !important;
}

.current-active  h5::before{
    border: 7px solid  #F5B335 !important;
}
.current-active  h5::after{
    background-color:  #F5B335 !important;
}


.done-active h5{
    color: #F5B335 !important;
}
.done-active  h5::before{
    border: 7px solid  #F5B335 !important;
}
.done-active  h5::after{
    background-color:  #F5B335 !important;
}
.scroll-to-bullets + .tooltipster-base{
    opacity: 0 !important;
    pointer-events: none;
}

.sticky-list ul li a h5 {
    transition: color .25s linear;
}
.navigation-fixed .sticky-list h5::before, .navigation-fixed .sticky-list h5::after{
     transition: background-color .25s linear;
}

.navigation-fixed .sticky-list h5::before{
     transition: border .25s linear ;
}
.scroll-to-bullets{
    display: none;
}


.scroll-to-bullets{
   opacity: 0;
}
.done-active h5::before{
    border: 7px solid  #F5B335 !important;
}
.done-active h5::after{
    background-color:  #F5B335 !important;
}
.current-active  h5::before{
    border: 7px solid  #F5B335 !important;
}

.current-active  h5::after{
    background-color:  #F5B335 !important;
}

.sticky-list ul li a{
    text-decoration: none !important;
}

.sticky-list ul li a h5{
    color: #b2b2b2;
}
.sticky-list ul li a{
    color: #b2b2b2;
}

@media only screen and (max-width: 1050px) {
  .navigation-fixed > .col-inner {
    top: 100px;
}

.navigation-fixed .sticky-list li {
     margin-bottom: 0.5rem !important;
    position: relative;
    top: 0;
    left: 0;
}
}

@media only screen and (max-width: 850px) {
    .navigation-fixed .sticky-list h5 {
    font-size: 0.9rem;
}
    .navigation-fixed .sticky-list p {
    font-size: 0.7rem !important;
    letter-spacing: -0.5px;
}

.navigation-fixed .sticky-list h5::after {
    height: 70% !important;

}
}
#footer .absolute-footer{
    display: none;
}

/** Form newsletter **/
.newsletter-input{
    background-color: transparent !important;
border: none !important;
box-shadow: none !important;
border-bottom: 2.5px solid white !important;
   /* padding-bottom: 1.5rem !important;*/
    margin-bottom: 1.5rem !important;
	   color: white !important;
}

.newsletter-input::placeholder{
    color: white !important;
    font-weight: 300;

}

.newsletter-btn{
    background-color: white !important;
    border-radius: 5px !important;
    text-transform: none !important;
    padding: 0.2rem 3rem !important;
    color: black !important;
    margin-top: 1.7rem !important;
}

.newsletter-checkbox + span{
    color: white !important;
    font-weight: 300;
    font-size: 10px;
}
.newsletter-checkbox + span a{
    color: white !important;
    font-weight: 300;
    font-size: 10px;
    text-decoration: underline;
}
.informativa-newsletter{
   color: white !important;
    font-weight: 300;

    font-size: 10px;

flex-grow: 2;
}
.informativa-container .wpcf7-not-valid-tip{
    top: 7px;
}
.informativa-newsletter a{
   color: white !important;
    text-decoration: underline;
}
.informativa-container span.wpcf7-form-control-wrap {
    display: inline !important;
}

form .wpcf7-list-item{
    margin: 0 !important;
}
form .contact-form-checkbox{
     margin-bottom: 0 !important;
}

.informativa-container .informativa-newsletter{
    line-height: 7px !important;
}

.informativa-container .wpcf7-not-valid-tip{
    opacity: 1 !important;
}
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: transparent !important;
	    margin-top: 0;
    margin-left: 0;
}
.wpcf7 form.invalid .wpcf7-response-output{
    background-color: #f5b335;
    color: #ffffff !important;
    border-color: #f5b335 !important;
    font-weight: 400;
    display: inline-block;
    text-wrap: wrap !important;
	    margin-top: 0;
    margin-left: 0;
}

.wpcf7 form.sent .wpcf7-response-output{
    background-color: #46b251 !important;
    color: #ffffff !important;
    border-color: #46b251 !important;
    font-weight: 400;
    display: inline-block;
	    margin-top: 0;
    margin-left: 0;
}
select + .wpcf7-not-valid-tip{
    top: 14.5px;
}

/** END Form newsletter **/
/**** END Footer *****/
form.wpcf7-form .wpcf7-spinner{
    display: none !important;
}
/*.col-inner:has(> .custom-icon:hover) .btn-servizi-cstm span{
    color: #F5B335 !important;
}

.col-inner:has(> .custom-icon:hover)  .btn-servizi-cstm::after {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
    color: #F5B335 !important;
}*/
/** Nascondo Badge Google Recaptcha **/
.grecaptcha-badge{
    visibility: hidden;
}
/** END Nascondo Badge Google Recaptcha **/
@media only screen and (max-width: 48em) {
    /*************** ADD MOBILE ONLY CSS HERE  ***************/


}