/* Landing page lightweight styles (scoped to l-* to avoid conflicts) */
:root { --brand: #2E7591; --brand-hover: #26647C; }
body { font-family: 'Libre Franklin', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; }
.l-container { max-width: 1000px; margin: 0 auto; padding: 0 16px; }
.l-nav { display: flex; align-items: center; justify-content: space-between; padding: 20px 0; }
.l-brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; color: #0f172a; text-decoration: none; }
.l-brand img { height: 36px; width: auto; display: block; }
.l-nav-links { display: flex; gap: 18px; align-items: center; }
.l-btn { display: inline-block; padding: 8px 14px; border-radius: 4px; border: 1px solid #e5e7eb; background: #fff; text-decoration: none; }
.l-btn.primary { background: var(--brand, #2E7591); border-color: var(--brand, #2E7591); color: #fff; }
.l-btn.primary:hover { background: var(--brand-hover, #26647C); border-color: var(--brand-hover, #26647C); }
.l-hero {
    background: #fafafa;
    border-top: 1px solid #ededed;
    border-bottom: 1px solid #ededed;
    padding: 3rem 0;
    margin: 1rem 0 3rem 0;
    text-align: center;
}
.l-hero .logo { height: 72px; margin: 0 auto 16px; display: block; }
.l-hero h1 { font-size: clamp(28px, 4vw, 40px); margin: 10px 0 12px; line-height: 1.2; }
.l-hero p { font-size: clamp(15px, 2.2vw, 18px); color: #475569; margin: 0 auto; max-width: 700px; }
.l-content { padding: 32px 0 64px; }
.l-card { border: 1px solid #e5e7eb; border-radius: 10px; padding: 20px; background: #ffffff; box-shadow: 0 1px 2px rgba(0,0,0,0.04); }
.l-footer { padding: 24px 0 40px; text-align: center; color: #94a3b8; font-size: 14px; }

