/* =========================================================
   germangroup/form — front end and editor.
   Colours, spacing and fonts come from the site theme presets (theme.json);
   values after the comma are fallbacks only. Every rule is scoped to .gg-form.
   ========================================================= */

.gg-form {
	--gg-form-primary: var(--wp--preset--color--primary, #1f1f1f);
	--gg-form-primary-contrast: var(--wp--preset--color--primary-contrast, #ffffff);
	--gg-form-text: var(--wp--preset--color--text, #1a1a1a);
	--gg-form-muted: var(--wp--preset--color--muted, #6b6b6b);
	--gg-form-background: var(--wp--preset--color--background, #ffffff);
	--gg-form-surface: var(--wp--preset--color--surface, #f5f5f5);
	--gg-form-border: var(--wp--preset--color--border, #e0e0e0);
	--gg-form-danger: #d63638; /* State colour, not a brand colour. */
	--gg-form-gap: var(--wp--preset--spacing--30, 1rem);
	--gg-form-radius: 8px;

	position: relative; /* Containing block for the visually hidden inputs. */
	display: flex;
	flex-direction: column;
	gap: var(--gg-form-gap);
	box-sizing: border-box;
	color: var(--gg-form-text);
	font-size: var(--wp--preset--font-size--medium, 1rem);
}

.gg-form *,
.gg-form *::before,
.gg-form *::after {
	box-sizing: border-box;
}

.gg-form .gg-form__body {
	display: flex;
	flex-direction: column;
	gap: var(--gg-form-gap);
}

.gg-form .gg-form__title {
	margin: 0;
	font-size: var(--wp--preset--font-size--x-large, 2rem);
}

.gg-form .gg-form__subtitle {
	margin: 0;
	color: var(--gg-form-muted);
}

/* ── Fields ─────────────────────────────────────────────── */
.gg-form .gg-form__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--gg-form-gap);
}

.gg-form .gg-form__field {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	min-width: 0;
}

.gg-form .gg-form__label {
	padding: 0;
	color: var(--gg-form-text);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	font-weight: 600;
}

.gg-form .gg-form__input {
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0.75rem 1rem;
	border: 1px solid var(--gg-form-border);
	border-radius: var(--gg-form-radius);
	background: var(--gg-form-background);
	color: var(--gg-form-text);
	font-family: inherit;
	font-size: max(1rem, 16px); /* >= 16px: iOS does not zoom the page. */
	line-height: 1.4;
	transition: border-color 160ms ease, outline-color 160ms ease;
}

.gg-form .gg-form__textarea {
	min-height: 120px;
	resize: vertical;
}

.gg-form .gg-form__input::placeholder {
	color: var(--gg-form-muted);
	opacity: 1;
}

.gg-form .gg-form__input:focus {
	border-color: var(--gg-form-primary);
	outline: 2px solid var(--gg-form-primary);
	outline-offset: 1px;
}

.gg-form .gg-form__input[aria-invalid="true"] {
	border-color: var(--gg-form-danger);
}

.gg-form .gg-form__error {
	margin: 0;
	color: var(--gg-form-danger);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
}

.gg-form .gg-form__error:empty {
	display: none;
}

.gg-form .gg-form__hint {
	margin: 0;
	color: var(--gg-form-muted);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
}

/* Honeypot: hidden from people and screen readers (aria-hidden), still a real field for bots. */
.gg-form .gg-form__hp {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

/* ── Contact type: segmented radio buttons ──────────────── */
.gg-form .gg-form__types {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.gg-form .gg-form__types .gg-form__label {
	display: block;
	margin-bottom: 0.375rem;
}

.gg-form .gg-form__segment {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.gg-form .gg-form__segment-item {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0.5rem 1rem;
	border: 1px solid var(--gg-form-border);
	border-radius: var(--gg-form-radius);
	background: var(--gg-form-background);
	color: var(--gg-form-text);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	font-weight: 600;
	cursor: pointer;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.gg-form .gg-form__segment-item input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
}

.gg-form .gg-form__segment-item:has(input:checked) {
	border-color: var(--gg-form-primary);
	background: var(--gg-form-primary);
	color: var(--gg-form-primary-contrast);
}

.gg-form .gg-form__segment-item:has(input:focus-visible) {
	outline: 2px solid var(--gg-form-primary);
	outline-offset: 2px;
}

/* ── Rating: 5 stars on radio buttons, no JS ─────────────
   DOM order 1→5 (arrow keys follow it); a star is lit when it or a later star is checked / hovered (:has). */
.gg-form .gg-form__rating {
	--gg-form-star: #f59e0b; /* Rating colour, not a brand colour. */
	--gg-form-star-empty: var(--gg-form-border);

	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.gg-form .gg-form__rating .gg-form__label {
	display: block;
	margin-bottom: 0.375rem;
}

.gg-form .gg-form__stars {
	display: flex;
	align-self: flex-start;
	border-radius: var(--gg-form-radius);
}

.gg-form .gg-form__star {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: var(--gg-form-radius);
	color: var(--gg-form-star-empty);
	cursor: pointer;
	transition: color 160ms ease;
}

.gg-form .gg-form__star-input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
}

.gg-form .gg-form__star-icon {
	width: 30px;
	height: 30px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.94 5.96 6.58.96-4.76 4.64 1.12 6.55L12 17.52l-5.88 3.09 1.12-6.55-4.76-4.64 6.58-.96z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.94 5.96 6.58.96-4.76 4.64 1.12 6.55L12 17.52l-5.88 3.09 1.12-6.55-4.76-4.64 6.58-.96z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.gg-form .gg-form__star:has(.gg-form__star-input:checked),
.gg-form .gg-form__star:has(~ .gg-form__star .gg-form__star-input:checked) {
	color: var(--gg-form-star);
}

/* Hover previews the rating: everything off, then the hovered star and the stars before it on
   (specificity above the :checked rules). */
.gg-form .gg-form__rating .gg-form__stars:hover .gg-form__star {
	color: var(--gg-form-star-empty);
}

.gg-form .gg-form__rating .gg-form__stars:hover .gg-form__star:hover,
.gg-form .gg-form__rating .gg-form__stars:hover .gg-form__star:has(~ .gg-form__star:hover) {
	color: var(--gg-form-star);
}

.gg-form .gg-form__star:has(.gg-form__star-input:focus-visible) {
	outline: 2px solid var(--gg-form-primary);
	outline-offset: -2px;
}

.gg-form .gg-form__rating:has(.gg-form__star-input[aria-invalid="true"]) .gg-form__stars {
	outline: 1px solid var(--gg-form-danger);
}

/* ── Photos ─────────────────────────────────────────────── */
.gg-form .gg-form__file-input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
}

.gg-form .gg-form__file {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	align-self: flex-start;
	min-height: 48px;
	padding: 0.75rem 1.25rem;
	border: 1px dashed var(--gg-form-border);
	border-radius: var(--gg-form-radius);
	background: var(--gg-form-surface);
	color: var(--gg-form-text);
	font-weight: 600;
	cursor: pointer;
}

.gg-form .gg-form__file::before {
	content: "";
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='11' r='2'/%3E%3Cpath d='M21 17l-5-5-8 7'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='11' r='2'/%3E%3Cpath d='M21 17l-5-5-8 7'/%3E%3C/svg%3E") center / contain no-repeat;
}

.gg-form .gg-form__file:hover {
	border-color: var(--gg-form-primary);
}

.gg-form .gg-form__file-input:focus-visible + .gg-form__file {
	outline: 2px solid var(--gg-form-primary);
	outline-offset: 2px;
}

.gg-form .gg-form__previews {
	display: grid;
	grid-template-columns: repeat(auto-fill, 72px);
	gap: 0.5rem;
}

.gg-form .gg-form__previews:empty {
	display: none;
}

.gg-form .gg-form__preview {
	position: relative;
	width: 72px;
	height: 72px;
	overflow: hidden;
	border: 1px solid var(--gg-form-border);
	border-radius: var(--gg-form-radius);
	background: var(--gg-form-surface);
}

.gg-form .gg-form__preview img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gg-form .gg-form__preview-remove {
	position: absolute;
	top: 4px;
	right: 4px;
	width: 24px;
	height: 24px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--gg-form-background);
	color: var(--gg-form-text);
	cursor: pointer;
}

.gg-form .gg-form__preview-remove::before {
	content: "";
	position: absolute;
	inset: 6px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M2 2l8 8M10 2l-8 8'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M2 2l8 8M10 2l-8 8'/%3E%3C/svg%3E") center / contain no-repeat;
}

.gg-form .gg-form__preview-remove:focus-visible {
	outline: 2px solid var(--gg-form-primary);
	outline-offset: 1px;
}

/* ── Submit ─────────────────────────────────────────────── */
.gg-form .gg-form__actions {
	display: flex;
	align-items: flex-end;
}

.gg-form .gg-form__submit {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0.75rem 1.75rem;
	border: 0;
	border-radius: var(--gg-form-radius);
	background: var(--gg-form-primary);
	color: var(--gg-form-primary-contrast);
	font-family: inherit;
	font-size: max(1rem, 16px);
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	transition: opacity 160ms ease;
}

.gg-form .gg-form__submit:hover {
	opacity: 0.9;
}

.gg-form .gg-form__submit:focus-visible {
	outline: 2px solid var(--gg-form-primary);
	outline-offset: 2px;
}

.gg-form .gg-form__submit:disabled,
.gg-form .gg-form__submit[aria-busy="true"] {
	opacity: 0.6;
	cursor: progress;
}

.gg-form .gg-form__submit[aria-busy="true"]::before {
	content: "";
	width: 16px;
	height: 16px;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: gg-form-spin 0.8s linear infinite;
}

@keyframes gg-form-spin {
	to {
		transform: rotate(360deg);
	}
}

.gg-form .gg-form__privacy {
	margin: 0;
	color: var(--gg-form-muted);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
}

.gg-form .gg-form__privacy a {
	color: inherit;
	text-decoration: underline;
}

/* ── States: success / error (JS toggles .is-visible; without JS — :target after the redirect) ─ */
.gg-form .gg-form__state {
	display: none;
	padding: 1rem 1.25rem;
	border-left: 4px solid var(--gg-form-primary);
	border-radius: var(--gg-form-radius);
	background: var(--gg-form-surface);
	color: var(--gg-form-text);
}

.gg-form .gg-form__state p {
	margin: 0;
}

.gg-form .gg-form__state--error {
	border-left-color: var(--gg-form-danger);
}

.gg-form .gg-form__state.is-visible,
.gg-form .gg-form__state:target {
	display: block;
}

.gg-form .gg-form__state:focus {
	outline: 2px solid var(--gg-form-primary);
	outline-offset: 2px;
}

.gg-form.is-sent .gg-form__body {
	display: none;
}

/* Admin-only note when the form cannot be shown. */
.gg-form .gg-form__notice {
	margin: 0;
	padding: 0.75rem 1rem;
	border: 1px dashed var(--gg-form-danger);
	border-radius: var(--gg-form-radius);
	color: var(--gg-form-text);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
}

/* ── Layouts ────────────────────────────────────────────── */
@media (min-width: 768px) {
	.gg-form .gg-form__submit {
		width: auto;
	}

	.gg-form--inline .gg-form__row {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
		align-items: start;
	}

	/* Align the button with the inputs (labels sit above the inputs). */
	.gg-form--inline .gg-form__row .gg-form__actions {
		align-self: start;
		padding-top: calc(var(--wp--preset--font-size--small, 0.875rem) * 1.5 + 0.375rem);
	}
}

/* ── Inside the popup #gg-popup: look of the old theme's quick-lead modal ─────
   Only .gg-popup .gg-form … rules; the form on pages is not affected.
   Visual order as in the old modal: title, subtitle, message, fields (body becomes "contents", states move up). */
.gg-popup .gg-form {
	--gg-form-primary: var(--wp--preset--color--primary, #ff385c);
	--gg-form-primary-contrast: var(--wp--preset--color--primary-contrast, #ffffff);
	--gg-form-text: var(--wp--preset--color--text, #1e293b);
	--gg-form-muted: var(--wp--preset--color--muted, #64748b);
	--gg-form-border: var(--wp--preset--color--border, #e2e8f0);
	--gg-form-danger: #f43f5e;
	--gg-form-radius: 12px;

	gap: 0;
	font-size: 15px;
}

.gg-popup .gg-form .gg-form__body {
	display: contents;
}

.gg-popup .gg-form.is-sent .gg-form__body {
	display: none;
}

.gg-popup .gg-form .gg-form__title,
.gg-popup .gg-form .gg-form__subtitle {
	order: -2;
}

.gg-popup .gg-form .gg-form__state {
	order: -1;
}

/* The title is a <p> in popups: the heading font and spacing of the theme are set explicitly. */
.gg-popup .gg-form .gg-form__title {
	margin: 0 0 6px;
	padding-right: 28px;
	color: var(--wp--preset--color--text, #0f172a);
	font-family: var(--wp--preset--font-family--heading, inherit);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.02em;
}

.gg-popup .gg-form .gg-form__subtitle {
	margin: 0 0 20px;
	color: var(--gg-form-muted);
	font-size: 14px;
	line-height: 1.5;
}

/* No subtitle: the title keeps the gap to the fields. */
.gg-popup .gg-form .gg-form__title:not(:has(+ .gg-form__subtitle)) {
	margin-bottom: 20px;
}

/* Fields */
.gg-popup .gg-form .gg-form__row {
	gap: 16px;
	margin-bottom: 16px;
}

.gg-popup .gg-form .gg-form__field {
	gap: 6px;
}

.gg-popup .gg-form .gg-form__body > .gg-form__field {
	margin-bottom: 16px;
}

.gg-popup .gg-form .gg-form__body > .gg-form__field:has(+ .gg-form__actions) {
	margin-bottom: 20px;
}

.gg-popup .gg-form .gg-form__label {
	color: var(--wp--preset--color--text, #374151);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
}

.gg-popup .gg-form [data-gg-field="name"] .gg-form__label::after,
.gg-popup .gg-form [data-gg-field="contact"] .gg-form__label::after,
.gg-popup .gg-form [data-gg-field="rating"] .gg-form__label::after,
.gg-popup .gg-form:has([data-gg-field="rating"]) [data-gg-field="message"] .gg-form__label::after {
	content: " *";
}

.gg-popup .gg-form .gg-form__input {
	padding: 12px 14px;
	border: 1.5px solid var(--gg-form-border);
	border-radius: var(--gg-form-radius);
	background: var(--wp--preset--color--background, #ffffff);
	color: var(--gg-form-text);
	line-height: 1.4;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.gg-popup .gg-form .gg-form__input:focus {
	border-color: var(--gg-form-primary);
	outline: none;
	box-shadow: 0 0 0 4px rgba(255, 56, 92, 0.12);
}

.gg-popup .gg-form .gg-form__input[aria-invalid="true"] {
	border-color: var(--gg-form-danger);
	box-shadow: 0 0 0 3px rgba(244, 63, 94, 0.12);
}

.gg-popup .gg-form .gg-form__textarea {
	height: 72px;
	min-height: 72px;
}

.gg-popup .gg-form .gg-form__error {
	font-size: 13px;
}

/* Photos: dashed drop zone (label + hint drawn as one box), thumbnails below. */
.gg-popup .gg-form [data-gg-field="photos"] {
	gap: 0;
}

.gg-popup .gg-form [data-gg-field="photos"] > .gg-form__label {
	margin-bottom: 6px;
}

.gg-popup .gg-form .gg-form__file {
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	align-self: stretch;
	min-height: 0;
	padding: 20px 16px 6px;
	border: 2px dashed #cbd5e1;
	border-bottom: 0;
	border-radius: 12px 12px 0 0;
	background: transparent;
	color: #475569;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	text-align: center;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.gg-popup .gg-form .gg-form__file::before {
	width: 32px;
	height: 32px;
	background: #94a3b8;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4M17 8l-5-5-5 5M12 3v12'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4M17 8l-5-5-5 5M12 3v12'/%3E%3C/svg%3E") center / contain no-repeat;
}

.gg-popup .gg-form [data-gg-field="photos"] .gg-form__hint {
	padding: 0 16px 20px;
	border: 2px dashed #cbd5e1;
	border-top: 0;
	border-radius: 0 0 12px 12px;
	color: #94a3b8;
	font-size: 12px;
	line-height: 1.4;
	text-align: center;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.gg-popup .gg-form [data-gg-field="photos"]:has(.gg-form__file:hover) :is(.gg-form__file, .gg-form__hint),
.gg-popup .gg-form [data-gg-field="photos"]:has(.gg-form__file-input:focus-visible) :is(.gg-form__file, .gg-form__hint) {
	border-color: var(--gg-form-primary);
	background: #fff5f7;
}

.gg-popup .gg-form .gg-form__file-input:focus-visible + .gg-form__file {
	outline: none;
}

.gg-popup .gg-form .gg-form__previews {
	margin-top: 8px;
}

.gg-popup .gg-form [data-gg-field="photos"] .gg-form__error {
	margin-top: 6px;
}

/* Submit */
.gg-popup .gg-form .gg-form__submit {
	width: 100%;
	min-height: 0;
	padding: 14px;
	border-radius: 12px;
	background: var(--gg-form-primary);
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.gg-popup .gg-form .gg-form__submit:hover:not(:disabled) {
	opacity: 0.92;
	transform: translateY(-1px);
}

.gg-popup .gg-form .gg-form__submit:disabled {
	opacity: 0.65;
	cursor: not-allowed;
}

.gg-popup .gg-form .gg-form__submit[aria-busy="true"]::before {
	border-color: rgba(255, 255, 255, 0.4);
	border-top-color: currentColor;
	animation-duration: 0.7s;
}

.gg-popup .gg-form .gg-form__privacy {
	margin-top: 12px;
	font-size: 12px;
	line-height: 1.5;
}

/* Result messages */
.gg-popup .gg-form .gg-form__state {
	margin: 0 0 16px;
	padding: 12px 16px;
	border: 1px solid #bbf7d0;
	border-radius: 10px;
	background: #f0fdf4;
	color: #166534;
	font-size: 14px;
	line-height: 1.5;
}

.gg-popup .gg-form .gg-form__state--error {
	border-color: #fecdd3;
	background: #fff1f2;
	color: #9f1239;
}

/* Sent: the title is hidden with the fields, keep the message clear of the close button. */
.gg-popup .gg-form.is-sent .gg-form__state {
	margin: 28px 0 0;
}

/* Brand-derived tints where color-mix() is supported. */
@supports (color: color-mix(in srgb, red 50%, blue)) {
	.gg-popup .gg-form .gg-form__input:focus {
		box-shadow: 0 0 0 4px color-mix(in srgb, var(--gg-form-primary) 12%, transparent);
	}

	.gg-popup .gg-form [data-gg-field="photos"]:has(.gg-form__file:hover) :is(.gg-form__file, .gg-form__hint),
	.gg-popup .gg-form [data-gg-field="photos"]:has(.gg-form__file-input:focus-visible) :is(.gg-form__file, .gg-form__hint) {
		background: color-mix(in srgb, var(--gg-form-primary) 5%, #ffffff);
	}

	.gg-popup .gg-form .gg-form__submit {
		background: linear-gradient(135deg, var(--gg-form-primary) 0%, color-mix(in srgb, var(--gg-form-primary) 88%, #000000) 100%);
	}
}

@media (max-width: 480px) {
	.gg-popup .gg-form .gg-form__title {
		padding-right: 36px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gg-popup .gg-form .gg-form__input,
	.gg-popup .gg-form .gg-form__submit,
	.gg-popup .gg-form .gg-form__file,
	.gg-popup .gg-form [data-gg-field="photos"] .gg-form__hint {
		transition: none;
	}

	.gg-popup .gg-form .gg-form__submit:hover:not(:disabled) {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gg-form .gg-form__submit[aria-busy="true"]::before {
		animation: none;
	}

	.gg-form .gg-form__input,
	.gg-form .gg-form__submit,
	.gg-form .gg-form__segment-item,
	.gg-form .gg-form__star {
		transition: none;
	}
}
