/* ============================================================
   LEXCORE — Public landing extras
   LexCore-owned equivalents of the landing_pages.css classes the
   landing actually uses (loader-brutal, path-panel, path-index) +
   the reveal/loader keyframes. Re-coloured to the Lexcore palette
   (ink/claret/amber) while keeping the class names as the interface.
   ============================================================ */

/* Process "paths" panels */
.path-panel { transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); border-right: 1px solid var(--border-strong, #d4d4d8); min-height: 80vh; }
.path-panel:last-child { border-right: none; }
.path-panel:hover { flex: 1.2; }
.path-index { font-family: var(--font-display, 'Source Serif 4', serif); font-size: 12rem; font-weight: 600; line-height: 1; position: absolute; bottom: -2rem; right: -1rem; pointer-events: none; z-index: 0; opacity: 0.04; transition: all 0.4s ease; color: var(--primary-text, #18181b); }
.path-panel:hover .path-index { opacity: 0.09; transform: scale(1.1) rotate(-5deg); }
.path-panel.bg-black,
.path-panel.bg-black h2,
.path-panel.bg-black p,
.path-panel.bg-black .path-index { color: var(--inverse-text, #fafafa) !important; }
.path-panel.bg-black .rl { color: var(--inverse-text, #fafafa); }
.path-panel.bg-black .rl.text-white\/20 { color: rgba(255, 255, 255, 0.2) !important; }
@media (max-width: 768px) {
    .path-panel { border-right: none; border-bottom: 1px solid var(--border-strong, #d4d4d8); min-height: auto; padding: 4rem 2rem; }
}

/* Loader (funnel processing) — ink ring, claret indicator */
.loader-brutal { width: 60px; height: 60px; border: 6px solid var(--surface-3, #f4f4f5); border-top: 6px solid var(--registry-accent, #8b3a2c); border-radius: 50%; animation: funnel-spin 0.8s linear infinite; }
@keyframes funnel-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* Reveal-on-scroll (used by reveal-item.is-visible in the landing) */
@keyframes fadeInUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
.reveal-item.is-visible { animation: fadeInUp 0.5s ease-out forwards; }
