/* ACTS Past Edition — Previous Speakers */
.cew-ps{
	--cew-ps-per-view:4;
	width:100%;
	margin:0;
	padding:0;
	background:#fff;
	border-style:solid;
	border-color:#e7e7e7;
	font-family:"PP Neue Montreal",Arial,sans-serif;
	overflow:hidden;
}
.cew-ps *{box-sizing:border-box}
.cew-ps-inner{
	width:100%;
	max-width:100%;
	margin:0 auto;
}
.cew-ps-header{
	display:block!important;
	width:100%;
	clear:both;
	padding:0 0 18px;
}
.cew-ps-header-copy{min-width:0}
.cew-ps-view-all-row{
	width:100%;
	display:flex;
	clear:both;
	float:none;
	position:relative;
	justify-content:flex-end;
	align-items:center;
	padding:0 0 24px;
}
.cew-ps-eyebrow{
	margin:0 0 10px;
	color:#747474;
	font-size:12px;
	line-height:1.2;
	text-transform:uppercase;
	letter-spacing:.03em;
}
.cew-ps-heading{
	margin:0;
	color:#111;
	font-size:36px;
	line-height:1.05;
	font-weight:500;
	letter-spacing:-.035em;
}
.cew-ps-view-all{
	display:inline-flex;
	align-items:center;
	gap:8px;
	color:#16072f;
	text-decoration:none!important;
	font-size:14px;
	line-height:1.2;
	transition:color .2s ease;
}
.cew-ps-view-all svg{fill:currentColor}

.cew-ps-viewport{
	width:100%;
	overflow-x:auto;
	overflow-y:hidden;
	scroll-snap-type:x mandatory;
	scrollbar-width:none;
	-webkit-overflow-scrolling:touch;
}
.cew-ps-viewport::-webkit-scrollbar{display:none}
.cew-ps-track{
	display:flex;
	gap:16px;
	width:max-content;
	min-width:100%;
	align-items:stretch;
}
.cew-ps-card{
	position:relative;
	flex:0 0 calc((100% - (16px * (var(--cew-ps-per-view) - 1))) / var(--cew-ps-per-view));
	width:calc((100% - (16px * (var(--cew-ps-per-view) - 1))) / var(--cew-ps-per-view));
	min-width:0;
	scroll-snap-align:start;
}
.cew-ps.has-measured-width .cew-ps-card{
	flex-basis:var(--cew-ps-card-width);
	width:var(--cew-ps-card-width);
}
.cew-ps-card-link{
	position:absolute;
	inset:0;
	z-index:2;
}
.cew-ps-image{
	position:relative;
	height:315px;
	background-color:#ececec;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:50% 50%;
	overflow:hidden;
}
.cew-ps-image::after{
	content:"";
	position:absolute;
	inset:0;
	background:transparent;
	opacity:0;
	pointer-events:none;
}
.cew-ps-meta{
	position:relative;
	z-index:3;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
	padding:14px 0 0;
}
.cew-ps-meta-copy{
	min-width:0;
	flex:1 1 auto;
}
.cew-ps-name{
	margin:0 0 6px;
	color:#111;
	font-size:18px;
	line-height:1.15;
	font-weight:500;
	letter-spacing:-.02em;
}
.cew-ps-position{
	color:#555;
	font-size:14px;
	line-height:1.35;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.cew-ps-linkedin{
	position:relative;
	z-index:5;
	flex:0 0 auto;
	width:34px;
	height:34px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	background:#f0f0f0;
	color:#111;
	text-decoration:none!important;
	transition:background .2s ease,color .2s ease;
}
.cew-ps-linkedin:hover{
	background:#111;
	color:#fff;
}
.cew-ps-linkedin svg{
	fill:currentColor;
}
.cew-ps-controls{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:16px;
	margin-top:56px;
}
.cew-ps-arrow{
	width:48px;
	height:48px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0;
	border:1px solid #16072f;
	background:#fff;
	color:#16072f;
	cursor:pointer;
	transition:background .2s ease,color .2s ease,opacity .2s ease;
}
.cew-ps-arrow:hover{
	background:#16072f;
	color:#fff;
}
.cew-ps-arrow:disabled{
	opacity:.35;
	cursor:default;
}
.cew-ps-arrow svg{fill:currentColor}
/* Keep the square outline even when the theme / Elementor Kit resets button borders */
.cew-ps-controls button.cew-ps-arrow{border:1px solid #16072f;border-radius:0;box-shadow:none;outline:none;text-decoration:none;min-height:0;line-height:1}
.cew-ps-controls button.cew-ps-arrow:focus-visible{outline:2px solid #16072f;outline-offset:2px}
.cew-ps-empty{
	padding:18px;
	border:1px dashed #ccc;
	background:#fafafa;
	color:#666;
	font-size:13px;
	line-height:1.45;
}

@media(max-width:1024px){
	.cew-ps{--cew-ps-per-view:3}
	.cew-ps-heading{font-size:32px}
	.cew-ps-image{height:270px}
}

@media(max-width:767px){
	.cew-ps{--cew-ps-per-view:2}
	.cew-ps-header{
		padding:0 16px 12px;
	}
	.cew-ps-view-all-row{
		justify-content:flex-end;
		padding:0 16px 22px;
	}
	.cew-ps-heading{
		font-size:29px;
		line-height:1.08;
	}
	.cew-ps-eyebrow{
		font-size:11px;
	}
	.cew-ps-view-all{
		font-size:13px;
	}
	.cew-ps-viewport{
		padding:0 16px;
	}
	.cew-ps-track{
		gap:16px;
	}
	.cew-ps-image{
		height:210px;
	}
	.cew-ps-name{
		font-size:16px;
	}
	.cew-ps-position{
		font-size:13px;
	}
	.cew-ps-linkedin{
		width:30px;
		height:30px;
	}
	.cew-ps-controls{
		margin-top:30px;
	}
}


/* v3.90: View All is structurally independent from the header */
.cew-ps-header + .cew-ps-view-all-row{
	margin-top:0;
}
.cew-ps-view-all-row + .cew-ps-viewport{
	clear:both;
}
