.form-uniform {
	--cnt-height: 3.2rem;
	padding: 1em;
	border-radius: 1em;
	background-color: #fff;
	position: relative;
}
.form-uniform:after,
.form-uniform:before {
	content: '';
	position: absolute;
	z-index: 10;
	opacity: 0;
	transition: opacity .3s linear;
}
.form-uniform:before {
	border-radius: 1em;
	background-color: #fff;
}
.is-sending .form-uniform:before {
	inset: 0;
	opacity: .5;
}
.is-sending .form-uniform:after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 100 100'%3E%3Cpath fill='%23cb915a' d='M 23.6 33.8 C 23.6 38.218 20.018 41.8 15.6 41.8 C 11.182 41.8 7.6 38.218 7.6 33.8 C 7.6 29.382 11.182 25.8 15.6 25.8 C 20.018 25.8 23.6 29.382 23.6 33.8 Z M 24 66.6 C 24 71.018 20.419 74.6 16 74.6 C 11.582 74.6 8 71.018 8 66.6 C 8 62.182 11.582 58.6 16 58.6 C 20.419 58.6 24 62.182 24 66.6 Z M 49.8 87 C 49.8 91.418 46.218 95 41.8 95 C 37.382 95 33.8 91.418 33.8 87 C 33.8 82.582 37.382 79 41.8 79 C 46.218 79 49.8 82.582 49.8 87 Z M 81.8 79.5 C 81.8 83.918 78.218 87.5 73.8 87.5 C 69.382 87.5 65.8 83.918 65.8 79.5 C 65.8 75.081 69.382 71.5 73.8 71.5 C 78.218 71.5 81.8 75.081 81.8 79.5 Z M 96.2 49.6 C 96.2 54.018 92.618 57.6 88.2 57.6 C 83.782 57.6 80.2 54.018 80.2 49.6 C 80.2 45.182 83.782 41.6 88.2 41.6 C 92.618 41.6 96.2 45.182 96.2 49.6 Z M 81.3 20 C 81.3 24.418 77.718 28 73.3 28 C 68.882 28 65.3 24.418 65.3 20 C 65.3 15.581 68.882 12 73.3 12 C 77.718 12 81.3 15.581 81.3 20 Z M 49.2 13 C 49.2 17.418 45.619 21 41.2 21 C 36.782 21 33.2 17.418 33.2 13 C 33.2 8.582 36.782 5 41.2 5 C 45.619 5 49.2 8.582 49.2 13 Z' /%3E%3C/svg%3E");
	top: 1ex;
	right: 1ex;
	opacity: 1;
	width: 3ex;
	height: 3ex;
	border-radius: 50%;
	transition-delay: .3s;
	animation: ajx 3s linear infinite;
}
@keyframes ajx {
	to {
		transform: rotate(1turn);
	}
}
.form-uniform .field-wrap {
	display: grid;
	gap: 1em 2em;
	grid-template: auto / repeat(auto-fill, minmax(clamp(50% - 2em, 360px, 100%), 1fr));
	align-items: start;
}
.form-uniform .field-block {
	position: relative;
}
.form-uniform .field-block:nth-of-type(2) {
	align-self: end;
}
.form-uniform .na-troux {
	display: flex;
	gap: 0 1em;
	flex-wrap: wrap;
}
.form-uniform .na-troux > * {
	flex: auto;
	flex-basis: calc((100% - 2em) / 3);
	min-width: 170px;
}
.form-uniform .na-dboux {
	display: grid;
	gap: 0 1em;
	grid-template: auto / repeat(auto-fill, minmax(clamp(50% - 1em, 170px, 100%), 1fr));
}
.form-uniform .field-holder {
	margin-bottom: 1ex;
}
.form-uniform .name-label {
	display: inline-block;
	margin-bottom: .5ex;
	font-size: calc(1em - 1px);
}
.form-uniform .is-error .name-label {
	color: #e20;
}
.form-uniform .starrequired {
	margin-left: -.5ex;
}

.form-uniform INPUT.input-text,
.form-uniform TEXTAREA.input-text,
.form-uniform INPUT[type="submit"] {
	border: 1px solid #999;
	border-radius: 1ex;
	height: var(--cnt-height);
	font-size: .875em;
	padding: 0 1ex;
	margin: 0;
	font-family: inherit;
}
.form-uniform TEXTAREA.input-text {
	height: calc(3.2rem * 4);
}
.form-uniform INPUT.input-text,
.form-uniform TEXTAREA.input-text {
	width: 100%;
}

.form-uniform INPUT[type="radio"],
.form-uniform INPUT[type="checkbox"] {
	font-size: 1.15em;
	margin: 0 .75ex 0 0;
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	width: 1em;
	height: 1em;
	display: inline-block;
	position: relative;
	cursor: pointer;
}
.form-uniform INPUT[type="radio"]::before,
.form-uniform INPUT[type="checkbox"]::before {
	position: absolute;
	inset: 0;
}

.form-uniform INPUT[type="radio"]::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 80 80'%3E%3Ccircle cx='40' cy='40' r='37' stroke='%23cb915a' stroke-width='6' fill='none'/%3E%3Ccircle cx='40' cy='40' r='19' stroke='none' fill='none'/%3E%3C/svg%3E");
}
.form-uniform INPUT[type="radio"]:checked::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 80 80'%3E%3Ccircle cx='40' cy='40' r='37' stroke='%23cb915a' stroke-width='6' fill='none'/%3E%3Ccircle cx='40' cy='40' r='19' stroke='none' fill='%23cb915a'/%3E%3C/svg%3E");
}

.form-uniform INPUT[type="checkbox"]::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Crect fill='none' stroke='%23cb915a' stroke-width='5' x='3' y='3' width='74' height='74' rx='16' ry='16' /%3E%3Cpolyline fill='none' stroke='none' stroke-width='0' points='21 42 34 56 61 28' /%3E%3C/svg%3E");
}
.form-uniform INPUT[type="checkbox"]:checked::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Crect fill='none' stroke='%23cb915a' stroke-width='5' x='3' y='3' width='74' height='74' rx='16' ry='16' /%3E%3Cpolyline fill='none' stroke='%23cb915a' stroke-width='10' points='21 42 34 56 61 28' /%3E%3C/svg%3E");
}

.form-uniform .boxlabel {
	display: inline-flex;
	align-items: center;
	font-size: .875em;
	cursor: pointer;
	margin-right: 1em;
}

.form-uniform INPUT[type="submit"] {
	border-color: #cb915a;
	background-color: #cb915a;
	background-image: radial-gradient(ellipse at 10%, #e7c394 0%, #cb915a 100%);
	cursor: pointer;
	color: #000;
	font-weight: 500;
	letter-spacing: .5px;
	padding: 0 1em;
	transition: color .2s linear;
}
.form-uniform INPUT[type="submit"]:hover {
	color: #fff;
	text-shadow: 0 0 .5px #fff;
}

.form-uniform H3 {
	font-size: 1.125em;
	margin: 0 0 1.5ex;
	font-weight: 600;
}
.form-uniform H3 SPAN {
	font-weight: normal;
	font-size: .675em;
	display: inline-block;
	min-width: max-content;
}

.file-wrapper {
	position: relative;
	display: inline-flex;
	margin-top: 2px;
	overflow: hidden;
	align-items: center;
	justify-content: center;
	width: 14ch;
	height: calc(var(--cnt-height) - 2px);
	padding: 0 1.5ex;
	border-radius: 1ex;
	background-color: #e7c394;
}
.file-wrapper LABEL {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.file-wrapper INPUT {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	font-size: 2em;
}
.file-wrapper VAR {
	font-style: normal;
}
.file-wrapper + .file-size {
	font-size: .75em;
	margin-left: 1ex;
}
.file-field-holder {
	display: flex;
	gap: 0 1ex;
	flex-wrap: wrap;
	align-items: center;
}
.file-field-holder .name-label {
	flex: 1;
	min-width: 20ch;
}
.file-field-holder BR {
	display: none;
}
.filetype {
	font-size: .75em;
}

.errortext {
	color: #e20;
}
.notetext {
	color: #0b5;
}

.obey-text {
	font-size: .675em;
}

.mess-holder {
	font-size: .75em;
	margin-top: 1em;
}
.mess-holder P {
	margin: 0;
}

@media (max-width: 767px) {
	.form-uniform {
		--cnt-height: 4.4rem;
	}
}