/* Elema — dizajn-sustav JEZGRA (.esb-*). Uvijek se učitava (mala, dijeljena).
   Stilovi specifičnih modula (hero/card) su u zasebnim datotekama i učitavaju
   se samo kad je modul aktivan i korišten. */

:root {
	--esb-color-bg: #ffffff;
	--esb-color-surface: #f6f6f4;
	--esb-color-text: #1a1a1a;
	--esb-color-muted: #6b6b6b;
	--esb-color-primary: #111111;
	--esb-color-primary-contrast: #ffffff;
	--esb-color-border: #e6e6e3;
	--esb-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

	--esb-radius: 10px;
	--esb-radius-sm: 6px;
	--esb-shadow: 0 2px 8px rgba(0,0,0,.06);
	--esb-shadow-lg: 0 10px 40px rgba(0,0,0,.10);

	--esb-space-1: 8px;  --esb-space-2: 16px; --esb-space-3: 24px;
	--esb-space-4: 40px; --esb-space-5: 64px; --esb-space-6: 96px;

	--esb-container: 1200px;
	--esb-container-narrow: 820px;
}

body { font-family: var(--esb-font); }

/* Section / spacing helpers */
.esb-section { padding-block: var(--esb-space-6); }
.esb-section--sm { padding-block: var(--esb-space-4); }
.esb-section--lg { padding-block: 120px; }
.esb-section--surface { background: var(--esb-color-surface); }
.esb-section--dark { background: var(--esb-color-primary); color: #fff; }

.esb-narrow { max-width: var(--esb-container-narrow); margin-inline: auto; }
.esb-center { text-align: center; }
.esb-muted { color: var(--esb-color-muted); }

/* Buttons (dijeljeno; koristi ih i hero modul) */
.esb-btn {
	display: inline-block; padding: 0.85rem 1.6rem; border-radius: var(--esb-radius-sm);
	text-decoration: none; font-weight: 600; line-height: 1; cursor: pointer;
	transition: transform .12s ease, opacity .12s ease;
}
.esb-btn:hover { transform: translateY(-1px); }
.esb-btn--primary { background: var(--esb-color-primary); color: var(--esb-color-primary-contrast); }
.esb-btn--ghost { background: transparent; border: 1px solid currentColor; color: inherit; }

/* Utility */
.esb-mt-0 { margin-top: 0 !important; }
.esb-mb-0 { margin-bottom: 0 !important; }
.esb-pill { display:inline-block; padding:4px 12px; border-radius:999px; background:var(--esb-color-surface); font-size:.85rem; font-weight:600; letter-spacing:.02em; }
