.form-wrapper form{gap:var(--gap);row-gap:var(--gapLarge);padding:var(--gap) var(--gapHalf);grid-template-columns:1fr 1fr;display:grid;position:relative}@media (width>=60em){.form-wrapper form{padding:var(--gapLarge) var(--gap)}}.form-wrapper form .optional{font-style:italic;font-size:var(--typeMicro);opacity:.8}.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-wrapper form .form-text-box{gap:var(--gapSml);flex-direction:column;grid-column:1/-1;display:flex}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-field label{font-size:var(--typeCard);line-height:1.3;position:relative}.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 (width>=52em){.form-field[data-col="1"]{grid-column:span 1}}.form-field[data-col="2"]{grid-column:span 2}.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{border:1px solid var(--greyMid);border-radius:var(--radiusSml);width:100%;color:var(--textColour);transition:var(--transition);background-color:#ffffff09;height:100%;padding:10px;line-height:normal;position:relative}.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(--greyMid);background-color:var(--greyLightTint)}.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(--textColour);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,.form-field select:has(option:first-of-type:checked){border:1px solid var(--greyMid);border-radius:var(--radiusSml);width:100%;color:var(--textColour);transition:var(--transition);background-color:#ffffff09;height:100%;padding:10px;line-height:normal;position:relative}.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)}.form-field:has(input[type=text]:focus) label:after,.form-field:has(input[type=number]:focus) label:after,.form-field:has(input[type=tel]:focus) label:after,.form-field:has(input[type=email]:focus) label:after,.form-field:has(input[type=date]:focus) label:after,.form-field:has(textarea:focus) label:after,.form-field:has(select:focus) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--greyMid);border-radius:60rem;width:5px;height:5px}.form-field:has(input[type=text]:not(:focus):not(:placeholder-shown):valid) label:after,.form-field:has(input[type=number]:not(:focus):not(:placeholder-shown):valid) label:after,.form-field:has(input[type=tel]:not(:focus):not(:placeholder-shown):valid) label:after,.form-field:has(input[type=email]:not(:focus):not(:placeholder-shown):valid) label:after,.form-field:has(input[type=date]:not(:focus):not(:placeholder-shown):valid) label:after,.form-field:has(textarea:not(:focus):not(:placeholder-shown):valid) label:after{content:"";opacity:1;transition:var(--transition);background-color:var(--green);border-radius:60rem;width:5px;height:5px}.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:"";opacity:1;transition:var(--transition);background-color:var(--red);border-radius:60rem;width:5px;height:5px}.form-field input:user-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red)}.form-field select:user-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red)}.form-field textarea:user-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red)}.is-invalid{border-color:var(--red);box-shadow:0 0 5px var(--red)}.submit-wrapper{margin:var(--gapHalf) 0 var(--gap) 0;align-items:center}.submit-button{background-color:var(--red);color:var(--light);transition:var(--transition);border-radius:60rem;justify-content:center;align-items:center;padding:.75rem 2.25rem;position:relative;overflow:hidden}.submit-button .button-text{font-size:var(--typeBase);z-index:1;line-height:normal}.submit-button:after{content:"";transform-origin:100%;background-color:var(--redDark);width:120%;height:120%;transition:transform .25s ease-in-out;position:absolute;transform:scaleX(0)}.submit-button:hover:after{transform-origin:0;transform:scaleX(1)}.submit-button:disabled{opacity:.5;background-color:var(--textColour)}.submit-button:disabled:hover{cursor:not-allowed}.range-slide{appearance:none;background:var(--greyMid);width:100%;height:.5rem;margin:var(--gapHalf) 0;border-radius:60rem;outline:none}.range-slide::-webkit-slider-thumb{appearance:none;background:var(--red);width:2rem;height:2rem;transition:var(--transition);cursor:pointer;border:none;border-radius:60rem}.range-slide::-webkit-slider-thumb:hover{background:var(--redDark)}.range-slide::-moz-range-thumb{appearance:none;background:var(--red);width:2rem;height:2rem;transition:var(--transition);cursor:pointer;border:none;border-radius:0}.range-slide::-moz-range-thumb:hover{background:var(--redDark)}input[type=range].range-slide:focus{outline:none}input[type=range].range-slide:focus::-webkit-slider-thumb{outline-offset:.15rem;outline:1px solid var(--blue)}input[type=range].range-slide:focus::-moz-range-thumb{outline-offset:.15rem;outline:1px solid var(--blue)}html[theme-mode=dark] select option,html[theme-override=dark] select option{color:#fff;background:#434343}
