@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;600;700;800&family=Playfair+Display:ital,wght@0,600;1,400&display=swap');

:root {
  --primary: #4e7a5a;
  --primary-hover: #3a5c43;
  --gold: #c5a880;
  --dark: #0f172a;
  --font-main: 'Plus Jakarta Sans', sans-serif;
  --font-title: 'Playfair Display', serif;
}

body { font-family: var(--font-main); background: #ffffff; color: #475569; }
h1, h2, .hero-title, .display-6 { font-family: var(--font-title); font-weight: 700; color: var(--dark); }

/* Hero */
.hero-header { border-bottom-left-radius: 40px; border-bottom-right-radius: 40px; overflow: hidden; }
.hero-badge { border-radius: 50px; background: rgba(255,255,255,0.18); backdrop-filter: blur(10px); }
.btn-luxury { border-radius: 50px; background: var(--primary); color: #fff !important; }

/* Okolica - karty organiczne */
.okolica-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; }
.okolica-card { border-radius: 20px; border: 1px solid rgba(255,255,255,0.4); background: rgba(255,255,255,0.92); box-shadow: 0 10px 30px rgba(0,0,0,0.08); }

/* Tabela - gładkie zaokrąglenia */
.table-luxury-wrapper { border-radius: 20px; box-shadow: 0 20px 40px rgba(15,23,42,0.06); border: 1px solid #e2e8f0; }
.table thead th { background: #0f172a; color: #fff; padding: 14px 10px; }
.badge-status { border-radius: 50px; }