form{
	display:grid;
	width:100%;
	justify-content:left;align-content:left;
	justify-items:left;align-items:left;
	}

@media only screen and (max-width:480px){

	form#contact_form{
		grid-template-columns:1fr;
		grid-template-rows:repeat(7,auto);
		grid-template-areas:
			'form_grid_name_label'
			'form_grid_name'
			'form_grid_email_label'
			'form_grid_email'
			'form_grid_message_label'
			'form_grid_message'
			'form_grid_send_button'
			;}

	form#join_form{
		grid-template-columns:1fr;
		grid-template-rows:repeat(7,auto);
		grid-template-areas:
			'form_grid_name_label'
			'form_grid_name'
			'form_grid_email_label'
			'form_grid_email'
			'form_grid_voicepart_label'
			'form_grid_voicepart'
			'form_grid_solos_label'
			'form_grid_solos'
			'form_grid_send_button'
			;}

	form{grid-gap:0px;}
	div.form_textinput,div.form_radioinput{margin-bottom:0.5em;} /* On mobile, gaps aren't in the grid -- they're applied only to inputs. */

	}

@media only screen and (min-width:481px){

	form#contact_form{
		grid-template-columns:140px 1fr;
		grid-template-rows:repeat(4,auto);
		grid-template-areas:
			'form_grid_name_label form_grid_name'
			'form_grid_email_label form_grid_email'
			'form_grid_message_label form_grid_message'
			'. form_grid_send_button'
			;}

	form#join_form{
		grid-template-columns:140px 1fr;
		grid-template-rows:repeat(4,auto);
		grid-template-areas:
			'form_grid_name_label form_grid_name'
			'form_grid_email_label form_grid_email'
			'form_grid_voicepart_label form_grid_voicepart'
			'form_grid_solos_label form_grid_solos'
			'. form_grid_send_button'
			;}

	form{grid-gap:0.5em 0px;} /* Row-gap first, then column-gap */

	}

div.form_label{width:100%;font-style:italic;}

div.form_textinput{width:100%;}
@media only screen and (min-width:481px){div.form_textinput{max-width:320px;}}
div.form_radioinput{width:100%;}
div.form_radioinput>label{margin-right:9pt;}

/* Specific grid areas */
div#form_grid_name_label{grid-area:form_grid_name_label;}
div#form_grid_name{grid-area:form_grid_name;}
div#form_grid_email_label{grid-area:form_grid_email_label;}
div#form_grid_email{grid-area:form_grid_email;}
div#form_grid_message_label{grid-area:form_grid_message_label;}
div#form_grid_message{grid-area:form_grid_message;}
div#form_grid_voicepart_label{grid-area:form_grid_voicepart_label;}
div#form_grid_voicepart{grid-area:form_grid_voicepart;}
div#form_grid_solos_label{grid-area:form_grid_solos_label;}
div#form_grid_solos{grid-area:form_grid_solos;}
div#form_grid_send_button{grid-area:form_grid_send_button;display:inline-block;margin:0px;border:0px none;padding:0px;}

div.form_textinput>input{width:100%;margin:0px;border:1px #8C7E6F solid;padding:2px;color:#000000;background-color:#FFFFFB;}
div.form_textinput>textarea{
	width:100%;height:180px;
	margin:0px;border:1px #8C7E6F solid;padding:2px;
	color:#000000;background-color:#FFFFFB;
	resize:none;
	}
div#form_grid_send_button>input{
	margin:0px;border:1px #8C7E6F solid;padding:2px 6px 2px 5px;
	font-family:'TeX_Gyre_Pagella-regular';font-style:italic;font-size:0.87em;
	color:#221D18;background-color:#F6E3C7;
	}
div#form_grid_send_button>input:hover{background-color:#F9EEDE;}
div#form_grid_send_button>input:active{background-color:#F6E3C7;}

p.message_received{font-style:italic;color:#4666C1;}
p.message_received a,p.message_received a:visited{color:#354B88;}
p.message_received a:hover{color:#172B64;}
p.message_received a:active{color:#354B88;}