:root {
	--esaso-burgundy:#9a001d;
	--esaso-burgundy-dark:#760016;
	--esaso-ink:#181818;
	--esaso-body:#4b4b4b;
	--esaso-muted:#777;
	--esaso-line:#e7e2e3;
	--esaso-soft:#f7f5f5;
	--esaso-white:#fff;
	--esaso-max:1180px;
	--esaso-copy:820px;
}

.esaso-faculty-page {
	background:var(--esaso-white);
	color:var(--esaso-ink);
	font-family:"Titillium Web",Arial,sans-serif;
}

.esaso-faculty-page *,.esaso-faculty-page *::before,.esaso-faculty-page *::after { box-sizing:border-box; }

.esaso-faculty-shell {
	width:min(calc(100% - 48px),var(--esaso-max));
	margin-inline:auto;
}

.esaso-faculty-content-narrow {
	width:min(calc(100% - 48px),var(--esaso-copy));
	margin-inline:auto;
}

.esaso-faculty-hero {
	padding:54px 0 70px;
	border-bottom:1px solid var(--esaso-line);
}

.esaso-faculty-breadcrumbs {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	align-items:center;
	margin-bottom:42px;
	color:var(--esaso-muted);
	font-size:14px;
}

.esaso-faculty-breadcrumbs a {
	color:var(--esaso-muted);
	text-decoration:none;
}

.esaso-faculty-breadcrumbs a:hover { color:var(--esaso-burgundy); }

.esaso-faculty-hero-grid {
	display:grid;
	grid-template-columns:minmax(260px,380px) minmax(0,1fr);
	gap:clamp(42px,7vw,96px);
	align-items:center;
}

/* No image: do not show a fake placeholder. Let the profile become a clean text hero. */
.esaso-faculty-hero.no-photo .esaso-faculty-hero-grid {
	grid-template-columns:minmax(0,860px);
}

.esaso-faculty-hero.no-photo .esaso-faculty-intro {
	max-width:860px;
}

.esaso-faculty-photo {
	display:block;
	width:100%;
	aspect-ratio:4/5;
	object-fit:cover;
	object-position:center top;
	background:var(--esaso-soft);
}

.esaso-faculty-eyebrow,.esaso-faculty-section-kicker {
	margin:0 0 12px;
	color:var(--esaso-burgundy);
	font-size:13px;
	font-weight:700;
	letter-spacing:.13em;
	line-height:1.2;
	text-transform:uppercase;
}

.esaso-faculty-name {
	margin:0;
	max-width:780px;
	font-size:clamp(44px,5.5vw,74px);
	font-weight:600;
	letter-spacing:-.035em;
	line-height:.98;
}

.esaso-faculty-position {
	margin:28px 0 0;
	max-width:780px;
	color:#292929;
	font-size:clamp(21px,2.1vw,28px);
	line-height:1.34;
}

.esaso-faculty-location-list {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:28px;
}

.esaso-faculty-pill {
	display:inline-flex;
	align-items:center;
	min-height:34px;
	padding:6px 12px;
	border:1px solid #d8c5c9;
	border-radius:999px;
	color:var(--esaso-burgundy);
	font-size:14px;
	font-weight:600;
	text-decoration:none;
}

.esaso-faculty-mentor-note {
	display:flex;
	gap:10px;
	align-items:center;
	margin-top:28px;
	color:#555;
	font-size:15px;
}

.esaso-faculty-mentor-mark {
	width:24px;
	height:2px;
	background:var(--esaso-burgundy);
	flex:0 0 auto;
}

.esaso-faculty-section { padding:70px 0; }

.esaso-faculty-section + .esaso-faculty-section {
	border-top:1px solid var(--esaso-line);
}

.esaso-faculty-section h2 {
	margin:0 0 24px;
	font-size:clamp(32px,3.8vw,48px);
	font-weight:600;
	letter-spacing:-.025em;
	line-height:1.08;
}

.esaso-faculty-resume {
	color:var(--esaso-body);
	font-size:19px;
	line-height:1.72;
}

.esaso-faculty-resume p { margin:0 0 1.2em; }
.esaso-faculty-resume p:last-child { margin-bottom:0; }
.esaso-faculty-resume ul,.esaso-faculty-resume ol { margin:1.2em 0; padding-left:1.4em; }
.esaso-faculty-resume li { margin:.4em 0; }

.esaso-faculty-facts {
	display:grid;
	grid-template-columns:1fr 1fr;
	margin:34px 0 0;
	border-top:1px solid var(--esaso-line);
}

.esaso-faculty-fact {
	display:grid;
	grid-template-columns:150px minmax(0,1fr);
	gap:24px;
	padding:22px 0;
	border-bottom:1px solid var(--esaso-line);
}

.esaso-faculty-fact:nth-child(odd) { padding-right:28px; }
.esaso-faculty-fact:nth-child(even) {
	padding-left:28px;
	border-left:1px solid var(--esaso-line);
}

.esaso-faculty-fact dt {
	color:var(--esaso-muted);
	font-size:14px;
	font-weight:700;
	letter-spacing:.05em;
	text-transform:uppercase;
}

.esaso-faculty-fact dd {
	margin:0;
	font-size:17px;
	line-height:1.55;
}

/* Compact institutional line instead of a large filler section. */
.esaso-faculty-affiliation {
	padding:30px 0;
	border-top:1px solid var(--esaso-line);
	background:var(--esaso-soft);
}

.esaso-faculty-affiliation p {
	margin:0;
	color:var(--esaso-body);
	font-size:16px;
	line-height:1.65;
}

/* Sparse records stay deliberately compact. */
.esaso-faculty-is-sparse .esaso-faculty-hero {
	padding-bottom:56px;
}

.esaso-faculty-is-sparse .esaso-faculty-info {
	padding-top:52px;
	padding-bottom:52px;
}

.esaso-faculty-footer-cta {
	background:var(--esaso-burgundy);
	color:#fff;
}

.esaso-faculty-footer-cta .esaso-faculty-section-kicker { color:#fff; opacity:.78; }
.esaso-faculty-footer-cta h2 { max-width:720px; color:#fff; margin-bottom:0; }

.esaso-faculty-cta-grid {
	display:grid;
	grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);
	gap:48px;
	align-items:end;
}

.esaso-faculty-cta-actions {
	display:flex;
	flex-direction:column;
	gap:12px;
}

.esaso-button {
	display:inline-flex;
	justify-content:center;
	align-items:center;
	min-height:48px;
	padding:12px 18px;
	border:1px solid transparent;
	border-radius:4px;
	font-size:16px;
	font-weight:700;
	text-align:center;
	text-decoration:none;
}

.esaso-button-primary { background:#fff; color:var(--esaso-burgundy); }
.esaso-button-secondary { border-color:rgba(255,255,255,.55); color:#fff; }

.esaso-button-primary:hover { background:#f2ecee; color:var(--esaso-burgundy-dark); }
.esaso-button-secondary:hover { border-color:#fff; background:rgba(255,255,255,.08); color:#fff; }

@media (max-width:900px) {
	.esaso-faculty-shell,.esaso-faculty-content-narrow { width:min(calc(100% - 36px),var(--esaso-max)); }
	.esaso-faculty-hero-grid { grid-template-columns:240px minmax(0,1fr); gap:36px; }
	.esaso-faculty-hero.no-photo .esaso-faculty-hero-grid { grid-template-columns:1fr; }
	.esaso-faculty-section { padding:58px 0; }
	.esaso-faculty-resume { font-size:18px; }
	.esaso-faculty-facts { grid-template-columns:1fr; }
	.esaso-faculty-fact:nth-child(odd),.esaso-faculty-fact:nth-child(even) {
		padding:20px 0;
		border-left:0;
	}
	.esaso-faculty-cta-grid { grid-template-columns:1fr; align-items:start; }
	.esaso-faculty-cta-actions { max-width:360px; }
}

@media (max-width:640px) {
	.esaso-faculty-shell,.esaso-faculty-content-narrow { width:min(calc(100% - 28px),var(--esaso-max)); }
	.esaso-faculty-hero { padding:24px 0 44px; }
	.esaso-faculty-breadcrumbs { margin-bottom:22px; font-size:13px; }
	.esaso-faculty-hero-grid { grid-template-columns:1fr; gap:28px; }
	.esaso-faculty-photo-wrap { max-width:320px; }
	.esaso-faculty-name { font-size:clamp(39px,12vw,54px); }
	.esaso-faculty-position { margin-top:20px; font-size:19px; }
	.esaso-faculty-section { padding:48px 0; }
	.esaso-faculty-section h2 { font-size:32px; }
	.esaso-faculty-resume { font-size:17px; line-height:1.7; }
	.esaso-faculty-fact { grid-template-columns:1fr; gap:7px; }
	.esaso-faculty-cta-grid { gap:30px; }
	.esaso-faculty-cta-actions { max-width:none; }
}
