/* =========================================================
   OE SISTEMAS
   OE ERP
   ========================================================= */

:root {

    --erp-primary: #7C5CFF;
    --erp-primary-dark: #6242E6;

    --erp-secondary: #9A7CFF;

    --erp-black: #08090D;
    --erp-dark: #101118;

    --erp-light: #F6F7F9;

}


/* =========================================================
   HERO
   ========================================================= */

.erp-hero {

    position: relative;

    overflow: hidden;

    color: #FFFFFF;

    background:
        radial-gradient(
            circle at 80% 45%,
            rgba(124,92,255,0.18),
            transparent 36%
        ),
        radial-gradient(
            circle at 20% 80%,
            rgba(82,60,190,0.08),
            transparent 30%
        ),
        var(--erp-black);

}


.erp-hero-container {

    min-height: 690px;

    display: grid;

    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(430px, 1.05fr);

    align-items: center;

    gap: 70px;

    padding-top: 85px;
    padding-bottom: 85px;

}


.erp-hero-content {

    max-width: 670px;

}


.erp-eyebrow {

    display: inline-block;

    margin-bottom: 22px;

    color: var(--erp-primary);

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 2px;

}


.erp-hero h1 {

    margin: 0;

    color: #FFFFFF;

    font-size: clamp(44px, 5vw, 72px);

    line-height: 1.02;

    letter-spacing: -2.5px;

}


.erp-hero h1 span {

    display: block;

    margin-top: 8px;

    color: var(--erp-primary);

}


.erp-hero-content > p {

    max-width: 610px;

    margin: 28px 0 32px;

    color: rgba(255,255,255,0.68);

    font-size: 17px;

    line-height: 1.8;

}


.erp-hero-actions {

    display: flex;

    align-items: center;

    gap: 14px;

    flex-wrap: wrap;

}


.erp-hero-actions .btn-primary {

    background: var(--erp-primary);

    border-color: var(--erp-primary);

}


.erp-hero-actions .btn-primary:hover {

    background: var(--erp-primary-dark);

    border-color: var(--erp-primary-dark);

}


.erp-hero-note {

    display: flex;

    align-items: center;

    gap: 9px;

    margin-top: 25px;

    color: rgba(255,255,255,0.38);

    font-size: 10px;

    letter-spacing: 0.7px;

}


.erp-hero-note i {

    color: var(--erp-primary);

}


/* =========================================================
   DASHBOARD
   ========================================================= */

.erp-hero-visual {

    display: flex;

    align-items: center;

    justify-content: center;

}


.erp-dashboard {

    position: relative;

    width: 100%;

    max-width: 570px;

    min-height: 430px;

    box-sizing: border-box;

    overflow: hidden;

    padding: 26px;

    border: 1px solid rgba(255,255,255,0.11);

    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            rgba(28,30,40,0.98),
            rgba(13,14,19,0.98)
        );

    box-shadow:
        0 35px 90px rgba(0,0,0,0.48),
        0 0 80px rgba(124,92,255,0.08);

}


.erp-dashboard-grid {

    position: absolute;

    inset: 0;

    z-index: 0;

    opacity: 0.32;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        );

    background-size: 34px 34px;

}


/* =========================================================
   DASHBOARD HEADER
   ========================================================= */
/* =========================================================
   OE ERP DASHBOARD
   AISLADO DEL CSS GLOBAL
   ========================================================= */

.erp-hero-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}


.erp-dashboard {
    position: relative !important;

    display: flex !important;
    flex-direction: column !important;

    width: 100%;
    max-width: 570px;

    min-height: 430px;

    box-sizing: border-box;

    overflow: hidden;

    padding: 26px;

    border: 1px solid rgba(255,255,255,0.11);
    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            rgba(28,30,40,0.98),
            rgba(13,14,19,0.98)
        );

    box-shadow:
        0 35px 90px rgba(0,0,0,0.48),
        0 0 80px rgba(124,92,255,0.08);
}


/* =========================================================
   GRID DECORATIVO
   ========================================================= */

.erp-dashboard-grid {
    position: absolute !important;

    inset: 0;

    z-index: 0;

    width: 100%;
    height: 100%;

    pointer-events: none;

    opacity: 0.32;

    background-image:
        linear-gradient(
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        );

    background-size: 34px 34px;
}


/* =========================================================
   TODOS LOS ELEMENTOS INTERNOS
   ========================================================= */

.erp-dashboard-header,
.erp-dashboard > .erp-metrics,
.erp-dashboard > .erp-activity,
.erp-dashboard > .erp-dashboard-modules {

    position: relative !important;

    z-index: 2;

    flex-shrink: 0;
}


/* =========================================================
   HEADER
   ========================================================= */

.erp-dashboard-header {

    display: flex !important;

    align-items: flex-start !important;

    justify-content: space-between !important;

    width: 100%;

    min-height: 58px;

    box-sizing: border-box;

    padding: 0 0 18px;

    border-bottom: 1px solid rgba(255,255,255,0.07);
}


.erp-dashboard-header > div {

    position: static !important;

    display: flex !important;

    flex-direction: column !important;

    align-items: flex-start !important;

    gap: 5px;

    margin: 0 !important;

    padding: 0 !important;
}


.erp-dashboard-label {

    display: block !important;

    margin: 0 !important;

    color: var(--erp-primary);

    font-size: 9px;

    font-weight: 800;

    line-height: 1;

    letter-spacing: 1.5px;
}


.erp-dashboard-header strong {

    display: block !important;

    margin: 0 !important;

    color: #FFFFFF;

    font-size: 15px;

    line-height: 1.2;
}


.erp-online {

    display: flex !important;

    align-items: center;

    gap: 7px;

    margin: 0 !important;

    padding: 2px 0 0 !important;

    color: rgba(255,255,255,0.45);

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1px;

    white-space: nowrap;
}


.erp-online span {

    display: block !important;

    width: 6px;

    height: 6px;

    flex-shrink: 0;

    margin: 0 !important;

    border-radius: 50%;

    background: #32D583;

    box-shadow:
        0 0 10px rgba(50,213,131,0.55);
}


/* =========================================================
   MÉTRICAS
   ========================================================= */

.erp-metrics {

    display: grid !important;

    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap: 10px;

    width: 100%;

    margin: 18px 0 0 !important;

    padding: 0 !important;
}


.erp-metric {

    position: static !important;

    display: flex !important;

    flex-direction: column !important;

    justify-content: center !important;

    align-items: flex-start !important;

    min-width: 0;

    min-height: 105px;

    box-sizing: border-box;

    margin: 0 !important;

    padding: 17px !important;

    border: 1px solid rgba(255,255,255,0.07);

    border-radius: 11px;

    background:
        rgba(255,255,255,0.025);
}


.erp-metric > span {

    display: block !important;

    margin: 0 0 9px !important;

    color: rgba(255,255,255,0.35);

    font-size: 8px;

    font-weight: 800;

    line-height: 1;

    letter-spacing: 1px;
}


.erp-metric strong {

    display: block !important;

    margin: 0 !important;

    color: #FFFFFF;

    font-size: 27px;

    line-height: 1;
}


.erp-metric small {

    display: block !important;

    margin: 7px 0 0 !important;

    color: rgba(255,255,255,0.32);

    font-size: 9px;

    line-height: 1.2;
}


/* =========================================================
   ACTIVIDAD
   ========================================================= */

.erp-activity {

    display: block !important;

    width: 100%;

    box-sizing: border-box;

    margin: 14px 0 0 !important;

    padding: 17px !important;

    border: 1px solid rgba(255,255,255,0.07);

    border-radius: 11px;

    background:
        rgba(255,255,255,0.025);
}


.erp-activity-header {

    display: flex !important;

    align-items: center;

    justify-content: space-between;

    width: 100%;

    margin: 0 0 16px !important;

    padding: 0 !important;
}


.erp-activity-header span:first-child {

    display: block !important;

    margin: 0 !important;

    color: rgba(255,255,255,0.55);

    font-size: 8px;

    font-weight: 800;

    line-height: 1;

    letter-spacing: 1px;
}


.erp-activity-header span:last-child {

    display: block !important;

    margin: 0 !important;

    color: rgba(255,255,255,0.25);

    font-size: 8px;

    line-height: 1;
}


.erp-chart {

    display: flex !important;

    align-items: flex-end !important;

    width: 100%;

    height: 82px;

    gap: 8px;

    margin: 0 !important;

    padding: 0 !important;
}


.erp-chart span {

    display: block !important;

    flex: 1 1 0;

    min-width: 0;

    margin: 0 !important;

    padding: 0 !important;

    border-radius: 4px 4px 1px 1px;

    background:
        linear-gradient(
            180deg,
            var(--erp-primary),
            rgba(124,92,255,0.20)
        );

    box-shadow:
        0 0 14px rgba(124,92,255,0.10);
}


/* =========================================================
   MÓDULOS
   ========================================================= */

.erp-dashboard-modules {

    display: grid !important;

    grid-template-columns:
        repeat(4, minmax(0, 1fr)) !important;

    gap: 7px;

    width: 100%;

    margin: 12px 0 0 !important;

    padding: 0 !important;
}


.erp-dashboard-modules span {

    position: static !important;

    display: flex !important;

    align-items: center;

    justify-content: center;

    gap: 7px;

    min-width: 0;

    min-height: 38px;

    box-sizing: border-box;

    margin: 0 !important;

    padding: 7px !important;

    border: 1px solid rgba(255,255,255,0.06);

    border-radius: 7px;

    color: rgba(255,255,255,0.45);

    background:
        rgba(255,255,255,0.018);

    font-size: 8px;

    line-height: 1;

    white-space: nowrap;
}


.erp-dashboard-modules i {

    display: inline-block !important;

    flex-shrink: 0;

    margin: 0 !important;

    color: var(--erp-primary);

    font-size: 10px;
}

/* =========================================================
   INTRO
   ========================================================= */

.erp-intro {

    padding: 90px 0 70px;

    background: #FFFFFF;

}


.erp-intro-grid {

    display: grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(360px,0.85fr);

    align-items: center;

    gap: 80px;

}


.erp-intro-grid .section-heading {

    max-width: 720px;

}


.erp-intro-grid .section-heading p + p {

    margin-top: 16px;

}


.erp-intro-points {

    display: flex;

    flex-direction: column;

    gap: 12px;

}


.erp-intro-point {

    display: flex;

    align-items: center;

    gap: 18px;

    padding: 21px;

    border: 1px solid #E5E7EA;

    border-radius: 12px;

    background: #FFFFFF;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.04);

}


.erp-point-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    width: 48px;

    height: 48px;

    border-radius: 10px;

    color: var(--erp-primary);

    background:
        rgba(124,92,255,0.08);

    font-size: 17px;

}


.erp-intro-point strong {

    display: block;

    margin-bottom: 5px;

    color: var(--erp-black);

    font-size: 15px;

}


.erp-intro-point span {

    display: block;

    color: #777777;

    font-size: 12px;

    line-height: 1.5;

}


/* =========================================================
   MÓDULOS
   ========================================================= */

.erp-modules {

    padding: 75px 0 110px;

    background: #F6F7F9;

}


.erp-module-grid {

    display: grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap: 15px;

    margin-top: 50px;

}


.erp-module-card {

    position: relative;

    min-height: 235px;

    padding: 28px;

    overflow: hidden;

    border: 1px solid #E1E3E7;

    border-radius: 14px;

    background: #FFFFFF;

    box-shadow:
        0 10px 28px rgba(0,0,0,0.035);

    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;

}


.erp-module-card::after {

    content: "";

    position: absolute;

    right: -35px;

    bottom: -35px;

    width: 100px;

    height: 100px;

    border-radius: 50%;

    background:
        rgba(124,92,255,0.035);

}


.erp-module-card:hover {

    transform: translateY(-5px);

    border-color:
        rgba(124,92,255,0.30);

    box-shadow:
        0 20px 45px rgba(0,0,0,0.07);

}


.erp-module-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 45px;

    height: 45px;

    margin-bottom: 22px;

    border-radius: 10px;

    color: var(--erp-primary);

    background:
        rgba(124,92,255,0.08);

    font-size: 17px;

}


.erp-module-number {

    position: absolute;

    top: 28px;

    right: 25px;

    color: #D7D9DE;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1px;

}


.erp-module-card h3 {

    margin: 0 0 11px;

    color: var(--erp-black);

    font-size: 19px;

}


.erp-module-card p {

    margin: 0;

    color: #6D6F75;

    font-size: 12px;

    line-height: 1.7;

}


/* =========================================================
   FLUJO
   ========================================================= */

.erp-flow {

    padding: 110px 0;

    color: #FFFFFF;

    background:
        radial-gradient(
            circle at 15% 50%,
            rgba(124,92,255,0.11),
            transparent 30%
        ),
        #08090D;

}


.erp-flow-grid {

    display: grid;

    grid-template-columns:
        minmax(0,0.75fr)
        minmax(0,1.25fr);

    align-items: center;

    gap: 75px;

}


.erp-flow-content {

    max-width: 570px;

}


.erp-flow-content .section-eyebrow {

    color: var(--erp-primary);

}


.erp-flow-content h2 {

    margin: 0 0 22px;

    color: #FFFFFF;

    font-size: clamp(35px,4vw,52px);

    line-height: 1.08;

    letter-spacing: -1.5px;

}


.erp-flow-content p {

    margin: 0 0 15px;

    color: rgba(255,255,255,0.60);

    font-size: 14px;

    line-height: 1.8;

}


/* =========================================================
   FLUJO VISUAL
   ========================================================= */

.erp-flow-visual {

    position: relative;

    display: grid;

    grid-template-columns:
        repeat(5,1fr);

    gap: 8px;

    padding: 45px 0;

}


.erp-flow-line {

    position: absolute;

    top: 50%;

    left: 8%;

    right: 8%;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(124,92,255,0.65),
            transparent
        );

}


.erp-flow-step {

    position: relative;

    z-index: 2;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 11px;

}


.erp-flow-step > span {

    color: rgba(255,255,255,0.25);

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 1px;

}


.erp-flow-step i {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 56px;

    height: 56px;

    border: 1px solid rgba(124,92,255,0.45);

    border-radius: 50%;

    color: var(--erp-primary);

    background: #101118;

    box-shadow:
        0 0 25px rgba(124,92,255,0.08);

}


.erp-flow-step strong {

    color: rgba(255,255,255,0.72);

    font-size: 10px;

    text-align: center;

}


/* =========================================================
   CARACTERÍSTICAS
   ========================================================= */

.erp-features {

    padding: 100px 0;

    background: #FFFFFF;

}


.erp-feature-grid {

    display: grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap: 12px;

    margin-top: 50px;

}


.erp-feature {

    min-height: 175px;

    padding: 25px;

    border: 1px solid #E5E7EA;

    border-radius: 12px;

    background: #FFFFFF;

}


.erp-feature i {

    display: block;

    margin-bottom: 20px;

    color: var(--erp-primary);

    font-size: 18px;

}


.erp-feature strong {

    display: block;

    margin-bottom: 7px;

    color: var(--erp-black);

    font-size: 14px;

}


.erp-feature span {

    display: block;

    color: #707278;

    font-size: 11px;

    line-height: 1.6;

}


/* =========================================================
   DESARROLLO
   ========================================================= */

.erp-development {

    padding: 85px 0;

    color: #FFFFFF;

    background:
        linear-gradient(
            90deg,
            #0A0B10,
            #14111E
        );

}


.erp-development-content {

    display: grid;

    grid-template-columns:
        minmax(0,0.9fr)
        minmax(0,1.1fr);

    align-items: center;

    gap: 80px;

}


.erp-development-content > div:first-child {

    max-width: 620px;

}


.erp-development-content .section-eyebrow {

    color: var(--erp-primary);

}


.erp-development-content h2 {

    margin: 0 0 20px;

    color: #FFFFFF;

    font-size: clamp(35px,4vw,50px);

    line-height: 1.08;

    letter-spacing: -1.4px;

}


.erp-development-content p {

    margin: 0;

    color: rgba(255,255,255,0.60);

    font-size: 14px;

    line-height: 1.8;

}


.erp-development-points {

    display: grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap: 12px;

}


.erp-development-points span {

    display: flex;

    align-items: center;

    gap: 13px;

    min-height: 62px;

    padding: 16px 18px;

    border: 1px solid rgba(255,255,255,0.10);

    border-radius: 10px;

    background:
        rgba(255,255,255,0.035);

    color: rgba(255,255,255,0.72);

    font-size: 11px;

    font-weight: 700;

}


.erp-development-points i {

    color: var(--erp-primary);

    font-size: 14px;

}


/* =========================================================
   CTA FINAL
   ========================================================= */

.erp-final-cta {

    padding: 110px 0;

    background: #FFFFFF;

}


.erp-final-content {

    max-width: 820px;

    margin: 0 auto;

    text-align: center;

}


.erp-final-content .section-eyebrow {

    color: var(--erp-primary);

}


.erp-final-content h2 {

    margin: 0;

    color: var(--erp-black);

    font-size: clamp(37px,4vw,55px);

    line-height: 1.08;

    letter-spacing: -1.6px;

}


.erp-final-content p {

    max-width: 650px;

    margin: 22px auto 30px;

    color: #666666;

    font-size: 16px;

    line-height: 1.8;

}


.erp-final-actions {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 14px;

    flex-wrap: wrap;

}


.erp-final-actions .btn-primary {

    background: var(--erp-primary);

    border-color: var(--erp-primary);

}


.erp-final-actions .btn-primary:hover {

    background: var(--erp-primary-dark);

    border-color: var(--erp-primary-dark);

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1050px) {


    .erp-hero-container {

        grid-template-columns: 1fr;

        gap: 55px;

    }


    .erp-hero-content {

        max-width: 760px;

    }


    .erp-hero-visual {

        width: 100%;

        max-width: 650px;

        margin: 0 auto;

    }


    .erp-intro-grid {

        grid-template-columns: 1fr;

        gap: 45px;

    }


    .erp-module-grid {

        grid-template-columns:
            repeat(2,minmax(0,1fr));

    }


    .erp-flow-grid {

        grid-template-columns: 1fr;

        gap: 50px;

    }


    .erp-development-content {

        grid-template-columns: 1fr;

        gap: 45px;

    }

}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 600px) {


    .erp-hero-container {

        min-height: auto;

        padding-top: 70px;

        padding-bottom: 65px;

        gap: 45px;

    }


    .erp-hero h1 {

        font-size: 40px;

        letter-spacing: -1.5px;

    }


    .erp-hero-content > p {

        font-size: 15px;

    }


    .erp-hero-actions {

        flex-direction: column;

        align-items: stretch;

    }


    .erp-hero-actions .btn {

        width: 100%;

        text-align: center;

    }


    .erp-dashboard {

        max-width: 390px;

        min-height: 390px;

        padding: 18px;

        border-radius: 17px;

    }


    .erp-dashboard-header {

        padding-bottom: 15px;

    }


    .erp-dashboard-header strong {

        font-size: 13px;

    }


    .erp-metric {

        min-height: 85px;

        padding: 13px;

    }


    .erp-metric strong {

        font-size: 21px;

    }


    .erp-dashboard-modules {

        grid-template-columns:
            repeat(2,1fr);

    }


    .erp-intro,
    .erp-features,
    .erp-final-cta {

        padding-top: 75px;

        padding-bottom: 75px;

    }


    .erp-intro-point {

        padding: 18px;

    }


    .erp-modules {

        padding-top: 75px;

        padding-bottom: 75px;

    }


    .erp-module-grid {

        grid-template-columns: 1fr;

        gap: 12px;

        margin-top: 40px;

    }


    .erp-module-card {

        min-height: auto;

    }


    .erp-flow {

        padding: 75px 0;

    }


    .erp-flow-visual {

        grid-template-columns: 1fr;

        gap: 12px;

        padding: 10px 0;

    }


    .erp-flow-line {

        top: 0;

        bottom: 0;

        left: 50%;

        right: auto;

        width: 1px;

        height: auto;

        background:
            linear-gradient(
                180deg,
                transparent,
                rgba(124,92,255,0.65),
                transparent
            );

    }


    .erp-flow-step {

        display: grid;

        grid-template-columns:
            40px 56px 1fr;

        align-items: center;

        justify-items: start;

        gap: 14px;

    }


    .erp-flow-step > span {

        justify-self: end;

    }


    .erp-flow-step strong {

        text-align: left;

    }


    .erp-feature-grid {

        grid-template-columns:
            repeat(2,minmax(0,1fr));

        gap: 10px;

        margin-top: 40px;

    }


    .erp-feature {

        min-height: 155px;

        padding: 20px;

    }


    .erp-development {

        padding: 75px 0;

    }


    .erp-development-points {

        grid-template-columns: 1fr;

    }


    .erp-final-actions {

        flex-direction: column;

        align-items: stretch;

    }


    .erp-final-actions .btn {

        width: 100%;

        text-align: center;

    }

}