form select option{background:var(--greyDark);color:#fff}.form-wrapper form{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);padding:var(--gap) var(--gapHalf)}@media(min-width:60em){.form-wrapper form{padding:var(--gapDouble) var(--gap)}}.form-wrapper form .optional{font-style:italic;font-size:var(--typeMicro);opacity:.75}.form-wrapper form h2,.form-wrapper form h3,.form-wrapper form h4,.form-wrapper form h5,.form-wrapper form h6,.form-wrapper form p{grid-column:1/-1}.form-wrapper form hr{grid-column:1/-1;margin:var(--gap) 0}.form-wrapper form .form-text-box{grid-column:1/-1;display:flex;flex-direction:column;gap:var(--gapSml)}.form-field{display:flex;flex-direction:column;gap:var(--gapSml)}.form-field label{font-size:var(--typeBase);position:relative;line-height:1.2}.form-field[data-col="1"]{grid-column:1/-1}@media(min-width:52em){.form-field[data-col="1"]{grid-column:span 1}}.form-field[data-col="2"]{grid-column:1/-1}.form-wrapper input[type=text],.form-wrapper input[type=number],.form-wrapper input[type=tel],.form-wrapper input[type=email],.form-wrapper input[type=date],.form-wrapper textarea{position:relative;width:100%;padding:12px;border:1px solid var(--lightTint);background-color:var(--darkTint);color:var(--light);transition:var(--transition);line-height:normal;height:100%}.form-wrapper input[type=text]:focus,.form-wrapper input[type=text] :active,.form-wrapper input[type=text] :focus-visible,.form-wrapper input[type=text] :focus-within,.form-wrapper input[type=number]:focus,.form-wrapper input[type=number] :active,.form-wrapper input[type=number] :focus-visible,.form-wrapper input[type=number] :focus-within,.form-wrapper input[type=tel]:focus,.form-wrapper input[type=tel] :active,.form-wrapper input[type=tel] :focus-visible,.form-wrapper input[type=tel] :focus-within,.form-wrapper input[type=email]:focus,.form-wrapper input[type=email] :active,.form-wrapper input[type=email] :focus-visible,.form-wrapper input[type=email] :focus-within,.form-wrapper input[type=date]:focus,.form-wrapper input[type=date] :active,.form-wrapper input[type=date] :focus-visible,.form-wrapper input[type=date] :focus-within,.form-wrapper textarea:focus,.form-wrapper textarea :active,.form-wrapper textarea :focus-visible,.form-wrapper textarea :focus-within{border-color:var(--copper);box-shadow:0 0 5px var(--copper20)}.form-wrapper input[type=text]::placeholder,.form-wrapper input[type=number]::placeholder,.form-wrapper input[type=tel]::placeholder,.form-wrapper input[type=email]::placeholder,.form-wrapper input[type=date]::placeholder,.form-wrapper textarea::placeholder{color:var(--lightAlt);opacity:.45;font-style:italic}.form-wrapper input[type=text]:not(:focus):not(:placeholder-shown):valid,.form-wrapper input[type=number]:not(:focus):not(:placeholder-shown):valid,.form-wrapper input[type=tel]:not(:focus):not(:placeholder-shown):valid,.form-wrapper input[type=email]:not(:focus):not(:placeholder-shown):valid,.form-wrapper input[type=date]:not(:focus):not(:placeholder-shown):valid,.form-wrapper textarea:not(:focus):not(:placeholder-shown):valid{border-color:var(--green);background-color:var(--greenTint)}.form-field select{position:relative;width:100%;padding:12px;border:1px solid var(--lightTint);background-color:var(--darkTint);color:var(--light);transition:var(--transition);line-height:normal;height:100%}.form-field select:has(option:first-of-type:checked){position:relative;width:100%;padding:12px;border:1px solid var(--lightTint);background-color:var(--darkTint);color:var(--light);transition:var(--transition);line-height:normal;height:100%}.form-field select:not(:has(option:first-of-type:checked)){border-color:var(--green);background-color:var(--greenTint)}input[type=text]:not(:focus):not(:placeholder-shown):invalid,input[type=number]:not(:focus):not(:placeholder-shown):invalid,input[type=tel]:not(:focus):not(:placeholder-shown):invalid,input[type=email]:not(:focus):not(:placeholder-shown):invalid{border-color:var(--red);background-color:var(--redTint)}div.form-field input:user-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red);background-color:var(--redTint)}div.form-field select[required]:user-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red);background-color:var(--redTint)}div.form-field textarea:user-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red);background-color:var(--redTint)}.form-field:has(input:user-invalid) label:after,.form-field:has(select:user-invalid) label:after,.form-field:has(textarea:user-invalid) label:after{content:"(Required)";font-style:italic;font-size:var(--typeMicro);opacity:.75;align-self:self-end}.form-field:has(input[type=text]:not(:focus):not(:placeholder-shown):invalid) label:after,.form-field:has(input[type=number]:not(:focus):not(:placeholder-shown):invalid) label:after,.form-field:has(input[type=tel]:not(:focus):not(:placeholder-shown):invalid) label:after,.form-field:has(input[type=email]:not(:focus):not(:placeholder-shown):invalid) label:after,.form-field:has(textarea:not(:focus):not(:placeholder-shown):invalid) label:after{content:"(Required)";font-style:italic;font-size:var(--typeMicro);opacity:.75}.submit-wrapper{align-items:center;margin:var(--gap) 0}.submit-button{padding:.8rem 1.5rem;border:1px solid var(--dark);border-radius:4px 4px 16px;transition:background-color 1s ease;corner-shape:round round bevel round;-webkit-coner-shape:round round bevel round;color:var(--greyDark);background-color:var(--sand);border-color:var(--sand);box-shadow:0 0 0 0 var(--sand)}.submit-button-text{line-height:1;text-transform:uppercase;font-family:var(--bold);font-weight:400;font-size:var(--typeBase)}.submit-button:hover{background-color:var(--light);animation:pulseHover 1.5s ease-in-out infinite backwards}
