*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :root { --teal: #00d4aa; --gold: #d4a843; --red: #e74c3c; --amber: #f39c12; --green: #2ecc71; --purple: #8e44ad; --blue: #3498db; --bg: #1a1a1a; --card: #242424; --grid: #2d2d2d; --t1: #e2e8f0; --t2: #c0c8d4; --t3: #a0aec0; --t4: #718096; --navy: #1a2744; } html { scroll-behavior: smooth; } body { background: var(--bg); color: var(--t1); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 1.6; -webkit-font-smoothing: antialiased; } /* NAV */ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; justify-content: space-between; align-items: center; padding: 16px 48px; background: rgba(26,26,26,0.92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--grid); } .nav-wordmark { color: var(--gold); font-size: 13px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; } .nav-links { display: flex; gap: 32px; align-items: center; } .nav-links a { color: var(--t3); font-size: 13px; text-decoration: none; transition: color 0.15s; } .nav-links a:hover { color: var(--teal); } .nav-cta { background: var(--navy); color: var(--teal) !important; border: 1px solid var(--navy); padding: 7px 20px; border-radius: 4px; font-size: 12px !important; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; transition: background 0.15s !important; } .nav-cta:hover { background: #243560 !important; color: var(--teal) !important; } /* HERO */ .hero { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 120px 48px 80px; max-width: 900px; position: relative; } .hero::after { content: ''; position: fixed; top: 0; right: 0; width: 40vw; height: 100vh; background: radial-gradient(ellipse at 80% 40%, rgba(0,212,170,0.06) 0%, transparent 70%); pointer-events: none; z-index: 0; } .hero-eyebrow { color: var(--teal); font-size: 11px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; margin-bottom: 20px; } .hero-headline { font-size: clamp(36px, 5vw, 58px); font-weight: 700; line-height: 1.1; color: var(--t1); margin-bottom: 10px; letter-spacing: -0.01em; } .hero-headline span { color: var(--teal); } .hero-tagline { font-size: clamp(18px, 2.5vw, 26px); color: var(--gold); font-style: italic; font-weight: 400; margin-bottom: 28px; letter-spacing: 0.01em; } .hero-sub { font-size: 16px; color: var(--t2); line-height: 1.7; max-width: 560px; margin-bottom: 40px; } .hero-actions { display: flex; gap: 16px; flex-wrap: wrap; } .btn-primary { background: var(--navy); color: var(--teal); border: 1px solid var(--navy); padding: 12px 28px; border-radius: 4px; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; transition: background 0.15s; display: inline-block; } .btn-primary:hover { background: #243560; } .btn-ghost { background: transparent; color: var(--t2); border: 1px solid var(--grid); padding: 12px 28px; border-radius: 4px; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; transition: border-color 0.15s, color 0.15s; display: inline-block; } .btn-ghost:hover { border-color: var(--teal); color: var(--teal); } /* TEAL DIVIDER */ .teal-rule { border: none; border-top: 1px solid var(--teal); margin: 0 48px; } /* PROBLEM SECTION */ .section { padding: 80px 48px; } .section-tag { color: var(--teal); font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 12px; } .section-title { font-size: clamp(24px, 3vw, 36px); font-weight: 700; color: var(--t1); line-height: 1.2; margin-bottom: 16px; max-width: 640px; } .section-body { font-size: 15px; color: var(--t2); line-height: 1.75; max-width: 600px; margin-bottom: 40px; } /* BEFORE/AFTER */ .ba-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; margin-top: 40px; border: 1px solid var(--grid); border-radius: 6px; overflow: hidden; } .ba-col { padding: 28px 28px; } .ba-col.before { background: var(--card); } .ba-col.after { background: #1e2a20; border-left: 2px solid var(--teal); } .ba-label { font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 16px; } .ba-col.before .ba-label { color: var(--t4); } .ba-col.after .ba-label { color: var(--teal); } .ba-item { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 12px; font-size: 14px; color: var(--t2); line-height: 1.5; } .ba-item .icon { font-size: 13px; flex-shrink: 0; margin-top: 2px; } .ba-col.before .icon { color: var(--red); } .ba-col.after .icon { color: var(--green); } /* HOW IT WORKS */ .steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--grid); border: 1px solid var(--grid); border-radius: 6px; overflow: hidden; margin-top: 40px; } .step { background: var(--card); padding: 28px 24px; position: relative; } .step-num { color: var(--teal); font-size: 11px; font-weight: 700; letter-spacing: 0.12em; margin-bottom: 12px; } .step-title { font-size: 15px; font-weight: 700; color: var(--t1); margin-bottom: 8px; line-height: 1.3; } .step-body { font-size: 13px; color: var(--t3); line-height: 1.6; } /* DECISION BADGES DEMO */ .badge-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; } .badge { display: inline-block; padding: 4px 12px; border-radius: 3px; font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; } .badge-approve { background: #2ecc71; color: #0d1117; } .badge-monitor { background: #f39c12; color: #1a1a1a; } .badge-escalate { background: #e74c3c; color: #fff; } .badge-reprice { background: #8e44ad; color: #fff; } .badge-investigate { background: #3498db; color: #1a1a1a; } /* USE CASES */ .use-cases { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--grid); border: 1px solid var(--grid); border-radius: 6px; overflow: hidden; margin-top: 40px; } .use-case { background: var(--card); padding: 28px 24px; } .use-case-icon { width: 32px; height: 32px; border-radius: 4px; display: flex; align-items: center; justify-content: center; font-size: 16px; margin-bottom: 14px; } .use-case-title { font-size: 15px; font-weight: 700; color: var(--t1); margin-bottom: 6px; } .use-case-body { font-size: 13px; color: var(--t3); line-height: 1.6; } /* PRICING */ .pricing-card { background: var(--card); border: 1px solid var(--grid); border-top: 3px solid var(--teal); border-radius: 6px; padding: 40px; max-width: 520px; margin-top: 40px; } .pricing-title { font-size: 22px; font-weight: 700; color: var(--t1); margin-bottom: 8px; } .pricing-sub { font-size: 14px; color: var(--t3); margin-bottom: 28px; line-height: 1.6; } .pricing-features { list-style: none; margin-bottom: 28px; } .pricing-features li { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: var(--t2); margin-bottom: 10px; line-height: 1.5; } .pricing-features li::before { content: '✓'; color: var(--teal); font-weight: 700; flex-shrink: 0; } .pricing-contact { color: var(--t3); font-size: 13px; margin-top: 16px; } .pricing-contact a { color: var(--teal); text-decoration: none; } .pricing-contact a:hover { text-decoration: underline; } /* ABOUT */ .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; margin-top: 40px; } .about-text { font-size: 15px; color: var(--t2); line-height: 1.75; } .about-text p { margin-bottom: 16px; } .about-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--grid); border: 1px solid var(--grid); border-radius: 6px; overflow: hidden; } .stat { background: var(--card); padding: 20px; } .stat-value { font-size: 28px; font-weight: 700; color: var(--teal); line-height: 1; margin-bottom: 4px; } .stat-label { font-size: 11px; color: var(--t4); text-transform: uppercase; letter-spacing: 0.08em; } /* CTA SECTION */ .cta-section { padding: 80px 48px; border-top: 1px solid var(--grid); display: flex; flex-direction: column; align-items: flex-start; gap: 24px; } .cta-title { font-size: clamp(24px, 3vw, 36px); font-weight: 700; color: var(--t1); max-width: 520px; line-height: 1.2; } .cta-title span { color: var(--teal); } .cta-sub { font-size: 15px; color: var(--t3); max-width: 440px; } /* FOOTER */ footer { padding: 32px 48px; border-top: 1px solid var(--grid); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; } .footer-wordmark { color: var(--gold); font-size: 11px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; } .footer-tagline { color: var(--teal); font-size: 11px; font-style: italic; margin-top: 3px; } .footer-right { font-size: 11px; color: var(--t4); text-align: right; } .footer-right a { color: var(--t4); text-decoration: none; } .footer-right a:hover { color: var(--teal); } /* RESPONSIVE */ @media (max-width: 768px) { nav { padding: 14px 20px; } .nav-links { display: none; } .hero { padding: 100px 20px 60px; } .section { padding: 60px 20px; } .teal-rule { margin: 0 20px; } .ba-grid { grid-template-columns: 1fr; } .steps { grid-template-columns: 1fr; } .use-cases { grid-template-columns: 1fr; } .about-grid { grid-template-columns: 1fr; } .cta-section { padding: 60px 20px; } footer { padding: 24px 20px; flex-direction: column; align-items: flex-start; } .footer-right { text-align: left; } }
From documents to decisions.
Generas AI turns unstructured private credit deal documents — credit agreements, covenant schedules, financial models, board memos — into accurate, structured covenant and portfolio intelligence. Built for institutional investors managing private credit.
Private debt portfolio managers spend hours every quarter manually reading credit agreements, re-entering covenant thresholds into spreadsheets, and building reports by hand. One missed covenant breach can cost millions. Generas AI eliminates the manual work entirely.
Generas AI connects to wherever your fund stores documents — your local drive, OneDrive, or SharePoint. No migration. No integration project. No IT involvement.
Decision outputs
Generas AI is offered as a tailored pilot engagement. We work directly with your team to configure the product for your document structure and monitoring workflow.
Or email us directly at [email protected]
Generas AI was built by Olfa Maalaoui, a finance professional who spent years watching private credit teams re-underwrite the same deals from scratch every quarter because their data was locked in documents.
The product started with one question: what if the covenant data was already structured, sourced, and ready to act on — before the analyst opened a single PDF?
Generas AI is the answer. The extraction layer is the product. The dashboard and reporting are what you can do once the data is accurate.
We will run a live demo on a sample of your actual deal documents. No setup required. No commitment.