.form-wrapper form{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);padding:var(--gapHalf)}@media(min-width:60em){.form-wrapper form{gap:var(--gapDouble);padding:var(--gap)}}.form-wrapper form .optional{font-style:italic;font-size:var(--typeMicro);opacity:.9}.form-wrapper form hr,.form-wrapper form h2,.form-wrapper form h3,.form-wrapper form h4,.form-wrapper form h5,.form-wrapper form h6{grid-column:1/-1}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:1rem;position:relative;line-height:1.3}.form-field label:after{content:"";opacity:0;transition:var(--transition);display:flex;position:absolute;inset:calc(50% - 2px) auto 0 -10px}.form-field[data-col="1"]{grid-column:span 2}@media(min-width:52em){.form-field[data-col="1"]{grid-column:span 1}}.form-field[data-col="2"]{grid-column:span 2}input[type=text],input[type=number],input[type=tel],input[type=email],input[type=date],select,textarea{position:relative;width:100%;padding:1rem;border:1px solid var(--secondaryGreyTint);border-radius:2px;background-color:var(--darkGreyTint);color:var(--light);transition:var(--transition);background-repeat:no-repeat;background-position:calc(100% - 1rem) 1rem;line-height:normal}input[type=text]:focus,input[type=text] :active,input[type=text] :focus-visible,input[type=text] :focus-within,input[type=number]:focus,input[type=number] :active,input[type=number] :focus-visible,input[type=number] :focus-within,input[type=tel]:focus,input[type=tel] :active,input[type=tel] :focus-visible,input[type=tel] :focus-within,input[type=email]:focus,input[type=email] :active,input[type=email] :focus-visible,input[type=email] :focus-within,input[type=date]:focus,input[type=date] :active,input[type=date] :focus-visible,input[type=date] :focus-within,select:focus,select :active,select :focus-visible,select :focus-within,textarea:focus,textarea :active,textarea :focus-visible,textarea :focus-within{border-color:var(--light);background-color:var(--midGrey)}input[type=text]::placeholder,input[type=number]::placeholder,input[type=tel]::placeholder,input[type=email]::placeholder,input[type=date]::placeholder,select::placeholder,textarea::placeholder{color:var(--secondaryGreyTint);font-style:italic}input[type=text]:not(:focus):not(:placeholder-shown):valid,input[type=number]:not(:focus):not(:placeholder-shown):valid,input[type=tel]:not(:focus):not(:placeholder-shown):valid,input[type=email]:not(:focus):not(:placeholder-shown):valid,input[type=date]:not(:focus):not(:placeholder-shown):valid,select:not(:focus):not(:placeholder-shown):valid,textarea:not(:focus):not(:placeholder-shown):valid{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)}.form-field:has(input[type=text]:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=number]:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=tel]:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=email]:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=date]:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(textarea:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(select:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--light);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=text]:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=number]:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=tel]:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=email]:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=date]:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(textarea:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(select:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=text]:not(:focus):not(:placeholder-shown):invalid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--red);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=number]:not(:focus):not(:placeholder-shown):invalid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--red);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=tel]:not(:focus):not(:placeholder-shown):invalid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--red);height:5px;width:5px;border-radius:60rem}.form-field:has(input[type=email]:not(:focus):not(:placeholder-shown):invalid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--red);height:5px;width:5px;border-radius:60rem}.form-field:has(textarea:not(:focus):not(:placeholder-shown):invalid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--red);height:5px;width:5px;border-radius:60rem}.submit-wrapper{align-items:center}.submit-button{position:relative;justify-content:center;align-items:center;padding:.5rem 2rem;background-color:var(--red);color:var(--light);border-radius:60rem;overflow:hidden;transition:var(--transition)}.submit-button .button-text{line-height:normal;z-index:1}.submit-button:after{content:"";position:absolute;width:120%;height:120%;transform-origin:right;background-color:var(--redHover);transform:scaleX(0);transition:transform .25s ease-in-out}.submit-button:hover:after{transform-origin:left;transform:scaleX(1)}
