/**
 * Private Form Journey presentation above the existing CF7/Flamingo runtime.
 * Scope is deliberately local: no B2B, PDF, mail, submit or storage rules.
 */

.rcrp-private-journey-form,
.rcrp-private-journey-form * {
	box-sizing: border-box;
}

.rcrp-private-journey-form {
	min-inline-size: 0;
}

/* Scoped native loading presenter: keep later page sections stable and show
   no half-built wizard. No-JS never sets the attribute; original fields stay. */
.rcrp-private-load-reserve {
	min-block-size: 100vh;
	min-block-size: 100svh;
}

.rcrp-private-load-status {
	display: none;
}

form[data-rcrp-private-loading] > [data-rcrp-private-loading-status] {
	display: block;
	padding: var(--rcrp-space-4, 16px);
	color: var(--rcrp-color-text);
	font: 600 1rem/1.55 var(--rcrp-font-sans, sans-serif);
}

form[data-rcrp-private-loading] > :not([data-rcrp-private-loading-status]):not(script) {
	visibility: hidden;
}

.rcrp-private-journey-unavailable {
	margin-block: var(--rcrp-space-4, 16px);
	padding: var(--rcrp-space-4, 16px);
	border: 2px solid var(--rcrp-color-warning, #805311);
	border-radius: var(--rcrp-radius-sm, 12px);
	background: var(--rcrp-color-warning-soft, #fff3cf);
	color: var(--rcrp-color-heading, #071a31);
	font: 600 1rem/1.55 var(--rcrp-font-sans, sans-serif);
}

.rcrp-private-journey__chooser,
.rcrp-private-journey {
	inline-size: min(100%, 980px);
	margin-inline: auto;
	color: var(--rcrp-color-text);
	font-family: var(--rcrp-font-sans);
}

.rcrp-private-journey__chooser {
	display: block;
	margin-block: 0 var(--rcrp-space-5);
	padding: clamp(18px, 3vw, 30px);
	border: 1px solid var(--rcrp-color-border);
	border-top: 4px solid var(--rcrp-color-accent);
	border-radius: var(--rcrp-radius-lg);
	background: var(--rcrp-color-surface);
	box-shadow: var(--rcrp-shadow-sm);
}

.rcrp-private-journey__eyebrow,
.rcrp-private-journey__progress-label {
	display: block;
	margin-block-end: var(--rcrp-space-1);
	color: var(--rcrp-color-brand-strong);
	font-size: var(--rcrp-font-12);
	font-weight: var(--rcrp-weight-black);
	letter-spacing: .08em;
	line-height: var(--rcrp-leading-tight);
	text-transform: uppercase;
}

.rcrp-private-journey-form .rcrp-private-journey__title,
.rcrp-private-journey-form .rcrp-private-journey__active-title,
.rcrp-private-journey-form .rcrp-private-journey__panel-title,
.rcrp-private-journey-form .rcrp-private-journey__review-card h5 {
	margin: 0;
	color: var(--rcrp-color-heading);
	font-weight: var(--rcrp-weight-black);
	line-height: var(--rcrp-leading-tight);
}

.rcrp-private-journey__title {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.25rem);
}

/* The active task stays visible; the nine-step index and alternate view are
   optional controls in a native disclosure, not a second primary task. */
.rcrp-private-journey__options {
	margin: 0;
	border-block: 1px solid var(--rcrp-color-border);
	background: var(--rcrp-color-surface-subtle);
}
.rcrp-private-journey__options > summary {
	min-block-size: 44px;
	padding: 12px 18px;
	color: var(--rcrp-color-text);
	font: 700 1rem/1.5 var(--rcrp-font-sans);
	cursor: pointer;
}
.rcrp-private-journey__options > .rcrp-private-journey__mode-switch { padding: 12px 18px; flex-wrap: wrap; }
.rcrp-private-journey__options > summary:focus-visible {
	outline: 3px solid var(--rcrp-focus-color);
	outline-offset: -4px;
}
.rcrp-private-journey__chooser [aria-pressed="false"] { background: var(--rcrp-color-surface); }
.rcrp-private-journey[hidden] { display: none !important; }

.rcrp-private-journey__intro,
.rcrp-private-journey__active-description,
.rcrp-private-journey__panel-description {
	max-inline-size: var(--rcrp-readable-max);
	margin: var(--rcrp-space-2) 0 0;
	color: var(--rcrp-color-muted);
	font-size: var(--rcrp-font-16);
	line-height: var(--rcrp-leading-body);
}

.rcrp-private-journey__chooser-actions,
.rcrp-private-journey__mode-switch,
.rcrp-private-journey__controls {
	display: flex;
	gap: var(--rcrp-space-2);
}

.rcrp-private-journey__chooser-actions {
	flex-direction: column;
}

.rcrp-private-journey button,
.rcrp-private-journey__chooser button {
	min-block-size: var(--rcrp-control-min, 46px);
	border-radius: var(--rcrp-radius-sm);
	font: 800 var(--rcrp-font-16)/1.25 var(--rcrp-font-sans);
	cursor: pointer;
	touch-action: manipulation;
	transition: color var(--rcrp-motion-fast) var(--rcrp-ease-standard), background-color var(--rcrp-motion-fast) var(--rcrp-ease-standard), border-color var(--rcrp-motion-fast) var(--rcrp-ease-standard), transform var(--rcrp-motion-fast) var(--rcrp-ease-out);
}

.rcrp-private-journey button:focus-visible,
.rcrp-private-journey__chooser button:focus-visible,
.rcrp-private-journey-form :where(input, select, textarea):focus-visible {
	outline: var(--rcrp-focus-width) solid var(--rcrp-focus-color) !important;
	outline-offset: var(--rcrp-focus-offset);
	box-shadow: 0 0 0 2px var(--rcrp-focus-inner) !important;
}

.rcrp-private-journey button:disabled,
.rcrp-private-journey__chooser button:disabled {
	cursor: not-allowed;
	opacity: .58;
}

.rcrp-private-journey__choice {
	inline-size: 100%;
	padding: var(--rcrp-space-3) var(--rcrp-space-4);
	border: 2px solid var(--rcrp-color-border-strong);
	background: var(--rcrp-color-surface-subtle);
	color: var(--rcrp-color-heading);
	text-align: start;
}

.rcrp-private-journey__choice.is-active,
.rcrp-private-journey__choice:hover:not(:disabled) {
	border-color: var(--rcrp-color-accent);
	background: var(--rcrp-color-accent-soft);
}

.rcrp-private-journey {
	min-inline-size: 0;
	overflow: clip;
	border: 1px solid var(--rcrp-color-border);
	border-radius: var(--rcrp-radius-lg);
	background: var(--rcrp-color-surface);
	box-shadow: var(--rcrp-shadow-md);
}

.rcrp-private-journey__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--rcrp-space-4);
	align-items: start;
	padding: clamp(18px, 3vw, 30px);
	background: linear-gradient(135deg, var(--rcrp-color-surface-subtle), var(--rcrp-color-surface));
}

.rcrp-private-journey__active-title {
	font-size: clamp(1.35rem, 2.7vw, 1.8rem);
}

.rcrp-private-journey__mode-switch {
	padding: 3px;
	border: 1px solid var(--rcrp-color-border);
	border-radius: var(--rcrp-radius-sm);
	background: var(--rcrp-color-surface-subtle);
}

.rcrp-private-journey__mode {
	padding-inline: var(--rcrp-space-3);
	border: 0;
	background: transparent;
	color: var(--rcrp-color-muted);
	white-space: nowrap;
}

.rcrp-private-journey__mode.is-active {
	background: var(--rcrp-color-brand-deep);
	color: #fff;
}

.rcrp-private-journey__step-navigation {
	max-inline-size: 100%;
	overflow-x: auto;
	padding: 0 var(--rcrp-space-5) var(--rcrp-space-4);
	overscroll-behavior-inline: contain;
	scrollbar-width: thin;
}

.rcrp-private-journey__step-list {
	display: grid;
	grid-template-columns: repeat(9, minmax(92px, 1fr));
	min-inline-size: 860px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.rcrp-private-journey__step-item {
	position: relative;
	min-inline-size: 0;
}

.rcrp-private-journey__step-item:not(:last-child)::after {
	position: absolute;
	top: 20px;
	right: -50%;
	left: 50%;
	z-index: 0;
	block-size: 2px;
	background: var(--rcrp-color-border);
	content: "";
}

.rcrp-private-journey__step-button {
	position: relative;
	z-index: 1;
	display: grid;
	justify-items: center;
	inline-size: 100%;
	min-block-size: 68px;
	padding: 0 var(--rcrp-space-1);
	border: 0;
	background: transparent;
	color: var(--rcrp-color-muted);
	font-size: var(--rcrp-font-12);
	text-align: center;
}

.rcrp-private-journey__step-state {
	display: grid;
	place-items: center;
	inline-size: 40px;
	block-size: 40px;
	margin-block-end: var(--rcrp-space-1);
	border: 2px solid var(--rcrp-color-border-strong);
	border-radius: 50%;
	background: var(--rcrp-color-surface);
	color: var(--rcrp-color-muted);
	font-size: var(--rcrp-font-14);
}

.rcrp-private-journey__step-button.is-current .rcrp-private-journey__step-state {
	border-color: var(--rcrp-color-accent);
	background: var(--rcrp-color-accent);
	color: var(--rcrp-color-accent-contrast);
}

.rcrp-private-journey__step-button.is-complete .rcrp-private-journey__step-state {
	border-color: var(--rcrp-color-success);
	background: var(--rcrp-color-success-soft);
	color: var(--rcrp-color-success);
}

.rcrp-private-journey__step-button.is-current .rcrp-private-journey__step-name {
	color: var(--rcrp-color-heading);
}

.rcrp-private-journey__error {
	margin: 0 clamp(16px, 3vw, 30px) var(--rcrp-space-4);
	padding: var(--rcrp-space-3) var(--rcrp-space-4);
	border: 2px solid var(--rcrp-color-danger);
	border-radius: var(--rcrp-radius-sm);
	background: var(--rcrp-color-danger-soft);
	color: var(--rcrp-color-heading);
	font-weight: var(--rcrp-weight-bold);
}

.rcrp-private-journey__panel {
	min-inline-size: 0;
	padding: clamp(18px, 3vw, 30px);
	border-block-start: 1px solid var(--rcrp-color-border);
}

.rcrp-private-journey__panel-title {
	font-size: clamp(1.25rem, 2.5vw, 1.65rem);
}

.rcrp-private-journey__panel-content {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rcrp-space-4);
	margin-block-start: var(--rcrp-space-6);
}

.rcrp-private-journey__panel-content > * {
	min-inline-size: 0;
	max-inline-size: 100%;
	margin-block: 0;
}

.rcrp-private-journey__guide-summary,
.rcrp-private-journey__context-help {
	min-inline-size: 0;
	padding: var(--rcrp-space-4);
	border: 1px solid var(--rcrp-color-border);
	border-radius: var(--rcrp-radius-md);
	background: var(--rcrp-color-surface-subtle);
	color: var(--rcrp-color-text);
}

.rcrp-private-journey__guide-summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rcrp-space-3);
	border-inline-start: 5px solid var(--rcrp-color-accent);
	overflow-wrap: anywhere;
}

.rcrp-private-journey__guide-summary > * {
	min-inline-size: 0;
	max-inline-size: 100%;
}

.rcrp-private-journey__guide-kicker {
	color: var(--rcrp-color-brand-strong);
	font-size: var(--rcrp-font-12);
	font-weight: var(--rcrp-weight-black);
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rcrp-private-journey__guide-summary h5,
.rcrp-private-journey__context-help strong {
	margin: 0;
	color: var(--rcrp-color-heading);
	font-size: var(--rcrp-font-18);
	font-weight: var(--rcrp-weight-black);
}

.rcrp-private-journey__guide-summary ul {
	display: grid;
	gap: var(--rcrp-space-2);
	margin: 0;
	padding-inline-start: 1.35rem;
	line-height: var(--rcrp-leading-body);
}

.rcrp-private-journey__guide-summary li::marker {
	color: var(--rcrp-color-success);
}

.rcrp-private-journey__guide-button,
.rcrp-private-journey__guide-link {
	inline-size: fit-content;
	max-inline-size: 100%;
	min-block-size: 44px;
	padding: var(--rcrp-space-2) var(--rcrp-space-4);
	border: 2px solid var(--rcrp-color-brand-strong);
	background: var(--rcrp-color-surface);
	color: var(--rcrp-color-brand-strong);
	text-align: start;
	white-space: normal;
}

.rcrp-private-journey__guide-button:hover,
.rcrp-private-journey__guide-link:hover {
	border-color: var(--rcrp-color-accent);
	background: var(--rcrp-color-accent-soft);
}

.rcrp-private-journey__guide-acceptance {
	margin: 0;
	color: var(--rcrp-color-muted);
	font-size: var(--rcrp-font-14);
	font-weight: var(--rcrp-weight-bold);
}

.rcrp-private-journey[data-rcrp-service-guide-accepted="true"] .rcrp-private-journey__guide-acceptance {
	color: var(--rcrp-color-success);
}

.rcrp-private-journey__context-help {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--rcrp-space-2) var(--rcrp-space-4);
	align-items: center;
	margin-block-start: var(--rcrp-space-4);
	border-inline-start: 4px solid var(--rcrp-color-info, var(--rcrp-color-brand-strong));
}

.rcrp-private-journey__context-help strong,
.rcrp-private-journey__context-help p {
	grid-column: 1;
}

.rcrp-private-journey__context-help p {
	margin: 0;
	color: var(--rcrp-color-muted);
	line-height: var(--rcrp-leading-body);
}

.rcrp-private-journey__context-help .rcrp-private-journey__guide-link {
	grid-column: 2;
	grid-row: 1 / span 2;
}

.rcrp-private-journey #serviceguide-gate label {
	display: flex;
	gap: var(--rcrp-space-3);
	align-items: center;
	justify-content: flex-start !important;
	inline-size: 100%;
	min-block-size: 46px;
}

.rcrp-private-journey #serviceguide-gate .wpcf7-form-control-wrap {
	display: inline-flex !important;
	flex: 0 0 auto;
	order: -1;
	inline-size: auto !important;
	width: auto !important;
}

.rcrp-private-journey #serviceguide-gate input[type="checkbox"] {
	inline-size: 24px;
	block-size: 24px;
	margin: 0;
	accent-color: var(--rcrp-color-accent);
}

.rcrp-private-journey__main:not([hidden]) {
	display: block !important;
	max-block-size: none !important;
	max-height: none !important;
	overflow: visible !important;
	opacity: 1 !important;
	transform: none !important;
}

.rcrp-private-journey__main[hidden],
.rcrp-private-journey__panel[hidden],
.rcrp-private-journey__controls[hidden],
.rcrp-private-journey__error[hidden] {
	display: none !important;
}

.rcrp-private-journey-form :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="hidden"]), select, textarea) {
	max-inline-size: 100%;
}

.rcrp-private-journey-form .rcrp-journey-invalid {
	border-color: var(--rcrp-color-danger) !important;
	box-shadow: 0 0 0 2px var(--rcrp-color-danger-soft) !important;
}

.rcrp-private-journey__controls {
	justify-content: space-between;
	padding: var(--rcrp-space-4) clamp(18px, 3vw, 30px) calc(var(--rcrp-space-5) + var(--rcrp-safe-bottom));
	border-block-start: 1px solid var(--rcrp-color-border);
	background: var(--rcrp-color-surface-subtle);
}

.rcrp-private-journey__back,
.rcrp-private-journey__next,
.rcrp-private-journey__edit {
	padding-inline: var(--rcrp-space-5);
}

.rcrp-private-journey__back,
.rcrp-private-journey__edit {
	border: 2px solid var(--rcrp-color-border-strong);
	background: var(--rcrp-color-surface);
	color: var(--rcrp-color-heading);
}

.rcrp-private-journey__next {
	margin-inline-start: auto;
	border: 2px solid var(--rcrp-color-accent);
	background: var(--rcrp-color-accent);
	color: var(--rcrp-color-accent-contrast);
}

.rcrp-private-journey__next:hover:not(:disabled) {
	border-color: var(--rcrp-color-accent-hover);
	background: var(--rcrp-color-accent-hover);
	transform: translateY(-1px);
}

.rcrp-private-journey__review {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rcrp-space-4);
}

.rcrp-private-journey__review-card {
	min-inline-size: 0;
	padding: var(--rcrp-space-4);
	border: 1px solid var(--rcrp-color-border);
	border-radius: var(--rcrp-radius-md);
	background: var(--rcrp-color-surface-subtle);
}

.rcrp-private-journey__review-header {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rcrp-space-3);
	align-items: center;
	justify-content: space-between;
}

.rcrp-private-journey__review-card h5 {
	min-inline-size: 0;
	max-inline-size: 100%;
	overflow-wrap: anywhere;
	font-size: var(--rcrp-font-18);
}

.rcrp-private-journey__edit {
	min-block-size: 44px;
	font-size: var(--rcrp-font-14);
}

.rcrp-private-journey__review-list {
	display: grid;
	grid-template-columns: minmax(150px, .6fr) minmax(0, 1.4fr);
	gap: var(--rcrp-space-2) var(--rcrp-space-4);
	margin: var(--rcrp-space-4) 0 0;
}

.rcrp-private-journey__review-list dt {
	color: var(--rcrp-color-muted);
	font-weight: var(--rcrp-weight-medium);
}

.rcrp-private-journey__review-list dd {
	min-inline-size: 0;
	margin: 0;
	overflow-wrap: anywhere;
	color: var(--rcrp-color-heading);
	font-weight: var(--rcrp-weight-bold);
}

.rcrp-private-journey[data-rcrp-journey-mode="overview"] .rcrp-private-journey__panel {
	border-block-start: 1px solid var(--rcrp-color-border);
}

.rcrp-private-journey-form--sent .rcrp-private-journey__controls,
.rcrp-private-journey-form--sent .rcrp-private-journey__step-navigation {
	display: none;
}

@media (max-width: 760px) {
	.rcrp-private-journey__chooser,
	.rcrp-private-journey__header {
		grid-template-columns: minmax(0, 1fr);
	}

	.rcrp-private-journey__mode-switch {
		inline-size: 100%;
	}

	.rcrp-private-journey__mode {
		flex: 1 1 50%;
		white-space: normal;
	}
}

@media (max-width: 620px) {
	.rcrp-private-journey__options .rcrp-private-journey__step-navigation { display: block; }
	.rcrp-private-journey__options .rcrp-private-journey__step-list { grid-template-columns: minmax(0, 1fr); min-inline-size: 0; gap: 8px; }
	.rcrp-private-journey__options .rcrp-private-journey__step-item::after { display: none; }
	.rcrp-private-journey__options .rcrp-private-journey__step-button { grid-template-columns: auto minmax(0, 1fr); align-items: center; justify-items: start; text-align: start; gap: 12px; }

	.rcrp-private-journey__panel-content {
		gap: var(--rcrp-space-3);
	}

	.rcrp-private-journey__review-list {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--rcrp-space-1);
	}

	.rcrp-private-journey__review-list dd:not(:last-child) {
		margin-block-end: var(--rcrp-space-3);
	}

	.rcrp-private-journey__context-help {
		grid-template-columns: minmax(0, 1fr);
	}

	.rcrp-private-journey__context-help .rcrp-private-journey__guide-link {
		grid-column: 1;
		grid-row: auto;
	}
}

@media (max-width: 390px) {
	.rcrp-private-journey__chooser,
	.rcrp-private-journey__header,
	.rcrp-private-journey__panel,
	.rcrp-private-journey__controls {
		padding-inline: 14px;
	}

	.rcrp-private-journey__chooser-actions,
	.rcrp-private-journey__controls {
		flex-direction: column;
	}

	.rcrp-private-journey__back,
	.rcrp-private-journey__next,
	.rcrp-private-journey__guide-button,
	.rcrp-private-journey__guide-link {
		inline-size: 100%;
		margin-inline: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.rcrp-private-journey *,
	.rcrp-private-journey *::before,
	.rcrp-private-journey *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media print {
	.rcrp-private-journey__chooser,
	.rcrp-private-journey__mode-switch,
	.rcrp-private-journey__step-navigation,
	.rcrp-private-journey__controls {
		display: none !important;
	}
}
.rcrp-private-journey__field-error {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

/* Adopt shared semantic surfaces only within the confirmed private wizard.
   Keep field names, required markers, conditionals and error ownership intact. */
.rcrp-private-journey-form {
	--rc-text-color: var(--rcrp-color-text);
	--rc-help-color: var(--rcrp-color-muted);
	--rc-info-color: var(--rcrp-color-info);
	--rc-error-color: var(--rcrp-color-danger);
	--rc-section-bg: var(--rcrp-color-surface-subtle);
	--rc-section-text: var(--rcrp-color-text);
}
.rcrp-private-journey-form #rc-form-main,
.rcrp-private-journey-form #serviceguide-gate {
	background: transparent !important;
	box-shadow: none !important;
	color: var(--rcrp-color-text) !important;
}
.rcrp-private-journey-form :is(#rc-form-main, #serviceguide-gate) :is(label, p, strong, legend) {
	color: inherit;
}
.rcrp-private-journey-form #rc-form-main :is(label, .rc-form-help, .rc-form-note) {
	color: var(--rcrp-color-text) !important;
	font-size: 1rem !important;
	line-height: 1.6 !important;
}
.rcrp-private-journey-form #rc-form-main :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]), select, textarea) {
	max-inline-size: 100%; min-inline-size: 0;
	color: var(--rcrp-color-text) !important;
	background: var(--rcrp-color-surface-subtle) !important;
	border-color: var(--rcrp-color-border-strong) !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
}
.rcrp-private-journey-form #rc-form-main input::placeholder,
.rcrp-private-journey-form #rc-form-main textarea::placeholder { color: var(--rcrp-color-muted) !important; opacity: 1; }
.rcrp-private-journey-form #rc-form-main input[type="submit"] {
	background: var(--rcrp-color-accent) !important;
	color: var(--rcrp-color-accent-contrast) !important;
}
.rcrp-private-journey-form #rc-form-main input[type="submit"]:hover:not(:disabled) {
	background: var(--rcrp-color-accent-hover) !important;
}
.rcrp-private-journey-form #rc-form-main label:has(input[type="file"]) { padding-inline-end: 0 !important; }
.rcrp-private-journey-form #rc-form-main .rc-field-status-row,
.rcrp-private-journey-form #rc-form-main label:has(input[type="file"]) .rc-field-status-row {
	position: static !important; display: flex !important; flex-wrap: wrap;
	justify-content: flex-start !important; white-space: normal; gap: 6px;
}
.rcrp-private-journey-form #rc-form-main :is(.rc-field-badge, .rc-field-ok),
.rcrp-private-journey-form #rc-form-main label:has(input[type="file"]) :is(.rc-field-badge, .rc-field-ok) { font-size: .875rem !important; line-height: 1.4 !important; }
.rcrp-private-journey__panel-title { font-size: var(--rcrp-font-section-title, 1.5rem); }
.rcrp-private-journey__title { font-size: var(--rcrp-font-page-title, clamp(1.75rem, 1.5rem + 1vw, 2.25rem)); }
.rcrp-private-journey__chooser-content { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .82fr); gap: var(--rcrp-space-5); align-items: center; }
.rcrp-private-journey__choice-summary { min-block-size: 44px; padding-block: 10px; cursor: pointer; color: var(--rcrp-color-heading); font-weight: 700; font-size: var(--rcrp-font-control, 1rem); }
.rcrp-private-journey__chooser[open] .rcrp-private-journey__choice-summary { margin-block-end: 16px; }
@media (max-width: 760px) { .rcrp-private-journey__chooser-content { grid-template-columns: minmax(0, 1fr); } }
.rcrp-private-journey__context-help {
	border-radius: 0; box-shadow: none;
	border: 0; border-inline-start: 4px solid var(--rcrp-color-info);
	background: transparent; color: var(--rcrp-color-text);
}
.rcrp-private-journey__guide-summary strong,
.rcrp-private-journey__context-help strong { color: inherit; }
.rcrp-private-journey__context-help > summary { cursor: pointer; min-block-size: 44px; padding-block: 10px; font-weight: 700; }
.rcrp-private-journey__context-help:not([open]):is(details) { display: block; }


/* A desktop Elementor column can be narrower than a mobile viewport.
   Reuse the existing compact presentation at the actual CF7 form width. */
.rc-form-priority .rcrp-private-journey-form {
    container-type: inline-size;
    container-name: rcrp-private-contact;
}

@container rcrp-private-contact (max-width: 760px) {
	.rcrp-private-journey__chooser,
	.rcrp-private-journey__header {
		grid-template-columns: minmax(0, 1fr);
	}

	.rcrp-private-journey__mode-switch {
		inline-size: 100%;
	}

	.rcrp-private-journey__mode {
		flex: 1 1 50%;
		white-space: normal;
	}

	.rcrp-private-journey__chooser-content { grid-template-columns: minmax(0, 1fr); }
}

@container rcrp-private-contact (max-width: 620px) {
	.rcrp-private-journey__options .rcrp-private-journey__step-navigation { display: block; }
	.rcrp-private-journey__options .rcrp-private-journey__step-list { grid-template-columns: minmax(0, 1fr); min-inline-size: 0; gap: 8px; }
	.rcrp-private-journey__options .rcrp-private-journey__step-item::after { display: none; }
	.rcrp-private-journey__options .rcrp-private-journey__step-button { grid-template-columns: auto minmax(0, 1fr); align-items: center; justify-items: start; text-align: start; gap: 12px; }

	.rcrp-private-journey__panel-content {
		gap: var(--rcrp-space-3);
	}

	.rcrp-private-journey__review-list {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--rcrp-space-1);
	}

	.rcrp-private-journey__review-list dd:not(:last-child) {
		margin-block-end: var(--rcrp-space-3);
	}

	.rcrp-private-journey__context-help {
		grid-template-columns: minmax(0, 1fr);
	}

	.rcrp-private-journey__context-help .rcrp-private-journey__guide-link {
		grid-column: 1;
		grid-row: auto;
	}
}

@container rcrp-private-contact (max-width: 390px) {
	.rcrp-private-journey__chooser,
	.rcrp-private-journey__header,
	.rcrp-private-journey__panel,
	.rcrp-private-journey__controls {
		padding-inline: 14px;
	}

	.rcrp-private-journey__chooser-actions,
	.rcrp-private-journey__controls {
		flex-direction: column;
	}

	.rcrp-private-journey__back,
	.rcrp-private-journey__next,
	.rcrp-private-journey__guide-button,
	.rcrp-private-journey__guide-link {
		inline-size: 100%;
		margin-inline: 0;
	}
}


/* Public repair intake always uses the existing light palette, independent
   of OS/account preference. The account theme and Elementor stay untouched. */
.rcrp-public-site:has(.wpcf7 #rc-form-main),
.rcrp-private-journey-form {
	--rcrp-color-canvas: #eaf0f7;
	--rcrp-color-canvas-deep: #dce7f2;
	--rcrp-color-surface: #ffffff;
	--rcrp-color-surface-subtle: #f1f5fa;
	--rcrp-color-surface-raised: #ffffff;
	--rcrp-color-text: #20344d;
	--rcrp-color-heading: #10243d;
	--rcrp-color-muted: #4a6078;
	--rcrp-color-border: #c7d5e4;
	--rcrp-color-border-strong: #8197ad;
	--rcrp-color-brand: #006ba6;
	--rcrp-color-brand-strong: #005786;
	--rcrp-color-brand-deep: #102e4d;
	--rcrp-color-brand-solid: #005c91;
	--rcrp-color-success-solid: #08784c;
	--rcrp-color-accent: #b83e17;
	--rcrp-color-accent-hover: #942c0d;
	--rcrp-color-accent-contrast: #ffffff;
	--rcrp-color-accent-soft: #fff0e6;
	--rcrp-color-success: #08784c;
	--rcrp-color-success-soft: #e4f7ed;
	--rcrp-color-warning: #855400;
	--rcrp-color-warning-soft: #fff0c2;
	--rcrp-color-danger: #b3263e;
	--rcrp-color-danger-soft: #ffedf0;
	--rcrp-color-info: #006999;
	--rcrp-color-info-soft: #e4f4ff;
	--rcrp-color-disabled: #66798d;
	--rcrp-color-disabled-soft: #edf1f5;
	--rcrp-workspace-workshop: #b83e17;
	--rcrp-workspace-workshop-soft: #fff0e6;
	--rcrp-workspace-office: #005786;
	--rcrp-workspace-office-soft: #e4f4ff;
	--rcrp-overlay: rgba(4, 17, 31, .66);
	--rcrp-shadow-sm: 0 2px 0 rgba(16, 36, 61, .05), 0 5px 16px rgba(16, 36, 61, .07);
	--rcrp-shadow-md: 0 4px 0 rgba(16, 36, 61, .04), 0 16px 38px rgba(16, 36, 61, .12);
	--rcrp-shadow-lg: 0 24px 64px rgba(16, 36, 61, .22);
	--rcrp-focus-color: #005786;
	--rcrp-focus-inner: #ffffff;
	color-scheme: light;
}

/* Two visible choices replace the ambiguous collapsed route chooser. */
.rcrp-private-journey-form .rcrp-private-journey__chooser {
    padding: 16px;
    border: 1px solid var(--rcrp-color-border);
    border-radius: var(--rcrp-radius-sm);
    box-shadow: none;
}
.rcrp-private-journey-form .rcrp-private-journey__chooser-content {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
}
.rcrp-private-journey-form .rcrp-private-journey__title {
    font-size: 1.125rem;
}
.rcrp-private-journey-form .rcrp-private-journey__choice {
    min-inline-size: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}
.rcrp-private-journey-form .rcrp-private-journey__choice[aria-pressed="true"]::before {
    content: "✓ ";
    color: var(--rcrp-color-success);
}
.rcrp-private-journey-form .rcrp-private-journey__controls button {
    max-inline-size: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
}
