diff --git a/index.html b/index.html index 9f93c7b..bb2ad33 100644 --- a/index.html +++ b/index.html @@ -81,11 +81,54 @@

Our Approach

This three-layer approach, powered by our proprietary compliance engines, gives you the full picture — not just what the rules say, but what they mean for your operation.

-
+ Powered by The Engine Room - Five integrated compliance engines working together -
+ Five integrated compliance engines working together ↓ + +
+ + + + + +
+
+
The Engine Room
+

Five Compliance Engines

+

Our proprietary toolkit — built from years of on-the-ground cannabis compliance experience across regulated markets.

+ +
+
+
📦
+
Inventory
+

KiloKeep

+

Inventory hygiene at scale. Keeps your METRC records clean, reconciled, and audit-ready — before discrepancies become violations.

+
+
+
🔬
+
Product Integrity
+

PRFCTpack

+

COA inspection engine. Validates certificate of analysis data against packaging and labeling requirements to catch issues before product ever hits the shelf.

+
+
+
⚠️
+
Risk Intelligence
+

RecallRepel

+

Predictive recall engine. Combines historical recall patterns with live METRC data to surface risk signals before they escalate into enforcement actions.

+
+
+
♻️
+
Waste Management
+

RegulaGreen

+

End-to-end waste management compliance. Includes a standalone app that walks operators step-by-step through proper destruction procedures — no guesswork, no gaps.

+
+
+
🤝
+
Vendor Network
+

GuaranGreen

+

Peer-to-peer vendor rating system designed to connect cannabis operators with vetted, compliant supply chain partners.

+ In Evaluation
diff --git a/styles.css b/styles.css index 7fb9a0a..73a1940 100644 --- a/styles.css +++ b/styles.css @@ -280,6 +280,13 @@ h3 { display: flex; flex-direction: column; gap: 12px; + text-decoration: none; + color: inherit; + transition: var(--transition); +} + +.engine-badge:hover { + border-color: var(--color-primary); } .engine-label { @@ -568,6 +575,92 @@ h3 { font-size: 0.85rem; } +/* ===== Engine Room Section ===== */ +.engine-room { + background: var(--color-bg); +} + +.engine-room .badge { + display: block; + text-align: center; + margin: 0 auto 16px; + width: fit-content; +} + +.engines-grid { + display: flex; + flex-wrap: wrap; + gap: 24px; + justify-content: center; +} + +.engine-card { + background: var(--color-bg-card); + border: 1px solid var(--color-border); + border-radius: var(--border-radius); + padding: 32px; + flex: 1 1 280px; + max-width: 360px; + transition: var(--transition); + position: relative; +} + +.engine-card:hover { + border-color: var(--color-primary); + transform: translateY(-4px); +} + +.engine-card-icon { + font-size: 2rem; + margin-bottom: 16px; +} + +.engine-card-tag { + font-size: 0.75rem; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.1em; + color: var(--color-primary); + margin-bottom: 6px; +} + +.engine-card-name { + font-size: 1.4rem; + font-weight: 700; + color: var(--color-text); + margin-bottom: 12px; +} + +.engine-card p { + color: var(--color-text-muted); + font-size: 0.95rem; + line-height: 1.65; +} + +.engine-card--evaluation { + border-style: dashed; + opacity: 0.75; +} + +.engine-card--evaluation:hover { + opacity: 1; + border-style: dashed; + transform: none; +} + +.engine-card-status { + display: inline-block; + margin-top: 16px; + padding: 4px 12px; + border: 1px solid var(--color-text-dim); + color: var(--color-text-dim); + border-radius: 50px; + font-size: 0.75rem; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.08em; +} + /* ===== Responsive ===== */ @media (max-width: 768px) { .section {