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

/*************** ADD CUSTOM CSS HERE.   ***************/
:root {
    /*--kwprimary: #36c9d9;*/
	--blu: #1D5485;
    --verde: #69B799;
	--azzurro: #86C5D2;
	--rosa: #EFAEB9;
	--verdechiaro: #AED4C2;
	--giallo: #F0B783;
	--fontsmall: 16px;
	--fontmedium: 18px;
	--bianco: white;
	--bordo: 20px;
}

@font-face {
    font-family: 'Yanone Kaffeesatz';
    src: url('https://www.brainandcare.sviluppo.host/wp-content/themes/brainandcare-theme/font/YanoneKaffeesatz-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
.verdechiaro{
	color: var(--verdechiaro);
}
.verdescuro{
	color: var(--verde);
}
.azzurro{
	color: var(--azzurro);
}
.bgverdescuro{
	background-color: var(--verde);
}
.bgazzurro{
	background-color: var(--azzurro);
}
.bianco,
.bottom.bgblu,
.bottom.bgblu a,
.bgblu .top{
	color: var(--bianco) !important;
}
.arancio{
	color: var(--giallo);
}
.bgarancione{
	background-color: var(--giallo);
}
.bgblu{
	background-color: var(--blu);
}
.title-h2-green{
	font-size: 40px;
}
.fontsmall{
	font-size: var(--fontsmall);
}
.border-blu{
	border: var(--bordo) solid var(--blu);
}
.border-bianco{
	border: var(--bordo) solid var(--bianco);
}
.border-verdechiaro{
	border: var(--bordo) solid var(--verdechiaro);
}
.border-verdescuro{
	border: var(--bordo) solid var(--verde);
}
.border-arancio{
	border: var(--bordo) solid var(--giallo);
}
.f600, .h1{
	font-weight: 600;
}
.f700{
	font-weight: 700;
}
.page-template-page-blank-landingpage label{
	font-weight: 400;
}
body,.text-footer,body.page-template-page-blank-landingpage{
	font-size: 20px !important;
	line-height: 1.2 !important;
}
.text-20,.page-template-page-blank-landingpage .button{
	font-size: 20px
}
.page-template-page-blank-landingpage .button.is-larger{
	font-size: 1.3em;
}
h1, .h1,
h2, .h2,
h3, .h3{
	line-height: 1 !important;
	margin-bottom: 0;
}
h1, .h1{
	font-size: 64px;
}
.h1-big{
	font-size: 90px;
	text-transform: uppercase;
}
.row-press-area h2,
.row-press-area h2 a{
	line-height: 1.1 !important;
}
h2,.h2{
	font-size: 64px;
	margin: 0 !important;
	font-weight: 600 !important;
}
h2 + p{
	margin-top: 15px;
}
.font-h3, .h3,
.page-id-328 .rivolgiamo .icon-box .icon-box-text h2,
#gia-year-title{
	font-family: "Kantumruy Pro", sans-serif;
}
.font-h3{
	font-size: 32px !important;
}
.h3{
	font-size: 20px;
}
.h3 + p{
	font-size: var(--fontsmall);
	margin-top: 10px;
}
.size-32,
a.custom-btn{
	font-size: 32px !important;	
}
.font18{
	font-size: var(--fontmedium);
}
#footer .text-center-mobile,
.accordion-inner p{
	font-size: var(--fontmedium);
}
section,
.blog-archive{
	padding-top: 70px !important;
	padding-bottom: 70px !important;
}
.partnership-section{
	padding-bottom: 30px !important;
	padding-top: 30px !important;
	margin-bottom: 70px;
}
.pt-40{
	padding-top: 40px !important;
}
.section-articoli-blog{
	display: inline-block !important;
	padding-bottom: 0;
}
.section-articoli-blog .entry-content{
/*	max-width: 1080px;*/
	margin-left: auto;
	margin-right: auto;
	max-width: 1250px;
}
.padding0{
	padding: 0 !important;
}
p{
	margin-bottom: 0 !important;
}
.entry-content h2{
	margin-top: 25px !important;	
}
.entry-content h3{
	margin-top: 20px !important;
	margin-bottom: 12px !important;
	font-size: 32px;
}
p + p,
h2.font-h3 + ul,
.more-text,
ul, ol{
	margin-top: 12px !important;
}
ul{
	margin-bottom: 0;
}
ul.header-nav,
ul.sub-menu{
	margin-top: 0 !important;
}
.header-nav>li>a {
    font-size: var(--fontsmall);
    color: var(--bianco) !important;
}

/*.header-nav>li{
	flex: 1;	
}*/
.header-nav{
	justify-content: space-between;
}
.header-bottom .flex-col{
	width: 100%;
}
.has-dropdown .icon-angle-down{
	font-size: 20px;
    opacity: 1;
    font-weight: bold !important;
}
.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 40px; /* margine laterale globale */
  background-color: #194b7a;
}

.navbar ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
}

.navbar li {
  display: flex;
  align-items: center;
  gap: 5px; /* Spazio tra testo e freccia */
}

.navbar a {
  color: white;
  text-decoration: none;
  font-weight: 500;
  padding: 10px 5px;
  white-space: nowrap;
}
a.button, .font-yanone,
.pre-footer,
ul.sub-menu .menu-item,
.section-menu .dark .ux-menu-link__link,
#main-menu.mobile-sidebar ul li a, .h2,
.flip-card-front p,
.elenco, .network,
.accordion-title,
.header-name .name,
.collab, .h1, .name-bar, .info-bar, .city-box .font-h3,
.gia-year-item{
	font-family: "Yanone Kaffeesatz", sans-serif;
}
h2, .h2,
h1, .h1,
h3,p.font-h3,
.accordion-title,
.flip-card-front p,
.pre-footer,
.header-name .name,
.collab,
.blog-archive h5.post-title a,
.name-bar, .spacing{
	letter-spacing: 2px !important;
}
p{
	letter-spacing: 1px !important;
}
.blog-archive h5.post-title a{
	text-transform: uppercase;
}
/*a.button,*/
.pre-footer,
.font-30{
	font-size: 30px !important;
}
.numeroverde,
.flip-card-front p,
#gia-year-title{
	font-size: 32px;
}
.dark p,
ul.sub-menu .menu-item a,
.off-canvas-left.dark .mfp-content .mobile-sidebar ul li a{
	color: var(--bianco);
}
.custom-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-right: 3rem; /* spazio per l’icona */
	overflow: visible; /* permette all’icona di sporgere */
	border-radius: 99px;
	min-height: 60px;
}

/* Dimensioni icona altezza come pulsante */
.icon-svg {
	height: 100%; /* usa l’altezza del pulsante */
	width: auto;
	transition: opacity 0.3s ease;
	position: absolute;
	right: -5px; /* sporge verso destra */
	top: 0;
	bottom: 0;
	margin: auto;
}

/* Nascondi l’icona hover all’inizio */
.icon-svg.hover {
	opacity: 0;
}

/* Al passaggio del mouse: cambia icona */
.custom-btn:hover .icon-svg.default {
  opacity: 0;
}

.custom-btn:hover .icon-svg.hover {
  opacity: 1;
}
#footer .message-box,
.loghi-hub{
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}
.social-icons .button.icon:not(.is-outline) {
    background-color: var(--bianco) !important;
    border-color: var(--bianco) !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    margin: 0 .25rem;
	font-size: 1.05rem !important;
}
.social-icons .button.icon:not(.is-outline) i {
    color: var(--blu) !important;
	top: 0;
}
/* sub menù */
.header-nav .sub-menu{
	background-color: var(--verde);
	border-radius: 10px;
	border: none;
}
.nav-dropdown.nav-dropdown-default>li>a,
.section-menu .dark .ux-menu-link__link{
	border: none;
	font-size: 22px;
	min-height: auto;
	padding-bottom: 10px;
	padding-top: 10px;
	text-transform: uppercase;
	font-weight: 500;
}
.ul.sub-menu .menu-item{
	min-height: auto;
}
.section-menu{
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}
.header-nav li .sub-menu li > a{
	display: inline-block;
	align-items: center;
	margin-left: 0;
}
.header-nav li .sub-menu li > a::before,
#main-menu .sidebar-menu .children a::before,
.menu-percorsi .ux-menu-link__text::before{
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 0px;
	background-image: url('https://www.brainandcare.sviluppo.host/wp-content/uploads/icon-menu.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.header-nav li .sub-menu li > a:hover,
#main-menu .sidebar-menu .children a:hover,
.menu-percorsi .ux-menu-link__text:hover{
	color: var(--giallo);
}
.off-canvas-left.dark .mfp-content{
	background: var(--blu);
}
/* fine sub menù */

.img-slide-home{
	padding-left: 0;
}
.ptb-20{
	padding-bottom: 20px;
	padding-top: 20px;	
}
.row + .row,
.mt-60{
	margin-top: 60px;
}
.mt-30{
	margin-top: 30px !important;
}
.mt-20{
	margin-top: 20px !important;
}
.timeline-chisiamo .row + .row{
	margin-top: 0 !important;
}
/*.box-white{
	padding-left: 0 !important;
	padding-right: 0 !important;
}*/
.box-white .col-inner{
	padding-left: 15px !important;
	padding-right: 15px !important;
}
.row-btn{
	top: -30px;
	position: relative;
}
.bgverdescuro{
	width: 500px;
}
/* slide percorsi */
/* Correzione principale per il pulsante cliccabile */
.equal-image-boxes .slider .is-selected .custom-btn-wrapper {
	position: relative;
	top: -34px;
	text-align: center;
	z-index: 10; /* Sopra overlay o box */
}

.equal-image-boxes .slider .is-selected .custom-btn-wrapper a {
	display: inline-flex; /* Occupa tutta l’area del link */
	align-items: center;
	justify-content: center;
	width: 300px;
	font-size: 32px !important;
	background: var(--azzurro);
	color: var(--bianco);
	text-decoration: none;
	cursor: pointer;
	pointer-events: auto; /* Assicura che il link sia cliccabile */
	margin-right: 0;
}

.equal-image-boxes .custom-btn-wrapper a img {
	pointer-events: none; /* Le immagini non bloccano il click */
	display: none;
}
.equal-image-boxes .is-selected .custom-btn-wrapper a .icon-svg{
	display: inline-block !important;
}
.equal-image-boxes .custom-btn-wrapper a:hover {
	box-shadow: none;
	pointer-events: auto; /* Mantiene cliccabile anche in hover */
}

/* Tutto il tuo CSS originale integrato */
.equal-image-boxes .slider .is-selected .box-text-bottom {
	background-color: var(--azzurro);
	border: 18px solid var(--azzurro);
	border-radius: 10px;	
}

.equal-image-boxes .slider .is-selected .box-text-bottom .box-text {
	padding-bottom: 60px;
	border-radius: 0 0 5px 5px;
	background-color: var(--bianco);	
}

.equal-image-boxes .slider .is-selected .box-text-bottom img {
	border-radius: 5px 5px 0 0;
}

.equal-image-boxes .slider .is-selected .col {
	padding-left: 5px;
	padding-right: 5px;
}

.equal-image-boxes .custom-btn-wrapper a{
	background: transparent;
	color: transparent;
}

.equal-image-boxes .flickity-button {
	width: 45px;
	color: white;
	border-color: white;
	opacity: 1;
}

.equal-image-boxes .flickity-button-icon {
	background: var(--azzurro);
}

.equal-image-boxes .slider:hover .flickity-prev-next-button {
	opacity: 1;
}

.equal-image-boxes .slider-style-focus .flickity-slider>:not(.is-selected) {
    transform: scale(.85);
}

.slide-percorsi .custom-btn-wrapper,
.slide-percorsi .box-text-inner p{
	display: none;
}

.slide-percorsi .is-selected .custom-btn-wrapper,
.slide-percorsi .is-selected .box-text-inner p{
	display: block;
}

/*.slide-percorsi .flickity-enabled.is-draggable .flickity-viewport{
	height: 100% !important;
}*/

.slide-percorsi .flickity-viewport {
	overflow: inherit !important;
}

.slide-percorsi .box-text {
	position: absolute;
	bottom: 0;
	background-color: transparent !important;
}

.slide-percorsi .is-selected .box-text {
	position: relative;
	bottom: 0;
	background: var(--bianco) !important;
}

.slide-percorsi .title-h2-green {
	color: var(--bianco);
}

.slide-percorsi .is-selected .title-h2-green {
	color: var(--verde);
}

/* fine slide percorsi */

/* CARD */
.flip-card-front::before{
	content: "";
	position: absolute;
	inset: 0;
	background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/spirale-sfondo.png);
	background-repeat: no-repeat;
	background-position: center;
	z-index: 0;
	opacity: 1;

	/* FIX SAFARI */
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(1px);
}

.card-original{
	background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/spirale-sfondo.png);
}
/* Solo la prima card ha sfondo normale (già fatto con .card-original) */
.card-original::before {
	display: none;
}

.flip-card-front > * {
	position: relative;
	z-index: 1;
}

/* FIX SAFARI: front crea layer 3D corretto */
.flip-card-front {
	position: relative;
	transform: translateZ(2px);
}

.flip-card-front,
.flip-card-back{
	background-color: white;
	font-weight: bold;
	border: 15px solid var(--verdechiaro);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 15px;
	justify-content: center;
	align-items: center;
	text-align: center;
	display: flex;	
}

.flip-card {
	background-color: transparent;
	width: auto;
	height: 350px;
	perspective: 1000px;
}

.flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;
	transition: transform 1.75s ease;

	/* MIGLIORA SAFARI */
	will-change: transform;
}

/* Hover desktop */
.flip-card:hover .flip-card-inner {
	transform: rotateY(180deg);
}

/* Mobile click */
.flip-card.flipped .flip-card-inner {
	transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	padding: 10px;
}

.flip-card-back p{
	font-size: var(--fontsmall);
	font-weight: 400;
}

.flip-card-back {
	transform: rotateY(180deg);
}

/* Rotazioni progressive dalla 2ª alla 6ª card */
.row-card > .col:nth-of-type(2) .flip-card-front::before {
	transform: rotate(60deg);
}
.row-card > .col:nth-of-type(3) .flip-card-front::before {
	transform: rotate(120deg);
}
.row-card > .col:nth-of-type(4) .flip-card-front::before {
	transform: rotate(180deg);
}
.row-card > .col:nth-of-type(5) .flip-card-front::before {
	transform: rotate(240deg);
}
.row-card > .col:nth-of-type(6) .flip-card-front::before {
	transform: rotate(300deg);
}
/* Nascondi testo frontale quando la card è girata */
.flip-card.safari:hover .flip-card-front > *,
.flip-card.safari.flipped .flip-card-front > * {
  display: none;
}
/* FINE CARD */

a.primary.custom-btn{
	width: 100%;
    color: white;
    font-size: 30px;
    font-family: "Yanone Kaffeesatz", sans-serif;
    padding-top: 15px;
    padding-bottom: 15px;
    align-items: center;
	background: var(--blu);
}
a.primary.custom-btn:hover{
	box-shadow: inset 0 0 0 100px rgba(0,0,0,.2);	
}
.obiettivi .col-inner{
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.bgorange .col-inner{
	background-color: rgb(240, 183, 131);
}
.rivolgiamo .icon-box:nth-child(n+1){
	margin-top: 25px !important;
}

.rivolgiamo .icon-box h2,
.elenco{
	font-size: 22px !important;
}
.rivolgiamo .icon-box{
	align-items: center; 
}
.uppercase{
	letter-spacing: normal;
}
.titolo-con-goccia{
/*	background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/Vector-percorsi.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 370px;*/
	height: 220px;
	display: flex;
	align-items: center;
	justify-content: center;	
}
.inn-tms{
	background-image: url('https://www.brainandcare.sviluppo.host/wp-content/uploads/Vector-innovazione.png');
	background-repeat: no-repeat;
	background-position: bottom 20px right;   /* posizione in basso a destra */     
}
.more-text {
  display: none; 
}
.read-more-link{
	margin-top: 20px;
	color: var(--verde);
	display: inline-block;
	font-weight: 600;
}
.text-center .toggle {
    margin-left: 0px;
}
.accordion .toggle {
    right: 0;
    left: auto !important;
/*    top: 0;*/
}
.accordion .accordion-item .icon-angle-down:before {
    content: "+";
    color: var(--blu);
    opacity: 1;
}
.accordion .accordion-title.active .icon-angle-down:before {
    content: "-";
	color: var(--bianco);
}
.accordion-inner{
	background: var(--bianco);
}
.accordion .accordion-item:nth-child(n+2){
	margin-top: 10px;
}
.accordion .accordion-item{
	background: rgb(134 197 210 / 30%);	
}
.accordion-item .active{
	color: var(--bianco);
	background: var(--blu);
}
.accordion-inner{
	padding: 1em 1.3em;
}
.accordion-title.active:hover{
	color: white !important;
}
.accordion-item button {
    top: auto !important;
}
.accordion-title{
	font-size: 25px;
	border-top: none;
	padding: .6em 1.3em;	
}
a.accordion-title{
    display: flex;
    align-items: center;	
}
a.accordion-title:hover{
	color:var(--blu);
	font-weight: 600;
}
#top-link{
	font-size: 20px !important;
	border: 2px solid var(--bianco);
	background: var(--blu);
	color: var(--bianco) !important;
}

.back-to-top .icon-angle-up{
	top: 0;
}
.privacy-policy h3{
	font-size: 30px;
	margin: 20px 0 15px;
}
.pre-footer,
.custom-btn span,
.header-name .name,
.management h1,
.name-bar span,
.font-yanone{
	margin-top: 0.2em !important;
}
.parlano-di-noi .ux-logo-link img{
	padding: 15px;
	background: var(--bianco);
}
.custom-category-title{
	margin-left: auto;
    margin-right: auto;
    max-width: 1250px;
    padding-bottom: 30px;
    padding-left: 15px;
    padding-right: 15px;	
}
.network,
.row-press-area h2 a{
	text-decoration: underline;
}
/* CSS TEAM */
/* Card container */
.card {
	position: relative;
	width: 380px;
	background-color: #ffffff;
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
}

/* Header - Nome */
.header-name {
	background-color: var(--giallo);
	width: calc(100% - 80px); /* larghezza foto */
	height: 80px;
	display: flex;
	align-items: center;
	padding-left: 20px;
}

.header-name .name {
  color: var(--blu);
  font-weight: bold;
  font-size:1.5em;
  text-transform: uppercase;
}

/* Header - LinkedIn */
.header-linkedin {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px; /* stessa larghezza della sidebar */
  height: 80px;
  background-color: #eaf4fb; /* azzurrino leggero */
  color: #003366;           /* blu scuro per testo */
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: 1.2em;
  text-decoration: none;
}

/* Body (photo) */
.card-body {
  display: flex;
  align-items: center;
}

.profile-photo {
  width: calc(100% - 80px); /* larghezza foto senza sidebar */
  height: auto;
  object-fit: cover;
}

/* Sidebar */
.card-sidebar {
  position: absolute;
  right: 0;
  top: 80px;
  bottom: 0;
  width: 80px;
  background-color: var(--blu);
  display: flex;
  justify-content: center;
  padding-bottom: 20px;
}
.title-vertical {
  color: #ffffff;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  letter-spacing: normal;
}
.link-team{
	position: absolute;
    top: 0;
    right: 0;
    width: 80px;
    height: 80px;
    background-color: #eaf4fb;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2em;
}
.link-team a .icon-linkedin{
	top: 0;
}
.link-team a .icon-linkedin:before{
	color: #eaf4fb;
}
.link-team a{
	background: var(--blu);
}
.link-team a:hover{
	background: var(--giallo);
}
/* FINE CARD TEAM */

.blog-featured-title h1,
.blog-archive .custom-category-title h1{
	text-transform: uppercase;
}
.from_the_blog_excerpt{
	font-size: 0.85em;
}

.lista-percorso{
	margin: 25px 0 !important;
}
.wpcf7-form {
	margin-bottom: 0 !important;
}
.btn-form{
	color: var(--bianco);
	margin-top: 5px;
}
.wpcf7-acceptance input[type=checkbox]{
	margin-bottom: 0;
}
#form-contatto label, #form-contatto p,
#form-contatto .wpcf7-form-control-wrap {
    text-align: left !important;
	color: var(--blu);
}
.wpcf7-form #form-contatto .flex-row .flex-col, .wpcf7-form .flex-row .flex-col {
    margin-bottom: 10px;
}
#form-contatto p + p{
	margin-top: 10px !important;
}
.margin15{
	margin-top: 15px;
}

.partnership-section.bgarancione,
.partnership-section.bgblu{
	background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/Group-49.png);
	background-size: 40px;
}
.partnership-section.bgblu{
	background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/patter-blu.png);
	background-size: 40px;
}
/* Fascia arancione (nome) */
.name-bar {
  background-color: var(--giallo);
  color: var(--blu);
  font-weight: 500;
  font-size: 22px;
  text-transform: uppercase;
  padding: 12px 10px 10px;;
}
/* Immagine e overlay */
.image-wrapper {
  position: relative;
  overflow: hidden;
}
.image-wrapper img {
  width: 100%;
  height: auto;
  display: block;
}
/* Social centrati in basso sull'immagine */
.socials {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
}
.socials a img {
	width: 24px;
	animation: tilt 5s ease-in-out infinite;	
}
.info-bar {
  background-color: var(--blu);
  padding: 18px 10px;
  color: var(--bianco);
  font-size: 19px;
  min-height: 80px;
}
.team-card {
  display: flex;
  flex-direction: column;
  background: var(--blu);
  height: 100%;
}

.title-team-h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 65%; /* la fascia parte a metà altezza del testo */
  width: 100%;
  height: 30px; /* quanto deve andare oltre il testo verso il basso */
  background-color: var(--azzurro); /* azzurro */
  z-index: -1; /* dietro il testo */
  transform: translateY(-15%); /* piccolo aggiustamento verticale */
}
.city-box{
	text-align: left;
	padding: 20px;
}
/* Icona contatto form */
.city-box a.decor-icon {
	position: absolute;
	top: -25px;
	right: 20px;
	display: inline-block;
	width: 65px;
	height: 65px;
}
.city-box a.decor-icon img {
	transition: transform 0.5s ease-in-out;
}
/* Effetto hover */
.city-box a.decor-icon:hover img {
	transform: rotate(-20deg);
}
.city-box a{
	text-decoration: underline;
}
.back-white{
	background-color: white;
}
.col-sedi-contatto>.col-inner{
	display: flex;
}
.lista-dipendenze .icon-box{
	margin-top: 35px;
}
.lista-dipendenze .icon-box-img+.icon-box-text{
	padding-left: 10px;
}
.text-underline{
	text-decoration: underline;
}
.lista-dipendenze .icon-box p:hover{
	color: var(--blu) !important;
}
.hub-sedi-contatti .col-inner{
	gap: 20px;
	display: inline-flex;
}
.hub-sedi-contatti a:hover{
	color: var(--blu);
}
p a,
.lightbox-content a{
	text-decoration: underline;
}
.numeroverde a{
	text-decoration: none;
}
.blog-percorsi .flickity-prev-next-button{
    margin-top: 0 !important;
	opacity: 1 !important;
}
.has-hover:hover .tag-label{
	background-color: var(--blu);
}
.scelta-radio .wpcf7-radio .wpcf7-list-item{
	display: flex;
}
.cf7mls_next,
.cf7mls_back{
	margin-bottom: 0 !important;
	float: left !important;
	background-color: var(--blu) !important;
	border-radius: 99px !important;
	font-size: 20px !important;
	padding: 5px 30px !important;
	color: var(--bianco) !important;
}
.fieldset-cf7mls-wrapper{
	overflow: unset !important;
}
.cf7mls-btns .cf7mls_back{
	margin-right: 10px !important;
}

/* ---------------------------------------------------------
STORIA E INNOVAZIONE 
--------------------------------------------------------- */

/* CONTAINER PRINCIPALE (con GRID responsivo) */
#timeline-wrapper.gia-timeline {
  display: grid;
  gap: 10px;
  align-items: start;
  box-sizing: border-box;
}

/* DESKTOP (>= 900px)
   .gia-right full width
   sotto: .gia-left e .gia-center affiancate */
@media (min-width: 900px) {
	#timeline-wrapper.gia-timeline {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto auto;
		grid-template-areas:
			"right right"
			"left  center";
	}

	.gia-right  { grid-area: right; width: 100%; margin-bottom: 40px; }
	.gia-left   { grid-area: left; padding-right: 80px;}
	.gia-center { grid-area: center; }
}

/* MOBILE (< 900px)
   1) .gia-center sopra (100%)
   2) .gia-left 70% + .gia-right 30% affiancate */
@media (max-width: 899px) {
	#timeline-wrapper.gia-timeline {
		grid-template-columns: 70% 30%;
		grid-template-rows: auto auto;
		grid-template-areas:
			"center center"
			"left   right";
	}
	.gia-center { grid-area: center; width: 100%; }
	.gia-left   { grid-area: left; }
	.gia-right  { grid-area: right; margin-bottom: 0; }
	.gia-left, .gia-right, .gia-center {
		box-sizing: border-box;
	}
	.gia-right{
		display: flex;
		justify-content: flex-end;
		right: 30px;
	}
	#gia-years {
		/* flex-direction: row; */
		/* justify-content: space-between; */
		position: relative;
		display: flex;
		flex-direction: column !important;
		gap: 70px;
		padding-left: 0;
		/* border-right: 2px dotted white; */
	}
	.gia-years-list {
		text-align: right;
	}	
	.gia-year-item{
		padding-right: 40px;
		padding-bottom: 0 !important;
	}
	.gia-year-item::before,
	.gia-year-item::after,
	.gia-year-item.active::before{
		left: 100% !important;
	}
	#gia-years::before {
		content: "";
		position: absolute;
		left: auto !important; 
		top: 0 !important;
		bottom: 0;
		width: 2px;
		border-left: 2px dotted white; /* tratteggiata */
		right: 0;
		height: auto !important;
	}	
}

/* SVG responsive */
.gia-center {
  position: relative;
  overflow: hidden;
}
#gia-svg-container svg {
  width: 100%;
  height: auto;
  display: block;
}

/* TEXT AREA (LEFT) */
.gia-left h2 {
  font-size: 28px;
  margin-bottom: 10px;
}
.gia-left p {
  font-size: var(--fontmedium);
  line-height: 1.4;
}

/* TIMELINE RIGHT */
.gia-right {
  position: relative;
  width: 100%;
}

/* Lista anni verticale (desktop) */
.gia-years-list {
  display: flex;
  flex-direction: column;
  gap: 50px;
  text-align: right;
  position: relative;
}

/* Cerchi + testo anni */
.gia-year-item {
  cursor: pointer;
  font-size: 20px;
  font-weight: 600;
  color: white;
  text-align: center;
  position: relative;
  padding-bottom: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.gia-year-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 25px;
  height: 25px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: white;
  border: 2px solid white;
  z-index: 5;
}

.gia-year-item::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: #0B3B5A;
  z-index: 6;
}

/* Active */
.gia-year-item.active::before {
  width: 40px;
  height: 40px;
  background: #fff23473;
  border-color: #fff23473;
}
.gia-year-item.active::after {
  width: 8px;
  height: 8px;
  background: #FFF234;
}

/* TIMELINE ORIZZONTALE (barra tratteggiata) */
#gia-years {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
#gia-years::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 2px;
  border-top: 2px dotted white;
  z-index: 1;
}

/* PIN CENTRALE */
#gia-pin {
  z-index: 9999;
  position: absolute;
  width: 40px;
  height: 40px;
  /* background: #0B3B5A; */
  background: #fff23473;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0);
  box-shadow: 0 3px 8px rgba(0,0,0,0.25);
  pointer-events: none;
}

/* ---------------------------------------------------------
   FINE STORIA E INNOVAZIONE
--------------------------------------------------------- */
.cf7mls{
	overflow: inherit;
}
.n800{
	font-size:36px
}
.plr{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.slider-show-nav .flickity-prev-next-button,
.slider:hover .flickity-prev-next-button{
	opacity: 1;
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
	:root {
		--bordo: 10px;
	}	
	h1, .h1{
		font-size: 2.7em !important;
	}
	.h1-big{
		font-size: 70px !important;
	}
	h2, .h2{
		line-height: 1 !important;
		font-size: 45px;
	}
	#logo{
		width: 190px !important;
	}
	#masthead .mobile-nav{
		margin-top: 0 !important;
	}
	body, .text-20{
		font-size: var(--fontmedium) !important;
	}
	.col{
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	.off-canvas-left.dark .mfp-content .mobile-sidebar ul li a{
		font-size: 22px !important;
	}
	#main-menu .children .menu-item a{
		font-size: 26px !important;
	}
	.row .small-12:last-child,
	.pbm-0{
		padding-bottom: 0 !important;
	}
	#main-menu .sidebar-menu .children{
		background: var(--verde);
		padding: 25px 0;
	}
	.section{
		padding-top: 50px !important;
		padding-bottom: 50px !important;
	}
	.img-slide-home{
		padding-right: 0;
	}
	.bgverdescuro.bgverdescuro,
	.primary.custom-btn{
		font-size: 25px !important;
	}	
	.slide-percorsi .flickity-viewport{
		height: 570px !important;
	}
	.slide-percorsi{
		background-color: white !important;
	}
	.slide-percorsi .slider-style-focus{
		padding-bottom: 0 !important;
	}
	.flickity-prev-next-button svg{
		border-color: var(--blu) !important;
		background: var(--bianco) !important;
	}
	.flickity-prev-next-button svg .arrow{
		color: var(--blu);
	}
	.flickity-prev-next-button:hover svg {
		fill: var(--bianco) !important;
		background-color: var(--blu) !important;
		border-color: var(--blu) !important;
	}
	.text-center-mobile{
		text-align: center;
	}
	.text-center-mobile p + p,
	.font-17{
		font-size: 17px;
	}
	.box-white {
		padding-left: 15px !important; 
		padding-right: 15px !important; 
	}	
	.row + .row,
	.mt-60{
		margin-top: 40px;
	}	
	.mt-20{
		margin-top: 20px;
	}
	.ptm-40{
		padding-top: 40px;
	}
	.flip-card-front {
		padding: 40px;
	}
	.flip-card-back{
		padding: 20px !important;
	}
	/* .flip-card{
		height: 400px !important;
	} */
	.mbm-30{
		margin-bottom: 30px !important;
	}	
	.col-inner>.img:not(:last-child),
	.col>.img:not(:last-child){
		margin-bottom: 0;		
	}
	.obiettivi .col{
		padding: 0 15px 20px;
	}
	.section-disturbi{
		background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/vector-disturbi-mobile.png);
		background-repeat: no-repeat;
		background-position: bottom right;
		background-size: 220px auto;
	}
    .slide-percorsi .flickity-slider > section {
        max-width: 85% !important;
    }
	.card {
		width: 345px;
	}
	.profile-photo,
	.header-name{
	  width: calc(100% - 70px);
	}
	.card-sidebar,
	.header-linkedin,
	.link-team{
	  width: 70px;
	}	
	.card-top .header-name{
		order: -1;
	}	
	.card-top{
		display: grid;
	}
	.row-team{
		margin-top: 0 !important;
		padding-top: 30px;
	}
	.titolo-con-goccia::before{
		top: -25px !important;
		left: -15px !important;		
	}
	.section-articoli-blog .entry-content{
		padding: 0 15px;
	}
	.section-articoli-blog .entry-content .row .col{
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.partnership-section{
		margin-bottom: 40px;
	}
	.name-bar{
		font-size: 17px;
		padding: 12px 8px 10px;
	}
	.title-team-h2::before {
	  height: 20px; /* quanto deve andare oltre il testo verso il basso */
	}	
	.ordine-mob{
		order: -1;
		padding-bottom: 0;
	}	
	.parlano-di-noi .flickity-prev-next-button.previous{
		left: -4% !important;
	}
	.parlano-di-noi  .flickity-prev-next-button.next{
		right: -4% !important;
	}
}

@media screen and (min-width: 550px) {
	.pre-footer {
		letter-spacing: 3px;
	}	
/*	.slide-percorsi .flickity-viewport{
		height: 600px !important;
	}*/
	.row.row-card .col.large-4:nth-child(n+4) {
	  margin-top: 30px;
	}
	.parlanodinoi{
		background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/Group-7.png);
		background-repeat: no-repeat;
		background-position: 80% 20%;		
	}
	.slide-percorsi .is-selected{
		top: -50px;
	}
	.management .section-bg.fill{
		background-color: var(--azzurro);
		position: absolute;
		top: 50%;
		left: 0;
		width: 100%;
		height: 544px;
		transform: translateY(-50%);
		z-index: 0;
	}
/*	.team-chi-siamo .section-bg.fill{
		background-color: var(--azzurro);
		position: absolute;
		left: 0;
		width: 100%;
		height: 41px;
		transform: translateY(-50%);
		z-index: 0;		
	}	*/
	.col-depressione .col-inner{
		background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/programma-depressione-brainandcare-desktop.jpg)
	}
}
@media only screen and (max-width: 850px) and (min-width: 550px){
	.row.row-card .col.large-4:nth-child(3){
		margin-top: 30px;
	}
	a.primary.custom-btn{
		width: 450px;
		margin-top: 30px;
	}
	/* Aggiungi margine-top di 20px alle colonne dalla quarta in poi */
	.obiettivi .col:nth-child(n+3){
		margin-top: 20px;
	}		
	.discipline .col:nth-child(n+3){
		margin-top: 40px;
	}
	.img-tms .col-inner{
		display: none;
	}
	.mbt-40{
		margin-bottom: 40px !important;
	}
	.all-middle{
		align-items: center !important;
		align-self: center !important;
		vertical-align: middle !important;	
	}
}
@media only screen and (max-width: 769px) and (min-width: 550px){
	.mbt-60{
		margin-bottom: 60px !important;
	}	
}
@media screen and (min-width: 850px) {
	.col.medium-6, .col-large-6,
	.col.medium-8,
	.col.medium-4,
	.img-slide-home,
	.col{
		padding-bottom: 0 !important;
	}	
	.pbd-0{
		padding-bottom: 0 !important;
	}
	.bottom-negativo60{
		bottom: -60px;
	}
	/* Aggiungi margine-top di 20px alle colonne dalla quarta in poi */
	.obiettivi .col:nth-child(n+4){
		margin-top: 20px;
	}
	.discipline .col:nth-child(n+4),
	.lp-colonne .col:nth-child(n+4){
		margin-top: 60px;
	}
	.schede-team .col:nth-child(n+5){
		margin-top:30px;
	}
	.img-disturbi .col-inner{
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		height: 100%;		
	}
	.custom-btn span{
		letter-spacing: 4px !important;
	}
	.card-top .header-linkedin,
	.card-top .link-team{
		bottom: 0;
		top: inherit !important;
	}
	.card-top .card-sidebar{
		bottom: 80px;
		top: 0 !important;
	}
    .wpcf7-form .flex-row:not(.single) .flex-col:nth-child(1) {
        margin-right: 10px;
    }
	.top-team-27 .section-bg.fill{
		top: 27%;
	}
	.top-team-18 .section-bg.fill{
		top: 18.5%;
	}
	.lista-dipendenze .icon-box{
		margin-left: -35px;
	}	
	.row-press-area .col:nth-child(n+5),
	.lp-sedi .col{
		margin-top:25px;
	}		
}
@media screen and (min-width: 850px) and (max-width: 1100px) {
	.img-tms .col-inner{
		margin-top: 100px;
	}
}
@media screen and (max-width: 850px) {
	.pbm-50{
		padding-bottom: 50px !important;
	}
	.pbm-50 .text-center .img{
		margin-left: 0 !important;
	}
	.social-div .text,
	.social-div .text-right,
	.social-div .text-center-mobile{
		text-align: left !important;
	}
	/*.titolo-con-goccia,*/
	.titolo-con-goccia::before{
		width: 250px;
		height: 200px;
	}
	.inn-tms{
		background-size: 120px auto;
		background-position: bottom 10px right;
	}
	.flip-card.flipped .flip-card-inner {
		transform: rotateY(180deg);
	}
	.pre-footer,
	.numeroverde a,
	.n800{
		font-size: 25px !important;
	}
    .slider-wrapper .flickity-prev-next-button {
        display: inherit !important;
    }	
}


@media only screen and (max-width: 950px) and (min-width: 550px) {
	.flip-card-front::before{
		background-size: contain;
	}
}
@media only screen and (max-width: 700px) and (min-width: 550px) {
	.flip-card-front, .flip-card-back {
		padding: 0 10px;
	}
}
@media only screen and (max-width: 750px) and (min-width: 550px) {
	.card {
		width: 240px;
	}
}
@media only screen and (max-width: 770px) and (min-width: 550px) {
	.titolo-con-goccia::before{
		width: 330px !important;
		top: -10px !important;
		left: -40px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 850px) {
	.slide-percorsi .flickity-slider > section {
		max-width: 35% !important;
	}
}
@media screen and (min-width: 1280px) {
/*	.slide-percorsi .flickity-viewport{
		height: 700px !important;
	}*/
    .slide-percorsi .flickity-slider > section {
        max-width: 25% !important;
    }	
}

@media screen and (min-width: 980px) {
	.row-slide-home{
		background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/traccia-slide-home.png);
		background-repeat: no-repeat;
		background-position: bottom right;
		background-size: 150px auto;
	}
	.col-img-full-height .col-inner{
		flex:1;
		display: flex;
	}
	.col-img-full-height .img{
		min-height: 100%
	}
	.col-img-full-height .img-inner{
		min-height: 100%;
		display: flex;
	}	
}
@media screen and (max-width: 980px) {
	.row-middle{
		align-items: center !important;
		align-self: center !important;
		vertical-align: middle !important;
	}	
}

.slide-percorsi2 section,
.flickity-slider section{
	padding: 0 !important;
}

.slidepd .is-selected .col-inner{
	border: 18px solid var(--azzurro);
	border-radius: 10px;
}

.titolo-con-goccia::before {
	content: '';
	position: absolute;
	top: -10px;
	left: -40px; /* sposta la goccia a sinistra */
	width: 370px;
	height: 220px;
	background-image: url('https://www.brainandcare.sviluppo.host/wp-content/uploads/Vector-percorsi.png');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	z-index: -1;
}

/* --- Layout base --- */
.partnership-section .row {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}

/* --- Colonne --- */
.partnership-section .col {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.partnership-section .col-left {
  flex: 0 0 65%;
  box-sizing: border-box;
}

.partnership-section .col-right {
  flex: 0 0 35%;
  display: flex;
}

.partnership-section .col-right .photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* --- Intestazione con icona + titolo --- */
.title-row {
  display: flex;
  align-items: center;
  gap: 20px; /* spazio tra icona e testo */
  margin-bottom: 10px;
}

.icona-partner {
  width: 170px;
  height: auto;
}
/*.sezione-partnership{
    background-image: url(https://www.brainandcare.sviluppo.host/wp-content/uploads/background-partner.png);
    background-size: 450px;
animation: floatBg 50s ease-in-out infinite;
}*/

/* --- Descrizione --- */
.partnership-section .description {
  margin-bottom: 40px;
}

/* --- Box arancione in basso --- */
.partnership-section .bottom {
  /*background-color: var(--giallo);*/
  padding: 20px 15px;
  margin-top: auto;
  font-size: 1.15rem;
}

.partnership-section .bottom a {
  color: #1e4976;
  text-decoration: none;
}

.partnership-section .bottom a:hover {
  text-decoration: underline;
}

.partnership-section .row + .row{
	margin-top: 100px;
}

/* --- Responsive --- */
@media (max-width: 850px) {
  .partnership-section .row {
    flex-direction: column;
  }

  .partnership-section .col-left,
  .partnership-section .col-right {
    flex: 0 0 100%;
  }

  .partnership-section .col-left {
    padding: 30px 20px;
  }

  .partnership-section .title-row {
    gap: 12px;
  }

  .icona-partner {
    width: 50px;
  }

  .partnership-section .bottom {
    margin-top: 30px;
  }
}

@keyframes tilt {
  0%, 100% { transform: rotate(0deg) scale(1); }
  20% { transform: rotate(5deg) scale(1.15); }
  40% { transform: rotate(-5deg) scale(1.15); }
  60% { transform: rotate(5deg) scale(1.15); }
  80% { transform: rotate(-5deg) scale(1.15); }
}

