/* Gravity Forms re-theme to match Anything Digital / SDBS design tokens. */

.gform_wrapper.gravity-theme { font-family: var(--font-body); }

.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme label {
	display: block; font-weight: 700; font-size: .85rem; color: var(--pine); margin-bottom: 8px;
}

.gform_wrapper.gravity-theme input[type="text"],
.gform_wrapper.gravity-theme input[type="email"],
.gform_wrapper.gravity-theme input[type="tel"],
.gform_wrapper.gravity-theme input[type="url"],
.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme textarea {
	width: 100%; padding: 14px 16px; border-radius: var(--radius-sm);
	border: 1.5px solid rgba(38,38,38,.15); font-family: var(--font-body);
	font-size: .98rem; background: var(--sand); color: var(--ink);
	transition: border-color .2s var(--ease), background .2s var(--ease);
}

.gform_wrapper.gravity-theme input:focus,
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper.gravity-theme textarea:focus {
	outline: none; border-color: var(--teal); background: var(--white);
}

.gform_wrapper.gravity-theme .gfield { margin-bottom: 20px !important; }
.gform_wrapper.gravity-theme .gform_fields { display: block; }

.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform_page_footer {
	padding: 0; margin: 0;
}

.gform_wrapper.gravity-theme .gform_button {
	display: inline-flex; align-items: center; gap: 10px;
	font-family: var(--font-body); font-weight: 700; font-size: .98rem;
	padding: 15px 28px; border-radius: 100px; border: 2px solid transparent;
	cursor: pointer; background: var(--coral); color: var(--white);
	box-shadow: 0 8px 24px -8px rgba(251,176,59,.55);
	transition: transform .25s var(--ease), box-shadow .25s var(--ease);
}
.gform_wrapper.gravity-theme .gform_button:hover {
	transform: translateY(-2px); box-shadow: 0 12px 28px -8px rgba(251,176,59,.65);
}

.gform_wrapper.gravity-theme .validation_error {
	background: #FDEEEE; border: 1px solid #E8A5A5; color: #8C2E2E;
	border-radius: var(--radius-sm); padding: 14px 18px; margin-bottom: 20px; font-weight: 600;
}

.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .gfield_description.validation_message {
	color: #C0392B; font-size: .85rem; margin-top: 6px;
}

.gform_confirmation_wrapper .gform_confirmation_message {
	background: var(--sage); border-radius: var(--radius-sm); padding: 16px 20px;
	display: flex; gap: 10px; align-items: center; font-weight: 600; color: var(--teal);
}

.ad-sdbs-admin-notice {
	background: #FFF8E5; border: 1px dashed #D9A72E; color: #6B5000;
	padding: 16px 20px; border-radius: var(--radius-sm); font-size: .92rem;
}
