:root {
    --ml-knowledge-green: #0c6b4d;
    --ml-knowledge-green-dark: #07513b;
    --ml-knowledge-ink: #26352f;
    --ml-knowledge-muted: #756f64;
    --ml-knowledge-border: #e8dfcf;
    --ml-knowledge-canvas: #fbf7ee;
    --ml-knowledge-surface: #fffdf8;
    --ml-knowledge-gold: #c7a45a;
    --ml-knowledge-gold-soft: #f3e7c9;
}

body {
    background: var(--ml-knowledge-canvas);
}

main > section {
    background:
        radial-gradient(circle at 88% 8%, rgba(199,164,90,.16), transparent 28%),
        linear-gradient(180deg, #fffdf8 0%, #fbf7ee 100%);
}

main .container {
    color: var(--ml-knowledge-ink);
}

main .text-primary {
    color: var(--ml-knowledge-green) !important;
    letter-spacing: .08em;
}

main h1,
main h2 {
    color: var(--ml-knowledge-ink);
}

main .lead,
main article p {
    color: var(--ml-knowledge-muted);
}

main article {
    position: relative;
    overflow: hidden;
    border-color: var(--ml-knowledge-border) !important;
    background: var(--ml-knowledge-surface);
    box-shadow: 0 9px 24px rgba(91,70,37,.06);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

main article::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, transparent, rgba(199,164,90,.7), transparent);
}

main article:hover {
    border-color: var(--ml-knowledge-gold) !important;
    box-shadow: 0 14px 30px rgba(91,70,37,.10);
    transform: translateY(-2px);
}

main .alert-info {
    color: #4f564f;
    border-color: #ddc99d;
    background: #f5efe3;
}

@media (max-width: 767.98px) {
    main > section {
        padding-top: 2.5rem !important;
        padding-bottom: 2.5rem !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    main article {
        transition: none;
    }

    main article:hover {
        transform: none;
    }
}
