/**
 * team_information_module.css
 *
 * Full-width heading, then named sections (Leasing / Managing Agents).
 * Each section: 2-column agent grid (50% each).
 * Each agent: optional label, optional logo, then contact blocks.
 * 1 contact = full width; 2 contacts = side by side.
 */

/* ---------------------------------------------------------------
   Section
--------------------------------------------------------------- */
.tim-module {
	background-color: var(--white);
	padding: var(--section-pad);
}

.tim-module__inner {
	margin: 0 auto;
}

/* ---------------------------------------------------------------
   Module heading
--------------------------------------------------------------- */
.tim-module__heading {
	font-size: clamp(28px, 4.5vw, 32px);
	font-weight: 900;
	letter-spacing: -0.02em;
	line-height: 1;
	color: var(--black);
	width: 80%;
	max-width: 400px;
	margin-bottom: 40px;
}

/* ---------------------------------------------------------------
   Section (Leasing / Managing)
--------------------------------------------------------------- */
.tim-module__section {
	padding-top: 40px;
	margin-bottom: 1px;
	border-top:1px solid var(--black);
}

.tim-module__section:last-child {
	margin-bottom: 0;
}

.tim-module__section-heading {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.8%;
	text-transform: uppercase;
	color: var(--black);
	margin: 0 0 0px;
}

/* ---------------------------------------------------------------
   Managing + Campus split — 50 / 50
--------------------------------------------------------------- */
.tim-module__split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 60px;
	align-items: start;
}

/* Sections sit side by side — suppress bottom margin */
.tim-module__split .tim-module__section {
	margin-bottom: 0;
}

/* Each split section is already 50% wide — keep agents single-column */
.tim-module__split .tim-module__agents {
	grid-template-columns: 1fr;
}

/* ---------------------------------------------------------------
   Agents grid — 2 columns
--------------------------------------------------------------- */
.tim-module__agents {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 60px;
	align-items: start;
	padding-top: 25px;
}

/* ---------------------------------------------------------------
   Individual agent block
--------------------------------------------------------------- */
.tim-module__agent {
	padding-bottom: 32px;
}

/* Optional per-item label (e.g. "Managing Agent") */
.tim-module__agent-label {
	font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.8%;
  text-transform: uppercase;
  color: var(--black);
  margin: 0 0 32px;
}

/* Logo */
.tim-module__logo {
	margin-bottom: 24px;
	display: flex;
	align-items: flex-start;
}

.tim-module__logo-img {
	display: block;
	max-height: 105px;
	width: auto;
	max-width: 250px;
	object-fit: contain;
}

/* ---------------------------------------------------------------
   Contacts — default: stacked (1 contact = full width)
--------------------------------------------------------------- */
.tim-module__contacts {
	display: block;
}

/* 2-contact layout: side by side */
.tim-module__contacts--double {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 32px;
	align-items: start;
}

/* ---------------------------------------------------------------
   Individual contact
--------------------------------------------------------------- */
.tim-module__contact {
	padding-bottom: 20px;
}

.tim-module__contact-name {
	font-size: 16px;
	font-weight: 700;
	color: var(--black);
	margin: 0 0 2px;
	line-height: 1.3;
}

.tim-module__contact-role {
	font-size: 16px;
	font-weight: 400;
	color: var(--black);
	margin: 0 0 8px;
	line-height: 1.4;
}

.tim-module__contact-detail {
	font-size: 16px;
	color: var(--black);
	margin: 0 0 2px;
	line-height: 1.4;
}

.tim-module__contact-detail a {
	color: var(--black);
	text-decoration: none;
}

.tim-module__contact-detail a:hover {
	text-decoration: underline;
}

/* ---------------------------------------------------------------
   Responsive — 992px: tighten column gap
--------------------------------------------------------------- */
@media (max-width: 992px) {
	.tim-module__agents {
		gap: 0 40px;
	}
}

/* ---------------------------------------------------------------
   Responsive — 768px: stack agent columns + split sections
--------------------------------------------------------------- */
@media (max-width: 768px) {
	.tim-module__heading {
		width: 100%;
	}

	.tim-module__split {
		grid-template-columns: 1fr;
	}

	.tim-module__split .tim-module__section {
		margin-bottom: 56px;
	}

	.tim-module__agents {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.tim-module__agent {
		border-bottom: 1px solid var(--grey-border);
		padding-bottom: 24px;
		margin-bottom: 24px;
	}

	.tim-module__agent:last-child {
		border-bottom: 0;
	}
}

/* ---------------------------------------------------------------
   Responsive — 600px: contacts always stacked
--------------------------------------------------------------- */
@media (max-width: 600px) {
	.tim-module {
		padding: 64px 24px;
	}

	.tim-module__contacts--double {
		grid-template-columns: 1fr;
	}
}
