
/* Main theme additions to reduce inline styles duplication */
:root { --frj-primary:#0AA344; --frj-secondary:#007BFF; --frj-accent:#FFAA00; --frj-dark:#0F172A; }
.gradient-bg { background: linear-gradient(135deg, var(--frj-primary), var(--frj-secondary)); }
.glass-effect { background: rgba(255,255,255,0.12); backdrop-filter: blur(10px); border: 1px solid rgba(255,255,255,0.18); }
.card-hover { transition: transform .2s ease, box-shadow .2s ease; }
.card-hover:hover { transform: translateY(-4px); box-shadow: 0 10px 24px rgba(0,0,0,.12); }
.toast { position: fixed; bottom: 20px; right: 20px; z-index: 9999; padding: 12px 16px; border-radius: 12px; background:#111827; color:#fff; display:none; }
.toast.show { display:block; animation: fadeIn .25s ease; }
@keyframes fadeIn { from{opacity:0; transform: translateY(6px);} to{opacity:1; transform:none;} }

/* Footer helper (matches original markup cues) */
.frj-sep-before-footer{ display:block; height:40px; }
/* Mobile menu helper */
.mobile-menu.open { transform: translateX(0); }
.mobile-menu { transform: translateX(100%); transition: transform .25s ease; }

/* Badges / pills */
.badge { display:inline-flex; align-items:center; border-radius:999px; padding:.25rem .5rem; font-size:.75rem; }
.badge-primary { background:var(--frj-primary); color:#fff; }
