/* NorthMart: block fixes (theme fork 1.0.9) */

/* Accordion block: the theme's generic <button> styling (small meta font, 1px border, button padding)
   overrides core's accordion toggle. Make the toggle inherit the heading's type and colours. */
.entry-content .wp-block-accordion-heading .wp-block-accordion-heading__toggle,
.wp-block-accordion-heading .wp-block-accordion-heading__toggle {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: 1.2;
	letter-spacing: inherit;
	text-transform: none;
	color: inherit;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	display: flex;
	align-items: center;
	gap: 0.5em;
	width: 100%;
	min-height: 4rem;
	margin: 0;
	padding: 0.6em 1.25rem;
	text-align: left;
	transition: none;
	cursor: pointer;
}
.wp-block-accordion-heading .wp-block-accordion-heading__toggle:hover,
.wp-block-accordion-heading .wp-block-accordion-heading__toggle:focus,
.wp-block-accordion-heading .wp-block-accordion-heading__toggle:active {
	background: transparent;
	color: inherit;
	border: 0;
}
.wp-block-accordion-heading .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}
.wp-block-accordion-heading {
	margin: 0;
}
.wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon {
	font-size: 1.1em;
	line-height: 1;
	width: 1.2em;
	height: 1.2em;
	flex: none;
}
.wp-block-accordion-panel {
	padding: 1.5rem 1.25rem 2rem;
}
.wp-block-accordion-panel > :first-child {
	margin-top: 0;
}
.wp-block-accordion-panel > :last-child {
	margin-bottom: 0;
}
.wp-block-accordion-panel ul,
.wp-block-accordion-panel ol {
	padding-left: 1.25rem;
}

/* Smooth open/close. Core 7.1 declares a grid-template-rows transition on the item but never gives it
   the grid layout, and the panel is toggled with the hidden attribute, so it snaps. Keep the panel in
   flow (collapsed to a 0fr row, overflow hidden) so the rows can animate. hidden stays on the element
   for assistive tech. Respects prefers-reduced-motion like core does. */
@media (prefers-reduced-motion: no-preference) {
	.wp-block-accordion-item {
		display: grid;
		grid-template-rows: auto 0fr;
		transition: grid-template-rows 0.3s ease-out;
	}
	.wp-block-accordion-item.is-open {
		grid-template-rows: auto 1fr;
	}
	.wp-block-accordion-item > .wp-block-accordion-panel {
		min-height: 0;
		overflow: hidden;
		transition: padding 0.3s ease-out, opacity 0.25s ease-out;
	}
	.wp-block-accordion-item > .wp-block-accordion-panel[hidden] {
		display: block !important;
		content-visibility: visible; /* hidden="until-found" otherwise drops the content instantly on close */
		opacity: 0;
	}
}
