/* ── Alumni selector (teal portrait-navigation section above the story) ── */
.pte-asel {
	position: relative; z-index: 1;
	background: #95e0e9;
	border-radius: 50px 50px 0 0;
	margin-top: -85px;
	height: 666px;
	overflow: hidden;
}

.pte-asel__hero { position: absolute; left: 132px; top: 0; }
.pte-asel__hero-circle {
	position: absolute; left: 0; top: 157px;
	width: 364px; height: 364px; border-radius: 50%; overflow: hidden;
}
.pte-asel__hero-circle img { width: 100%; height: 100%; object-fit: cover; display: block; }

.pte-asel__active {
	position: absolute; left: 56px; top: 518px;
	width: 232px; height: 76px;
	background: #006db9; border-radius: 12px;
	display: flex; align-items: center; justify-content: center;
}
.pte-asel__active span { color: #fff; font-size: 2.5rem; font-weight: 700; letter-spacing: .02em; }

.pte-asel__dotnav { position: absolute; left: 159px; top: 614px; }
.pte-asel__dotnav span { display: block; width: 26px; height: 26px; border-radius: 50%; background: transparent; border: 2.5px solid #005474; }

.pte-asel__thumb { position: absolute; }
.pte-asel__thumb--0 { left: 496px; top: 265px; }
.pte-asel__thumb--1 { left: 702px; top: 268px; }
.pte-asel__thumb--2 { left: 907px; top: 263px; }
.pte-asel__thumb--3 { left: 1111px; top: 261px; }

.pte-asel__thumb-circle { width: 190px; height: 190px; border-radius: 50%; overflow: hidden; }
.pte-asel__thumb-circle img { width: 100%; height: 100%; object-fit: cover; display: block; }

.pte-asel__thumb-pill {
	position: absolute; top: 170px; left: 50%; transform: translateX(-50%);
	background: rgba(255,255,255,0.8); color: var(--pte-ink, #251e20);
	border-radius: 6px; height: 40px; min-width: 70px;
	display: flex; align-items: center; justify-content: center;
	padding: 0 1rem; font-size: 1.25rem; font-weight: 700;
	white-space: nowrap; letter-spacing: .02em;
}

/* ── ACCORDION WRAPPER ── */
.pte-astories {
	background: #fff;
	border-radius: 50px 50px 0 0;
}
.pte-acc-wrapper { width: 100%; }

/* ── ACCORDION ITEM ── */
.acc-item {
	position: relative;
	width: 100%;
	box-sizing: border-box;
	padding: 50px 140px 70px 440px;
	min-height: 460px;
}
.acc-item::before {
	content: '';
	position: absolute;
	left: 140px; right: 140px; top: 0;
	height: 1px;
	background: #000;
}
.acc-portrait-wrap {
	position: absolute;
	left: 140px; top: 50px;
	width: 258px; height: 258px;
}
.acc-portrait-wrap img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* Toggle / collapse controls */
.acc-toggle-btn {
	position: absolute;
	right: 170px; top: 50px;
	width: 31px; height: 31px;
	border: 2px solid #000;
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	font-size: 20px; font-weight: 300;
	font-family: var(--pte-font);
	padding: 0;
}
.acc-collapse-bar {
	position: absolute;
	right: 145px; top: 53px;
	font-size: 28px; font-weight: 300; color: #000; line-height: 1;
	display: none;
}
.acc-item.expanded .acc-toggle-btn { display: none; }
.acc-item.expanded .acc-collapse-bar { display: block; }

/* Heading & intro */
.acc-heading {
	font-size: 48px; font-weight: 500; line-height: 1; color: #000; margin-bottom: 22px;
}
.acc-intro {
	font-size: 26px; font-weight: 400; line-height: 1.4; color: #000; margin-bottom: 22px;
}
.acc-item.expanded .acc-intro {
	font-size: 28px; font-weight: 500; margin-bottom: 30px;
}

/* Read More (collapsed only) */
.acc-read-more {
	display: inline-block;
	font-size: 18px; font-weight: 500; color: #000; text-decoration: underline;
	cursor: pointer; background: none; border: none; padding: 0; margin-top: 10px;
	font-family: var(--pte-font);
}
.acc-item.expanded .acc-read-more { display: none; }

/* Expanded body */
.acc-body { display: none; }
.acc-item.expanded .acc-body { display: block; }

/* Body text */
.acc-body-text { font-size: 18px; font-weight: 300; line-height: 1.6; color: #000; }
.acc-body-text p { margin-bottom: 24px; }
.acc-body-text p:last-child { margin-bottom: 0; }

/* Pull quote */
.pull-quote-block {
	margin-left: -300px;
	margin-top: 40px;
	margin-bottom: 40px;
}
.pull-quote-rule { height: 1px; background: #000; margin-bottom: 32px; }
.pull-quote-content { display: flex; align-items: flex-start; padding-left: 300px; }
.pull-quote-mark { width: 106px; height: 84px; flex-shrink: 0; }
.pull-quote-text {
	margin: 0 0 0 43px;
	font-size: 26px; font-weight: 500; line-height: 1.4; color: #000;
	max-width: 711px;
}

/* Collapse button */
.acc-collapse-btn {
	display: none;
	font-size: 18px; font-weight: 500; color: #000;
	cursor: pointer; background: none; border: none; padding: 0; margin-top: 36px;
	font-family: var(--pte-font);
}
.acc-item.expanded .acc-collapse-btn { display: inline-flex; align-items: center; gap: 6px; }

/* ── Supporter callout link bar ── */
.pte-supporter-cta {
	display: flex; align-items: center;
	height: 151px;
	background: #006db9;
	padding-left: clamp(1rem, 9.8vw, 140px);
	gap: 18px;
	text-decoration: none;
}
.pte-supporter-cta__text {
	font-size: clamp(1rem, 1.6vw, 24px);
	font-weight: 700; color: #fff; white-space: nowrap;
}
/* Rule + gap combined: 170px tall, white bg, ::before for indented black line */
.pte-supporter-cta__rule {
	position: relative;
	height: 170px;
	margin: 0;
	background: #fff;
}
.pte-supporter-cta__rule::before {
	content: '';
	position: absolute;
	top: 0;
	left: clamp(1rem, 9.8vw, 140px);
	right: clamp(1rem, 9.8vw, 140px);
	height: 1px;
	background: #000;
}
