/*
Theme Name: Sixteen on Center
Template: wonderwork
Version: 1.1.0
Author: Mat Coes
Description: Child theme of Wonderwork for the Sixteen on Center site rebuild.
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 7.2
Text Domain: sixteen-on-center
*/


/* Post grids — Work page + all archives (archive / index / search)
   ----------------------------------------------------------------
   Structure (grid, featured image is a link, title is a link) comes from
   the wonderwork/posts pattern and the templates. Everything below is the
   SoC-specific skin: type size/weight, link colour, image ratio, hover.
   Scoped to .wp-block-query so the single-post <h1> title is never touched. */

.wp-block-query .wp-block-post-title {
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 400;
}

.wp-block-query .wp-block-post-title a {
	color: var(--wp--preset--color--primary);   /* dark blue */
	text-decoration: none;
	transition: color 0.15s ease;
}

.wp-block-query .wp-block-post-title a:hover {
	color: var(--wp--preset--color--tertiary);  /* light blue */
}

.wp-block-query .wp-block-post-featured-image {
	overflow: hidden;
}

.wp-block-query .wp-block-post-featured-image img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
	width: 100%;
	transition: transform 0.4s ease;
}

.wp-block-query .wp-block-post-featured-image:hover img {
	transform: scale(1.04);
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-query .wp-block-post-featured-image img,
	.wp-block-query .wp-block-post-featured-image:hover img {
		transition: none;
		transform: none;
	}
}


/* Full-bleed hero pages — hero meets the header, no gap
   ----------------------------------------------------------------
   Every page/archive template sets an inline padding-top on <main> (spacing
   M). When a page's content leads with an edge-to-edge block — today's
   full-width Group heroes, and Cover-block heroes later — drop that padding
   so the hero sits flush under the header. Keys on layout intent
   (.alignfull first), not block type. !important is required only because
   the templates set that padding inline. */

main.wp-block-group:has(> .wp-block-group > .wp-block-post-content > .alignfull:first-child) {
	padding-top: 0 !important;
}
