.gc-form {
	--gc-ink: #17202c;
	--gc-text: #263241;
	--gc-muted: #667085;
	--gc-line: #d9e2ec;
	--gc-line-strong: #c8d4df;
	--gc-surface: #ffffff;
	--gc-canvas: #f7f9fb;
	--gc-soft: #f2f6f8;
	--gc-field: #fbfcfd;
	--gc-primary: #0b6f6a;
	--gc-primary-dark: #084f4b;
	--gc-primary-soft: #e7f4f2;
	--gc-gold: #b8862f;
	--gc-warn: #b42318;
	background: var(--gc-surface) !important;
	border: 1px solid rgba(23, 32, 44, 0.08) !important;
	border-radius: 14px !important;
	box-shadow: 0 24px 70px rgba(23, 32, 44, 0.12) !important;
	color: var(--gc-text) !important;
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	margin: 36px auto !important;
	max-width: 1060px !important;
	overflow: hidden !important;
	position: relative !important;
	width: min(100%, 1060px) !important;
}

.gc-form * {
	box-sizing: border-box !important;
	letter-spacing: 0 !important;
}

.gc-form::before {
	background: var(--gc-gold);
	content: "";
	display: block;
	height: 4px;
	inset: 0 0 auto;
	position: absolute;
}

.gc-header {
	background: linear-gradient(135deg, #fbfcfd 0%, #eef6f5 66%, #f8f2e7 100%) !important;
	border-bottom: 1px solid var(--gc-line) !important;
	padding: 42px 48px 38px !important;
}

.gc-kicker {
	color: var(--gc-primary) !important;
	font-size: 0.78rem !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	margin: 0 0 10px !important;
	text-transform: uppercase !important;
}

.gc-header h2 {
	color: var(--gc-ink) !important;
	font-size: 2.12rem !important;
	font-weight: 750 !important;
	line-height: 1.12 !important;
	margin: 0 0 16px !important;
	max-width: 860px !important;
	overflow-wrap: anywhere !important;
}

.gc-header p {
	color: var(--gc-muted) !important;
	font-size: 1rem !important;
	line-height: 1.75 !important;
	margin: 0 !important;
	max-width: 880px !important;
}

.gc-section {
	background: #ffffff !important;
	border-bottom: 1px solid var(--gc-line) !important;
	padding: 38px 48px !important;
}

.gc-section:nth-of-type(even) {
	background: #fcfdfd !important;
}

.gc-section-heading {
	align-items: center !important;
	display: flex !important;
	gap: 14px !important;
	margin: 0 0 26px !important;
}

.gc-section-heading span {
	align-items: center !important;
	background: var(--gc-primary) !important;
	border: 1px solid rgba(255, 255, 255, 0.42) !important;
	border-radius: 999px !important;
	box-shadow: 0 10px 24px rgba(11, 111, 106, 0.24) !important;
	color: #ffffff !important;
	display: inline-flex !important;
	flex: 0 0 38px !important;
	font-size: 0.78rem !important;
	font-weight: 800 !important;
	height: 38px !important;
	justify-content: center !important;
	line-height: 1 !important;
	width: 38px !important;
}

.gc-section-heading h3 {
	color: var(--gc-ink) !important;
	font-size: 1.28rem !important;
	font-weight: 750 !important;
	line-height: 1.25 !important;
	margin: 0 !important;
}

.gc-grid {
	display: grid !important;
	gap: 20px !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.gc-grid-compact {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.gc-field {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	margin: 0 !important;
	min-width: 0 !important;
}

.gc-field-wide {
	grid-column: 1 / -1 !important;
}

.gc-form .gc-field span {
	color: var(--gc-text) !important;
	font-size: 0.9rem !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
}

.gc-form .gc-field input,
.gc-form .gc-field select,
.gc-form .gc-field textarea {
	appearance: none !important;
	background: var(--gc-field) !important;
	border: 1px solid var(--gc-line-strong) !important;
	border-radius: 8px !important;
	box-shadow: 0 1px 0 rgba(23, 32, 44, 0.03) !important;
	color: var(--gc-ink) !important;
	font: inherit !important;
	font-size: 0.98rem !important;
	line-height: 1.4 !important;
	min-height: 50px !important;
	outline: none !important;
	padding: 12px 14px !important;
	transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease !important;
	width: 100% !important;
}

.gc-form .gc-field select {
	background-image: linear-gradient(45deg, transparent 50%, var(--gc-muted) 50%), linear-gradient(135deg, var(--gc-muted) 50%, transparent 50%) !important;
	background-position: calc(100% - 18px) 21px, calc(100% - 12px) 21px !important;
	background-repeat: no-repeat !important;
	background-size: 6px 6px, 6px 6px !important;
	padding-right: 40px !important;
}

.gc-form .gc-field textarea {
	min-height: 96px !important;
	resize: vertical !important;
}

.gc-form .gc-field input:hover,
.gc-form .gc-field select:hover,
.gc-form .gc-field textarea:hover {
	border-color: #aebdca !important;
}

.gc-form .gc-field input:focus,
.gc-form .gc-field select:focus,
.gc-form .gc-field textarea:focus {
	background: #ffffff !important;
	border-color: var(--gc-primary) !important;
	box-shadow: 0 0 0 4px rgba(11, 111, 106, 0.13), 0 8px 18px rgba(23, 32, 44, 0.06) !important;
}

.gc-form .gc-field input::placeholder {
	color: #98a2b3 !important;
}

.gc-form .gc-field input[readonly] {
	background: #eef6f5 !important;
	border-color: rgba(11, 111, 106, 0.18) !important;
	color: var(--gc-primary-dark) !important;
	font-weight: 750 !important;
}

.gc-public-page {
	background: #f6f8fb;
	padding: 24px 0 48px;
}

.gc-person-card {
	background: linear-gradient(180deg, #f8fafc 0%, #f3f7f9 100%) !important;
	border: 1px solid var(--gc-line) !important;
	border-radius: 12px !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72), 0 14px 32px rgba(23, 32, 44, 0.06) !important;
	margin: 0 0 22px !important;
	padding: 28px !important;
	position: relative !important;
}

.gc-person-card::before {
	background: var(--gc-primary) !important;
	border-radius: 12px 0 0 12px !important;
	content: "";
	inset: 0 auto 0 0;
	position: absolute;
	width: 4px;
}

.gc-person-card-head,
.gc-nested-head,
.gc-actions,
.gc-submit-wrap {
	align-items: center !important;
	display: flex !important;
	gap: 16px !important;
	justify-content: space-between !important;
}

.gc-person-card-head {
	border-bottom: 1px solid rgba(23, 32, 44, 0.08) !important;
	margin: 0 0 20px !important;
	padding-bottom: 16px !important;
}

.gc-person-title,
.gc-nested-head h5 {
	color: var(--gc-ink) !important;
	font-size: 1.05rem !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	margin: 0 !important;
}

.gc-form button.gc-remove-person,
.gc-form button.gc-remove-vehicle {
	background: transparent !important;
	border: 0 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	color: var(--gc-warn) !important;
	cursor: pointer !important;
	font: inherit !important;
	font-size: 0.86rem !important;
	font-weight: 750 !important;
	line-height: 1.2 !important;
	min-height: 0 !important;
	padding: 8px 10px !important;
	text-decoration: none !important;
}

.gc-form button.gc-remove-person:hover,
.gc-form button.gc-remove-vehicle:hover {
	background: rgba(180, 35, 24, 0.08) !important;
}

.gc-people-list .gc-person-card:only-child .gc-remove-person {
	display: none !important;
}

.gc-toggle-row {
	display: grid !important;
	gap: 14px !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	margin: 22px 0 0 !important;
}

.gc-toggle-row label {
	align-items: center !important;
	background: #ffffff !important;
	border: 1px solid var(--gc-line) !important;
	border-radius: 10px !important;
	box-shadow: 0 8px 18px rgba(23, 32, 44, 0.04) !important;
	color: var(--gc-text) !important;
	display: flex !important;
	font-size: 0.96rem !important;
	gap: 12px !important;
	line-height: 1.35 !important;
	min-height: 54px !important;
	padding: 14px 16px !important;
}

.gc-toggle-row input[type="checkbox"] {
	accent-color: var(--gc-primary) !important;
	flex: 0 0 auto !important;
	height: 18px !important;
	margin: 0 !important;
	width: 18px !important;
}

.gc-nested-block {
	background: #ffffff !important;
	border: 1px solid var(--gc-line) !important;
	border-radius: 12px !important;
	box-shadow: 0 10px 24px rgba(23, 32, 44, 0.05) !important;
	margin-top: 20px !important;
	padding: 20px !important;
}

.gc-nested-head {
	margin-bottom: 14px !important;
}

.gc-parking-grid {
	margin-bottom: 16px !important;
}

.gc-vehicle-list {
	display: grid !important;
	gap: 14px !important;
}

.gc-vehicle-row {
	background: #f8fafc !important;
	border: 1px solid var(--gc-line) !important;
	border-radius: 12px !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
	display: block !important;
	padding: 16px !important;
}

.gc-vehicle-row-head {
	align-items: center !important;
	border-bottom: 1px solid rgba(23, 32, 44, 0.08) !important;
	display: flex !important;
	gap: 12px !important;
	justify-content: space-between !important;
	margin-bottom: 14px !important;
	padding-bottom: 12px !important;
}

.gc-vehicle-title {
	color: var(--gc-ink) !important;
	font-size: 0.96rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

.gc-vehicle-fields {
	display: grid !important;
	gap: 14px !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.gc-actions,
.gc-submit-wrap {
	justify-content: center !important;
}

.gc-actions {
	margin-top: 26px !important;
}

.gc-submit-wrap {
	background: #fcfdfd !important;
	padding: 36px 48px 40px !important;
}

.gc-form button.gc-secondary,
.gc-form button.gc-mini,
.gc-form button.gc-submit {
	align-items: center !important;
	border-radius: 9px !important;
	cursor: pointer !important;
	display: inline-flex !important;
	font-family: inherit !important;
	font-size: 0.96rem !important;
	font-weight: 800 !important;
	justify-content: center !important;
	line-height: 1.2 !important;
	min-height: 48px !important;
	padding: 13px 22px !important;
	text-decoration: none !important;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease !important;
}

.gc-form button.gc-secondary,
.gc-form button.gc-mini {
	background: #ffffff !important;
	border: 1px solid rgba(11, 111, 106, 0.34) !important;
	box-shadow: 0 10px 20px rgba(11, 111, 106, 0.08) !important;
	color: var(--gc-primary) !important;
}

.gc-form button.gc-mini {
	font-size: 0.86rem !important;
	min-height: 38px !important;
	padding: 9px 14px !important;
}

.gc-form button.gc-submit {
	background: var(--gc-primary) !important;
	border: 1px solid var(--gc-primary) !important;
	box-shadow: 0 16px 32px rgba(11, 111, 106, 0.24) !important;
	color: #ffffff !important;
	min-width: 230px !important;
}

.gc-form button.gc-secondary:hover,
.gc-form button.gc-mini:hover {
	background: var(--gc-primary-soft) !important;
	border-color: var(--gc-primary) !important;
	color: var(--gc-primary-dark) !important;
	transform: translateY(-1px) !important;
}

.gc-form button.gc-submit:hover,
.gc-form button.gc-submit:focus {
	background: var(--gc-primary-dark) !important;
	border-color: var(--gc-primary-dark) !important;
	color: #ffffff !important;
	transform: translateY(-1px) !important;
}

.gc-alert {
	border-radius: 12px !important;
	box-shadow: 0 12px 26px rgba(23, 32, 44, 0.08) !important;
	margin: 24px auto !important;
	max-width: 1060px !important;
	padding: 16px 18px !important;
}

.gc-alert ul {
	margin: 10px 0 0 20px !important;
}

.gc-alert-success {
	background: #ecfdf3 !important;
	border: 1px solid #9bd6b5 !important;
	color: #14532d !important;
}

.gc-alert-error,
.gc-people-errors {
	background: #fff4f2 !important;
	border: 1px solid #f2aaa2 !important;
	color: var(--gc-warn) !important;
}

.gc-people-errors {
	border-radius: 10px !important;
	margin-bottom: 18px !important;
	padding: 12px 16px !important;
}

.gc-people-errors:empty,
.gc-people-errors[hidden] {
	display: none !important;
}

.gc-field-error {
	border-color: var(--gc-warn) !important;
	box-shadow: 0 0 0 4px rgba(180, 35, 24, 0.12) !important;
}

@media (max-width: 760px) {
	.gc-form {
		border-radius: 12px !important;
		margin: 20px auto !important;
		width: min(100% - 24px, 1060px) !important;
	}

	.gc-header,
	.gc-section,
	.gc-submit-wrap {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.gc-header {
		padding-top: 34px !important;
	}

	.gc-header h2 {
		font-size: 1.55rem !important;
	}

	.gc-grid,
	.gc-grid-compact,
	.gc-toggle-row,
	.gc-vehicle-fields {
		grid-template-columns: 1fr !important;
	}

	.gc-person-card {
		padding: 22px !important;
	}

	.gc-person-card-head,
	.gc-nested-head {
		align-items: flex-start !important;
		flex-direction: column !important;
	}

	.gc-form button.gc-remove-vehicle {
		justify-self: start !important;
	}

	.gc-form button.gc-submit,
	.gc-form button.gc-secondary {
		width: 100% !important;
	}
}
