/* Branding */
:root {
	--hh-primary: #E5A93A;
	--hh-secondary: #4A3B32;
	--hh-background: #FDF8F5;
	--hh-accent-sage: #6B8E73;
	--hh-accent-thistle: #8E7C93;
	
	
	--sh-blue: #0056b3;
	--sh-dark: #1a1a1a;
}

body {
	font-family: 'Inter', -apple-system, sans-serif;
	color: var(--sh-dark);
	background-color: var(--hh-background);
}

.text-primary {
	color: var(--sh-blue) !important;
}
.btn-primary {
	background-color: var(--hh-primary);
	border: none;
	padding: 0.75rem 1.5rem;
}
.btn-primary:hover {
	background-color: #004494;
	transform: translateY(-1px);
}

/* Navigation Bar */ 
nav .container {
	background-color: var(--hh-background);
}

/* Landing Hero */
.hero-section {
	background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://images.pexels.com/photos/2351722/pexels-photo-2351722.jpeg?auto=compress&cs=tinysrgb&w=1600');
	background-size: cover;
	background-position: center;
	min-height: 500px;
}

/* Venue Cards */
.venue-card {
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.venue-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 1rem 3rem rgba(0,0,0,0.1) !important;
	border: 1px solid var(--sh-blue) !important;
}

.object-fit-cover {
	object-fit: cover;
}

.category-card {
	transition: all 0.2s ease;
	cursor: pointer;
}

.category-card:hover {
	background-color: #f0f7ff !important;
	transform: translateY(-5px);
}

/* Honeypot Security Field */
.hp-field {
	display: none;
	visibility: hidden;
}

/* UI Polish for the form */
.form-control, .form-select {
	border: 1px solid #dee2e6;
	padding: 0.6rem 0.75rem;
}

.form-control:focus {
	border-color: var(--sh-blue);
	box-shadow: 0 0 0 0.25rem rgba(0, 86, 179, 0.1);
}

.x-small {
	font-size: 0.75rem;
}

/* Animation for the Success Alert */
@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.animate-fade-in {
	animation: fadeInDown 0.5s ease-out forwards;
}

/* Alert Styling Overrides */
.alert-success {
	background-color: #ffffff; /* Keeping it clean and white */
	border-left: 5px solid #198754 !important; /* Green accent strip */
}

.alert-success .alert-heading {
	color: #198754;
}