/**
 * PN Frontend Polish 0.1.2
 *
 * Deliberately limited to verified frontend selectors. Content, form behavior,
 * commerce behavior and the existing hover/focus states remain unchanged.
 */

/* Prevent theme/core break-word defaults from fragmenting verified UI text. */
.single-content :where(
	h1,
	h2,
	h3,
	.wp-block-button__link,
	.kb-button,
	.ff-btn,
	.simpay-payment-btn
) {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: manual;
}

:where(
	.wp-navigation-item__content,
	.menu a
) {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: manual;
}

/* Preserve the verified 0.1.0 grid rules. */
:where(
	.page-id-82,
	.page-id-91,
	.page-id-251,
	.page-id-253,
	.page-id-255,
	.page-id-258
) .single-content .wp-block-group.is-layout-grid {
	gap: clamp(16px, 2vw, 24px);
}

:where(
	.page-id-82,
	.page-id-91,
	.page-id-251,
	.page-id-253,
	.page-id-255,
	.page-id-258
) .single-content .wp-block-group.is-layout-grid > .wp-block-group {
	margin-bottom: 0;
}

/* Preserve the verified 0.1.0 button geometry without global color changes. */
.entry-content .wp-block-button__link.wp-element-button,
.entry-content .kb-button.kt-button.wp-block-kadence-singlebtn,
.fluentform .ff-btn-submit.ff_btn_style,
.simpay-form-wrap .simpay-payment-btn {
	box-sizing: border-box;
	min-height: 48px;
	max-width: 100%;
	padding: 10px 20px;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
}

/* Verified hero treatments. */
body.page-id-78 .kb-row-layout-id78_bcc4a6-ee,
body.page-id-84 .kb-row-layout-id84_ans_header,
body.page-id-87 .kb-row-layout-id87_about_hero,
body.page-id-400 .entry-hero-container-inner {
	background: #0d2349;
}

body.page-id-78 .kb-row-layout-id78_bcc4a6-ee > .kt-row-column-wrap,
body.page-id-84 .kb-row-layout-id84_ans_header > .kt-row-column-wrap,
body.page-id-87 .kb-row-layout-id87_about_hero > .kt-row-column-wrap {
	padding: 80px 24px;
}

body.page-id-84 .kb-row-layout-id84_ans_header p,
body.page-id-400 .entry-hero .entry-title {
	color: #fff;
}

body.page-id-78 .kb-row-layout-id78_bcc4a6-ee h1.kt-adv-heading78_de040b-f4,
body.page-id-78 .kb-row-layout-id78_bcc4a6-ee p.kt-adv-heading78_9ddfd8-64,
body.page-id-78 .kb-row-layout-id78_bcc4a6-ee p.kt-adv-heading78_12e8bc-13 {
	color: #fff !important;
}

body.page-id-84 .kb-row-layout-id84_ans_header h1.kt-adv-heading84_ans_h1 {
	color: #fff !important;
}

body.page-id-87 .kb-row-layout-id87_about_hero h1.kt-adv-heading87_about_hero_h1 {
	color: #fff !important;
}

body.page-id-87 .kb-row-layout-id87_about_hero p {
	color: #fff !important;
}

body.page-id-89 .entry-content.single-content > .wp-block-group.alignfull:first-child {
	background: #0d2349 !important;
	padding: 80px 24px !important;
}

body.page-id-89 .entry-content.single-content > .wp-block-group.alignfull:first-child h1,
body.page-id-89 .entry-content.single-content > .wp-block-group.alignfull:first-child p {
	color: #fff !important;
}

body.page-id-400 .entry-hero-container-inner .entry-header {
	min-height: 0;
	padding: 80px 0;
}

/* Page 78 hero CTA pair only. */
body.page-id-78 .kb-row-layout-id78_bcc4a6-ee .kb-btns78_538416-4e .kb-btn78_5eec07-47 {
	color: #0d2349;
	background: #fff;
	border-color: #fff;
}

body.page-id-78 .kb-row-layout-id78_bcc4a6-ee .kb-btns78_538416-4e .kb-btn78_99448a-39 {
	color: #fff;
	background: transparent;
	border-color: #fff;
}

/* Page 80 card grids only. */
.page-id-80 .wp-container-core-group-is-layout-b899d1a5,
.page-id-80 .wp-container-core-group-is-layout-f27a36a9 {
	gap: clamp(16px, 2vw, 24px);
}

.page-id-80 .wp-container-core-group-is-layout-b899d1a5 > .wp-block-group,
.page-id-80 .wp-container-core-group-is-layout-f27a36a9 > .wp-block-group {
	margin-bottom: 0;
}

@media screen and (min-width: 768px) {
	.page-id-80 .wp-container-core-group-is-layout-b899d1a5 > .wp-block-group {
		height: 100%;
	}
}

@media screen and (max-width: 767px) {
	.page-id-251 .entry-content h1 {
		font-size: 28px;
	}

	.page-id-255 .entry-content h1 {
		font-size: 24px;
	}

	body.page-id-78 .kb-row-layout-id78_bcc4a6-ee > .kt-row-column-wrap,
	body.page-id-84 .kb-row-layout-id84_ans_header > .kt-row-column-wrap,
	body.page-id-87 .kb-row-layout-id87_about_hero > .kt-row-column-wrap {
		padding: 56px 24px;
	}

	body.page-id-89 .entry-content.single-content > .wp-block-group.alignfull:first-child {
		padding: 56px 24px !important;
	}

	body.page-id-400 .entry-hero-container-inner .entry-header {
		padding: 56px 0;
	}

	body.page-id-78 .kb-row-layout-id78_bcc4a6-ee .kb-btns78_538416-4e {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: center;
		gap: 14px;
	}

	body.page-id-78 .kb-row-layout-id78_bcc4a6-ee .kb-btns78_538416-4e .kb-btn78_5eec07-47,
	body.page-id-78 .kb-row-layout-id78_bcc4a6-ee .kb-btns78_538416-4e .kb-btn78_99448a-39 {
		box-sizing: border-box;
		width: 100%;
		max-width: 326px;
		min-height: 48px;
	}

	#mobile-header .site-branding a.brand img.custom-logo,
	#mobile-header .site-branding a.brand img.svg-logo-image {
		width: auto;
		height: auto;
		max-width: 180px;
		max-height: 64px;
	}

	#mobile-header .site-main-header-inner-wrap {
		min-height: 72px;
		align-items: center;
	}

	#mobile-toggle,
	#mobile-drawer .drawer-header .drawer-toggle {
		box-sizing: border-box;
		width: 48px;
		height: 48px;
		min-width: 48px;
		min-height: 48px;
		padding: 0;
		align-items: center;
		justify-content: center;
	}

	body #cmplz-manage-consent .cmplz-manage-consent {
		right: max(8px, env(safe-area-inset-right, 0px));
		bottom: max(8px, env(safe-area-inset-bottom, 0px));
		left: auto;
		width: auto;
		min-width: 0;
		max-width: min(150px, calc(100vw - 16px));
		height: auto;
		min-height: 44px;
		padding: 10px 12px;
		font-size: 14px;
		line-height: 1.2;
	}

	.page-id-80 .wp-container-core-group-is-layout-b899d1a5 > .wp-block-group,
	.page-id-80 .wp-container-core-group-is-layout-f27a36a9 > .wp-block-group {
		height: auto;
		min-height: auto !important;
	}
}

@media screen and (max-width: 540px) {
	.fluentform .ff-btn-submit.ff_btn_style,
	.simpay-form-wrap .simpay-payment-btn {
		width: 100%;
		max-width: 100%;
		white-space: normal;
	}

	.entry-content .wp-block-button__link.wp-element-button,
	.entry-content .kb-button.kt-button.wp-block-kadence-singlebtn {
		max-width: 100%;
		white-space: normal;
	}
}
