/* ── Contact Info ─────────────────────────────────────── */

.section-contact-info {
	position: relative;
	overflow: hidden;
}

/* Outer gap — light space framing the inset dark box */
.section-contact-info > .container {
	padding-block: 0;
}

/* Inset dark container — rounded bg replaces full-bleed dark section */
.ci-inset {
	position: relative;
	border-radius: var(--radius-section-inset);
	overflow: hidden;
	padding-block-start: var(--size-v-pad-lg);
	padding-block-end: var(--size-global-padding-h);
}

/* Gradient mirror — lives on the section, behind the inset dark box */
.section-contact-info .ci-gradient {
	position: absolute;
	inset: 0 0 auto 0;
	width: 100%;
	height: 70%;
	pointer-events: none;
	z-index: 0;
	line-height: 0;
	transform: scaleY(-1);
}

.section-contact-info .ci-gradient svg {
	display: block;
	width: 100%;
	height: 100%;
}

/* Lift content above .bg-texture-dark::before overlay */
.ci-inner {
	position: relative;
	z-index: 1;
	overflow-x: clip;
}

/* ── Section heading ─────────────────────────────────── */

.ci-main-title {
	color: var(--color-text-pri-light);
	text-align: center;
	max-width: var(--size-max-heading-center);
	margin: 0 auto var(--size-section-title-mb);
}

/* ── Country tabs ────────────────────────────────────── */

.ci-tabs {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 3rem;
	list-style: none;
	padding: 0;
	margin: 0 0 var(--size-v-pad-xs);
}

.ci-tab-btn {
	display: flex;
	align-items: center;
	gap: var(--size-icon-gap);
	color: var(--color-text-sec-light);
	background: none;
	border: none;
	padding: 0;
	min-height: 2.75rem;
	cursor: pointer;
	transition: var(--transition-fast);
}

.ci-tab-btn::before {
	content: "";
	display: none;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--color-accent-green);
	flex-shrink: 0;
}

.ci-tab-btn.active {
	color: var(--color-text-pri-light);
}

.ci-tab-btn.active::before {
	display: block;
}

/* ── Bento grid ──────────────────────────────────────── */

.ci-bento {
	align-items: stretch;
}

/* ── Cards shared ────────────────────────────────────── */

/* .ci-card now extends .card-dark (base.css) */

.ci-card {
}

/* ── Card: text + CTAs ───────────────────────────────── */

.ci-card--text {
	padding: var(--size-pad-md);
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}

.ci-team-heading {
	color: var(--color-text-pri-light);
	margin: 0 0 var(--size-pad-2xs);
}

.ci-body {
	max-width: var(--size-max-text);
	color: var(--color-text-sec-light);
	margin-bottom: var(--size-pad-xs);
	text-wrap: balance;
}

.ci-body p {
	margin: 0;
}

.ci-btns {
	display: flex;
	flex-wrap: wrap;
	gap: var(--size-button-gap);
}

.ci-btns .btn-ghost-light {
	background-color: var(--color-accent-dark);
}

/* ── Card: photo ─────────────────────────────────────── */

.ci-card--photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── Card: map ───────────────────────────────────────── */

.ci-card--map {
	min-height: 32rem;
}

.ci-card--map iframe {
	width: 100%;
	height: 100%;
	display: block;
	border: none;
}

/* ── Card: contact details ───────────────────────────── */

.ci-card--details {
	padding: var(--size-pad-md);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ci-contact-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 3rem;
}

.ci-contact-label {
	font-size: var(--fs-body-s);
	font-weight: var(--fw-semibold);
	color: var(--color-text-pri-light);
	margin-bottom: 0.8rem;
}

.ci-contact-entries {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.ci-contact-entry {
	display: flex;
	align-items: center;
	gap: var(--size-icon-gap);
	color: var(--color-text-sec-light);
}

.ci-contact-entry span {
	line-height: var(--lh-base);
}

.ci-contact-icon {
	display: inline-flex;
	flex-shrink: 0;
	width: var(--size-icon-inline);
	height: var(--size-icon-inline);
}

.ci-contact-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ci-contact-entry a {
	color: var(--color-text-sec-light);
	text-decoration: none;
	font-weight: var(--fw-medium);
}

@media (hover: hover) {
    .ci-contact-entry a:hover {
        color: var(--color-text-pri-light);
    }
}

/* ── Key personnel rows ─────────────────────────────── */

.ci-member {
	grid-column: 1 / -1;
	align-items: stretch;
}

.ci-member__text {
	gap: 0;
}

.ci-member__photo img {
	filter: grayscale(1);
}

.ci-member__name {
	color: var(--color-text-pri-light);
	margin: 0 0 0.5rem;
}

.ci-member__position {
	color: var(--color-text-sec-light);
	margin: 0 0 var(--size-pad-xs);
}

.ci-member__text .ci-body {
	margin: 0 0 var(--size-pad-xs);
}

.ci-member:nth-child(even) .ci-member__photo { order: 2; }
.ci-member:nth-child(even) .ci-member__text  { order: 1; }

/* ── Mobile ──────────────────────────────────────────── */

@media only screen and (max-width: 991.98px) {
	.section-contact-info > .container {
		padding-block: 0;
	}

	.ci-inset {
		padding-block-start: var(--size-v-pad-md);
		padding-block-end: var(--size-global-padding-h);
	}

	.ci-tabs {
		gap: 1.5rem;
		flex-wrap: wrap;
	}

	.ci-contact-list {
		gap: 1.5rem;
	}

	.ci-card--text,
	.ci-card--details {
		padding: var(--size-pad-2xs);
	}

	.ci-card--map {
		min-height: 18rem;
	}

	.ci-body {
		text-wrap: unset;
	}

	.ci-btns {
		flex-direction: column;
	}

	.ci-btns .btn {
		width: 100%;
		justify-content: center;
	}

	/* Mobile stacking: photo → text → members → map → details */
	.ci-card--photo   { order: 1; }
	.ci-card--text    { order: 2; }
	.ci-member        { order: 3; }
	.ci-card--map     { order: 5; }
	.ci-card--details { order: 6; }

	/* Inside members: photo before text */
	.ci-member .ci-member__photo { order: 1; }
	.ci-member .ci-member__text  { order: 2; }

	.ci-tabs {
		margin-bottom: var(--size-pad-xxs);
	}
}
