/* Home page — matches Figma Homepage_V2 (Open Application phase) */

.pe-page--home {
	overflow: visible;
}

.pe-page--home .pe-page__bg {
	display: none;
}

.pe-page--home .pe-section {
	padding: 0 0 clamp(2.5rem, 5vw, 4rem);
}

/* Hero / celebrating control their own vertical rhythm */
.pe-page--home .pe-home-hero.pe-section {
	padding-bottom: clamp(1.5rem, 4vw, 3rem);
}

.pe-page--home .pe-home-celebrating.pe-section {
	padding-top: clamp(0.75rem, 2.5vw, 2rem);
	padding-bottom: clamp(2.5rem, 5vw, 4rem);
}

body.page-template-template-home .pe-header {
	background: transparent;
}

body.page-template-template-home .pe-main {
	padding-top: 0;
}

body.admin-bar.page-template-template-home .pe-main {
	padding-top: 0;
}

/* Hero */
.pe-home-hero {
	position: relative;
	margin-top: calc(-1 * var(--pe-header-offset));
	padding: calc(var(--pe-header-offset) + clamp(3rem, 6vw, 5.5rem)) 0 clamp(1.5rem, 4vw, 3rem);
	overflow: visible;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	text-align: center;
	min-height: auto;
}

/* Hero decor — scrolls with hero; leaves viewport with the section */
.pe-home-site-bg {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	overflow: visible;
}

.pe-home-site-bg__left {
	position: absolute;
	left: clamp(0.5rem, 3vw, 2.5rem);
	top: var(--pe-header-offset);
	width: clamp(11rem, 26vw, 21rem);
}

.pe-home-site-bg__outline {
	position: absolute;
	z-index: 1;
	top: calc(-1 * var(--pe-header-offset) - 1rem);
	left: 45%;
	width: 22rem;
	height: auto;
}

.pe-home-site-bg__dots {
	position: absolute;
	z-index: 0;
	top: 8rem;
	left: -48%;
	width: 24rem;
	height: auto;
}

.pe-home-site-bg__right {
	position: absolute;
	right: clamp(0.5rem, 4vw, 3rem);
	top: var(--pe-header-offset);
	width: clamp(8rem, 17vw, 13.5rem);
}

.pe-home-site-bg__solid-pink {
	position: absolute;
	z-index: 0;
	top: calc(var(--pe-header-offset) - 1rem);
	right: calc(27.5rem + clamp(0.5rem, 4vw, 3rem));
	width: 5rem;
	height: auto;
}

.pe-home-site-bg__outline-blue {
	position: absolute;
	z-index: 1;
	top: calc(-1 * var(--pe-header-offset) - 0.5rem);
	right: 10rem;
	width: 20rem;
	height: auto;
}

.pe-home-site-bg__dots-blue {
	position: absolute;
	z-index: 0;
	top: 25rem;
	right: 2rem;
	width: 20rem;
	height: auto;
}

.pe-home-site-bg__solid-blue {
	position: absolute;
	z-index: 0;
	top: 85%;
	left: calc(50% + 10rem);
	width: clamp(4.5rem, 11vw, 6.5rem);
	height: auto;
}

.pe-home-hero__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: clamp(1.75rem, 3.5vw, 3rem);
	padding-top: clamp(6rem, 14vw, 12rem);
	padding-bottom: 0;
}

.pe-home-hero__lockup {
	width: min(100%, 27.75rem);
	height: auto;
	margin: 0 auto;
}

.pe-home-hero__copy {
	max-width: 57.5rem;
	margin: 0;
	font-size: clamp(1.25rem, 2.8vw, 2.5rem);
	line-height: 1.3;
	font-weight: 400;
	background: linear-gradient(90.7deg, var(--pe-cyan) 3.84%, var(--pe-blue) 103.18%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.pe-home-hero__copy p {
	margin: 0;
}

.pe-home-hero__apply {
	position: relative;
	display: inline-block;
	width: min(100%, 17.75rem);
	transition: transform 0.2s ease, filter 0.2s ease;
}

.pe-home-hero__apply:hover,
.pe-home-hero__apply:focus-visible {
	transform: translateY(-2px);
	filter: drop-shadow(0 8px 24px rgba(35, 116, 223, 0.45));
}

.pe-home-hero__apply .pe-apply-cta__svg {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 160.753 / 41;
	overflow: visible;
}

.pe-home-hero__apply .pe-apply-cta__shape {
	transition: opacity 0.2s ease;
}

.pe-home-hero__apply .pe-apply-cta__shape--hover {
	opacity: 0;
}

.pe-home-hero__apply:hover .pe-apply-cta__shape--default,
.pe-home-hero__apply:focus-visible .pe-apply-cta__shape--default {
	opacity: 0;
}

.pe-home-hero__apply:hover .pe-apply-cta__shape--hover,
.pe-home-hero__apply:focus-visible .pe-apply-cta__shape--hover {
	opacity: 1;
}

.pe-home-hero__apply .cta-label {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
}

.pe-home-hero__photos {
	position: absolute;
	top: 12%;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
	z-index: 0;
}

.pe-home-hero__photo {
	position: absolute;
}

.pe-home-hero__photo img {
	display: block;
	width: 100%;
	height: auto;
}

.pe-home-hero__photo--0 {
	top: 1rem;
	transform: none;
	width: clamp(13rem, 30vw, 24rem);
}

.pe-home-hero__photo--1 {
	right: clamp(0.5rem, 4vw, 3rem);
	top: -1.5rem;
	width: clamp(13rem, 28vw, 24rem);
}

.pe-home-hero__photo--2 {
	right: clamp(-1rem, -8vw, 1rem);
	bottom: clamp(5rem, 17vw, 7rem);
	width: clamp(12rem, 35vw, 18rem);
}

.pe-home-hero__photo--3 {
	left: 29%;
	top: 33.5rem;
	transform: translateX(-42%);
	width: clamp(7rem, 14vw, 10.5rem);
}

/* Hero entrance — fade + rise on first paint */
@keyframes pe-hero-enter {
	from {
		opacity: 0;
		translate: 0 1.75rem;
		scale: 0.96;
		filter: blur(6px);
	}

	to {
		opacity: 1;
		translate: 0 0;
		scale: 1;
		filter: blur(0);
	}
}

@keyframes pe-hero-enter-left {
	from {
		opacity: 0;
		translate: -2.5rem 0.75rem;
		scale: 0.96;
		filter: blur(6px);
	}

	to {
		opacity: 1;
		translate: 0 0;
		scale: 1;
		filter: blur(0);
	}
}

@keyframes pe-hero-enter-right {
	from {
		opacity: 0;
		translate: 2.5rem 0.75rem;
		scale: 0.96;
		filter: blur(6px);
	}

	to {
		opacity: 1;
		translate: 0 0;
		scale: 1;
		filter: blur(0);
	}
}

.pe-home-site-bg__left,
.pe-home-site-bg__right,
.pe-home-site-bg__solid-pink,
.pe-home-site-bg__solid-blue,
.pe-home-hero__photo,
.pe-home-hero__lockup,
.pe-home-hero__copy,
.pe-home-hero__apply {
	opacity: 0;
	animation-duration: 0.95s;
	animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
	animation-fill-mode: both;
}

.pe-home-site-bg__left {
	animation-name: pe-hero-enter-left;
	animation-delay: 0.05s;
}

.pe-home-site-bg__right {
	animation-name: pe-hero-enter-right;
	animation-delay: 0.12s;
}

.pe-home-site-bg__solid-pink {
	animation-name: pe-hero-enter-left;
	animation-delay: 0.1s;
}

.pe-home-site-bg__solid-blue {
	animation-name: pe-hero-enter-right;
	animation-delay: 0.16s;
}

.pe-home-hero__photo--0 {
	animation-name: pe-hero-enter-left;
	animation-delay: 0.18s;
}

.pe-home-hero__photo--1 {
	animation-name: pe-hero-enter-right;
	animation-delay: 0.26s;
}

.pe-home-hero__photo--2 {
	animation-name: pe-hero-enter-right;
	animation-delay: 0.34s;
}

.pe-home-hero__photo--3 {
	animation-name: pe-hero-enter;
	animation-delay: 0.42s;
}

.pe-home-hero__lockup {
	animation-name: pe-hero-enter;
	animation-delay: 0.28s;
}

.pe-home-hero__copy {
	animation-name: pe-hero-enter;
	animation-delay: 0.44s;
}

.pe-home-hero__apply {
	animation-name: pe-hero-enter;
	animation-delay: 0.58s;
}

/* Application form */
.pe-home-form {
	padding: 0 0 clamp(1.5rem, 4vw, 3rem);
}

.pe-home-form .pe-form-embed {
	background: rgba(0, 0, 0, 0.35);
	border: 1px solid rgba(71, 203, 228, 0.25);
	border-radius: 4px;
}

/* Celebrating section — tight handoff from Apply → title → flare */
.pe-home-celebrating.pe-section,
.pe-home-celebrating {
	position: relative;
	z-index: 2;
	padding: clamp(0.75rem, 2.5vw, 2rem) 0 clamp(2.5rem, 5vw, 4rem);
}

.pe-home-celebrating .pe-container {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 0;
}

.pe-home-celebrating .pe-container > div {
	position: relative;
}

.pe-home-celebrating__title-wrap {
	grid-row: 1;
	margin-bottom: 0;
	text-align: center;
	z-index: 5;
}

.pe-home-celebrating__title {
	max-width: 47rem;
	margin: 0 auto;
	font-size: clamp(2rem, 3.8vw, 3.4375rem);
	font-weight: 700;
	line-height: 1.1;
	color: var(--pe-cyan);
	text-shadow: 0 4px 70px rgba(35, 116, 223, 0.6);
	text-align:center;
}
.pe-home-celebrating__title span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 188px;
	height: 192px;
	background-image: url('../../images/graphics/badge.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	padding-bottom: 24px;
	margin: 0 -7% -5% -7%;
}

.pe-home-celebrating__title img{
	display:inline-block;
}

.pe-home-celebrating__title p {
	margin: 0;
}

.pe-home-celebrating__title strong,
.pe-home-celebrating__title b {
	font-weight: 700;
}

/* Stats over bubble flare — own row above lockup grid on desktop */
.pe-home-stats {
	position: relative;
	grid-row: 2;
	width: 100vw;
	margin-inline: calc(50% - 50vw);
	max-width: 100vw;
	z-index: 2;
}

.pe-home-stats__mobile {
	display: none;
}

.pe-home-stats__desktop {
	position: relative;
}

.pe-home-stats__flare {
	display: block;
	width: 100%;
	height: auto;
	margin: -8rem auto;
}

.pe-home-stats__grid {
	position: absolute;
	inset: 0;
	display: grid;
	grid-template-columns: 1fr 1.2fr 1fr;
	align-items: center;
	gap: 1rem;
	padding: clamp(2rem, 8vw, 5rem) clamp(1rem, 4vw, 3rem);
}

.pe-home-stats__item {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-top: -7rem;
}

.pe-home-stats__item--left {
	padding-top: clamp(0.5rem, 2vw, 1.5rem);
	padding-left: clamp(1.5rem, 3vw, 3.5rem);
}

.pe-home-stats__item--right {
	padding-top: clamp(0.5rem, 2vw, 1.5rem);
}

.pe-home-stats__item--center {
	padding-top: clamp(2rem, 4vw, 8rem);
}

.pe-home-stats__text {
	margin: 0;
	color: var(--pe-white);
	font-size: clamp(0.95rem, 1.4vw, 1.25rem);
	line-height: 1.35;
	font-weight: 400;
}

.pe-home-stats__item--center .pe-home-stats__text {
	font-size: clamp(1.1rem, 2vw, 1.875rem);
	font-weight: 400;
}

.pe-home-stats__text p {
	margin: 0;
}

.pe-home-stats__text strong,
.pe-home-stats__text b {
	font-weight: 600;
}

/* Alumni lockup grid — row below stats on desktop */
.pe-home-lockup {
	margin-top: clamp(1rem, 3vw, 2rem);
	text-align: center;
}

.pe-home-lockup__mobile {
	display: none;
}

.pe-home-lockup__image {
	display: block;
	width: min(100%, 86rem);
	margin: 0 auto;
	margin-top: -10rem;
}

/* Pre-footer */
.pe-home-prefooter {
	padding: clamp(2rem, 5vw, 4rem) 0 clamp(3rem, 6vw, 5rem);
}

.pe-home-prefooter__grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: clamp(0.75rem, 1.5vw, 1rem);
}

.pe-home-prefooter__link {
	position: relative;
	display: block;
	flex: 0 1 auto;
	min-width: 0;
	min-height: 6.125rem;
	text-decoration: none;
	color: var(--pe-white);
	transition: transform 0.2s ease, filter 0.2s ease;
}

.pe-home-prefooter__link--blue {
	width: min(100%, 20.875rem);
}

.pe-home-prefooter__link--purple {
	width: min(100%, 34.75rem);
}

.pe-home-prefooter__link:hover {
	transform: translateY(-2px);
	filter: drop-shadow(0 8px 24px rgba(35, 116, 223, 0.35));
}

.pe-home-prefooter__link--purple:hover {
	filter: drop-shadow(0 8px 24px rgba(105, 71, 197, 0.4));
}

.pe-home-prefooter__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: fill;
	pointer-events: none;
	z-index: 1;
}

.pe-home-prefooter__label {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 6.125rem;
	padding: 1rem 1.5rem 1rem 5.5rem;
	font-size: clamp(1.25rem, 2.5vw, 2.5rem);
	font-weight: 500;
	letter-spacing: 0.0156em;
	text-align: center;
	color: var(--pe-white);
}

@media (max-width: 992px) {
	.pe-home-site-bg__left {
		inset: 0;
		width: auto;
		height: auto;
		z-index: 0;
	}

	.pe-home-site-bg__outline {
		top: calc(var(--pe-header-offset) + 3rem);
		left: clamp(0rem, 1vw, 0.25rem);
		width: clamp(3rem, 16vw, 4.25rem);
		z-index: 0;
	}

	.pe-home-site-bg__dots {
		top: auto;
		bottom: 0.15rem;
		left: calc(50% + 7rem);
		right: auto;
		width: clamp(4.5rem, 22vw, 6.5rem);
		z-index: 0;
	}

	.pe-home-site-bg__right {
		inset: 0;
		width: auto;
		height: auto;
	}

	.pe-home-site-bg__solid-pink {
		top: calc(var(--pe-header-offset) + 0.5rem);
		left: clamp(0.5rem, 3vw, 1rem);
		right: auto;
		width: 3.15rem;
		min-width: 3.15rem;
		max-width: none;
		height: auto;
		transform-origin: top left;
		scale: 1.4;
		animation: none;
		opacity: 1;
		z-index: 1;
	}

	.pe-home-site-bg__outline-blue {
		top: auto;
		bottom: 1.0rem;
		left: 0;
		right: auto;
		width: 3.5rem;
		min-width: 3.15rem;
		max-width: none;
		height: auto;
		transform-origin: bottom left;
		scale: 1.4;
		animation: none;
		opacity: 1;
		z-index: 1;
	}

	.pe-home-lockup {
		margin-top: 11rem;
	}

	.pe-home-site-bg__dots-blue {
		display: none;
	}

	.pe-home-site-bg__solid-blue {
		top: calc(var(--pe-header-offset) + 3.5rem);
		bottom: auto;
		left: calc(50% + 6.85rem);
		right: auto;
		width: 3.15rem;
		min-width: 3.15rem;
		max-width: none;
		height: auto;
		transform-origin: center left;
		scale: 1.4;
		animation: none;
		opacity: 1;
	}

	.pe-page--home .pe-home-hero.pe-section,
	.pe-home-hero {
		padding-top: calc(var(--pe-header-offset) + 1.5rem);
		padding-bottom: 2.5rem;
	}

	.pe-home-hero .pe-container,
	.pe-home-hero__content {
		width: 100%;
		max-width: none;
		padding-inline: var(--pe-gutter);
		margin-inline: auto;
	}

	.pe-home-hero__content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		gap: 1.5rem;
		padding-top: 2rem;
		padding-bottom: 0;
		text-align: center;
		position: relative;
		z-index: 1;
	}

	.pe-home-hero__lockup {
		display: block;
		width: min(100%, 13rem);
		max-width: 13rem;
		margin-inline: auto;
	}

	.pe-home-hero__copy {
		width: 100%;
		max-width: 32rem;
		margin-inline: auto;
		font-size: clamp(0.9375rem, 3.8vw, 1.125rem);
		line-height: 1.4;
		padding: 0;
		text-align: center;
	}

	.pe-home-hero__copy p {
		text-align: center;
	}

	.pe-home-hero__apply {
		display: block;
		width: min(100%, 13.5rem);
		margin-inline: auto;
	}

	.pe-page--home .pe-home-celebrating.pe-section,
	.pe-home-celebrating.pe-section,
	.pe-home-celebrating {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}

	.pe-home-celebrating .pe-container {
		width: 100%;
		max-width: none;
		padding-inline: var(--pe-gutter);
		margin-inline: auto;
		row-gap: 1.5rem;
	}

	.pe-home-celebrating__title-wrap {
		width: 100%;
		text-align: center;
	}

	.pe-home-celebrating__title {
		max-width: 20rem;
		margin-inline: auto;
		font-size: clamp(1.125rem, 4.8vw, 1.5rem);
		line-height: 1.2;
		padding: 0;
		text-align: center;
	}

	.pe-home-celebrating__title p {
		text-align: center;
	}

	.pe-home-celebrating__title span {
		width: 3rem;
		height: 3.1rem;
		padding-bottom: 0.35rem;
		margin: 0 -0.2rem -0.15rem;
		vertical-align: middle;
	}

	/* Tablet — 3-column grid, no text fade */
	.pe-home-stats {
		position: relative;
		width: 100vw;
		margin: 0 calc(50% - 50vw) 2rem;
		padding: 0;
		overflow: visible;
	}

	.pe-home-stats__desktop {
		display: block;
	}

	.pe-home-stats__mobile {
		display: none;
	}

	.pe-home-stats__flare {
		margin: -4rem auto -2rem;
	}

	.pe-home-stats__grid {
		padding: clamp(1.5rem, 6vw, 3rem) clamp(0.75rem, 3vw, 1.5rem);
	}

	.pe-home-stats__item {
		margin-top: -4rem;
	}

	.pe-home-stats__item--left {
		padding-left: clamp(0.5rem, 2vw, 1.5rem);
	}

	.pe-home-stats__item--right {
		padding-top: 1;
		transform: translate(-0.75rem, -0.65rem);
	}

	.pe-home-stats__item--center {
		padding-top: clamp(1rem, 3vw, 3rem);
	}

	.pe-home-stats__text {
		font-size: clamp(0.75rem, 2vw, 1rem);
	}

	.pe-home-stats__item--left .pe-home-stats__text,
	.pe-home-stats__item--right .pe-home-stats__text {
		font-size: clamp(0.625rem, 1.5vw, 0.8125rem);
	}

	.pe-home-stats__item--center .pe-home-stats__text {
		font-size: clamp(0.875rem, 2.5vw, 1.125rem);
	}

	.pe-home-lockup__image {
		width: 100%;
	}

	.pe-home-stats,
	.pe-home-lockup {
		grid-row: auto;
	}

	.pe-home-prefooter {
		padding-top: 1.5rem;
		padding-bottom: 2rem;
	}

	.pe-home-prefooter__grid {
		flex-direction: column;
		gap: 0.75rem;
	}

	.pe-home-prefooter__link {
		margin-inline: auto;
	}
}

@media (min-width: 769px) and (max-width: 992px) {
	.pe-home-celebrating .pe-container {
		row-gap: 0;
	}

	.pe-home-celebrating__title {
		max-width: 28rem;
		font-size: clamp(1.25rem, 5vw, 1.75rem);
	}

	.pe-home-celebrating__title span {
		width: clamp(3.75rem, 9vw, 4.5rem);
		height: clamp(3.85rem, 9.2vw, 4.6rem);
		padding-bottom: 0.45rem;
		margin: 0 -0.25rem -0.2rem;
	}

	.pe-home-hero__photos {
		display: block;
	}

	.pe-page--home .pe-home-hero.pe-section,
	.pe-home-hero {
		padding-top: calc(var(--pe-header-offset) + clamp(2rem, 5vw, 4rem));
		padding-bottom: clamp(1.5rem, 4vw, 2.5rem);
		min-height: clamp(26rem, 72vw, 38rem);
	}

	.pe-home-hero__content {
		width: 100%;
		max-width: none;
		padding-top: clamp(3.5rem, 9vw, 7rem);
		text-align: center;
	}

	.pe-home-hero__copy,
	.pe-home-hero__copy p {
		max-width: clamp(20rem, 55vw, 32rem);
		margin-inline: auto;
		text-align: center;
	}

	/* Decor — desktop layout, scaled for tablet */
	.pe-home-site-bg__left {
		inset: auto;
		left: clamp(0.5rem, 3vw, 2rem);
		top: var(--pe-header-offset);
		width: clamp(9rem, 22vw, 16rem);
		height: auto;
	}

	.pe-home-site-bg__outline {
		top: calc(-1 * var(--pe-header-offset) + 2.75rem);
		left: 65%;
		right: auto;
		width: clamp(12rem, 24vw, 18rem);
		z-index: 1;
	}

	.pe-home-site-bg__dots {
		top: 12rem;
		bottom: auto;
		left: -48%;
		right: auto;
		width: clamp(8rem, 20vw, 16rem);
	}

	.pe-home-site-bg__right {
		inset: auto;
		right: clamp(0.5rem, 3vw, 2rem);
		top: var(--pe-header-offset);
		width: clamp(6rem, 14vw, 11rem);
		height: auto;
	}

	.pe-home-site-bg__solid-pink {
		top: calc(var(--pe-header-offset) - 0.5rem);
		left: auto;
		right: calc(23.5rem + clamp(0.5rem, 3vw, 2rem));
		width: clamp(3.5rem, 8vw, 4.5rem);
		min-width: 0;
		scale: 1;
		transform-origin: center;
	}

	.pe-home-site-bg__outline-blue {
		top: calc(-1 * var(--pe-header-offset) - 4.35rem);
		bottom: auto;
		left: auto;
		right: clamp(8rem, 10vw, 14rem);
		width: clamp(11rem, 22vw, 16rem);
		min-width: 0;
		scale: 1;
		transform-origin: center;
	}

	.pe-home-site-bg__dots-blue {
		display: block;
		top: clamp(19rem, 22vw, 24rem);
		right: clamp(4.5rem, 3vw, 7.5rem);
		left: auto;
		bottom: auto;
		width: clamp(18rem, 24vw, 24rem);
	}

	.pe-home-site-bg__solid-blue {
		top: 76%;
		bottom: auto;
		left: calc(50% + clamp(6rem, 10vw, 8rem));
		right: auto;
		width: clamp(3.5rem, 9vw, 5.5rem);
		min-width: 0;
		scale: 1;
		transform-origin: center;
	}

	/* Hero photos — desktop layout, scaled for tablet */
	.pe-home-hero__photo--0 {
		top: 1rem;
		left: clamp(-1.1srem, -2vw, -2.5rem);
		right: auto;
		width: clamp(18rem, 20vw, 15rem);
		transform: none;
	}

	.pe-home-hero__photo--1 {
		right: clamp(5.25rem, 3vw, 7.5rem);
		top: -1rem;
		left: auto;
		width: clamp(16rem, 25vw, 20rem);
	}

	.pe-home-hero__photo--2 {
		right: clamp(-0.5rem, -5vw, 0.5rem);
		bottom: clamp(6.5rem, 14vw, 9rem);
		left: auto;
		width: clamp(9rem, 26vw, 14rem);
	}

	.pe-home-hero__photo--3 {
		left: 30%;
		top: clamp(23rem, 38vw, 28rem);
		bottom: auto;
		right: auto;
		transform: translateX(-42%);
		width: clamp(6rem, 12vw, 8.5rem);
	}

	.pe-home-hero__lockup {
		width: min(100%, 20rem);
		max-width: 20rem;
	}

	.pe-home-stats {
		margin-bottom: 0;
	}

	.pe-home-stats__flare {
		margin-bottom: 0;
	}

	.pe-home-lockup {
		width: 100vw;
		margin-top: 0;
		margin-inline: calc(50% - 50vw);
	}

	.pe-home-lockup__image {
		width: 100%;
		max-width: none;
		margin-top: -10rem;
		margin-bottom: 2rem;
	}
}

@media (max-width: 768px) {
	.pe-home-hero__photos {
		display: none;
	}

	.pe-home-site-bg__outline {
		top: calc(var(--pe-header-offset) + 2.75rem);
		left: 0;
		width: clamp(2.75rem, 14vw, 3.75rem);
	}

	.pe-home-site-bg__dots {
		bottom: 0.1rem;
		left: calc(50% + 6.25rem);
		width: clamp(3.75rem, 20vw, 5.5rem);
	}

	.pe-home-site-bg__solid-pink {
		top: calc(var(--pe-header-offset) + 0.35rem);
		left: clamp(0.25rem, 2vw, 0.75rem);
	}

	.pe-home-site-bg__solid-blue {
		top: calc(var(--pe-header-offset) + 4rem);
		left: calc(50% + 6rem);
	}

	.pe-home-hero__content {
		gap: 1.25rem;
		padding-top: 2.5rem;
	}

	.pe-home-hero .pe-container,
	.pe-home-hero__content,
	.pe-home-celebrating .pe-container {
		width: 100%;
		max-width: none;
		padding-inline: var(--pe-gutter);
	}

	.pe-home-hero__lockup {
		width: min(100%, 12rem);
		max-width: 12rem;
	}

	.pe-home-hero__copy {
		max-width: 19rem;
		font-size: 0.9375rem;
	}

	.pe-home-hero__apply {
		width: min(100%, 12.5rem);
	}

	.pe-home-hero__apply .cta-label {
		font-size: 1.05rem;
	}

	.pe-home-celebrating__title {
		max-width: 17rem;
		font-size: 1.125rem;
	}

	.pe-home-celebrating__title span {
		width: 2.65rem;
		height: 2.75rem;
	}

	.pe-home-prefooter__link--blue {
		width: min(100%, 13.5rem);
		min-height: 4.75rem;
	}

	.pe-home-prefooter__link--purple {
		width: min(100%, 20rem);
		min-height: 5.5rem;
	}

	.pe-home-prefooter__link--blue .pe-home-prefooter__label {
		min-height: 4.75rem;
		padding: 0.75rem 1rem 0.75rem 3.25rem;
		font-size: clamp(0.8125rem, 3.5vw, 0.9375rem);
	}

	.pe-home-prefooter__link--purple .pe-home-prefooter__label {
		min-height: 5.5rem;
		padding: 0.875rem 1.25rem 0.875rem 4.5rem;
		font-size: clamp(0.9375rem, 4vw, 1.0625rem);
	}

	/* Mobile — static flare + text-only fade slideshow */
	.pe-home-stats__desktop {
		display: none;
	}

	.pe-home-stats__mobile {
		display: block;
	}

	.pe-home-stats__viewport {
		position: relative;
		overflow: hidden;
		padding: 0;
		min-height: clamp(15rem, 56vw, 21rem);
	}

	.pe-home-stats__viewport > .pe-home-stats__flare--static {
		display: block;
		width: 100%;
		height: auto;
		margin: 0;
	}

	.pe-home-stats__slide {
		position: absolute;
		inset: 0;
		z-index: 1;
		pointer-events: none;
	}

	.pe-home-stats__slide.is-active {
		pointer-events: auto;
	}

	.pe-home-stats__slide .pe-home-stats__item {
		position: absolute;
		top: 42%;
		right: 0;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 1rem;
		margin: 0;
		border: 0;
		background: none;
		transform: translateY(-50%);
		opacity: 0;
		transition: opacity 1.2s ease;
	}

	.pe-home-stats__slide.is-active .pe-home-stats__item {
		opacity: 1;
	}

	.pe-home-stats__slide .pe-home-stats__text {
		font-size: clamp(1rem, 4.8vw, 1.1875rem);
		line-height: 1.35;
		max-width: 16rem;
		text-align: center;
	}

	.pe-home-stats__slide .pe-home-stats__item--center .pe-home-stats__text {
		font-size: clamp(1.125rem, 5.5vw, 1.3125rem);
	}

	/* Mobile lockup carousel — fade through gallery images */
	.pe-home-lockup:has(.pe-home-lockup__mobile) .pe-home-lockup__desktop {
		display: none;
	}

	.pe-home-lockup__mobile {
		display: block;
	}

	.pe-home-lockup__viewport {
		position: relative;
		margin-top: -10rem;
		margin-bottom: 2rem;
	}

	.pe-home-lockup__slide {
		opacity: 0;
		transition: opacity 0.4s ease;
		pointer-events: none;
	}

	.pe-home-lockup__slide:first-child {
		position: relative;
	}

	.pe-home-lockup__slide:not(:first-child) {
		position: absolute;
		inset: 0;
	}

	.pe-home-lockup__slide.is-active {
		opacity: 1;
		z-index: 1;
	}

	.pe-home-lockup__slide .pe-home-lockup__image {
		width: 100%;
		height: auto;
		margin: 0;
	}
}
