/*
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:*/

.w-grid.type_grid.sedi_lista .w-grid-list{
    display:flex!important;
    flex-wrap:wrap;
    justify-content:center;
    gap: 12px 12px;
    padding:0;
    margin:0;
    list-style:none;
}
@media (max-width: 600px) {
  .us-btn-style_4 {padding: 0.5em 1.4em;}

}
.wpcf7-list-item-label{font-size: 13px;}
.overflow-hidden{overflow: hidden;}


.w-iconbox-icon svg{height: 130px;width: auto;}
.icona_cuore .w-iconbox-icon svg{height: 115px;width: auto;}

.no-touch .w-tabs.remove_indents>div>div>.w-tabs-section-header:hover, .no-touch .w-tabs.remove_indents>div>div>.w-tabs-section-header:focus {background: transparent!important;}
.w-tabs.accordion>div>.w-tabs-section{border:0;border-bottom: 1px solid #E30613;background: transparent!important;}
.w-tabs-section-title{
    color: #0075BF;
    font-size: 24px;
font-style: normal;
font-weight: 700;background: transparent!important;
}

.meteo-toscana-widget .meteo-aggiornato {
    margin-top: 8px;
    font-size: 0.9em;
    text-align: center;
    opacity: 0.8;
}

.w-tabs-section:last-child {border:0!important;}

.w-tabs-section-control::after{display: none;}

.w-tabs-section-control::before {
  content: "";
  display: inline-block;           /* o position:absolute; per layout più preciso */
  width: 26px!important;
  height: 29px!important;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  /* SVG in data URI – il # è codificato come %23 */
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 29' fill='none'><path d='M3 13.1558L13.0716 3.25586M13.0716 3.25586L23 13.0149M13.0716 3.25586L13.0715 26.2559' stroke='%23E30613' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat!important;
background-size: 100%;

  vertical-align: middle; 
  position: absolute;

}
.w-tabs-section-header {

    padding: 1.5em 1.5em;
}
.w-tabs-sections.icon_chevron>div>.w-tabs-section-header .w-tabs-section-control:before {
    left: 0;
    transform: rotate(180deg);
}

@media (max-width: 768px) {
    .w-tabs-section-title {
        color: #0075BF;
        font-size: 17px !important; 
    }
    .w-tabs-section-control::before {
        content: "";
        display: inline-block;
        width: 16px !important;
        height: 18px !important;
    }
}



.timeline-container {
  position: relative;
  padding: 20px 0;
}

.timeline-container:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 170px;
  bottom: 0;
  width: 4px;
  background: #E30613;
  transform: translateX(-50%);
  height: 100%;
}
.timeline-container-last::before {

  height: 0;
}

/* .timeline-container .wpb_column > div {
  position: relative;
  margin-bottom: 50px;
}

.timeline-container .wpb_column > div:nth-child(odd) {
  padding-right: 55%;
  text-align: right;
}

.timeline-container .wpb_column > div:nth-child(even) {
  padding-left: 55%;
  text-align: left;
} */

/* Punti sulla timeline */
.timeline-container .vc_row > .wpb_column.vc_column_container:first-child > .vc_column-inner .g-cols{position: relative;}
.timeline-container .vc_row > .wpb_column.vc_column_container:first-child > .vc_column-inner .g-cols::after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #ffffff;
    border: 4px solid #E30613;
    border-radius: 50%;
    top: calc(50% - 10px);
    right: -60px;
    transform: translateX(-50%);
    z-index: 1;
}

.dettagli_sede i.far, .dettagli_sede i.fab{
    color: #E30613;
}
.wpcf7-spinner {
    margin: 18px 24px 0px;
}
@media (max-width: 600px) {
    .timeline-container .w-image {
        display: none;
    }

 .timeline-container .g-cols.via_grid {
    display: grid;
    gap: 0;
    }
}

.wpcf7-submit{margin-top: 10px;}

.cuoricino .w-iconbox-icon svg{
    height: 40px;
}

.cuoricino .w-iconbox-icon{margin-bottom: 20px;}
.cuoricino{margin-bottom: 40px!important;}
@media (max-width: 600px) {
  .cuoricino{margin-bottom: 30px!important;}
}





/* Stili per le province nel SVG */
#province g[id] {
    cursor: pointer;
    transition: all 0.3s ease;
}

#province g[id]:hover polygon,
#province g[id]:hover .st3 {
    fill: #ffcccc !important;
    stroke: #ea250a;
    stroke-width: 2px;
}

#province g[id].active polygon,
#province g[id].active .st3 {
    fill: #ff9999 !important;
    stroke: #ea250a;
    stroke-width: 3px;
}

.provincia-cliccabile.provincia-attiva .st3 {
fill: #ff9999 !important;
stroke: #ea250a;
stroke-width: 3px;
}


/* Info divs - inizialmente nascosti */
.provincia-info {
    display: none!important;
    animation: fadeIn 0.3s;
}

.provincia-info.show-info {
    display: grid!important;
}

.show-info .us_custom_cc20152c{
    padding: 40px 20px !important;
}

.fs-29{
    font-size: 29px;
}
@media (max-width: 768px) {
  .fs-29{
    font-size: 22px;
}
}
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}


.organigramma .wpb_column.vc_column_container{
    margin-bottom: 40px;
}
@media (max-width: 768px) {
  .organigramma .wpb_column.vc_column_container{
    margin-bottom: 25px;
}
}

.meteo-toscana-widget {
    max-width: 800px;
    margin: 0 auto;
    padding: 1rem;
    background: #f7f7f7;
    border-radius: 8px;
}

.meteo-toscana-widget .titolo {
    font-weight: 600;
    text-align: center;
}

.meteo-toscana-widget .sottotitolo {
    text-align: center;
    margin-bottom: 1rem;
    font-style: italic;
}
