/* Query loop — lock post titles to exactly two lines */
.wp-block-query .wp-block-post-title,
.wp-block-query .wp-block-post-title a {
	min-height: 2lh;
	display: -webkit-box !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical !important;
	overflow: hidden;
}

/* Query loop — lock excerpt to exactly three lines */
.wp-block-query .wp-block-post-excerpt__excerpt {
	min-height: 3lh;
	display: -webkit-box !important;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical !important;
	overflow: hidden;
}

/* Hamburger menu — remove border, replace with 3-line CSS icon */
.wp-block-navigation__responsive-container-open {
	border: none !important;
	padding: 0 !important;
	width: 28px;
	height: 20px;
	position: relative;
	display: flex;
	align-items: flex-start;
}

.wp-block-navigation__responsive-container-open svg {
	display: none;
}

.wp-block-navigation__responsive-container-close {
	border: none !important;
}

/* Light hamburger for dark background headers */
.header-light .wp-block-navigation__responsive-container-open::before {
	background: #fffff9;
	box-shadow: 0 8.75px 0 #fffff9, 0 17.5px 0 #fffff9;
}

/* When menu is open, switch back to dark so text is readable on white panel */
.header-light .wp-block-navigation__responsive-container.is-menu-open {
	color: #101820;
}

.header-light .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
	color: #101820;
	stroke: #101820;
}

.wp-block-navigation__responsive-container-open::before {
	content: '';
	display: block;
	width: 28px;
	height: 1.5px;
	background: #101820;
	border-radius: 0;
	box-shadow: 0 8.75px 0 #101820, 0 17.5px 0 #101820;
}

/* Animated underline on hover — menu items and inline text links only */
.wp-block-navigation a,
p a {
	display: inline-block;
	text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor);
	background-position: 0% 100%;
	background-repeat: no-repeat;
	background-size: 0% 1px;
	transition: background-size 0.3s ease;
}

.wp-block-navigation a:hover,
p a:hover {
	background-size: 100% 1px;
}
