/*
	#	KFD Home : Contact
	-------------------------------------------------------------------------------*/
	.home-contact																		{ padding:100px 0; position:relative; background-color:var(--cream-alt); }

	.home-contact .core																	{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; }

	@media (max-width: 899px) {
		.home-contact .core																{ grid-template-columns:1fr; gap:40px; }
	}



		/*	Aside (contact info)
		---------------------------------------------------------------------------*/
		.home-contact aside																{ }

		.home-contact aside p															{ margin-top:24px; line-height:1.8; font-size:17px; color:var(--taupe); }



			/*	Address
			-----------------------------------------------------------------------*/
			.home-contact aside address													{ margin-top:32px; font-style:normal; }

			.home-contact aside address dl												{ }

			.home-contact aside address dt												{ margin-top:20px; text-transform:uppercase; letter-spacing:1px; line-height:1.4; font-size:13px; font-weight:500; color:var(--brown); }
			.home-contact aside address dt:first-child									{ margin-top:0; }

			.home-contact aside address dd												{ margin-top:4px; line-height:1.6; font-size:17px; color:var(--brown-deep); }



		/*	Form Wrap
		---------------------------------------------------------------------------*/
		.home-contact .form-wrap														{ padding:48px; background-color:var(--cream); box-shadow:0 12px 45px rgba(0,0,0,.05); }

		.home-contact .form-wrap h3														{ margin-bottom:32px; line-height:1.1; font-family:var(--font-display); font-size:32px; color:var(--brown-deep); }



			/*	Form
			-----------------------------------------------------------------------*/
			.home-contact form															{ }

			.home-contact form .field													{ margin-bottom:20px; }

			.home-contact form label													{ display:block; margin-bottom:6px; text-transform:uppercase; letter-spacing:1px; line-height:1.4; font-size:12px; font-weight:500; color:var(--taupe); }

			.home-contact form input,
			.home-contact form textarea													{ width:100%; padding:14px 16px; background-color:var(--white); border:1px solid var(--cream-alt); line-height:1.4; font-family:var(--font-body); font-size:16px; color:var(--brown-deep); transition:border-color .3s ease; }

			.home-contact form input:focus,
			.home-contact form textarea:focus											{ border-color:var(--brown); }


			/*	Custom Select
			-------------------------------------------------------------------*/
			.home-contact form .custom-select											{ width:100%; position:relative; cursor:pointer; }

			.home-contact form .custom-select .select-display							{ width:100%; padding:14px 40px 14px 16px; background-color:var(--white); border:1px solid var(--cream-alt); line-height:1.4; font-family:var(--font-body); font-size:16px; color:var(--brown-deep); transition:border-color .3s ease; user-select:none; }

			.home-contact form .custom-select .select-display.placeholder				{ color:var(--taupe); }

			.home-contact form .custom-select.open .select-display						{ border-color:var(--brown); }

			.home-contact form .custom-select .select-arrow								{ width:40px; height:100%; top:0; right:0; position:absolute; display:flex; align-items:center; justify-content:center; pointer-events:none; }

			.home-contact form .custom-select .select-arrow::after						{ display:block; content:''; width:8px; height:8px; border-right:2px solid var(--taupe); border-bottom:2px solid var(--taupe); transform:rotate(45deg) translateY(-2px); transition:transform .25s ease; }

			.home-contact form .custom-select.open .select-arrow::after					{ transform:rotate(-135deg) translateY(-2px); }

			.home-contact form .custom-select .select-options							{ width:100%; max-height:0; top:100%; left:0; z-index:50; position:absolute; background-color:var(--white); border:1px solid var(--cream-alt); border-top:none; overflow:hidden; opacity:0; transition:max-height .25s ease, opacity .2s ease; }

			.home-contact form .custom-select.open .select-options						{ max-height:300px; opacity:1; box-shadow:0 8px 20px rgba(0,0,0,.08); }

			.home-contact form .custom-select .select-option							{ padding:12px 16px; line-height:1.4; font-family:var(--font-body); font-size:16px; color:var(--brown-deep); cursor:pointer; transition:background .15s ease, color .15s ease; }

			.home-contact form .custom-select .select-option:hover						{ background-color:var(--cream); }

			.home-contact form .custom-select .select-option.selected					{ background-color:var(--brown); color:var(--white); }

			.home-contact form select													{ display:none !important; opacity:0; position:absolute; pointer-events:none; }

			.home-contact form textarea													{ min-height:120px; resize:vertical; }

			.home-contact form .row														{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }

			@media (max-width: 599px) {
				.home-contact form .row													{ grid-template-columns:1fr; }
			}

			.home-contact form button													{ margin-top:8px; width:100%; padding:18px 35px; background:linear-gradient(135deg, var(--brown) 0%, var(--brown-dark) 100%); border:none; font-size:20px; letter-spacing:2.5px; position:relative; overflow:hidden; transition:transform .2s ease, box-shadow .3s ease; }

			.home-contact form button:hover												{ transform:translateY(-2px); box-shadow:0 8px 25px rgba(177,136,87,.35); background:linear-gradient(135deg, var(--brown-dark) 0%, var(--brown) 100%); }

			.home-contact form button:active											{ transform:translateY(0); box-shadow:0 4px 12px rgba(177,136,87,.25); }



			/*	Success Message
			-----------------------------------------------------------------------*/
			.home-contact .form-success													{ display:none; padding:24px; background-color:rgba(177,136,87,.1); border:1px solid var(--brown); text-align:center; line-height:1.6; font-size:17px; color:var(--brown-deep); }
