/* Gravity Forms (Orbital) in the Surver 2.0 style — design system component "Form".
   Colours, radius and field size come from the Orbital defaults in inc/gravity-forms.php;
   here only what Orbital has no setting for. Colours follow the Blocksy palette.
   Selector is body + .gform_wrapper so it wins even when GF prints its own theme CSS later in the page. */
body .gform_wrapper.gform-theme--framework{
	--gf-font-family-base:inherit;
	--gf-form-gap-y:20px; /* GF default 40px */
	--gf-form-gap-x:16px; /* GF default 16px = design system .sv-form-row gap */
	--gf-ctrl-size:48px;
	--gf-ctrl-font-size:16px;
	--gf-ctrl-padding-x:16px;
	--gf-ctrl-label-font-weight-primary:600;
	--gf-ctrl-label-color-req:#c0352b;
	--gf-ctrl-border-color-focus:var(--theme-palette-color-1);
	--gf-ctrl-shadow-focus:0 0 0 3px #eceefd;
	--gf-ctrl-outline-width-focus:0;
	--gf-ctrl-btn-radius:50px;
}

/* form title: pages carry their own heading */
body .gform_wrapper h2.gform_title{display:none!important}

/* fields: 48px, line-strong border, 8px radius; focus = brand border + soft ring */
.gform-theme--framework input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]),
.gform-theme--framework select{min-height:48px;font-size:16px}
.gform-theme--framework textarea{min-height:132px;line-height:1.5}
.gform-theme--framework input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):focus,
.gform-theme--framework select:focus,.gform-theme--framework textarea:focus{
	outline:none;border-color:var(--theme-palette-color-1);box-shadow:0 0 0 3px #eceefd}
.gform-theme--framework ::placeholder{color:#7a7a7a;opacity:1}

/* labels above fields, required star red, "(optioneel)" muted */
.gform-theme--framework .gfield_label{font-weight:600;font-size:14px;line-height:1.3;color:var(--theme-palette-color-4)}
/* GF sets its own red per form (#id-level selector), so this one needs !important */
.gform-theme--framework .gfield_required,.gform-theme--framework .gfield_required_asterisk{color:#c0352b!important}
.gform-theme--framework .gform_required_legend{font-size:13px;color:var(--theme-palette-color-3)}
.gform-theme--framework .gfield_required .gfield_required_text{font-weight:400;font-style:normal;color:var(--theme-palette-color-3)}
.gform-theme--framework .gfield_description{font-size:13px;line-height:1.45;color:var(--theme-palette-color-3)}

/* choices (radio / checkbox / consent) as option cards; checked = brand ring */
.gform-theme--framework .gfield--type-radio .gchoice,
.gform-theme--framework .gfield--type-checkbox .gchoice,
.gform-theme--framework .gfield--type-consent .ginput_container_consent{
	display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;padding:14px 16px;
	border:1px solid var(--theme-palette-color-5);border-radius:16px;background:var(--theme-palette-color-8);cursor:pointer}
.gform-theme--framework .gchoice:has(input:checked),
.gform-theme--framework .ginput_container_consent:has(input:checked){border-color:var(--theme-palette-color-1);box-shadow:inset 0 0 0 1px var(--theme-palette-color-1)}
.gform-theme--framework .gchoice label,.gform-theme--framework .ginput_container_consent label{font-size:15px;line-height:1.45;cursor:pointer}
.gform-theme--framework .gfield_radio,.gform-theme--framework .gfield_checkbox{display:grid;gap:10px}
.gform-theme--framework .gfield_consent_description{padding:12px 16px;border-radius:16px;font-size:13px}

/* messages: error (red tint) / success (green tint) */
.gform-theme--framework .gform_validation_errors{
	display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border:0!important;border-radius:16px!important;
	background:#fbe6e6!important;box-shadow:none!important}
.gform-theme--framework .gform_validation_errors .gform_submission_error{font-size:15.5px;line-height:1.5;font-weight:400;color:#c0352b!important}
.gform-theme--framework .gfield_validation_message,.gform-theme--framework .validation_message{color:#c0352b;font-size:13px;background:none;border:0;padding:6px 0 0}
.gform-theme--framework .gfield_error input,.gform-theme--framework .gfield_error select,.gform-theme--framework .gfield_error textarea{border-color:#c0352b}
.gform_confirmation_message{padding:18px 20px;border-radius:16px;background:#e5f4eb;color:#157a4c;font-size:15.5px;line-height:1.5}

/* submit: one primary pill button, large */
.gform-theme--framework .gform_footer .gform_button,
.gform-theme--framework .gform_page_footer .gform_next_button,
.gform-theme--framework .gform_page_footer .gform_button{
	min-height:52px;padding:0 26px;border-radius:50px;font-weight:600;font-size:16px;line-height:1}
.gform-theme--framework .gform_footer .gform_button:hover,
.gform-theme--framework .gform_page_footer .gform_next_button:hover{background-color:var(--theme-palette-color-2);box-shadow:0 10px 24px -10px rgba(43,51,203,.55)}
.gform-theme--framework .gform_page_footer .gform_previous_button{min-height:52px;padding:0 26px;border-radius:50px;font-weight:600}

@supports (corner-shape:superellipse(1.5)){
	.gform-theme--framework input:not([type=checkbox]):not([type=radio]),.gform-theme--framework select,.gform-theme--framework textarea,
	.gform-theme--framework .gchoice,.gform-theme--framework .gform_validation_errors,.gform_confirmation_message{corner-shape:superellipse(1.5)}
}