/**
 * MTI Investment — official palette & shared UI tokens (MTI_Colour_Palette_Final.pptx)
 * Loaded on the public website and admin / investor portal.
 */
:root {
    --mti-black: #000000;
    --mti-ink: #1c1c1a;
    --mti-green: #0b3c2a;
    --mti-green-hover: #082f21;
    --mti-sand: #f1e8dc;
    --mti-coral: #f07856;
    --mti-blue: #557fa6;
    --mti-gray: #a6a5a1;
    --mti-sage: #8db39a;
    --mti-sky: #aabfd2;
    --mti-white: #ffffff;

    /* Marketing gradients — palette 3.1 */
    --mti-gradient-forest-deep: #082f21;
    --mti-gradient-forest: #0b3c2a;
    --mti-gradient-forest-mid: #134a35;
    --mti-gradient-forest-lift: #1a5240;
    --mti-gradient-sand-glow: rgba(241, 232, 220, 0.42);
    --mti-gradient-coral-glow: rgba(240, 120, 86, 0.24);
    --mti-gradient-sage-glow: rgba(141, 179, 154, 0.32);

    --mti-text: var(--mti-ink);
    --mti-text-muted: var(--mti-gray);
    /* Marketing site in-content links use forest green; dashboard charts use --mti-blue / data tokens. */
    --mti-link: var(--mti-green);
    --mti-surface-footer: var(--mti-sand);
    --mti-border: rgba(28, 28, 26, 0.12);

    --main: var(--mti-ink);
    --primary: var(--mti-green);
    --secondary: var(--mti-blue);
    --link: var(--mti-blue);
}

body {
    color: var(--mti-text);
}

/*
 * In-content links only — not nav, footer, header CTAs, or image/card tiles
 * (those keep their own contrast; blue links on photos fail accessibility and brand tone).
 */
.mti-page-body a:not(.tf-btn):not(.mti-home-feature-card):not(.mti-platform-icon-card),
.mti-editorial-article a:not(.tf-btn),
.mti-holding a:not(.tf-btn):not(.mti-holding-link):not(.mti-platform-map-card__link) {
    color: var(--mti-link);
}

.mti-page-body a:not(.tf-btn):not(.mti-home-feature-card):not(.mti-platform-icon-card):hover,
.mti-editorial-article a:not(.tf-btn):hover,
.mti-holding a:not(.tf-btn):not(.mti-holding-link):not(.mti-platform-map-card__link):hover {
    color: var(--mti-green);
}

.mti-text-muted {
    color: var(--mti-text-muted);
}

/* Primary actions — forest green */
.tf-btn.btn-fill,
.btn-fill.animate-hover-btn {
    background-color: var(--mti-green);
    border-color: var(--mti-green);
    color: var(--mti-white);
}

.tf-btn.btn-fill:hover,
.btn-fill.animate-hover-btn:hover {
    background-color: var(--mti-green-hover);
    border-color: var(--mti-green-hover);
    color: var(--mti-white);
}

.tf-btn.btn-outline {
    border-color: rgba(11, 60, 42, 0.45);
    color: var(--mti-green);
}

.tf-btn.btn-outline:hover {
    background-color: var(--mti-green);
    border-color: var(--mti-green);
    color: var(--mti-white);
}

.tf-btn.btn-line {
    color: var(--mti-green);
}

.tf-btn.btn-line:hover {
    color: var(--mti-green-hover);
}

/* Badges */
.mti-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.3;
    text-transform: uppercase;
}

.mti-badge--brand {
    background: rgba(141, 179, 154, 0.35);
    color: var(--mti-green);
}

.mti-badge--neutral {
    background: rgba(166, 165, 161, 0.28);
    color: var(--mti-ink);
}

.mti-badge--coral {
    background: rgba(240, 120, 86, 0.18);
    color: #c45a3a;
}

.mti-badge--data-mti {
    background: var(--mti-green);
    color: var(--mti-white);
}

.mti-badge--data-blue {
    background: rgba(85, 127, 166, 0.2);
    color: var(--mti-blue);
}

.mti-badge--data-flint {
    background: rgba(166, 165, 161, 0.35);
    color: var(--mti-ink);
}

/* Footer — sand band per brand palette */
.footer.background-gray {
    background-color: var(--mti-surface-footer) !important;
}

.footer.background-gray .footer-menu_item,
.footer.background-gray .footer-infor p {
    color: var(--mti-ink);
}

/* Logo assets — consistent height, no CSS filters */
.mti-logo,
#header .logo-header .logo,
.footer-logo img,
#logo_header,
#logo_header_mobile {
    width: auto;
    height: 40px;
    max-width: min(200px, 42vw);
    object-fit: contain;
    object-position: left center;
}

#logo_header,
#logo_header_mobile {
    max-height: 48px;
    height: auto;
    background: transparent;
    border-radius: 0;
    padding: 0;
}

.logo-header {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
}

.logo-header .logo-white,
.logo-header .logo-green {
    display: none;
}

body.mti-page-home .mti-site-header:not(.mti-site-header--scrolled) .logo-header .logo-white {
    display: block;
}

body.mti-page-home .mti-site-header.mti-site-header--scrolled .logo-header .logo-green,
body:not(.mti-page-home) .logo-header .logo-green {
    display: block;
}

.auth-logo img,
.layout-auth-centered .logo img {
    max-width: 200px;
    width: auto;
    height: auto;
    max-height: 56px;
    object-fit: contain;
}

/* ——— Investor / admin portal (dashboard theme overrides) ——— */
.layout-wrap .tf-button,
.layout-wrap .btn-primary,
.layout-wrap button[type="submit"].tf-button.filled {
    background-color: var(--mti-green) !important;
    border-color: var(--mti-green) !important;
}

.layout-wrap .tf-button:hover,
.layout-wrap .btn-primary:hover {
    background-color: var(--mti-green-hover) !important;
    border-color: var(--mti-green-hover) !important;
}

.layout-wrap a:not(.tf-button):not(.sidebar-menu a) {
    color: var(--mti-blue);
}

.mti-avatar {
    background: var(--mti-green) !important;
}

.mti-device-badge {
    background: rgba(170, 191, 210, 0.45) !important;
    color: var(--mti-blue) !important;
}

.mti-chat-bubble.is-user {
    background: var(--mti-green) !important;
}
