/* Senne Golfclub Gut Welschof - Zentrales Design System */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700;900&family=Inter:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap');

:root {
  --senne-primary: #006338;       /* Original-Dunkelgrün aus Kopfzeile & Rundlogo */
  --senne-primary-dark: #004d2b;  /* Tieferes Waldgrün für Hover & Schatten */
  --senne-sage: #c5e1c4;          /* Helles Salbeigrün aus der Original-Sidebar */
  --senne-darkest: #002917;       /* Dunkelstes Grün für Footer & Tiefenkontraste */
  --senne-bg-subtle: #f8f7f2;     /* Dezent warmer Senneland-Sand / Edles Naturpapier */
  --senne-bg-card: #ffffff;       /* Reines Weiß für schwebende Inhaltskarten */
}

/* Typografie-Zuweisung */
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  color: #002917;
  background-color: var(--senne-bg-subtle);
}

h1, h2, .brand-title {
  font-family: 'Cinzel', serif;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

h3, h4, .subline, .quote {
  font-family: 'Playfair Display', Georgia, serif;
}

.menu-link, button, input, select, textarea, .nav-item {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Kopfzeile */
.glass-bar {
  background: rgba(0, 99, 56, 0.96);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

/* Minimalistischer Hamburger-Button */
.hamburger-btn {
  width: 2.85rem;
  height: 2.85rem;
  border-radius: 0.75rem;
  background-color: #c5e1c4;
  border: 1px solid rgba(0, 99, 56, 0.35);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 41, 23, 0.2);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.hamburger-btn:hover {
  background-color: #ffffff;
  transform: scale(1.05);
  box-shadow: 0 4px 16px rgba(0, 41, 23, 0.3);
}
.hamburger-btn:active {
  transform: scale(0.95);
}
.hamburger-line {
  display: block;
  height: 2px;
  background-color: #004d2b;
  border-radius: 9999px;
  transition: all 0.25s ease;
}
.hamburger-line:nth-child(1) { width: 1.3rem; }
.hamburger-line:nth-child(2) { width: 1.3rem; }
.hamburger-line:nth-child(3) { width: 1.3rem; }
.hamburger-btn:hover .hamburger-line:nth-child(2) {
  width: 0.9rem;
}

/* Menü-Overlay: Standardmäßig via inline/CSS verborgen */
#nav-popup {
  display: none;
}
#nav-popup.active {
  display: flex !important;
}

/* Menükarten: Helles Salbeigrün (#c5e1c4) für maximalen Kontrast */
.menu-card {
  background: rgba(197, 225, 196, 0.96);
  border: 1px solid rgba(0, 99, 56, 0.35);
  border-top: 3px solid #006338;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
  transition: all 0.2s ease;
}

.menu-card:hover {
  background: #ffffff;
  border-color: #006338;
  transform: translateY(-2px);
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.5);
}

.menu-link {
  display: block;
  padding: 0.4rem 0.65rem;
  border-radius: 0.5rem;
  color: #00381f !important;
  font-size: 0.875rem;
  font-weight: 600;
  transition: all 0.15s ease;
  text-decoration: none;
}

.menu-link:hover {
  background: #006338;
  color: #ffffff !important;
  padding-left: 0.9rem;
}

@keyframes fadeInPopup {
  from { opacity: 0; transform: scale(0.98); }
  to { opacity: 1; transform: scale(1); }
}

.popup-animate {
  animation: fadeInPopup 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Such-Modal Styling */
#site-search-modal {
  display: none;
}
#site-search-modal.active {
  display: flex !important;
}
.search-result-item {
  transition: all 0.15s ease;
}
.search-result-item:hover, .search-result-item.selected {
  background-color: #f0f7f2;
  border-color: #006338;
}
