/* HBK Campaign Modal — container and content styles.
   The overlay (.blocker) is provided by jquery.modal, already enqueued sitewide. */

/* ── Overlay z-index ────────────────────────────────────────────────────────── */

/* jquery.modal sets .blocker to z-index:1000, which falls behind the site header
   and WP admin bar (z-index:99999). Override to ensure full-screen coverage. */
.blocker {
	z-index: 100000;
}

/* ── Mobile — kill the overlay before it opens ──────────────────────────────── */

/* JS gates the modal on window.innerWidth > 767 so .blocker is never created on
   mobile. This rule is a belt-and-suspenders fallback. */
@media ( max-width: 767px ) {
	.blocker {
		display: none !important;
	}
	/* jquery.modal sets overflow:hidden inline on <body> when opening.
	   !important overrides inline styles, restoring scroll at mobile widths. */
	body {
		overflow: auto !important;
	}
}

/* ── Container ──────────────────────────────────────────────────────────────── */

/* jquery.modal appends the modal inside .blocker and uses display:inline-block +
   vertical-align:middle for centering. jQuery's .show() sets display:block inline,
   so !important is required to restore the inline-block needed for centering. */
.blocker #hbk-modal {
	display: inline-block !important;
	vertical-align: middle;
	max-width: 560px;
	width: 100%;
	background: #fff;
	padding: 48px;
	position: relative;
	text-align: center;
	box-sizing: border-box;
}

/* ── Close button ───────────────────────────────────────────────────────────── */

/* Reset all theme button styles that target the <button> element globally */
.hbk-modal-close {
	position: absolute;
	top: 16px;
	right: 16px;
	background: none;
	border: none;
	font-size: 36px;
	font-weight: 400;
	font-style: normal;
	text-transform: none;
	letter-spacing: normal;
	line-height: 1;
	padding: 0;
	width: auto;
	cursor: pointer;
	color: #272727;
	transition: color 0.2s ease-in-out;
}

.hbk-modal-close:hover,
.hbk-modal-close:focus {
	background: none;
	color: #561D4E;
	box-shadow: none;
}

/* ── Content ────────────────────────────────────────────────────────────────── */

.hbk-modal-headline {
	margin-bottom: 16px;
}

.hbk-modal-body {
	font-size: 20px;
	line-height: 1.5;
	margin-bottom: 28px;
}

/* .hbk-modal-btn inherits all .button styles from style.css — no overrides needed */

/* ── Purple scheme ──────────────────────────────────────────────────────────── */

.blocker #hbk-modal.hbk-modal--purple {
	background: #561D4E;
}

.hbk-modal--purple .hbk-modal-headline,
.hbk-modal--purple .hbk-modal-body {
	color: #fff;
}

.hbk-modal--purple .hbk-modal-close {
	color: #fff;
}

.hbk-modal--purple .hbk-modal-close:hover,
.hbk-modal--purple .hbk-modal-close:focus {
	color: #B2AE00;
}

/* Button: green bg, white text → white bg, purple text on hover */
.hbk-modal--purple .hbk-modal-btn.button {
	background: #B2AE00;
	color: #fff;
	border-color: #B2AE00;
}

.hbk-modal--purple .hbk-modal-btn.button:hover,
.hbk-modal--purple .hbk-modal-btn.button:focus {
	background: #fff;
	color: #561D4E;
	border-color: #fff;
}

/* ── Green scheme ───────────────────────────────────────────────────────────── */

.blocker #hbk-modal.hbk-modal--green {
	background: #B2AE00;
}

.hbk-modal--green .hbk-modal-headline,
.hbk-modal--green .hbk-modal-body {
	color: #fff;
}

.hbk-modal--green .hbk-modal-close {
	color: #fff;
}

.hbk-modal--green .hbk-modal-close:hover,
.hbk-modal--green .hbk-modal-close:focus {
	color: #561D4E;
}

/* Button: purple bg, white text → white bg, green text on hover */
.hbk-modal--green .hbk-modal-btn.button {
	background: #561D4E;
	color: #fff;
	border-color: #561D4E;
}

.hbk-modal--green .hbk-modal-btn.button:hover,
.hbk-modal--green .hbk-modal-btn.button:focus {
	background: #fff;
	color: #B2AE00;
	border-color: #fff;
}
