/* ==========================================================================
   InfiERP — Public landing page & custom pages
   ========================================================================== */
/* ---------- 1. Brand font (self-hosted, OFL) ---------- */
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-500-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-600-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 800; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-800-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-ext-400-normal.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-ext-600-normal.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("../assets/fonts/infierp/plus-jakarta-sans-latin-ext-700-normal.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

/* ---------- 2. Design tokens ---------- */
:root {
    /* Brand palette — sampled from the InfiERP logo */
    --if-navy-950: #061531;
    --if-navy-900: #08204a;
    --if-navy-800: #0b2b5f;
    --if-navy: #0d3a7e;          /* "Infi" wordmark */
    --if-blue: #0b63ce;          /* "i C" mark */
    --if-blue-700: #0a4fa8;
    --if-cyan: #0bb4ec;          /* growth arrow */
    --if-orange: #ff6a13;        /* "ERP" wordmark */
    --if-orange-700: #e8530a;
    --if-amber: #ffa908;         /* chart bars / dot */

    /* Neutrals */
    --if-bg: #f3f6fb;
    --if-surface: #ffffff;
    --if-surface-2: #f7f9fc;
    --if-border: #e4eaf3;
    --if-border-strong: #d5deea;
    --if-text: #15233b;
    --if-text-2: #3c4a63;
    --if-muted: #6b7a93;

    /* Semantic */
    --if-success: #12a46b;
    --if-danger: #e5484d;
    --if-warning: #f5a20a;
    --if-info: #0aa5d8;

    /* Shape & depth */
    --if-radius-sm: 8px;
    --if-radius: 12px;
    --if-radius-lg: 18px;
    --if-shadow-xs: 0 1px 2px rgba(13, 38, 76, .05);
    --if-shadow-sm: 0 1px 2px rgba(13, 38, 76, .04), 0 6px 18px -10px rgba(13, 38, 76, .14);
    --if-shadow: 0 2px 4px rgba(13, 38, 76, .04), 0 18px 40px -18px rgba(13, 38, 76, .22);
    --if-font: "Plus Jakarta Sans", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;

    /* Accent used by interactive elements. Follows the company's colour choice in
       Settings → Brand Settings; the default (theme-3 / no choice) is InfiERP Blue. */
    --theme-color: var(--if-blue);
    --if-primary: var(--theme-color);
    --if-primary-soft: color-mix(in srgb, var(--if-primary) 10%, #fff);
    --if-primary-soft-2: color-mix(in srgb, var(--if-primary) 18%, #fff);
    --if-primary-ring: color-mix(in srgb, var(--if-primary) 22%, transparent);
    --if-primary-grad: linear-gradient(135deg, var(--if-primary) 0%, color-mix(in srgb, var(--if-primary) 62%, var(--if-cyan)) 100%);
    --if-brand-grad: linear-gradient(120deg, var(--if-navy-900) 0%, var(--if-navy) 45%, var(--if-blue) 100%);
    --if-accent-grad: linear-gradient(135deg, var(--if-amber) 0%, var(--if-orange) 100%);
}


body { font-family: var(--if-font) !important; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 { font-family: var(--if-font); }

.bg-dark { background: linear-gradient(150deg, #061531 0%, #0b2b5f 55%, #0b4fae 100%) !important; }
.bg-dark .card {
    background: rgba(255, 255, 255, .06) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
}
.bg-dark .card.bg-primary,
.bg-dark .card:hover { background: linear-gradient(135deg, #0b63ce, #0bb4ec) !important; border-color: transparent !important; }

.main-header .navbar .navbar-nav .nav-item .nav-link { color: var(--if-navy-900); font-weight: 600; }
.main-header .navbar .navbar-nav .nav-item .nav-link:hover { color: var(--if-blue); }
.main-header .navbar-toggler { border-color: var(--if-border-strong); }
.site-footer .footer-row .ftr-col .list-unstyled li a { color: var(--if-text-2); }
.site-footer .footer-row .ftr-col .list-unstyled li a:hover { color: var(--if-blue); }
.price-card .p-price { border-bottom-color: var(--if-border); color: var(--if-navy-900); font-weight: 800; letter-spacing: -0.03em; }
.price-card { border-radius: 22px !important; }

section h2, section .h2 { font-weight: 800; letter-spacing: -0.025em; }
.title span, .title h2 span { color: var(--if-orange); }
.badge.bg-primary, .title .badge { background: var(--if-primary-soft) !important; color: var(--if-blue) !important; }

.main-banner, body[class] .main-banner.bg-primary {
    position: relative;
    background:
        radial-gradient(700px 380px at 85% 10%, rgba(11, 180, 236, .18), transparent 70%),
        radial-gradient(600px 320px at 5% 95%, rgba(255, 106, 19, .10), transparent 70%),
        linear-gradient(180deg, #eaf2fd 0%, #f7faff 70%, #ffffff 100%) !important;
    color: var(--if-text-2);
}
.main-banner h1, .main-banner h2, .main-banner .h1 { color: var(--if-navy-900) !important; font-weight: 800; letter-spacing: -0.03em; }
.main-banner p { color: var(--if-text-2); }
.main-banner .btn-outline-dark, .main-banner .btn { border-radius: 12px !important; }
.main-banner .badge, .main-banner .bg-white { box-shadow: 0 6px 18px -10px rgba(13, 38, 76, .35); }
.main-banner .badge { background: var(--if-accent-grad) !important; color: #fff !important; }
.main-header { background: transparent; }
.main-header .navbar { background: transparent !important; box-shadow: none !important; }
body[class] .subscription.bg-primary, body[class] .card.bg-primary, body[class] .bg-primary:not(.main-banner):not(.badge) { background: var(--if-brand-grad) !important; }
body[class] .navbar-toggler.bg-primary { background: var(--if-blue) !important; }
.btn-primary, .btn.btn-light-primary { border-radius: 12px !important; }
.btn-outline-light { border-radius: 12px !important; }

/* screenshots / feature images */
.screenshots img, .features-card img, .other-features img, .home-banner-image img, .dash-preview img {
    border-radius: 14px;
    box-shadow: 0 30px 60px -30px rgba(6, 21, 49, .45);
}
.landing_logo { filter: grayscale(1) !important; opacity: .5; max-height: 44px; width: auto; }

@media (max-width: 767.98px) {
    section h2, section .h2 { font-size: 24px; }
}
