/*
 * Fractional CMO baseline repairs.
 * Preserve the existing visual system and correct only confirmed defects.
 */

body.page-id-1852 {
	--fcm-focus-dark: #0b6048;
}

/* Keep critical content visible if the motion layer loads late or fails. */
body.page-id-1852 .cw-hero-badge,
body.page-id-1852 .cw-hero-title,
body.page-id-1852 .cw-hero-title .cw-word,
body.page-id-1852 .cw-hero-text,
body.page-id-1852 .cw-hero-actions,
body.page-id-1852 .cw-hero-media,
body.page-id-1852 .cw-reveal,
body.page-id-1852 .cw-section-label,
body.page-id-1852 .cw-section-title,
body.page-id-1852 .cw-section-subtitle {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

/* Remove the decorative typing cursor without changing the headline. */
body.page-id-1852 .cw-hero-title::after,
body.page-id-1852 .cw-hero-title .cw-cursor {
	display: none !important;
	content: none !important;
}

/* The desktop header action measured below the 44px target. */
body.page-id-1852 .site-header .cw-header-cta .cw-btn,
body.page-id-1852 .site-header .cw-btn {
	min-height: 44px;
}

/* Keep cookie controls available in the footer without covering page content. */
body.page-id-1852 .cw-cookie-preferences-link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin: 5px 2px !important;
	padding: 8px 4px !important;
	border: 0;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #e8f0ec !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	letter-spacing: inherit !important;
	line-height: 1.4 !important;
	text-transform: none !important;
	text-decoration: underline;
	text-underline-offset: 0.16em;
	vertical-align: middle;
}

body.page-id-1852 .cw-cookie-preferences-link:hover {
	background: transparent !important;
	box-shadow: none !important;
	color: #ffffff !important;
}

@media (max-width: 767px) {
	body.page-id-1852 .site-footer .back-to-top {
		display: none !important;
	}
}

/* A dual ring stays visible on both the white and forest surfaces. */
body.page-id-1852 a:focus-visible,
body.page-id-1852 button:focus-visible,
body.page-id-1852 summary:focus-visible,
body.page-id-1852 input:focus-visible,
body.page-id-1852 select:focus-visible,
body.page-id-1852 textarea:focus-visible,
body.page-id-1852 .cw-btn:focus,
body.page-id-1852 #gform_12 input[type='text']:focus,
body.page-id-1852 #gform_12 input[type='email']:focus,
body.page-id-1852 #gform_12 select:focus,
body.page-id-1852 #gform_12 textarea:focus,
body.page-id-1852 #gform_submit_button_12:focus,
body.page-id-1852 .cw-cookie-preferences-link:focus {
	outline: 2px solid var(--cw-white) !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 5px var(--fcm-focus-dark) !important;
	transform: none !important;
	transition: none !important;
}

/* These two actions have stronger shared button rules than other controls. */
body.page-id-1852 .site-header .cw-header-cta a.cw-btn:focus,
body.page-id-1852 .site-header .cw-header-cta a.cw-btn:focus-visible,
body.page-id-1852 #gform_wrapper_12 #gform_12 #gform_submit_button_12:focus,
body.page-id-1852 #gform_wrapper_12 #gform_12 #gform_submit_button_12:focus-visible {
	outline-color: #ffffff !important;
	outline-style: solid !important;
	outline-width: 2px !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 5px var(--fcm-focus-dark) !important;
	transform: none !important;
	transition: none !important;
}

/* The comparison badge was positioned outside a clipped card. */
body.page-id-1852 .cw-compare-col.cw-compare-highlight {
	overflow: visible !important;
}

/* Restore the form information hidden by the shared form layer. */
body.page-id-1852 #gform_12 .gfield_required,
body.page-id-1852 #gform_12 .gfield_required_text {
	position: static !important;
	display: inline !important;
	width: auto !important;
	height: auto !important;
	margin-left: 0.25rem !important;
	overflow: visible !important;
	clip: auto !important;
	clip-path: none !important;
	color: rgba(232, 240, 236, 0.9) !important;
	font-size: 0.7rem !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	line-height: 1.35 !important;
	text-transform: none !important;
	white-space: normal !important;
}

body.page-id-1852 #gform_12 .ginput_complex > span {
	display: flex !important;
	flex-direction: column !important;
}

body.page-id-1852 #gform_12 .gform-field-label--type-sub {
	order: -1;
	margin: 0 0 0.4rem !important;
}

body.page-id-1852 #gform_12 input[type='text'],
body.page-id-1852 #gform_12 input[type='email'],
body.page-id-1852 #gform_12 select,
body.page-id-1852 #gform_12 textarea {
	border-bottom-color: rgba(232, 240, 236, 0.48) !important;
}

body.page-id-1852 #gform_12 select {
	color: var(--cw-white) !important;
	-webkit-text-fill-color: var(--cw-white) !important;
}

body.page-id-1852 #gform_12 select option {
	background: var(--cw-white);
	color: var(--cw-deep-green);
}

@media (max-width: 960px) {
	body.page-id-1852 .site-header .cw-header-cta {
		display: none !important;
	}

	body.page-id-1852 .cw-comparison-table .cw-compare-col.cw-compare-highlight {
		order: -1;
	}

	body.page-id-1852 .cw-process-timeline {
		width: 100% !important;
		max-width: none !important;
	}

	body.page-id-1852 .cw-process-step {
		display: grid !important;
		grid-template-columns: 96px minmax(0, 1fr) !important;
		gap: 1rem !important;
	}

	body.page-id-1852 .cw-process-number {
		width: 96px !important;
		padding: 14px 18px 14px 0 !important;
		font-size: clamp(2.25rem, 6vw, 3.25rem) !important;
	}

	body.page-id-1852 .cw-process-timeline::before {
		left: 97px !important;
	}

	body.page-id-1852 .cw-process-step::before {
		top: 22px !important;
		left: 71px !important;
	}
}

@media (max-width: 900px) {
	body.page-id-1852 .cw-hero-media {
		width: min(100%, 500px) !important;
		max-width: 500px !important;
		max-height: none !important;
	}

	body.page-id-1852 .cw-hero-media .cw-headshot,
	body.page-id-1852 .cw-hero-media .cw-hero-image {
		width: 100% !important;
		height: auto !important;
		max-width: 500px !important;
		max-height: none !important;
		object-fit: cover !important;
	}
}

@media (max-width: 600px) {
	body.page-id-1852 .cw-process-step {
		display: grid !important;
		grid-template-columns: 44px minmax(0, 1fr) !important;
		gap: 0.75rem !important;
		padding: 1.25rem 0 1.75rem !important;
	}

	body.page-id-1852 .cw-process-number {
		width: 44px !important;
		padding: 0 !important;
		justify-content: flex-start !important;
		font-size: 1.75rem !important;
	}

	body.page-id-1852 .cw-process-timeline::before,
	body.page-id-1852 .cw-process-timeline::after,
	body.page-id-1852 .cw-process-step::before,
	body.page-id-1852 .cw-process-step::after {
		display: none !important;
		content: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.page-id-1852 *,
	body.page-id-1852 *::before,
	body.page-id-1852 *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
