/* =============================================================
 * Strategy Form (Gravity Form 28) — Provident 1031
 *
 * Ported from Colt Photography strategy form (form 3).
 * All selectors scoped to #gform_wrapper_28 to avoid global GF
 * side effects. Designed to live inside a Stackable column
 * (.strategy-call) — no fixed wrapper widths.
 *
 * 3-page form (after page break added in GF admin):
 *   Page 1 (#gform_page_28_1) — Services (card grid)
 *   Page 2 (#gform_page_28_2) — Calendar (GP Bookings picker)
 *   Page 3 (#gform_page_28_3) — Contact info (Name / Phone / Email)
 * ============================================================= */

/* ==================================================
 * WRAPPER & TITLE
 * ================================================== */
#gform_wrapper_28,
#gform_wrapper_28.gform_wrapper.gravity-theme,
#gform_wrapper_28.gform_wrapper.gform-theme {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 18px;
	max-width: 100%;
	margin: 0 auto;
	padding: 20px;
	border-radius: 8px;
	border: 1px solid #071049;
	background: #FFF;
	box-sizing: border-box;
	position: relative;
}

#gform_wrapper_28 .gform_title {
	max-width: 100%;
	color: #3B4047;
	text-align: center;
	font-family: "Barlow", sans-serif;
	font-size: 25px;
	font-weight: 700;
	line-height: normal;
	margin: 0 auto;
}

#gform_wrapper_28 .gform_required_legend { display: none; }

/* ==================================================
 * PROGRESS BAR — hide GF default bar, show step text only
 * ================================================== */
#gform_wrapper_28 .gf_progressbar_wrapper {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
#gform_wrapper_28 .gf_progressbar,
#gform_wrapper_28 .gf_progressbar_percentage { display: none !important; }
#gform_wrapper_28 .gf_progressbar_wrapper::before {
	content: "";
	display: block;
	width: 250px;
	max-width: 100%;
	height: 1px;
	background: #A2A2A2;
	margin: 0 auto;
}
#gform_wrapper_28 .gf_progressbar_title {
	display: block;
	color: #3B4047;
	text-align: center;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 18px;
	font-style: italic;
	font-weight: 400;
	line-height: normal;
	margin: 0 0 18px;
	padding-top: 12px;
	border: 0;
	text-transform: none;
	letter-spacing: 0;
}

/* Hide GF "Step 1" / "Step 2" / "Step 3" section-break headings */
#gform_wrapper_28 .gform_page .gsection { display: none !important; }
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox > .gfield_label { display: none; }

/* ==================================================
 * "YOU SELECTED: X" BANNER (optional HTML field)
 *
 * To enable, add an HTML field in GF admin on Step 1 with class
 * "p1031-selected-banner-field" and content:
 *
 *   <div class="p1031-selected-banner" data-default="No service selected">
 *     <span class="p1031-selected-banner__text">No service selected</span>
 *   </div>
 * ================================================== */
#gform_wrapper_28 .p1031-selected-banner-field { width: 100%; }
#gform_wrapper_28 .p1031-selected-banner-field .gfield_label,
#gform_wrapper_28 .p1031-selected-banner-field .ginput_container { display: block; }
#gform_wrapper_28 .p1031-selected-banner {
	max-width: 100%;
	min-height: 42px;
	margin: 0 auto 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #071049;
	border-radius: 0;
	padding: 5px 10px;
}
#gform_wrapper_28 .p1031-selected-banner__text {
	color: #FFF;
	text-align: center;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 17px;
	font-weight: 500;
	line-height: normal;
}

/* ==================================================
 * STEP 1 — SERVICE CARD GRID
 * ================================================== */
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .ginput_container_checkbox,
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gfield_checkbox {
	display: grid !important;
	/* auto-fit so the grid collapses to 1 column when the Stackable
	 * column is narrow, regardless of viewport width. Min size kept
	 * small (140px) so two cards fit in ~320px container per design. */
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
	gap: 10px !important;
	width: 100%;
}
/* Kill any inline width Gravity Forms drops on individual choices */
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice[style*="width"] {
	width: auto !important;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice {
	display: flex;
	flex-direction: column;
	padding: 0;
	margin: 0;
	position: relative;
}
/* Hide the real checkbox visually but keep it interactive */
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"] {
	position: absolute !important;
	opacity: 0 !important;
	inset: 0 !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	z-index: 2;
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:checked::after {
	content: none !important;
	background: none !important;
}
/* Kill the theme's global .gfield_checkbox label::before square box —
 * style.min.css draws a 30x30 black-bordered box on every checkbox
 * label, and turns it yellow on :checked. We don't want it on the
 * card-style choices in either state. */
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label::before,
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label::after,
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:checked + label::before,
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:checked + label::after {
	content: none !important;
	display: none !important;
	border: 0 !important;
	background: none !important;
	width: 0 !important;
	height: 0 !important;
	top: auto !important;
	left: auto !important;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label {
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 6px;
	/* Override theme's 40px left padding (added to make room for the
	 * 30px ::before checkbox square — which we've hidden on form 28). */
	padding: 12px 8px !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 110px;
	box-sizing: border-box;
	padding: 12px 8px;
	border: 1px solid #A2A2A2;
	border-radius: 8px;
	background: #FFF;
	cursor: pointer;
	text-align: center;
	transition: background 0.15s ease, border-color 0.15s ease;
	font-family: "Barlow Condensed", sans-serif;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label .p1031-choice-title {
	display: block;
	max-width: 100%;
	color: #3B4047;
	text-align: center;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.15;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label .p1031-choice-desc {
	display: block;
	max-width: 100%;
	color: #3B4047;
	text-align: center;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label:hover { border-color: #071049; }
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:focus-visible + label {
	outline: 2px solid #071049;
	outline-offset: 2px;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:checked + label {
	background: #FFBB00 !important;
	border: 1px solid #A2A2A2 !important;
	border-radius: 8px !important;
}
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:checked + label .p1031-choice-title,
#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice input[type="checkbox"]:checked + label .p1031-choice-desc {
	color: #3B4047;
}

/* ==================================================
 * STEP 2 — CALENDAR (GP Bookings)
 * ================================================== */
#gform_wrapper_28 #gform_page_28_2 { width: 100% !important; box-sizing: border-box !important; }
#gform_wrapper_28 #gform_page_28_2 .gform_fields { gap: 4px !important; }
#gform_wrapper_28 #gform_page_28_2 .gfield--type-gpb_booking_time { padding-top: 0 !important; }
#gform_wrapper_28 #gform_page_28_2 .gfield--type-gpb_booking_time .gfield_label { display: none !important; }
#gform_wrapper_28 #gform_page_28_2 .ginput_container_booking_time { width: 100% !important; }
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__content { width: 100% !important; }

/* Date picker (react-day-picker) */
#gform_wrapper_28 #gform_page_28_2 .rdp-root {
	border: 0;
	border-radius: 0;
	padding: 0;
	background: #FFF;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-months { justify-content: center; }
#gform_wrapper_28 #gform_page_28_2 .rdp-month_caption { margin-bottom: 6px; }
#gform_wrapper_28 #gform_page_28_2 .rdp-caption_label {
	font-family: "Barlow Condensed", sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #000;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-dropdown,
#gform_wrapper_28 #gform_page_28_2 .rdp-dropdown_root,
#gform_wrapper_28 #gform_page_28_2 .rdp-months_dropdown,
#gform_wrapper_28 #gform_page_28_2 .rdp-years_dropdown { color: #000 !important; }
#gform_wrapper_28 #gform_page_28_2 .rdp-button_previous,
#gform_wrapper_28 #gform_page_28_2 .rdp-button_next {
	border: 1px solid #CDCDCD;
	background: #FFF;
	width: 32px;
	height: 32px;
	border-radius: 8px;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-button_previous:hover,
#gform_wrapper_28 #gform_page_28_2 .rdp-button_next:hover { background: #F5F5F5; }
#gform_wrapper_28 #gform_page_28_2 .rdp-chevron { fill: #000 !important; }
#gform_wrapper_28 #gform_page_28_2 .rdp-weekday {
	font-family: "Barlow Condensed", sans-serif;
	font-size: 10px;
	font-weight: 500;
	text-transform: uppercase;
	color: #8D8D8D;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-day_button {
	width: 38px;
	height: 34px;
	border-radius: 8px !important;
	border: 1px solid transparent;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 16px;
	font-weight: 500;
	color: #202124;
	background: transparent;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-day:not(.rdp-disabled):not(.rdp-outside) .rdp-day_button:hover {
	border-color: #C8AB45;
	background: #F7F3E5;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-day.rdp-selected .rdp-day_button,
#gform_wrapper_28 #gform_page_28_2 .rdp-day[aria-selected="true"] .rdp-day_button,
#gform_wrapper_28 #gform_page_28_2 .rdp-day_button[aria-pressed="true"] {
	background: #FFBB00 !important;
	border-color: #FFBB00 !important;
	color: #000 !important;
	border-radius: 8px !important;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-day--available .rdp-day_button {
	border-color: #78A1D3;
	background: #78A1D3;
	color: #FFF;
}
#gform_wrapper_28 #gform_page_28_2 .rdp-day.rdp-disabled .rdp-day_button,
#gform_wrapper_28 #gform_page_28_2 .gpb-day--outside-availability .rdp-day_button {
	opacity: 0.35;
	border-color: transparent;
	background: transparent;
	color: #8D8D8D;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-timezone-indicator small {
	font-family: Inter, sans-serif;
	font-size: 12px;
	color: #6C6E73;
}

/* Slot list */
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots-container .gpb-booking-time-picker__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots-container .gpb-booking-time-picker__header > div {
	width: 100%;
	display: flex;
	justify-content: center;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 14px;
	border: 1px solid #FFBB00;
	border-radius: 8px;
	background: #FFBB00;
	color: #000;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__back:hover,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__back:focus {
	background: #e0ac00;
	border-color: #e0ac00;
	color: #000;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__header h4 {
	margin: 0;
	width: 100%;
	text-align: center;
	white-space: nowrap;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 23px;
	font-weight: 500;
	line-height: 1.1;
	color: #3B4047;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot-time {
	font-size: 0.8rem !important;
	font-weight: 500 !important;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__times button,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots button,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__time-slots button,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker button[aria-pressed] {
	height: auto;
	min-height: 34px;
	padding: 5px 10px;
	border-radius: 4px;
	border: 1px solid #D0D0D0;
	background: #FFF;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 400;
	color: #2E2E2E;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__times button:hover,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots button:hover,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__time-slots button:hover,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker button[aria-pressed="false"]:hover {
	border-color: #7097CC;
}

/* Past / disabled / unavailable slots — set by strategy-form.js */
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot--unavailable,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot[disabled],
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot[aria-disabled="true"],
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot.is-past {
	background: #F4F4F4 !important;
	border-color: #E5E5E5 !important;
	color: #B0B0B0 !important;
	cursor: not-allowed !important;
	text-decoration: line-through;
	opacity: 0.65;
	pointer-events: none;
}
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot--unavailable:hover,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot[disabled]:hover,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slot.is-past:hover { border-color: #E5E5E5 !important; }

/* Selected slot */
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__times button[aria-pressed="true"],
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots button[aria-pressed="true"],
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots .gpb-booking-time-picker__slot--selected,
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__slots .gpb-booking-time-picker__slot[aria-selected="true"],
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker__time-slots button[aria-pressed="true"],
#gform_wrapper_28 #gform_page_28_2 .gpb-booking-time-picker button.is-selected {
	background: #FFBB00 !important;
	border-color: #FFBB00 !important;
	color: #000 !important;
}

/* Step 2 Next button — greyed until a slot is picked
 * (.p1031-slot-selected class added by strategy-form.js) */
#gform_wrapper_28 #gform_page_28_2 .gform_page_footer .gform_next_button:not(.p1031-slot-selected),
#gform_wrapper_28 #gform_page_28_2 .gform-page-footer .gform_next_button:not(.p1031-slot-selected) {
	background-color: #C8C8C8 !important;
	color: #7A7A7A !important;
	cursor: not-allowed !important;
	pointer-events: none !important;
}

/* ==================================================
 * STEP 3 — CONTACT INFO (floating-label inputs)
 * ================================================== */
#gform_wrapper_28 #gform_page_28_3 { width: 100% !important; box-sizing: border-box !important; }
#gform_wrapper_28 #gform_page_28_3 .gform_page_fields { padding: 0 0 12px; }
#gform_wrapper_28 #gform_page_28_3 .gform_fields {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
#gform_wrapper_28 #gform_page_28_3 .gfield {
	position: relative;
	width: 100% !important;
	box-sizing: border-box !important;
	padding-top: 10px !important;
}
#gform_wrapper_28 #gform_page_28_3 .ginput_container {
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Floating label on top edge of input */
#gform_wrapper_28 #gform_page_28_3 .gfield_label {
	position: absolute;
	top: 10px;
	left: 10px;
	transform: translateY(-50%);
	background: #FFF;
	padding: 0 4px;
	z-index: 2;
	color: #3B4047;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 0;
	white-space: nowrap;
}
#gform_wrapper_28 #gform_page_28_3 .gfield_required { color: #C00; }
#gform_wrapper_28 #gform_page_28_3 .gform-grid-col { position: relative; }

/* Sub-labels (First / Last under name fields) styled as floating labels */
#gform_wrapper_28 #gform_page_28_3 .gform-field-label--type-sub {
	position: absolute;
	top: 10px;
	left: 10px;
	transform: translateY(-50%);
	background: #FFF;
	padding: 0 4px;
	z-index: 2;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 12px;
	font-weight: 600;
	color: #3B4047;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 0;
	white-space: nowrap;
}

/* Hide the wrapping legend for the complex Name field (sub-labels handle labeling) */
#gform_wrapper_28 #gform_page_28_3 .gfield--type-name > .gfield_label { display: none; }

/* Inputs */
#gform_wrapper_28 #gform_page_28_3 input[type="text"],
#gform_wrapper_28 #gform_page_28_3 input[type="email"],
#gform_wrapper_28 #gform_page_28_3 input[type="tel"],
#gform_wrapper_28 #gform_page_28_3 input[type="number"],
#gform_wrapper_28 #gform_page_28_3 textarea {
	width: 100% !important;
	height: 44px !important;
	box-sizing: border-box !important;
	padding: 0 12px !important;
	border: 1px solid #A2A2A2 !important;
	border-radius: 6px !important;
	background: #FFF !important;
	color: #3B4047 !important;
	font-family: "Barlow Condensed", sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 44px !important;
	outline: none !important;
	box-shadow: none !important;
	transition: border-color 0.15s ease !important;
}
#gform_wrapper_28 #gform_page_28_3 textarea {
	height: auto !important;
	min-height: 120px !important;
	line-height: 1.4 !important;
	padding: 12px !important;
	resize: vertical;
}
#gform_wrapper_28 #gform_page_28_3 input::placeholder,
#gform_wrapper_28 #gform_page_28_3 textarea::placeholder {
	color: #A2A2A2 !important;
	font-family: Inter, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: normal !important;
	opacity: 1;
}
#gform_wrapper_28 #gform_page_28_3 input:focus,
#gform_wrapper_28 #gform_page_28_3 textarea:focus { border-color: #071049 !important; }

/* Complex Name field — stack first/last vertically with floating sub-labels */
#gform_wrapper_28 #gform_page_28_3 .ginput_container--name {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	margin: 0 !important;
}
#gform_wrapper_28 #gform_page_28_3 .ginput_container--name .gform-grid-col {
	width: 100% !important;
	padding: 10px 0 0 !important;
	margin: 0 !important;
	position: relative !important;
}

/* Validation */
#gform_wrapper_28 #gform_page_28_3 .gfield_error input,
#gform_wrapper_28 #gform_page_28_3 .gfield_error textarea { border-color: #C00 !important; }
#gform_wrapper_28 #gform_page_28_3 .validation_message {
	color: #C00;
	font-size: 12px;
	margin-top: 3px;
}

/* ==================================================
 * PAGE FOOTERS — Previous / Next / Submit buttons
 * ================================================== */
#gform_wrapper_28 .gform_page_footer,
#gform_wrapper_28 .gform-page-footer {
	width: 100%;
	max-width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 0 !important;
	margin: 0;
	gap: 16px;
}

/* Next + Previous buttons on steps 1 & 2 — outlined pill with arrow icons */
#gform_wrapper_28 .gform_page_footer .gform_next_button,
#gform_wrapper_28 .gform-page-footer .gform_next_button,
#gform_wrapper_28 .gform_page_footer input[type="button"].gform_next_button,
#gform_wrapper_28 .gform-page-footer input[type="button"].gform_next_button {
	width: auto !important;
	min-width: 0;
	max-width: 100% !important;
	height: auto;
	display: inline-block;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='33' height='8' viewBox='0 0 33 8' fill='none'><path d='M32.3536 4.03544C32.5488 3.84018 32.5488 3.5236 32.3536 3.32833L29.1716 0.146353C28.9763 -0.0489088 28.6597 -0.0489088 28.4645 0.146353C28.2692 0.341616 28.2692 0.658198 28.4645 0.85346L31.2929 3.68189L28.4645 6.51031C28.2692 6.70558 28.2692 7.02216 28.4645 7.21742C28.6597 7.41268 28.9763 7.41268 29.1716 7.21742L32.3536 4.03544ZM0 3.68188L-4.37114e-08 4.18188L32 4.18189L32 3.68189L32 3.18189L4.37114e-08 3.18188L0 3.68188Z' fill='black'/></svg>") no-repeat calc(100% - 12px) center #FFF !important;
	background-size: 32px 8px !important;
	color: #000 !important;
	border: 1px solid #CDCDCD !important;
	border-radius: 8px !important;
	padding: 10px 56px 10px 20px !important;
	font-family: "Barlow Condensed", sans-serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: normal !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	text-align: right !important;
	cursor: pointer;
	box-shadow: none !important;
	-webkit-appearance: none;
	appearance: none;
}
#gform_wrapper_28 .gform_page_footer .gform_next_button:hover,
#gform_wrapper_28 .gform-page-footer .gform_next_button:hover {
	background-color: #F5F5F5 !important;
	color: #000 !important;
}
#gform_wrapper_28 .gform_page_footer .gform_previous_button,
#gform_wrapper_28 .gform-page-footer .gform_previous_button {
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='33' height='8' viewBox='0 0 33 8' fill='none'><path d='M0.646447 3.96456C0.451184 4.15982 0.451184 4.4764 0.646447 4.67167L3.82843 7.85365C4.02369 8.04891 4.34027 8.04891 4.53553 7.85365C4.7308 7.65839 4.7308 7.3418 4.53553 7.14654L1.70711 4.31811L4.53553 1.48969C4.7308 1.29442 4.7308 0.977841 4.53553 0.782578C4.34027 0.587316 4.02369 0.587316 3.82843 0.782578L0.646447 3.96456ZM33 4.31812L33 3.81812L1 3.81811L1 4.31811L1 4.81811L32.9999 4.81812L33 4.31812Z' fill='black'/></svg>") no-repeat 12px center #FFF !important;
	background-size: 32px 8px !important;
	color: #000 !important;
	border: 1px solid #CDCDCD !important;
	border-radius: 8px !important;
	padding: 10px 20px 10px 56px !important;
	font-family: "Barlow Condensed", sans-serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: normal !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	text-align: left !important;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

#gform_wrapper_28 #gform_page_28_1 .gform_page_footer .gform_next_button,
#gform_wrapper_28 #gform_page_28_1 .gform-page-footer .gform_next_button {
	margin-bottom: 16px !important;
}

/* Step 3 footer — Previous on top, big yellow Submit on bottom */
#gform_wrapper_28 #gform_page_28_3 .gform_page_footer,
#gform_wrapper_28 #gform_page_28_3 .gform-page-footer {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
}
#gform_wrapper_28 #gform_page_28_3 .gform_page_footer .gform_previous_button,
#gform_wrapper_28 #gform_page_28_3 .gform-page-footer .gform_previous_button {
	order: 1;
	align-self: center;
	width: auto !important;
	max-width: 100% !important;
}
#gform_wrapper_28 #gform_page_28_3 .gform_page_footer input[type="submit"],
#gform_wrapper_28 #gform_page_28_3 .gform-page-footer input[type="submit"],
#gform_wrapper_28 #gform_page_28_3 .gform_page_footer .gform_button,
#gform_wrapper_28 #gform_page_28_3 .gform-page-footer .gform_button {
	order: 2;
	width: 100% !important;
	height: 54px;
	border-radius: 10px;
	border: 0;
	background: #FFBB00 !important;
	background-image: none !important;
	color: #FFF !important;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 28px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
	padding: 0 16px !important;
	text-align: center !important;
	cursor: pointer;
}
#gform_wrapper_28 #gform_page_28_3 .gform_page_footer input[type="submit"]:hover,
#gform_wrapper_28 #gform_page_28_3 .gform-page-footer input[type="submit"]:hover {
	background: #e6a800 !important;
}

/* Confirmation */
#gform_confirmation_wrapper_28,
#gform_confirmation_message_28 {
	text-align: center;
	padding: 20px;
	color: #3B4047;
	font-family: "Barlow", sans-serif;
	font-size: 18px;
}

/* ==================================================
 * MOBILE
 * ================================================== */
@media (max-width: 767.98px) {
	#gform_wrapper_28 .gform_title { font-size: 24px; }

	#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .ginput_container_checkbox,
	#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gfield_checkbox {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}
	#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice { align-items: stretch !important; width: 100% !important; }
	#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label {
		min-height: 130px;
		padding: 14px 12px;
	}
	#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label .p1031-choice-title { font-size: 19px; }
	#gform_wrapper_28 #gform_page_28_1 .gfield--type-checkbox .gchoice label .p1031-choice-desc { font-size: 15px; }
}
