/* Plan Your Event – region tabs + enquiry form (includes/plan-your-event.php)
   The section also has the theme's .contact-form class, so fields, the submit
   button, date picker and guest spinner look the same as on the Contact page.
   This file only adds what that page doesn't have. */

.contact-form.plan-your-event {
	padding: 140px 0 100px 0;
}

/* Intro */
.plan-your-event .pye-intro {
	max-width: 760px;
	margin: 0 auto 50px auto;
}
.plan-your-event .pye-intro h5 {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #e1decc;
	margin: 0 0 20px 0;
}
.plan-your-event .pye-intro h2 {
	font-family: "averia_serif_libreLtIt";
	font-weight: normal;
	font-size: 44px;
	line-height: 1.15;
	color: #c4b7a3;
	margin: 0 0 30px 0;
}
.plan-your-event .pye-text p {
	font-size: 15px;
	line-height: 1.7;
	margin: 0 0 15px 0;
}

/* Region tabs – same feel as the events filter */
.plan-your-event .pye-forms {
	max-width: 900px;
	margin: 0 auto;
}
.plan-your-event .pye-tabs {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 15px 50px;
	padding: 10px 0 30px 0;
}
.plan-your-event .pye-tab {
	position: relative;
	background: none;
	border: 0;
	padding: 4px 0;
	cursor: pointer;
	font-family: "averia_serif_libreLtIt";
	font-size: 22px;
	color: rgba(196, 183, 163, 0.6);
	transition: color 0.3s ease;
}
.plan-your-event .pye-tab:after {
	content: "";
	display: block;
	height: 1px;
	background: #c4b7a3;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	transform: scaleX(0);
	transition: transform 0.3s ease;
}
.plan-your-event .pye-tab:hover,
.plan-your-event .pye-tab:focus-visible,
.plan-your-event .pye-tab.is-active {
	color: #c4b7a3;
}
.plan-your-event .pye-tab:hover:after,
.plan-your-event .pye-tab.is-active:after {
	transform: scaleX(1);
}
.plan-your-event .pye-tab:focus-visible {
	outline: 1px solid #c4b7a3;
	outline-offset: 6px;
}

.plan-your-event .pye-region-note {
	font-size: 14px;
	margin: 0;
}
.plan-your-event .pye-region-note strong {
	font-weight: 500;
	color: #e1decc;
}
.plan-your-event .pye-forms:not(.pye-ready) .pye-region-note {
	display: none;
}

/* The tabs set the region, so hide its dropdown once they're active */
.plan-your-event .pye-region-field {
	width: 100%;
	padding: 10px;
}
.plan-your-event .pye-ready .pye-region-field {
	display: none;
}

/* Restaurant dropdowns – one per region, only the active region's shows */
.plan-your-event .pye-store-field + .pye-store-field {
	margin-top: 10px;
}
.plan-your-event .pye-ready .pye-store-field {
	display: none;
}
.plan-your-event .pye-ready .pye-store-field.is-active {
	display: block;
	margin-top: 0;
}

/* Fields the Contact page doesn't use */
.plan-your-event input[type="tel"],
.plan-your-event input[type="number"] {
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 300 !important;
	border: solid 1px #c4b7a3;
	background-color: transparent;
	padding: 15px 10px;
	border-radius: 100px;
	width: 100%;
	text-align: center;
	color: #fff;
}
.plan-your-event input[type="tel"]::placeholder,
.plan-your-event input[type="number"]::placeholder {
	color: #c4b7a3;
}
.plan-your-event input[type="tel"]:focus,
.plan-your-event input[type="number"]:focus {
	border-color: #fff;
	outline: none;
}

/* Dropdowns: pill shape with a beige arrow, text centred like the other fields */
.plan-your-event select {
	font-family: "Montserrat", sans-serif;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-left: 40px !important;
	padding-right: 40px !important;
	text-align-last: center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23c4b7a3' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 22px center;
}
.plan-your-event select:focus {
	outline: none;
}
/* Nothing chosen yet – show it like the other fields' placeholders */
.plan-your-event select:has(option[value=""]:checked) {
	color: #c4b7a3;
}
.plan-your-event select option {
	color: #000;
	background: #fff;
	text-align: left;
}

.plan-your-event input:focus-visible,
.plan-your-event textarea:focus-visible,
.plan-your-event select:focus-visible {
	box-shadow: 0 0 0 1px #fff;
}

/* Validation */
.plan-your-event .wpcf7-not-valid-tip {
	font-size: 13px;
	color: #f0a58a;
	margin-top: 6px;
}
.plan-your-event .wpcf7-not-valid {
	border-color: #f0a58a !important;
}
.plan-your-event .wpcf7-response-output {
	color: #c4b7a3;
	margin: 20px 10px 0 10px !important;
}
.plan-your-event .wpcf7-spinner {
	display: block;
	margin: 15px auto 0 auto;
}
.plan-your-event .pye-submit {
	width: 100%;
	padding: 20px 10px 0 10px;
}

@media only screen and (max-width: 800px) {
	.contact-form.plan-your-event {
		padding: 110px 0 70px 0;
	}
	.plan-your-event .pye-intro h2 {
		font-size: 32px;
	}
	.plan-your-event .pye-tabs {
		gap: 10px 30px;
	}
	.plan-your-event .pye-tab {
		font-size: 19px;
	}
	.plan-your-event .col50 {
		width: 100%;
	}
}
