:root {
	--primarycolor: #622314;
	--secondarycolor: #f6ddcc;
}

.hiddenradio [type=radio] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.form-label {
	font-size: 1.25em;
	padding-top: 2em;
	color: var(--primarycolor);
}

label.fw-bold {
	color: var(--primarycolor);
}

/* Customize the label (the container) */
.radio-wrapper label {
	position: relative;
	margin-left: 2.25em;
}

/* Hide the browser's default radio button */
.radio-wrapper input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom radio button */
.radio-wrapper .checkmark {
	position: absolute;
	top: 0;
	left: 1em;
	margin-left: -2.5em;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: 50%;
	border: 2px var(--primarycolor) solid;
}

/* On mouse-over, add a grey background color */
.radio-wrapper:hover input~.checkmark {
	background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.radio-wrapper input:checked~.checkmark {
	background-color: var(--primarycolor);
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.radio-wrapper .checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the indicator (dot/circle) when checked */
.radio-wrapper input:checked~.checkmark:after {
	display: block;
}

/* Style the indicator (dot/circle) */
.radio-wrapper .checkmark:after {
	// top: 6px;
	// left: 7px;
	// width: 8px;
	// height: 8px;
	border-radius: 50%;
	background: white;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 7px var(--primarycolor) solid;
}

/* IMAGE STYLES */
.hiddenradio [type=radio]+img {
	cursor: pointer;
	font-size: 50px;
	padding: 10px;
}

/* CHECKED STYLES */
.hiddenradio [type=radio]:checked+img,
.hiddenradio label.selected img {
	outline: 2px solid var(--primarycolor);
	color: var(--primarycolor);
	opacity: 1.0;
}

.hiddenradio label.selected p {
	color: var(--primarycolor);
	font-weight: bold;
}

.hiddenradio [type=radio]:not(:checked)+img {
	opacity: 0.7;
}

.helpimage img {
	width: 100%;
	height: auto;
}

.checkbox-wrapper input[type="checkbox"] {
	display: none;
	visibility: hidden;
}

.checkbox-wrapper label {
	position: relative;
	padding-left: 2em;
	padding-right: 1em;
	line-height: 2;
	cursor: pointer;
	display: inline-flex;
}

.checkbox-wrapper label:before {
	box-sizing: border-box;
	content: " ";
	position: absolute;
	top: 0.3em;
	left: 0;
	display: block;
	width: 1.4em;
	height: 1.4em;
	border: 2px solid var(--primarycolor);
	border-radius: 6px;
	z-index: -1;
}

.checkbox-wrapper input[type=checkbox]:checked+label {
	padding-left: 1em;
	color: var(--primarycolor);
}

.checkbox-wrapper input[type=checkbox]:checked+label:before {
	top: 0;
	width: 100%;
	height: 100%;
	background: var(--secondarycolor);
	border-color: var(--primarycolor);
}

.checkbox-wrapper label,
.checkbox-wrapper label::before {
	transition: 0.25s all ease;
}

.upload-wrapper {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

.upload-wrapper input[type="file"] {
	flex: 1;
}

.remove-btn {
	background-color: #d9534f;
	color: white;
	border: none;
	padding: 6px 10px;
	margin-left: 10px;
	cursor: pointer;
	font-weight: bold;
	border-radius: 4px;
}