/**
 * Org / hierarchy tree (`.haam-org-tree`).
 * Float-based layout preserved from classic 32-div pattern; scoped + Haam colors.
 */

.haam-org-tree {
	--haam-ot-ink: #1a1532;
	--haam-ot-accent: #ebd11a;
	--haam-ot-surface: #fafafa;
	--haam-ot-hover: #c4161c;

	margin: 1.75em auto;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	direction: ltr;
	text-align: center;
}

.haam-org-tree__title {
	width: 580px;
	max-width: 100%;
	margin: 0 auto 1.5rem;
	font-size: 1.05rem;
	font-weight: 800;
	text-align: center;
	color: var(--haam-ot-ink);
}

.haam-org-tree__canvas {
	width: 580px;
	min-width: 580px;
	margin: 0 auto;
	font-size: 11px;
	text-align: center;
}

.haam-org-tree__link {
	display: block;
	color: var(--haam-ot-ink);
	text-decoration: none;
	background-color: var(--haam-ot-surface);
	transition: color 0.2s ease, background-color 0.2s ease;
}

.haam-org-tree__link:hover {
	color: var(--haam-ot-hover);
	background-color: color-mix(in srgb, var(--haam-ot-accent) 18%, #ffffff);
}

.haam-org-tree__node {
	border: 1px solid var(--haam-ot-ink);
}

.haam-org-tree__line {
	font-size: 0;
	color: #fff;
	background-color: var(--haam-ot-ink);
}

.haam-org-tree__clear {
	clear: both;
}

/* Root */
.haam-org-tree__node--1 {
	width: 190px;
	line-height: 60px;
	margin: auto;
}

.haam-org-tree__node--1 .haam-org-tree__link {
	height: 60px;
}

.haam-org-tree__line--1 {
	width: 1px;
	height: 20px;
	margin: auto;
}

.haam-org-tree__line--2 {
	width: 424px;
	height: 1px;
	margin: auto;
}

.haam-org-tree__line--3,
.haam-org-tree__line--4,
.haam-org-tree__line--5,
.haam-org-tree__line--6 {
	display: inline;
	width: 1px;
	height: 20px;
	float: left;
}

.haam-org-tree__line--3 {
	margin-left: 78px;
}

.haam-org-tree__line--4,
.haam-org-tree__line--5,
.haam-org-tree__line--6 {
	margin-left: 140px;
}

/* Row 2 */
.haam-org-tree__node--2 {
	display: inline;
	clear: both;
	margin-left: 35px;
	float: left;
}

.haam-org-tree__node--2 .haam-org-tree__link,
.haam-org-tree__node--4 .haam-org-tree__link,
.haam-org-tree__node--8 .haam-org-tree__link {
	width: 84px;
	height: 50px;
	padding-top: 8px;
}

.haam-org-tree__node--3 {
	display: inline;
	margin-left: 58px;
	float: left;
}

.haam-org-tree__node--3 .haam-org-tree__link,
.haam-org-tree__node--5 .haam-org-tree__link,
.haam-org-tree__node--6 .haam-org-tree__link,
.haam-org-tree__node--7 .haam-org-tree__link,
.haam-org-tree__node--9 .haam-org-tree__link {
	width: 84px;
	height: 42px;
	padding-top: 16px;
}

.haam-org-tree__node--4 {
	display: inline;
	margin-left: 53px;
	float: left;
}

.haam-org-tree__node--5 {
	display: inline;
	margin-left: 55px;
	float: left;
}

.haam-org-tree__line--7,
.haam-org-tree__line--13 {
	display: inline;
	width: 1px;
	height: 38px;
	margin-left: 219px;
	float: left;
}

.haam-org-tree__line--8,
.haam-org-tree__line--14 {
	display: inline;
	width: 1px;
	height: 38px;
	margin-left: 281px;
	float: left;
}

.haam-org-tree__node--6,
.haam-org-tree__node--8 {
	display: inline;
	margin-left: 107px;
	float: left;
}

.haam-org-tree__line--9,
.haam-org-tree__line--11,
.haam-org-tree__line--15,
.haam-org-tree__line--17 {
	display: inline;
	width: 26px;
	height: 1px;
	margin-top: 29px;
	float: left;
}

.haam-org-tree__line--10,
.haam-org-tree__line--12,
.haam-org-tree__line--16,
.haam-org-tree__line--18 {
	display: inline;
	width: 1px;
	height: 60px;
	float: left;
}

.haam-org-tree__line--16,
.haam-org-tree__line--18 {
	height: 30px;
}

.haam-org-tree__node--7,
.haam-org-tree__node--9 {
	display: inline;
	margin-left: 169px;
	float: left;
}

@media (max-width: 620px) {
	.haam-org-tree__title {
		width: auto;
		padding-inline: 0.5rem;
	}
}
