/*
 * Featured Image Caption — front-end styles
 * Version: 2.0.0
 *
 * Colors, font-size, padding are set via inline styles generated by PHP.
 * This file handles layout, structure, positioning and responsive behaviour.
 */

/* --- Figure wrapper -------------------------------------------------- */
.fic-featured-image {
	margin: 0 0 1.5em;
	padding: 0;
	display: block;
	position: relative;
}

.fic-featured-image img {
	display: block;
	width: 100%;
	height: auto;
}

/* --- Caption base ----------------------------------------------------- */
.fic-caption {
	display: block;
	margin: 0;
	line-height: 1.55;
	font-style: italic;
	box-sizing: border-box;
	width: 100%;
	transition: opacity 0.2s ease;
}

/* --- Position: below (default) --------------------------------------- */
.fic-pos-below .fic-caption { position: relative; }

/* --- Position: above -------------------------------------------------- */
.fic-pos-above .fic-caption { position: relative; }

/* --- Position: overlay ------------------------------------------------ */
.fic-pos-overlay { overflow: hidden; }

.fic-pos-overlay .fic-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	transform: translateY(4px);
	transition: transform 0.25s ease, opacity 0.25s ease;
	opacity: 0.92;
}

.fic-pos-overlay:hover .fic-caption {
	transform: translateY(0);
	opacity: 1;
}

/* --- Mobile ----------------------------------------------------------- */
@media (max-width: 600px) {
	.fic-featured-image { margin-bottom: 1em; }

	/* Overlay caption: always visible on touch */
	.fic-pos-overlay .fic-caption {
		transform: translateY(0);
		opacity: 1;
	}
}

/* --- Print ------------------------------------------------------------ */
@media print {
	.fic-caption {
		position: static !important;
		transform: none !important;
		opacity: 1 !important;
		color: #333 !important;
		background: transparent !important;
		border-left: 2px solid #999 !important;
		font-size: 10pt !important;
	}
}
