.video-card {
	background: var(--surface);
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
	transition: transform var(--transition), box-shadow var(--transition);
	cursor: pointer;
}

.video-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow);
}

.video-card__media {
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: var(--color-navy);
}

.video-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: opacity var(--transition);
}

.video-card:hover .video-card__media img { opacity: 0.8; }

.video-card__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(11, 58, 94, 0.35);
	transition: background var(--transition);
}

.video-card__play:hover { background: rgba(11, 58, 94, 0.55); }

.video-card__play svg {
	width: 56px;
	height: 56px;
	color: var(--color-white);
	filter: drop-shadow(0 2px 12px rgba(0,0,0,0.4));
}

.video-card__body {
	padding: var(--space-sm) var(--space-sm) var(--space-md);
}

.video-card__body h3 {
	font-size: 1rem;
}

.video-card__body h3 a {
	color: var(--color-navy);
	transition: color var(--transition);
}

.video-card__body h3 a:hover { color: var(--color-ocean); }

/* Videos grid */
.videos-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-md);
}

@media (max-width: 1024px) {
	.videos-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
	.videos-grid { grid-template-columns: 1fr; }
}

/* Video modal overlay */
.video-modal {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(5, 20, 35, 0.92);
	z-index: 9999;
	align-items: center;
	justify-content: center;
	padding: var(--space-md);
}

.video-modal.is-open { display: flex; }

.video-modal__inner {
	position: relative;
	width: 100%;
	max-width: 900px;
	aspect-ratio: 16 / 9;
}

.video-modal__inner iframe {
	width: 100%;
	height: 100%;
	border: none;
	border-radius: var(--radius);
}

.video-modal__close {
	position: absolute;
	top: -44px;
	right: 0;
	color: #fff;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.85;
	transition: opacity var(--transition);
}

.video-modal__close:hover { opacity: 1; }
.video-modal__close svg { width: 22px; height: 22px; }
