:root {
	--kuk-gold: #b08d57;
	--kuk-gold-dark: #8f7142;
	--kuk-dark: #1e1d1c;
	--kuk-cream: #f7f3ec;
	--bs-link-color: var(--kuk-gold-dark);
	--bs-link-hover-color: var(--kuk-dark);
	--bs-body-font-family: "Helvetica Neue", Arial, sans-serif;
	--kuk-heading-font: Georgia, "Times New Roman", serif;
}
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { color: #3a342c; }
h1, h2, h3, h4, .section-title, .site-title { font-family: var(--kuk-heading-font); }

.site-logo { max-height: 56px; width: auto; }
.site-title { font-size: 1.4rem; color: var(--kuk-dark); }
.navbar .nav-link {text-transform: uppercase;letter-spacing: .08em;font-size: .95rem;color: var(--kuk-dark);font-weight: 700;}
.navbar .nav-link:hover, .navbar .nav-link.active { color: var(--kuk-gold-dark); }

.btn-gold { --bs-btn-color:#fff; --bs-btn-bg:var(--kuk-gold); --bs-btn-border-color:var(--kuk-gold);
	--bs-btn-hover-color:#fff; --bs-btn-hover-bg:var(--kuk-gold-dark); --bs-btn-hover-border-color:var(--kuk-gold-dark);
	--bs-btn-active-bg:var(--kuk-gold-dark); --bs-btn-active-border-color:var(--kuk-gold-dark); }

/* Hero */
.hero-slide { min-height: 70vh; display: flex; align-items: center; justify-content: center;
	background: var(--kuk-dark) center / cover no-repeat; position: relative; }
.hero-slide::before {content: "";position: absolute;inset: 0;background: linear-gradient(
357deg, #625427 2%, rgba(98, 84, 39, 0.2) 75%);}
.hero-slide .container { position: relative; z-index: 1; }
.hero-title { text-shadow: 0 2px 12px rgba(0,0,0,.5); }
.hero-sub { text-shadow: 0 1px 8px rgba(0,0,0,.5); letter-spacing: .1em; text-transform: uppercase; }

/* Sections */
.section { padding: 5rem 0; }
.section-alt { background: var(--kuk-cream); }
.section-dark { background: var(--kuk-dark); color: #e9e2d6; }
.section-dark a { color: var(--kuk-gold); }
.section-title { color: var(--kuk-dark); margin-bottom: 1.5rem; position: relative; padding-bottom: 1rem; }
.section-title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 60px; height: 2px; background: var(--kuk-gold); }
.text-center .section-title::after, .section-title.text-center::after { left: 50%; transform: translateX(-50%); }
.container.narrow { max-width: 820px; }
.hours-box { border-left: 3px solid var(--kuk-gold); padding-left: 1rem; }
.hours-box p:last-child { margin-bottom: 0; }

.angebot-list { max-width: 560px; font-size: 1.15rem; padding-left: 1.5rem; }
.angebot-list li { margin-bottom: .75rem; }

.gallery-item { display: block; aspect-ratio: 1 / 1; overflow: hidden; border-radius: .375rem; }
.gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.gallery-item:hover img { transform: scale(1.06); }

.contact-h { color: var(--kuk-gold); font-family: var(--kuk-heading-font); }
address { font-style: normal; }
.contact-form { max-width: 640px; }

.footer-menu li { display: inline-block; margin: 0 .5rem; }
.site-footer a { text-decoration: none; }
.site-footer a:hover { color: var(--kuk-gold) !important; }

a.text-decoration-none {
	color: #625427;
}

.topbar {
	background-color: #ffecb0;
}

section#intro, section#subpage {
	background-color: #e7cd70;
}

section#film {
	background-color: #e7cd70;
}

footer {
	background-color: #1e1d1c;
}

.section-dark .section-title {
	color: #ffffff;
}

.section-dark a.btn {
	color: #ffffff;
}

.service-box {
	min-height: 120px;
	border: 1px solid #ffffff;
	border-radius: 5px;
	font-weight: 700;
	padding: 20px 15px;
	margin-bottom: 15px;
}

@media (max-width: 767.98px) { .section { padding: 3rem 0; } .hero-slide { min-height: 55vh; } }
