/*
Theme Name: Indian Ocean Getaways
Theme URI: 
Author: Freelancelot
Author URI: https://freelancelot.co.za
Description: The theme for Indian Ocean Getaways
Template: travel-monster
Version: 1.0.0
*/

.parsley-errors-list {
	list-style-type: none;
}

.parsley-required {
	color: #FF0000;
}

.site-header .btn-book .btn-primary {
	padding: 10px;
}

.form-row {
	display: flex;
	gap: 15px;
}

.form-row .form-col {
	flex: 1;
}

select {
	border: 1px solid #e0e0e0;
	border-radius: 0;
	padding: 18px;
	outline: 0;
	font-size: 1em;
	width: 100%;
}

input[type=date] {
	padding: 14px;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=date]:focus,
select:focus,
textarea:focus,
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=tel]:focus-visible,
input[type=number]:focus-visible,
input[type=password]:focus-visible,
input[type=date]:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: none !important;
	outline-color: transparent !important;
	box-shadow: none !important;
	-webkit-focus-ring-color: transparent !important;
	border-color: #28b5a4;
}

.site-footer .footer-wrap-main {
	padding: 60px 0;
}

.site-footer .footer-m {
	background: #26786e;
}

/* 3-column grid for the lower section */
.footer-m-wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px;
	/* matches the gap above */
}

/* Place the widget in the middle column, left-aligned */
.footer-m .footer-middle {
	grid-column: 2;
	justify-self: start;
	text-align: left;
}

/* Neutralize WP's .aligncenter inside this area */
.footer-m .footer-middle .aligncenter {
	margin-left: 0;
	margin-right: auto;
}

@media (max-width: 768px) {
	.footer-m-wrap {
		grid-template-columns: 1fr;
	}

	.footer-m .footer-middle {
		grid-column: 1;
		justify-self: center;
		/* center it on small screens */
		text-align: center;
	}
}

.site-footer .footer-b .footer-images {
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
}

.site-footer .footer-b .footer-images .footer-images-widget {
	margin-right: 20px;
}

/*
.elementor-page .site-content h2,
h2 {
	font-size: 35px !important;
	line-height: 1.2em;
}
*/

.nav-tab-wrapper .tab-inner-wrapper {
	gap: 27px;
}

.wte_enquiry_contact_form-wrap {
	background-color: rgba(var(--wpte-primary-color-rgb, var(--primary-color-rgb)), 0.04);
	border-radius: 8px;
	padding: 32px 24px;
}

.secondary-navigation ul>li.current-menu-ancestor>a,
.secondary-navigation ul>li.current-menu-item>a,
.secondary-navigation ul>li.current_page_ancestor>a,
.secondary-navigation ul>li.current_page_item>a,
.secondary-navigation ul>li.current_page_parent>a {
	color: #28b5a4;
}

/* Remove the right border from the search field that comes immediately before the submit button */
.wpte-trip-sfilter-wrapper .wpte-trip__search-fields.horizontal .wpte-trip__adv-field:has(+ .wpte-trip__submit-field) {
	border-right: none;
}

/* Seasonal Rates Table Styling */
.seasonal-rates-table {
	margin: 20px 0;
}

.seasonal-rates-table table {
	width: 100%;
	border-collapse: collapse;
}

.seasonal-rates-table thead {
	border: 1px solid #ddd;
}

.seasonal-rates-table th,
.seasonal-rates-table td {
	padding: 8px 12px;
	text-align: left;
	border: 1px solid #ddd;
}

.seasonal-rates-table th {
	background-color: #f1f1f1;
	font-weight: bold;
	border: none;
}

.seasonal-rates-table tr:nth-child(even) {
	background-color: #f9f9f9;
}

/* Hide any CSS that gets output as plain text in content areas */
.seasonal-rates-content .seasonal-rates-table~* {
	display: none;
}

.grecaptcha-badge {
	visibility: hidden;
}

.recaptcha-disclaimer {
	font-weight: 300;
}