:root {
  --summer-ink: #24483f;
  --summer-muted: #668078;
  --summer-green: #14866d;
  --summer-green-dark: #0f6f5c;
  --summer-coral: #f28b67;
  --summer-sun: #f2c45e;
  --summer-cream: #fffaf0;
  --summer-mint: #eef8f2;
  --summer-white: #ffffff;
  --summer-line: rgba(20, 134, 109, .2);
  --summer-shadow: 0 18px 50px rgba(35, 91, 75, .12);
}

html { color-scheme: light; }
body { background: var(--summer-cream) !important; color: var(--summer-ink) !important; }

/* Közös fejléc */
.site-header {
  background: rgba(255, 250, 240, .92) !important;
  border-bottom-color: var(--summer-line) !important;
  box-shadow: 0 8px 28px rgba(35, 91, 75, .08);
}
.site-header nav a { color: var(--summer-ink) !important; }
.site-header nav a:hover,
.site-header nav a.active { color: var(--summer-green) !important; }
.site-header .lang-btn img { box-shadow: 0 2px 8px rgba(35, 91, 75, .2) !important; }

/* Világos tartalmi felületek */
.intro, .story, .gallery-shell, .page { background: var(--summer-cream) !important; }
.features, .offer, .offer-band, .rules, .menu-download {
  background: var(--summer-mint) !important;
  border-color: var(--summer-line) !important;
}
.section-title, .booking-title, .feature h3, .feature-link,
.offer-item strong, .rule strong, .menu-eyebrow, .menu-description summary {
  color: var(--summer-green) !important;
}
.intro p, .story p, .feature p, .offer-item span, .rule p,
.menu-description, .menu-intro, .muted { color: var(--summer-muted) !important; }
.feature, .offer-item, .rule {
  background: rgba(255,255,255,.7);
  border-color: var(--summer-line) !important;
  box-shadow: 0 12px 35px rgba(35,91,75,.06);
}
.feature:hover { border-color: var(--summer-green) !important; box-shadow: var(--summer-shadow); }

/* Nyárias hero képek: fényesebb, frissebb fotók és könnyebb fátyol */
.hero { color: #fff !important; }
.hero:not(:has(.hero-kicker)) {
  background-image: linear-gradient(rgba(17,86,72,.34),rgba(17,86,72,.44)),url('../picture/hero.jpg') !important;
}
.hero:has(.hero-kicker) {
  background-image: linear-gradient(90deg,rgba(15,82,69,.48),rgba(15,82,69,.16)),linear-gradient(0deg,rgba(15,82,69,.48),transparent 58%),url('../happy_hour/happy-hour-hero-people.png') !important;
}
.fallback-header + .hero::after { filter: saturate(1.12) brightness(1.08) !important; }
.fallback-header + .hero::before {
  background: linear-gradient(90deg,rgba(15,82,69,.62),rgba(15,82,69,.18)),linear-gradient(0deg,rgba(15,82,69,.58),transparent 58%) !important;
}
body:not(.menu-page) .hero-subtitle,
.hero-kicker { color: #ffe39b !important; }
.hero-description, .hero-copy { color: rgba(255,255,255,.9) !important; }
.booking-section {
  background-image: linear-gradient(rgba(18,76,66,.52),rgba(18,76,66,.6)),url('../picture/booking.jpg') !important;
}
.final-cta, .final { background-blend-mode: normal !important; }

/* Gombok */
.cta-button, .cta, .btn, .calendar-btn, .gallery-arrow {
  border-color: var(--summer-green) !important;
  color: var(--summer-green) !important;
}
.hero .cta-button, .hero .cta { border-color: #fff !important; color: #fff !important; }
.cta-button:hover, .cta-button.primary, .cta:hover, .cta.primary,
.btn:hover, .btn-primary, .calendar-btn:hover, .gallery-arrow:hover {
  background: var(--summer-green) !important;
  border-color: var(--summer-green) !important;
  color: #fff !important;
}

/* Foglalási felület */
.booking-form, .calendar-panel, .time-panel {
  background: rgba(255,255,255,.96) !important;
  color: var(--summer-ink) !important;
  border-color: var(--summer-line) !important;
  box-shadow: var(--summer-shadow) !important;
}
.form-group label, .calendar-title { color: var(--summer-green) !important; }
.form-group input, .form-group textarea, .form-group input[readonly],
.guest-option, .time-option, .time-slot, .cal-day, .time-item, .step-number {
  background: #fff !important;
  color: var(--summer-ink) !important;
  border-color: rgba(20,134,109,.2) !important;
}
.guest-option.selected, .time-option.selected, .time-slot.selected,
.cal-day.selected, .time-item.selected, .step.active .step-number {
  background: var(--summer-green) !important;
  border-color: var(--summer-green) !important;
  color: #fff !important;
}
.step-label { color: var(--summer-muted) !important; }
.step-indicator::before { background: var(--summer-line) !important; }
.calendar-modal, .time-modal { background: rgba(31,72,62,.45) !important; backdrop-filter: blur(5px); }
.success-message h3 { color: var(--summer-ink) !important; }
.success-message p { color: var(--summer-muted) !important; }

/* Ét- és itallap */
body:has(.page) {
  --green: var(--summer-green);
  --green-soft: var(--summer-coral);
  --text: var(--summer-ink);
  --muted: var(--summer-muted);
  --line: var(--summer-line);
  --bg: var(--summer-cream);
  --bg-soft: var(--summer-mint);
  --shadow: var(--summer-shadow);
}
.menu-title { color: var(--summer-ink) !important; }
.menu-card, .menu-section, .category-panel, .menu-modal-content {
  background: #fff !important;
  border-color: var(--summer-line) !important;
  box-shadow: 0 12px 34px rgba(35,91,75,.08) !important;
}

/* Lábléc */
footer { background: #dcefe5 !important; }
.footer-section h3 { color: var(--summer-green) !important; }
.footer-section p, .footer-section a { color: #4f7066 !important; }
.footer-section a:hover { color: var(--summer-green-dark) !important; }
.social-links a { border-color: var(--summer-green) !important; }
.social-links svg { fill: var(--summer-green) !important; }
.social-links a:hover { background: var(--summer-green) !important; }
.social-links a:hover svg { fill: #fff !important; }
.copyright { color: #688079 !important; border-top-color: rgba(20,134,109,.18) !important; }

/* Süti panel */
.cookie-banner, .cookie-panel {
  background: #fffaf0 !important;
  color: var(--summer-ink) !important;
  border-color: var(--summer-line) !important;
  box-shadow: var(--summer-shadow) !important;
}
.cookie-modal { background: rgba(31,72,62,.45) !important; }
.cookie-panel-header p, .cookie-category p { color: var(--summer-muted) !important; }
.cookie-category { border-top-color: var(--summer-line) !important; }
.cookie-btn { border-color: var(--summer-green) !important; color: var(--summer-green) !important; }
.cookie-btn-primary { background: var(--summer-green) !important; color: #fff !important; }
.cookie-close { color: var(--summer-ink) !important; }
.cookie-required, .cookie-settings-link { color: var(--summer-green) !important; }
.cookie-switch input:checked + .cookie-slider { background: var(--summer-green) !important; }

@media (max-width: 768px) {
  .site-header { background: rgba(255,250,240,.97) !important; }
  .feature, .offer-item, .rule { box-shadow: none; }
}
