/* Web section cards: subtle blue glow without touching card layout */
body.page-id-25 .artcode-web-references__grid > *,
body.page-id-17 .artcode-web-references__grid > * {
	border: 1px solid rgba(76, 204, 255, 0.42) !important;
	border-radius: 12px !important;
	box-shadow:
		0 10px 24px rgba(0, 0, 0, 0.22),
		0 0 18px rgba(22, 208, 255, 0.24) !important;
	transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body.page-id-25 .artcode-web-references__grid > *:hover,
body.page-id-17 .artcode-web-references__grid > *:hover {
	transform: translateY(-4px) !important;
	border-color: rgba(96, 211, 255, 0.6) !important;
	box-shadow:
		0 16px 32px rgba(0, 0, 0, 0.28),
		0 0 24px rgba(22, 208, 255, 0.32) !important;
}

/* Cleanup polish layer: typography + spacing consistency */
.artcode-service-card h3,
.artcode-artist-card__name,
.artcode-web-reference h3 {
	font-weight: 700 !important;
	letter-spacing: 0 !important;
}

.artcode-service-card p,
.artcode-artist-card__bio,
.artcode-web-reference p,
.artcode-contact-head p {
	color: rgba(255, 255, 255, 0.78) !important;
	line-height: 1.62 !important;
}

.artcode-service-card,
.artcode-artist-card,
.artcode-web-references__grid > * {
	border-radius: 10px !important;
}

.artcode-service-card .has-no-underline,
.artcode-web-reference__footer {
	margin-top: 20px !important;
}

/* Web references: normalize preview size so all cards look equally tall */
body.page-id-25 .artcode-web-reference,
body.page-id-17 .artcode-web-reference {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 1fr);
	align-items: stretch;
}

body.page-id-25 .artcode-web-reference__preview,
body.page-id-25 .artcode-web-reference__media,
body.page-id-17 .artcode-web-reference__preview,
body.page-id-17 .artcode-web-reference__media {
	aspect-ratio: 16 / 10;
	height: 100%;
	overflow: hidden;
}

body.page-id-25 .artcode-web-reference__preview img,
body.page-id-25 .artcode-web-reference__media img,
body.page-id-17 .artcode-web-reference__preview img,
body.page-id-17 .artcode-web-reference__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
}

@media (max-width: 900px) {
	body.page-id-25 .artcode-web-reference,
	body.page-id-17 .artcode-web-reference {
		grid-template-columns: 1fr;
	}

	body.page-id-25 .artcode-web-reference__preview,
	body.page-id-25 .artcode-web-reference__media,
	body.page-id-17 .artcode-web-reference__preview,
	body.page-id-17 .artcode-web-reference__media {
		aspect-ratio: 16 / 9;
	}
}

/* Prevent first-load flicker on elements already visible in viewport */
.artcode-reveal-static {
	visibility: visible !important;
	opacity: 1 !important;
	animation: none !important;
	transform: none !important;
}
