/*
 * Gravity Forms layout overrides for legacy Wufoo container styles.
 * Matches the original sticky bar's horizontal inline form layout.
 */

/* ===== Sticky bar form (horizontal inline) ===== */

.sticky-nav .stickyform .gform_wrapper {
	width: 100%;
	margin: 0;
}

.sticky-nav .stickyform .gform_wrapper form {
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
	margin: 0;
	padding: 0;
	width: 100%;
}

.sticky-nav .stickyform .gform_body,
.sticky-nav .stickyform .gform-body {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
}

.sticky-nav .stickyform .gform_fields {
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	grid-row-gap: 0;
	grid-column-gap: 0;
}

.sticky-nav .stickyform .gfield {
	flex: 2 2 auto;
	min-width: 0;
	margin: 0;
	padding: 0 4px;
}

.sticky-nav .stickyform .gfield:first-child {
	padding-left: 0;
}

.sticky-nav .stickyform .gfield:last-child {
	padding-right: 0;
}

/* Hide honeypot, hidden, and validation containers — they shouldn't take a flex slot */
.sticky-nav .stickyform .gfield--type-honeypot,
.sticky-nav .stickyform .gfield--type-hidden,
.sticky-nav .stickyform .gform_validation_container {
	display: none !important;
	flex: 0 0 0 !important;
	width: 0 !important;
	padding: 0 !important;
}

/* Hide field labels (form has hidden_label placement, but be explicit) */
.sticky-nav .stickyform .gfield_label,
.sticky-nav .stickyform .gform-field-label,
.sticky-nav .stickyform .gfield_required {
	display: none !important;
}

/* Hide field descriptions and inline validation (they break the row layout) */
.sticky-nav .stickyform .gfield_description,
.sticky-nav .stickyform .gfield_validation_message,
.sticky-nav .stickyform .gform_required_legend,
.sticky-nav .stickyform .gform_fields .gfield_html {
	display: none !important;
}

/* Input wrapper takes full field width */
.sticky-nav .stickyform .ginput_container {
	width: 100%;
	margin: 0;
}

/* Inputs and selects — match original 40px height and inline shape */
.sticky-nav .stickyform input[type="text"],
.sticky-nav .stickyform input[type="email"],
.sticky-nav .stickyform input[type="tel"],
.sticky-nav .stickyform input[type="number"],
.sticky-nav .stickyform input[type="url"],
.sticky-nav .stickyform select,
.sticky-nav .stickyform textarea {
	height: 40px;
	width: 100%;
	padding: calc(.375rem + 1px) .75rem;
	border-radius: 0;
	font-size: 0.95rem;
	line-height: 1.25;
	box-sizing: border-box;
	background-color: #fff;
}

.sticky-nav .stickyform select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-right: 25px;
}

.sticky-nav .stickyform textarea {
	height: 40px;
	resize: none;
}

/* Submit footer — final flex item on the form row */
.sticky-nav .stickyform .gform_footer {
	flex: 1 1 auto;
	margin: 0;
	padding: 0 0 0 4px;
	display: flex;
	align-items: stretch;
	min-width: 100px;
}

.sticky-nav .stickyform .gform_footer .gform_button,
.sticky-nav .stickyform .gform_footer input[type="submit"],
.sticky-nav .stickyform .gform_footer button[type="submit"] {
	width: 100%;
	height: 40px;
	padding: 8px 16px;
	white-space: nowrap;
	cursor: pointer;
}

/* AJAX spinner GF inserts during submit — don't let it stretch the row */
.sticky-nav .stickyform .gform_ajax_spinner {
	position: absolute;
	margin-left: 8px;
}

/* ===== Hero form (.quickform > Gravity Forms) — compact vertical layout =====
 * GF 2.10's orbital theme applies a generous row-gap on .gform_fields (CSS grid
 * with --gf-row-gap ~24px) plus margin around each .gfield. In the hero
 * (.quickform) context this expands the section. Compact it to match the
 * original Wufoo hero spacing (~10px between fields, no extra padding around
 * each field). Scoped to .quickform so it only affects hero output.
 */

.quickform .gform_wrapper,
.quickform .gform_wrapper form {
	margin: 0;
}

.quickform .gform_fields {
	row-gap: 8px !important;
	grid-row-gap: 8px !important;
	gap: 8px !important;
	margin: 0;
	padding: 0;
}

.quickform .gfield {
	margin: 0 !important;
	padding: 0 !important;
}

.quickform .gfield .ginput_container {
	margin: 0;
}

.quickform .gfield_label,
.quickform .gform-field-label {
	margin: 0 0 2px 0;
	padding: 0;
}

.quickform .gfield_description:empty,
.quickform .gfield_validation_message:empty {
	display: none;
}

.quickform .gfield_description,
.quickform .gfield_validation_message {
	margin: 2px 0 0 0;
	padding: 0;
}

.quickform .gform_footer {
	margin: 10px 0 0 0;
	padding: 0;
}

/* ===== General Gravity Forms compatibility (all forms, not sticky-specific) ===== */

/* Match the existing .form-control look on GF inputs sitewide */
.gform_wrapper .ginput_container input[type="text"],
.gform_wrapper .ginput_container input[type="email"],
.gform_wrapper .ginput_container input[type="tel"],
.gform_wrapper .ginput_container input[type="number"],
.gform_wrapper .ginput_container input[type="url"],
.gform_wrapper .ginput_container select,
.gform_wrapper .ginput_container textarea {
	border-radius: 0;
}

/* Hide the GF "* Required" footer legend that GF 2.7+ injects */
.gform_required_legend {
	display: none;
}
