/* PGD consultation form. */
body.pm-pgd-form .page-banner-section {
	background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);
	padding: 40px 0 36px;
	margin-bottom: 0;
	text-align: center;
	color: var(--white);
}

body.pm-pgd-form .page-banner-section .section-title {
	color: var(--white);
	font-family: 'Fraunces', Georgia, serif;
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 500;
	margin: 0 0 14px;
}

body.pm-pgd-form .page-banner-section .breadcrumb {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: var(--on-dark-50, rgba(255, 255, 255, 0.7));
}

body.pm-pgd-form .page-banner-section .breadcrumb li {
	display: inline-flex;
	align-items: center;
}

body.pm-pgd-form .page-banner-section .breadcrumb li + li::before {
	content: "/";
	margin-right: 8px;
	opacity: 0.6;
}

body.pm-pgd-form .page-banner-section .breadcrumb a {
	color: var(--on-dark-70, rgba(255, 255, 255, 0.85));
	text-decoration: none;
}

body.pm-pgd-form .page-banner-section .breadcrumb a:hover {
	color: var(--teal);
}

body.pm-pgd-form .section-padding,
body.pm-pgd-form #consultationform {
	background: var(--off-white);
}

body.pm-pgd-form .section-padding {
	padding: 36px clamp(20px, 4vw, 40px) 16px;
}

body.pm-pgd-form #consultationform {
	padding: 40px clamp(20px, 4vw, 40px) 80px;
}

body.pm-pgd-form main > section#consultationform.section-padding {
	padding-top: 40px !important;
}

body.pm-pgd-form .cflp-form .cflp-form-container {
	padding-left: 0;
	padding-right: 0;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

body.pm-pgd-form .section-padding .container,
body.pm-pgd-form #consultationform .container {
	max-width: 1100px;
}

body.pm-pgd-form .section-padding:not(#consultationform) p {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: var(--grey-700);
	text-align: center;
	max-width: 640px;
	margin: 0 auto 8px;
}

/* Form fields use the consultation questionnaire styles (consultation-woopw.css). */
body.pm-pgd-form #consultationform .form-group-wrapper > .form-group-title,
body.pm-pgd-form #consultationform .form-description-wrapper > .form-group-title {
	margin-bottom: 12px !important;
	padding-bottom: 0 !important;
}

body.pm-pgd-form #consultationform .form-group-wrapper > p,
body.pm-pgd-form #consultationform .form-description-wrapper > p {
	margin: 0 0 20px !important;
	color: var(--grey-600);
	font-size: 15px;
	line-height: 1.6;
}

body.pm-pgd-form #consultationform .form-description-wrapper > p:last-child {
	margin-bottom: 0 !important;
}

body.pm-pgd-form #consultationform .form-group-wrapper:not(.deactive-group) > .form-group-title .count-group {
	background: var(--teal) !important;
	color: var(--white) !important;
}

/* Plugin sidebar, styled like the consultation sidebar card. */
body.pm-pgd-form #consultationform form.cflp-form .form-sidebar .sidebar-back {
	padding: 28px 26px 30px;
	border: 0;
	border-radius: 16px;
	background: var(--white);
	box-shadow: 0 2px 16px rgba(44, 51, 56, 0.06);
}

body.pm-pgd-form #consultationform form.cflp-form .sidebar-heading {
	margin: 0 0 20px;
	padding-top: 4px;
	font-family: 'Fraunces', Georgia, serif !important;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.35;
	color: var(--navy);
}

body.pm-pgd-form #consultationform form.cflp-form #formSidebar span.sidebar-count-group {
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	max-width: 28px !important;
	background: #e4e8e0 !important;
	color: var(--grey-500) !important;
	font-size: 12px !important;
}

body.pm-pgd-form #consultationform form.cflp-form #formSidebar .sidebar-item.active span.sidebar-count-group,
body.pm-pgd-form #consultationform form.cflp-form #formSidebar .sidebar-item.complete span.sidebar-count-group {
	background: var(--teal) !important;
	color: var(--white) !important;
}

body.pm-pgd-form .cflp-form #formSidebar {
	list-style: none;
	margin: 0 0 8px;
	padding: 0;
}

body.pm-pgd-form .cflp-form #formSidebar .sidebar-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid var(--grey-200);
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	color: var(--grey-500);
	opacity: 1;
}

body.pm-pgd-form .cflp-form #formSidebar .sidebar-item:last-child {
	border-bottom: 0;
}

body.pm-pgd-form .cflp-form #formSidebar .sidebar-title {
	flex: 1;
	min-width: 0;
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	white-space: normal;
}

body.pm-pgd-form .cflp-form #formSidebar .sidebar-item.active {
	color: var(--navy);
	opacity: 1;
}

body.pm-pgd-form .cflp-form #submitBtn,
body.pm-pgd-form .cflp-form .cflp_submit_form {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 14px 24px;
	border: none;
	border-radius: 100px;
	background: var(--teal);
	color: var(--white);
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
}

body.pm-pgd-form .cflp-form #submitBtn:not([disabled]),
body.pm-pgd-form .cflp-form button.sidebar-button.cflp_submit_form:not([disabled]) {
	border-radius: 100px !important;
	animation: pulsed 1.5s infinite;
}

body.pm-pgd-form .cflp-form #submitBtn[disabled],
body.pm-pgd-form .cflp-form button.sidebar-button.cflp_submit_form[disabled] {
	background: #c5cebd !important;
	color: var(--white) !important;
	opacity: 1 !important;
	cursor: not-allowed;
	box-shadow: none !important;
	animation: none;
}

body.pm-pgd-form .cflp-form p.sidebar-help {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
	margin: 16px 0 0;
	padding: 0;
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.5;
	color: var(--grey-700);
	text-align: left;
	white-space: normal;
}

body.pm-pgd-form .cflp-form p.sidebar-help > i {
	position: static;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	min-width: 28px;
	min-height: 28px;
	margin: 1px 0 0;
	border: 1.5px solid var(--teal);
	border-radius: 50%;
	color: var(--teal);
	font-size: 12px;
	float: none;
}

body.pm-pgd-form .cflp-form p.sidebar-help span {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
}

body.pm-pgd-form .cflp-form p.sidebar-help a,
body.pm-pgd-form .cflp-form a.contactus-sidebarlink {
	display: inline;
	width: auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	color: var(--teal);
	font-size: inherit;
	font-weight: 600;
	text-decoration: none;
}

body.pm-pgd-form #consultationform form.cflp-form p.sidebar-help a.contactus-sidebarlink {
	color: var(--teal) !important;
	background: none !important;
	opacity: 1 !important;
	pointer-events: auto;
}

body.pm-pgd-form #consultationform form.cflp-form .form-content.col-md-8,
body.pm-pgd-form #consultationform form.cflp-form .form-sidebar.col-md-4 {
	display: block !important;
	flex: 0 0 100% !important;
	float: none;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
	position: relative;
}

body.pm-pgd-form .cflp-form .sidebarback,
body.pm-pgd-form .cflp-form #sidebarback {
	position: static !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	width: auto !important;
	transform: none !important;
	z-index: 1;
}

@media (max-width: 991.98px) {
	body.pm-pgd-form #consultationform form.cflp-form .form-sidebar.col-md-4 {
		margin-top: 8px !important;
	}
}

@media (min-width: 992px) {
	body.pm-pgd-form #consultationform .cflp-form-container > .row {
		display: flex !important;
		flex-wrap: nowrap;
		align-items: flex-start;
		gap: 32px;
	}

	body.pm-pgd-form #consultationform form.cflp-form .form-content.col-md-8 {
		flex: 1 1 auto !important;
		width: auto !important;
	}

	body.pm-pgd-form #consultationform form.cflp-form .form-sidebar.col-md-4 {
		flex: 0 0 320px !important;
		width: 320px !important;
		max-width: 320px !important;
		position: sticky;
		top: 110px;
		align-self: flex-start;
		z-index: 1;
	}
}
