/* Custom styles for the booking form */
body {
	font-family: 'Poppins', sans-serif;
}

.navbar-hero {
	background: linear-gradient(135deg, #1DA1F2 0%, #47F0F8 100%);
	color: white;
	padding: 40px 0;
	text-align: center;
}

.booking-section {
	background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
	min-height: calc(100vh - 76px);
	padding: 60px 0;
}

.booking-card {
	background: white;
	border-radius: 20px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
	padding: 40px;
	margin-bottom: 40px;
}

.booking-header {
	text-align: center;
	margin-bottom: 40px;
}

.booking-header h1 {
	color: #2c3e50;
	font-weight: 700;
	margin-bottom: 15px;
}

.booking-header p {
	color: #6c757d;
	font-size: 1.1rem;
}

.form-label {
	font-weight: 600;
	color: #495057;
	margin-bottom: 8px;
}

.form-control,
.form-select {
	border: 2px solid #e9ecef;
	border-radius: 10px;
	padding: 12px 16px;
	font-size: 16px;
	transition: all 0.3s ease;
}

.form-control:focus,
.form-select:focus {
	border-color: #1DA1F2;
	box-shadow: 0 0 0 0.2rem rgba(29, 161, 242, 0.1);
}

.btn-primary {
	background: linear-gradient(45deg, #1DA1F2, #47F0F8);
	border: none;
	border-radius: 50px;
	padding: 15px 40px;
	font-weight: 600;
	font-size: 18px;
	transition: all 0.3s ease;
}

.btn-primary:hover {
	background: linear-gradient(45deg, #0d8bd9, #2ee0e8);
	transform: translateY(-2px);
	box-shadow: 0 10px 25px rgba(29, 161, 242, 0.3);
}

.alert {
	border-radius: 10px;
	padding: 15px 20px;
	margin-bottom: 30px;
}

.contact-info-card {
	background: linear-gradient(135deg, #1DA1F2, #47F0F8);
	color: white;
	border-radius: 20px;
	padding: 40px;
	text-align: center;
}

.contact-info-card h3 {
	margin-bottom: 30px;
	font-weight: 700;
}

.contact-item {
	margin-bottom: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.contact-item i {
	font-size: 1.5rem;
	margin-right: 15px;
	width: 30px;
}

.contact-item a {
	color: white;
	text-decoration: none;
	transition: opacity 0.3s ease;
}

.contact-item a:hover {
	opacity: 0.8;
}

.invalid-feedback {
	display: block;
	width: 100%;
	margin-top: 0.25rem;
	font-size: 0.875rem;
	color: #dc3545;
}

.form-control.is-invalid,
.form-select.is-invalid {
	border-color: #dc3545;
}

.social-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	margin: 0 10px;
	transition: all 0.3s ease;
	text-decoration: none;
	font-size: 1.2rem;
}

.social-links .facebook {
	background: #3b5998;
	color: white;
}

.social-links .instagram {
	background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
	color: white;
}

.social-links a:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}


@media (max-width: 768px) {
	.booking-card {
		padding: 30px 20px;
	}

	.booking-section {
		padding: 40px 0;
	}
}