/* Background */
.appointment-bg {
	background: url('../images/background.jpg') no-repeat center/cover;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

/* Navbar */
.navbar.bg-gradient {
	background: linear-gradient(90deg,#005b6d,#00a8b5);
}
.navbar-nav .nav-link {
	color:#fff !important;
	font-weight:500;
}
.navbar-nav .nav-link:hover {
	color:#ffd54f !important;
}

/* Form Card */
.appointment-card {
	background: rgba(255,255,255,0.95);
	backdrop-filter: blur(6px);
	max-width: 720px;
	width: 100%;
}
.appointment-card .form-label {
	font-weight: 600;
	color: #004f5e;
}
.form-control, .form-select {
	border: 1px solid #ccc;
	border-radius: 10px;
	padding: 10px 14px;
}
.form-control:focus, .form-select:focus {
	border-color: #00a3b1;
	box-shadow: 0 0 0 0.2rem rgba(0,163,177,.2);
}

/* Button */
.btn-gradient {
	background: linear-gradient(90deg,#0096a3,#00c4b3);
	color: #fff;
	border: none;
	border-radius: 10px;
	transition: all .3s;
}
.btn-gradient:hover {
	background: linear-gradient(90deg,#00c4b3,#0096a3);
	transform: translateY(-2px);
}

/* Responsive */
@media(max-width:768px){
	.appointment-card {padding: 25px 20px;}
	h1 {font-size:1.7rem;}
}
/* Red star for required fields */
.form-label.required::after {
	content: " *";
	color: red;
	font-weight: bold;
}