@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@font-face {font-family: UBB; src: url("./font/UBB.otf") format("opentype");}
@font-face {font-family: UBB-light; src: url("./font/UBB-light.otf") format("opentype");}


.font-ubb {
	font-family: UBB;
}

.font-ubb-light {
	font-family: UBB-light;
}

.chart-container {
	height: 800px;
	width: 1500px;
	max-width: 100%;
	margin: 0 auto;
	background-color: #f5f5f5;
	overflow: hidden;
}

/* Nodo */
.node {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	background: #c5cbd0;
	margin: 4px 0; /* margen vertical menor */
	cursor: pointer;
	transition: background 0.3s;
	font-size: 1rem;
}

	.node:hover {
	background-color: #b1cadf;
}

.node-content {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 20px;
}

.node .unit {
	text-transform: uppercase;
	font-size: 19px;
	color: #183d70;
}

.node .name {
	text-transform: uppercase;
	font-size: 15px;
	color: #2e5ca7;
}

.node img {
	width: 70px;
	height: 70px;
	margin-bottom: 5px;
	border-radius: 100px;
}

/* Flecha hijos */
.children-arrow {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
	padding: 5px;
	font-size: 12px;
	color: #ffffff;
	background-color: #183d70;
	border-radius: 5px;
	border: 0;
}

/* Modal */
.modal {
	font-family: 'Fira Sans', sans-serif;
	font-size: 15px;
	letter-spacing: -0.3px;
	color: #4D596E;
}

.modal .team {
	display: flex;
	justify-content: center;
	align-items: center;
}

.modal .team img {
	width: 150px;
	height: 150px;
	border-radius: 50%;
	border: 10px solid #d6d9df;
	filter: grayscale(0);
}

.modal .team h2 {
	color: #2e5ca7;
}

.modal strong {
	color: #183d70;
}

.modal .modal-content {
	background-color: #f5f5f5;
}

.modal a {
	color: #7a7d85;
	font-weight: 600;
}

.modal .scroll-div {
	width: 100%;
	padding: 10px;
	border-radius: 5px;
	overflow-y: auto;
	overflow-x: hidden;
}

.modal .scroll-div::-webkit-scrollbar {
	width: 6px;
}

.modal .scroll-div::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 10px;
}

.modal .scroll-div::-webkit-scrollbar-thumb {
	background-color: #aab4c9;
	border-radius: 10px;
}

.modal .scroll-div::-webkit-scrollbar-thumb:hover {
  	background-color: #203255;
}

/* Responsive */
@media (max-width: 575.98px) {
  	.modal .team {
    display: block !important;
    text-align: center;
  }
}
