/* ------------------------------------------------------------------
 * WordPress / Gutenberg reset for the Dramatic DA DJ theme.
 *
 * Purpose: neutralize Gutenberg's default block-editor CSS so it
 * doesn't conflict with the theme's hand-crafted CSS. IMPORTANT:
 * do not use blanket `!important` resets — the theme's own class
 * names (.hero, .hero__content, .trio__cell, .btn, etc.) MUST keep
 * governing layout.
 * ------------------------------------------------------------------ */

/* 1. Layout containers auto-generated by wp-block-group should be transparent.
 *    Only affect the generic wrapper — NOT any wrapper that also has a theme class. */
section.wp-block-group:not([class*=" "]):not(.hero):not(.section):not(.pullquote):not(.featured-trip):not(.about-band):not(.final-cta):not(.newsletter),
div.wp-block-group.is-layout-flow:not(.hero__content):not(.trio):not(.card-grid):not(.featured-trip__inner):not(.about-band__inner):not(.newsletter__inner):not(.final-cta__inner):not(.pullquote):not(.section-head):not(.section-head__lead) {
	background: transparent;
	padding: 0;
	margin: 0;
}

/* 2. Kill the block-gap "margin-block-start: 24px" rule on siblings inside
 *    theme-styled containers — the theme's own CSS controls spacing. */
.hero.is-layout-flow > *,
.hero__content.is-layout-flow > *,
.trio.is-layout-flow > *,
.section.is-layout-constrained > *,
.section-head.is-layout-flow > *,
.section-head__lead.is-layout-flow > *,
.featured-trip.is-layout-constrained > *,
.featured-trip__inner.is-layout-flex > *,
.featured-trip__body.is-layout-flow > *,
.about-band.is-layout-constrained > *,
.about-band__inner.is-layout-flex > *,
.about-band__body.is-layout-flow > *,
.final-cta.is-layout-constrained > *,
.final-cta__inner.is-layout-flow > *,
.newsletter.is-layout-constrained > *,
.newsletter__inner.is-layout-flow > *,
.card-grid.is-layout-constrained > *,
.pullquote.is-layout-constrained > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* 3. Reset wp-block-buttons wrapper inside .hero__actions so theme's flex layout wins */
.hero__actions.wp-block-buttons {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 2rem;
}
.hero__actions.wp-block-buttons.is-layout-flex {
	gap: 1rem;
}

/* 4. Neutralize .wp-block-button wrapper around a .btn — the button anchor
 *    inside should render as-if it were a plain <a class="btn ..."> */
.wp-block-button {
	margin: 0;
}
.wp-block-button > .wp-block-button__link.btn,
.wp-block-button > a.btn {
	/* the anchor itself has btn styles from components.css */
}
/* If the button anchor doesn't have theme classes, restore the theme's .btn look
 * by targeting the wrapper's classes (patterns put .btn on the wrapper) */
.wp-block-button.btn-primary > .wp-block-button__link,
.wp-block-button.btn-primary > .wp-element-button {
	background: var(--brand-orange, #E56321);
	color: #fff;
	border-radius: 999px;
	padding: 0.9rem 1.75rem;
	font-family: var(--font-display, 'Bebas Neue', sans-serif);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-decoration: none;
	border: 2px solid var(--brand-orange, #E56321);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s ease, color 0.2s ease;
	line-height: 1;
}
.wp-block-button.btn-primary > .wp-block-button__link:hover,
.wp-block-button.btn-primary > .wp-element-button:hover {
	background: transparent;
	color: var(--brand-orange, #E56321);
}
.wp-block-button.btn-outline > .wp-block-button__link,
.wp-block-button.btn-outline > .wp-element-button {
	background: transparent;
	color: #fff;
	border: 2px solid rgba(255, 255, 255, 0.4);
	border-radius: 999px;
	padding: 0.9rem 1.75rem;
	font-family: var(--font-display, 'Bebas Neue', sans-serif);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.wp-block-button.btn-outline > .wp-block-button__link:hover,
.wp-block-button.btn-outline > .wp-element-button:hover {
	background: #fff;
	color: var(--brand-navy, #0B1330);
	border-color: #fff;
}

/* 5. Latest-posts / query wrappers should not force list styling */
.wp-block-latest-posts,
.wp-block-query,
.wp-block-query > .wp-block-post-template {
	list-style: none;
	padding: 0;
	margin: 0;
}

/* 6. Suppress Gutenberg's default `wp-block-heading` display styles that add
 *    extra top-margin on H1/H2/H3 inside our custom sections. */
.hero__title.wp-block-heading,
.section h2.wp-block-heading,
.trio__title.wp-block-heading,
.card__title.wp-block-heading {
	margin: 0;
}
