/* Modern Artisanal Theme & High Contrast Styling */
:root {
	--color-espresso: #21130D;
	--color-espresso-light: #342017;
	--color-cream-bg: #FAF6F0;
	--color-cream-card: #FFFFFF;
	--color-gold-crust: #C87A1E;
	--color-gold-hover: #A56213;
	--color-wheat: #E3A857;
	--color-text-main: #1A1A1A;
	--color-text-muted: #4A4A4A;
}

body {
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
	background-color: var(--color-cream-bg);
	color: var(--color-text-main);
	font-size: 1.05rem;
	line-height: 1.6;
}

h1, h2, h3, h4, h5, .font-heading {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	color: var(--color-espresso);
	letter-spacing: -0.02em;
}

/* Top Announcement Bar */
.top-bar {
	background-color: var(--color-espresso);
	color: #FCE8D5;
	font-size: 0.9rem;
	font-weight: 500;
}

img.logo-header { height: 75px; }
/* Navbar Styling */
.navbar-bakery {
	background-color: var(--color-espresso) !important;
	border-bottom: 3px solid var(--color-gold-crust);
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}
.navbar-bakery .nav-link {
	color: #FFFFFF !important;
	font-weight: 600;
	font-size: 1rem;
	padding-left: 1rem !important;
	padding-right: 1rem !important;
	transition: color 0.2s ease-in-out;
}
.navbar-bakery .nav-link:hover, .navbar-bakery .nav-link.active {
	color: var(--color-wheat) !important;
}

/* Hero Banner */
.hero-section {
	background: linear-gradient(135deg, rgba(33, 19, 13, 0.92) 0%, rgba(52, 32, 23, 0.88) 100%), 
				url('../../media/brot.webp') center/cover no-repeat;
	color: #FFFFFF;
	padding: 5rem 0;
	border-bottom: 1px solid rgba(227, 168, 87, 0.3);
}
.hero-title {
	color: #FFFFFF;
	font-size: 3rem;
	font-weight: 800;
	line-height: 1.2;
}
.hero-subtitle {
	font-size: 1.25rem;
	color: #F5E6D3;
	font-weight: 400;
}

/* High Contrast Buttons */
.btn-gold {
	background-color: var(--color-gold-crust);
	color: #FFFFFF;
	font-weight: 700;
	border-radius: 50rem;
	padding: 0.75rem 1.75rem;
	font-size: 1rem;
	border: 2px solid var(--color-gold-crust);
	transition: all 0.25s ease;
}
.btn-gold:hover, .btn-gold:focus {
	background-color: var(--color-gold-hover);
	border-color: var(--color-gold-hover);
	color: #FFFFFF;
	box-shadow: 0 4px 12px rgba(200, 122, 30, 0.35);
}
.btn-outline-gold {
	background-color: transparent;
	color: #FFFFFF;
	font-weight: 700;
	border-radius: 50rem;
	padding: 0.75rem 1.75rem;
	font-size: 1rem;
	border: 2px solid var(--color-wheat);
	transition: all 0.25s ease;
}
.btn-outline-gold:hover {
	background-color: var(--color-wheat);
	color: var(--color-espresso);
	border-color: var(--color-wheat);
}

/* Product Cards & Filters */
.product-card {
	background-color: var(--color-cream-card);
	border: 2px solid #EAE3D9;
	border-radius: 1rem;
	overflow: hidden;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.product-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 24px rgba(33, 19, 13, 0.1);
	border-color: var(--color-gold-crust);
}
.product-card img {
	height: 220px;
	object-fit: cover;
	width: 100%;
}

/* High contrast Category Filter Pills */
.nav-pills-bakery .nav-link {
	background-color: #EFE8DE;
	color: var(--color-espresso);
	font-weight: 700;
	font-size: 0.95rem;
	border-radius: 50rem;
	padding: 0.6rem 1.4rem;
	margin: 0.25rem;
	border: 1px solid #D8CEBE;
	transition: all 0.2s ease;
}
.nav-pills-bakery .nav-link.active, .nav-pills-bakery .nav-link:hover {
	background-color: var(--color-espresso);
	color: var(--color-wheat);
	border-color: var(--color-espresso);
}

/* Badge Styling */
.badge-allergen {
	background-color: #E2E8F0;
	color: #1E293B;
	font-size: 0.75rem;
	font-weight: 700;
	border: 1px solid #CBD5E1;
}

/* Interactive Quiz Card */
.quiz-card {
	background-color: var(--color-espresso);
	color: #FFFFFF;
	border-radius: 1.5rem;
	border: 2px solid var(--color-wheat);
}

/* Branch Cards */
.branch-card {
	background: #FFFFFF;
	border-radius: 1rem;
	border: 2px solid #EAE3D9;
}

/* Cart Badge & Drawer Offcanvas */
.cart-badge {
	font-size: 0.8rem;
	background-color: #DC2626;
	color: white;
	border-radius: 50rem;
	padding: 0.25em 0.6em;
}

/* Smooth scrolling */
html {
	scroll-behavior: smooth;
}