/* forms */

form
{
	position:relative;
	/* margin:20px; */
}
form .section:not(:empty)
{
	/* margin-bottom:20px; */
}
form .section > .header:empty,
form .section > .guide:empty
{
	display:none;
}
form .section > .guide
{
	margin:16px 0;
}
form .section > label,
form .section > div.label
{
	position:relative;
	display:block;
	margin:0 0 16px 0;
	color:var(--dark);
}
form .section > label.two-column
{
	width:calc(50% - 8px);
	display: inline-block !important;
}
form .section > label.two-column.right
{
	float:right;
}
form .row
{
	margin:0;
}
.caption.error
{
	font-size:13px;
	line-height:19px;
	color:#e4002d;
	/* text-align:right; */
}
.guide
{
	/* margin-bottom:12px; */
}
input[type=text],
input[type=button],
input[type=email],
input[type=number],
input[type=password],
/* input[type=file], */
textarea,
button,
select,
label.input
/* .shopify-buy__option-select-wrapper */
{
	position:relative;
	display:block;
	
	width:100%;
	
	border:1px solid var(--dark);
	padding:10px;
	height:42px;
	
	background-color:transparent;
	

	-webkit-appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
	
	font-family:Meister,Montserrat,sans-serif;
	font-size:1rem;
	
	color:var(--dark);
	
	outline:none;
}
input::placeholder,
textarea::placeholder
{
	color:inherit;
	opacity:.5;
}
input:disabled
{
	opacity:.5;
}
textarea
{
	min-height:160px;
	resize: none;
}
textarea.auto-size
{
	height:auto;
	min-height:0;	
}
input[type="file"].inputfile {

    margin: 0;
    padding: 0;
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
em.guide
{
	padding-top:2px;
	display:inline-block;
	opacity: .5;
}
.error + em.guide
{
	display:none;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
textarea:focus,
select:focus,
label.input:hover
{
	border-color:var(--accent);
}
input[type=text].error,
label.input.error,
textarea.error
{
	color:#e4002d;
	background-color:rgba(235,94,89,.1);
	border-color:#e4002d;
}
div.check
{
	/* border:1px solid var(--page-text); */
	font-size:1rem;
	line-height:1.333rem;
	
	padding:2px 6px;
	margin:6px 0 2px 0;
}
div.check.group
{
	display:flex;
	flex-wrap:wrap;
	height:auto;
	line-height:30px;
	border:1px solid var(--dark);
}
div.check.group
div.check.group.focus
{
	border-color:var(--accent);
}
div.check.group .row
{
	flex-basis:50%;
}
div.check label,
div.slider label
{
	display:block;
	position:relative;
}
div.check input
{
	opacity:0;
	margin:0 11px 0 0;
	padding:0;
	vertical-align:middle;
}
div.check .checkbox
{
	position:absolute;
	left:2px;
	top:4px;
	background-color:transparent;
	border:none;
}
div.check.group .checkbox
{
	top:9px;
}
svg.icon.expand,
svg.icon.locked
{
	position:absolute;
	right:5px;
	top:30px;
	fill:var(--dark);
	background-color:transparent;
	border:none;

	pointer-events:none;
}
svg.icon.locked
{
	right:12px;
	top:30px;
}
svg.icon.checkbox path
{
	fill:var(--dark);
}
.error svg.icon.checkbox path
{
	fill:#e4002d;
}
svg.icon.checkbox rect,
svg.icon.checkbox path.check
{
	fill:transparent;
}
/* .head svg.icon.checkbox:not(:hover) path:not(.check), */
svg.icon.checkmark path
{
	fill:var(--dark);
}
svg.icon.checkbox.checked rect,
svg.icon.checkbox.checked path:not(.check),
svg.icon.checkbox:hover path:not(.check)
/* tr:hover svg.icon.checkbox path:not(.check) */
{
	fill:var(--dark);
}
svg.icon.checkbox.checked path.check
{
	fill:white;
}
svg.icon.checkbox.focus path:not(.check)
{
	fill:#333;
}
form a.submit
{
	display:inline-block;
	text-decoration:none;
}
