/* ============================================================
   DIGITALIZANDO MX
   MARKETING DIGITAL
   COMPONENTE: ANALÍTICA DIGITAL
============================================================ */

.dmxDigitalAnalytics{

    position:relative;

    overflow:hidden;

    padding:
        clamp(100px,10vw,170px)
        0;

    background:
        radial-gradient(
            circle at 10% 14%,
            rgba(6,103,241,.11),
            transparent 34%
        ),
        radial-gradient(
            circle at 92% 22%,
            rgba(142,91,255,.10),
            transparent 31%
        ),
        radial-gradient(
            circle at 80% 88%,
            rgba(0,217,220,.11),
            transparent 33%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f3f8fc 48%,
            #edf5fa 100%
        );

    isolation:isolate;

}


.dmxDigitalAnalytics::before{

    content:"";

    position:absolute;

    inset:0;

    z-index:-2;

    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(8,38,77,.032) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(8,38,77,.032) 1px,
            transparent 1px
        );

    background-size:
        58px 58px;

    -webkit-mask-image:
        linear-gradient(
            180deg,
            transparent 0%,
            #000 14%,
            #000 88%,
            transparent 100%
        );

    mask-image:
        linear-gradient(
            180deg,
            transparent 0%,
            #000 14%,
            #000 88%,
            transparent 100%
        );

}


.dmxDigitalAnalytics::after{

    content:"";

    position:absolute;

    top:42%;

    left:-220px;

    width:480px;

    height:480px;

    z-index:-1;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(198,255,47,.15),
            rgba(198,255,47,0) 68%
        );

    filter:blur(24px);

    pointer-events:none;

}


/* ============================================================
   GRID PRINCIPAL
============================================================ */

.dmxDigitalAnalyticsGrid{

    display:grid;

    grid-template-columns:
        minmax(0,.92fr)
        minmax(540px,1.08fr);

    gap:
        clamp(64px,7vw,112px);

    align-items:center;

}


/* ============================================================
   CONTENIDO
============================================================ */

.dmxDigitalAnalyticsContent{

    position:relative;

    z-index:5;

}


.dmxDigitalAnalyticsEyebrow{

    display:inline-flex;

    align-items:center;

    gap:12px;

    margin-bottom:24px;

}


.dmxDigitalAnalyticsEyebrow > span{

    width:40px;

    height:2px;

    border-radius:999px;

    background:
        linear-gradient(
            90deg,
            var(--dmx-blue),
            var(--dmx-cyan),
            #8e5bff
        );

    box-shadow:
        0 0 18px rgba(0,217,220,.36);

}


.dmxDigitalAnalyticsEyebrow small{

    color:var(--dmx-blue);

    font-size:.75rem;

    font-weight:850;

    letter-spacing:.15em;

    line-height:1.2;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsContent h2{

    max-width:770px;

    margin:0;

    color:var(--dmx-ink);

    font-size:
        clamp(2.7rem,4.7vw,5.15rem);

    font-weight:850;

    letter-spacing:-.058em;

    line-height:.98;

    text-wrap:balance;

}


.dmxDigitalAnalyticsContent h2 span{

    display:block;

    margin-top:12px;

    color:transparent;

    background:
        linear-gradient(
            108deg,
            var(--dmx-blue) 0%,
            var(--dmx-cyan) 48%,
            #8e5bff 100%
        );

    background-clip:text;

    -webkit-background-clip:text;

}


.dmxDigitalAnalyticsLead{

    max-width:690px;

    margin:
        30px
        0
        0;

    color:var(--dmx-muted);

    font-size:
        clamp(1.02rem,1.35vw,1.18rem);

    line-height:1.85;

}


/* ============================================================
   BENEFICIOS
============================================================ */

.dmxDigitalAnalyticsBenefits{

    display:grid;

    gap:16px;

    margin-top:38px;

}


.dmxDigitalAnalyticsBenefit{

    position:relative;

    display:grid;

    grid-template-columns:
        auto
        minmax(0,1fr);

    gap:18px;

    align-items:flex-start;

    padding:
        20px
        22px;

    border:
        1px solid
        rgba(8,38,77,.08);

    border-radius:20px;

    background:
        rgba(255,255,255,.78);

    box-shadow:
        0 14px 36px rgba(15,51,88,.055);

    backdrop-filter:
        blur(16px);

    -webkit-backdrop-filter:
        blur(16px);

    transition:
        transform .35s ease,
        border-color .35s ease,
        background-color .35s ease,
        box-shadow .35s ease;

}


.dmxDigitalAnalyticsBenefit::after{

    content:"";

    position:absolute;

    top:50%;

    right:18px;

    width:6px;

    height:34px;

    border-radius:999px;

    background:
        linear-gradient(
            180deg,
            var(--dmx-blue),
            var(--dmx-cyan),
            #8e5bff
        );

    opacity:0;

    transform:
        translateY(-50%)
        scaleY(.3);

    transition:
        opacity .35s ease,
        transform .35s ease;

}


.dmxDigitalAnalyticsBenefit:hover{

    transform:
        translateY(-5px)
        translateX(4px);

    border-color:
        rgba(6,103,241,.18);

    background:
        rgba(255,255,255,.96);

    box-shadow:
        0 24px 50px rgba(15,51,88,.10);

}


.dmxDigitalAnalyticsBenefit:hover::after{

    opacity:1;

    transform:
        translateY(-50%)
        scaleY(1);

}


.dmxDigitalAnalyticsBenefitIcon{

    position:relative;

    display:grid;

    place-items:center;

    width:49px;

    height:49px;

    flex:0 0 auto;

    border-radius:16px;

    color:var(--dmx-blue);

    background:
        linear-gradient(
            145deg,
            rgba(6,103,241,.13),
            rgba(0,217,220,.08)
        );

    box-shadow:
        inset 0 0 0 1px rgba(6,103,241,.10);

}


.dmxDigitalAnalyticsBenefit h3{

    margin:
        1px
        0
        7px;

    color:var(--dmx-ink);

    font-size:1rem;

    font-weight:850;

    letter-spacing:-.018em;

    line-height:1.3;

}


.dmxDigitalAnalyticsBenefit p{

    margin:0;

    color:var(--dmx-muted);

    font-size:.92rem;

    line-height:1.7;

}


/* ============================================================
   ICONO MEDICIÓN
============================================================ */

.dmxDigitalAnalyticsIconTracking{

    position:relative;

    width:25px;

    height:25px;

    border:
        2px solid
        currentColor;

    border-radius:50%;

}


.dmxDigitalAnalyticsIconTracking::before{

    content:"";

    position:absolute;

    inset:5px;

    border:
        2px solid
        currentColor;

    border-radius:50%;

}


.dmxDigitalAnalyticsIconTracking::after{

    content:"";

    position:absolute;

    top:50%;

    left:50%;

    width:5px;

    height:5px;

    border-radius:50%;

    background:
        currentColor;

    box-shadow:
        0 -12px 0 -1px currentColor,
        0 12px 0 -1px currentColor,
        12px 0 0 -1px currentColor,
        -12px 0 0 -1px currentColor;

    transform:
        translate(-50%,-50%);

}


/* ============================================================
   ICONO INSIGHTS
============================================================ */

.dmxDigitalAnalyticsIconInsights{

    position:relative;

    width:25px;

    height:24px;

    border-left:
        2px solid
        currentColor;

    border-bottom:
        2px solid
        currentColor;

}


.dmxDigitalAnalyticsIconInsights::before{

    content:"";

    position:absolute;

    left:4px;

    bottom:4px;

    width:16px;

    height:11px;

    border-top:
        2px solid
        currentColor;

    border-right:
        2px solid
        currentColor;

    transform:
        skewY(-28deg);

}


.dmxDigitalAnalyticsIconInsights::after{

    content:"";

    position:absolute;

    top:-1px;

    right:-1px;

    width:6px;

    height:6px;

    border-top:
        2px solid
        currentColor;

    border-right:
        2px solid
        currentColor;

}


/* ============================================================
   ICONO REPORTES
============================================================ */

.dmxDigitalAnalyticsIconReports{

    position:relative;

    width:22px;

    height:25px;

    border:
        2px solid
        currentColor;

    border-radius:5px;

}


.dmxDigitalAnalyticsIconReports::before{

    content:"";

    position:absolute;

    top:5px;

    left:4px;

    width:10px;

    height:2px;

    border-radius:999px;

    background:
        currentColor;

    box-shadow:
        0 5px 0 currentColor,
        0 10px 0 currentColor;

}


.dmxDigitalAnalyticsIconReports::after{

    content:"";

    position:absolute;

    top:-4px;

    right:-4px;

    width:8px;

    height:8px;

    border-radius:50%;

    background:
        var(--dmx-cyan);

    box-shadow:
        0 0 0 4px rgba(0,217,220,.12);

}


/* ============================================================
   MÉTRICAS DISPONIBLES
============================================================ */

.dmxDigitalAnalyticsMetrics{

    margin-top:30px;

}


.dmxDigitalAnalyticsMetrics > p{

    margin:
        0
        0
        13px;

    color:var(--dmx-muted);

    font-size:.72rem;

    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsMetricList{

    display:flex;

    flex-wrap:wrap;

    gap:9px;

}


.dmxDigitalAnalyticsMetricList span{

    display:inline-flex;

    align-items:center;

    min-height:34px;

    padding:
        0
        13px;

    border:
        1px solid
        rgba(8,38,77,.09);

    border-radius:999px;

    color:var(--dmx-navy);

    background:
        rgba(255,255,255,.70);

    font-size:.72rem;

    font-weight:750;

    box-shadow:
        0 8px 20px rgba(15,51,88,.04);

    transition:
        transform .3s ease,
        border-color .3s ease,
        color .3s ease,
        background-color .3s ease;

}


.dmxDigitalAnalyticsMetricList span:hover{

    transform:
        translateY(-3px);

    color:var(--dmx-blue);

    border-color:
        rgba(6,103,241,.20);

    background:
        var(--dmx-white);

}


/* ============================================================
   ACCIONES
============================================================ */

.dmxDigitalAnalyticsActions{

    display:flex;

    flex-wrap:wrap;

    gap:14px;

    align-items:center;

    margin-top:38px;

}


.dmxDigitalAnalyticsPrimary,
.dmxDigitalAnalyticsSecondary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-height:54px;

    border-radius:16px;

    font-size:.92rem;

    font-weight:850;

    line-height:1;

    text-decoration:none;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        color .3s ease,
        border-color .3s ease,
        background-color .3s ease;

}


.dmxDigitalAnalyticsPrimary{

    gap:12px;

    padding:
        0
        24px;

    color:var(--dmx-white);

    background:
        linear-gradient(
            108deg,
            var(--dmx-blue) 0%,
            #087fe8 48%,
            var(--dmx-cyan) 100%
        );

    box-shadow:
        0 18px 38px rgba(6,103,241,.23);

}


.dmxDigitalAnalyticsPrimary svg{

    transition:
        transform .3s ease;

}


.dmxDigitalAnalyticsPrimary:hover{

    transform:
        translateY(-3px);

    box-shadow:
        0 25px 50px rgba(6,103,241,.30);

}


.dmxDigitalAnalyticsPrimary:hover svg{

    transform:
        translateX(4px);

}


.dmxDigitalAnalyticsSecondary{

    padding:
        0
        22px;

    color:var(--dmx-navy);

    border:
        1px solid
        rgba(8,38,77,.14);

    background:
        rgba(255,255,255,.72);

}


.dmxDigitalAnalyticsSecondary:hover{

    transform:
        translateY(-3px);

    color:var(--dmx-blue);

    border-color:
        rgba(6,103,241,.28);

    background:
        var(--dmx-white);

    box-shadow:
        0 16px 34px rgba(15,51,88,.09);

}


.dmxDigitalAnalyticsPrimary:focus-visible,
.dmxDigitalAnalyticsSecondary:focus-visible{

    outline:
        3px solid
        rgba(0,217,220,.38);

    outline-offset:4px;

}


/* ============================================================
   VISUAL
============================================================ */

.dmxDigitalAnalyticsVisual{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    min-height:840px;

    isolation:isolate;

}


.dmxDigitalAnalyticsGlow{

    position:absolute;

    z-index:-2;

    border-radius:50%;

    filter:
        blur(28px);

    pointer-events:none;

}


.dmxDigitalAnalyticsGlowOne{

    top:4%;

    right:1%;

    width:360px;

    height:360px;

    background:
        radial-gradient(
            circle,
            rgba(6,103,241,.24),
            rgba(6,103,241,0) 70%
        );

}


.dmxDigitalAnalyticsGlowTwo{

    bottom:5%;

    left:1%;

    width:320px;

    height:320px;

    background:
        radial-gradient(
            circle,
            rgba(142,91,255,.18),
            rgba(142,91,255,0) 70%
        );

}


/* ============================================================
   DASHBOARD
============================================================ */

.dmxDigitalAnalyticsDashboard{

    position:relative;

    z-index:2;

    width:min(100%,650px);

    padding:
        clamp(24px,3vw,34px);

    border:
        1px solid
        rgba(255,255,255,.76);

    border-radius:32px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.95),
            rgba(241,248,252,.82)
        );

    box-shadow:
        0 42px 115px rgba(15,51,88,.18),
        inset 0 1px 0 rgba(255,255,255,.94);

    backdrop-filter:
        blur(26px);

    -webkit-backdrop-filter:
        blur(26px);

    transform:
        perspective(1500px)
        rotateY(4deg)
        rotateX(1.5deg);

    transform-style:
        preserve-3d;

    transition:
        transform .65s cubic-bezier(.2,.8,.2,1),
        box-shadow .65s ease;

}


.dmxDigitalAnalyticsVisual:hover .dmxDigitalAnalyticsDashboard{

    transform:
        perspective(1500px)
        rotateY(0deg)
        rotateX(0deg)
        translateY(-6px);

    box-shadow:
        0 52px 135px rgba(15,51,88,.23),
        inset 0 1px 0 rgba(255,255,255,.96);

}


/* ============================================================
   HEADER DEL DASHBOARD
============================================================ */

.dmxDigitalAnalyticsDashboardHeader{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:20px;

    padding-bottom:22px;

    border-bottom:
        1px solid
        rgba(8,38,77,.08);

}


.dmxDigitalAnalyticsDashboardIdentity{

    display:flex;

    align-items:center;

    gap:13px;

}


.dmxDigitalAnalyticsDashboardMark{

    display:grid;

    grid-template-columns:
        repeat(2,10px);

    grid-template-rows:
        repeat(2,10px);

    gap:4px;

    flex:0 0 auto;

    padding:10px;

    border-radius:13px;

    background:
        var(--dmx-navy);

    box-shadow:
        0 10px 25px rgba(8,38,77,.20);

}


.dmxDigitalAnalyticsDashboardMark span{

    display:block;

    border-radius:3px;

}


.dmxDigitalAnalyticsDashboardMark span:nth-child(1){

    background:
        var(--dmx-blue);

}


.dmxDigitalAnalyticsDashboardMark span:nth-child(2){

    background:
        var(--dmx-cyan);

}


.dmxDigitalAnalyticsDashboardMark span:nth-child(3){

    background:
        #8e5bff;

}


.dmxDigitalAnalyticsDashboardMark span:nth-child(4){

    background:
        var(--dmx-lime);

}


.dmxDigitalAnalyticsDashboardIdentity small{

    display:block;

    margin-bottom:4px;

    color:var(--dmx-muted);

    font-size:.68rem;

    font-weight:750;

    letter-spacing:.08em;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsDashboardIdentity strong{

    display:block;

    color:var(--dmx-ink);

    font-size:.97rem;

    font-weight:850;

}


.dmxDigitalAnalyticsDashboardStatus{

    display:inline-flex;

    align-items:center;

    gap:8px;

    flex:0 0 auto;

    padding:
        9px
        12px;

    border:
        1px solid
        rgba(0,217,220,.16);

    border-radius:999px;

    color:#08757a;

    background:
        rgba(0,217,220,.09);

    font-size:.68rem;

    font-weight:800;

}


.dmxDigitalAnalyticsDashboardStatus > span{

    width:7px;

    height:7px;

    border-radius:50%;

    background:
        var(--dmx-cyan);

    box-shadow:
        0 0 0 5px rgba(0,217,220,.12);

    animation:
        dmxDigitalAnalyticsStatusPulse
        2.2s ease-in-out
        infinite;

}


/* ============================================================
   RESUMEN Y GRÁFICA
============================================================ */

.dmxDigitalAnalyticsSummary{

    display:grid;

    grid-template-columns:
        minmax(165px,.64fr)
        minmax(0,1.36fr);

    gap:26px;

    align-items:center;

    padding:
        28px
        0
        24px;

}


.dmxDigitalAnalyticsSummaryMain small{

    display:block;

    margin-bottom:8px;

    color:var(--dmx-muted);

    font-size:.68rem;

    font-weight:750;

    letter-spacing:.06em;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsSummaryMain strong{

    display:block;

    color:var(--dmx-ink);

    font-size:
        clamp(2.25rem,4vw,3.5rem);

    font-weight:900;

    letter-spacing:-.06em;

    line-height:1;

}


.dmxDigitalAnalyticsSummaryMain span{

    display:block;

    margin-top:9px;

    color:#087d70;

    font-size:.69rem;

    font-weight:800;

    line-height:1.45;

}


.dmxDigitalAnalyticsTrend{

    position:relative;

    min-height:150px;

    overflow:hidden;

    border:
        1px solid
        rgba(8,38,77,.06);

    border-radius:18px;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.80),
            rgba(246,250,253,.66)
        );

}


.dmxDigitalAnalyticsTrendGrid{

    position:absolute;

    inset:0;

    display:grid;

    grid-template-rows:
        repeat(4,1fr);

    pointer-events:none;

}


.dmxDigitalAnalyticsTrendGrid span{

    border-bottom:
        1px dashed
        rgba(8,38,77,.07);

}


.dmxDigitalAnalyticsTrendGrid span:last-child{

    border-bottom:0;

}


.dmxDigitalAnalyticsTrend svg{

    position:absolute;

    inset:
        12px
        12px
        8px;

    width:
        calc(100% - 24px);

    height:
        calc(100% - 20px);

    overflow:visible;

}


.dmxDigitalAnalyticsTrendArea{

    opacity:.9;

    transform-origin:
        bottom center;

    animation:
        dmxDigitalAnalyticsAreaReveal
        1.3s ease
        both;

}


.dmxDigitalAnalyticsTrendLine{

    stroke-dasharray:600;

    stroke-dashoffset:600;

    animation:
        dmxDigitalAnalyticsLineReveal
        1.7s cubic-bezier(.2,.8,.2,1)
        forwards;

}


/* ============================================================
   TARJETAS
============================================================ */

.dmxDigitalAnalyticsCards{

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:11px;

}


.dmxDigitalAnalyticsCard{

    padding:
        17px
        16px;

    border:
        1px solid
        rgba(8,38,77,.07);

    border-radius:17px;

    background:
        rgba(255,255,255,.74);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;

}


.dmxDigitalAnalyticsCard:hover{

    transform:
        translateY(-4px);

    border-color:
        rgba(6,103,241,.16);

    box-shadow:
        0 15px 30px rgba(15,51,88,.08);

}


.dmxDigitalAnalyticsCardHeader{

    display:flex;

    align-items:flex-start;

    justify-content:space-between;

    gap:8px;

}


.dmxDigitalAnalyticsCardHeader small{

    color:var(--dmx-muted);

    font-size:.63rem;

    font-weight:750;

    line-height:1.35;

}


.dmxDigitalAnalyticsCardHeader span{

    flex:0 0 auto;

    font-size:.60rem;

    font-weight:850;

}


.dmxDigitalAnalyticsCardHeader .is-positive{

    color:#087d70;

}


.dmxDigitalAnalyticsCard > strong{

    display:block;

    margin-top:9px;

    color:var(--dmx-ink);

    font-size:1.18rem;

    font-weight:900;

    letter-spacing:-.035em;

}


/* ============================================================
   MINI BARRAS
============================================================ */

.dmxDigitalAnalyticsMiniBars{

    display:flex;

    align-items:flex-end;

    gap:4px;

    height:28px;

    margin-top:12px;

}


.dmxDigitalAnalyticsMiniBars span{

    display:block;

    width:100%;

    height:var(--dmx-value);

    min-height:4px;

    border-radius:
        4px
        4px
        2px
        2px;

    background:
        linear-gradient(
            180deg,
            var(--dmx-cyan),
            var(--dmx-blue)
        );

    transform-origin:
        bottom center;

    animation:
        dmxDigitalAnalyticsBarReveal
        .8s ease
        both;

}


.dmxDigitalAnalyticsMiniBars span:nth-child(2){

    animation-delay:.06s;

}


.dmxDigitalAnalyticsMiniBars span:nth-child(3){

    animation-delay:.12s;

}


.dmxDigitalAnalyticsMiniBars span:nth-child(4){

    animation-delay:.18s;

}


.dmxDigitalAnalyticsMiniBars span:nth-child(5){

    animation-delay:.24s;

}


.dmxDigitalAnalyticsMiniBars span:nth-child(6){

    animation-delay:.30s;

}


.dmxDigitalAnalyticsMiniBars span:nth-child(7){

    animation-delay:.36s;

}


/* ============================================================
   BARRAS DE PROGRESO
============================================================ */

.dmxDigitalAnalyticsProgress{

    height:7px;

    margin-top:17px;

    overflow:hidden;

    border-radius:999px;

    background:
        rgba(8,38,77,.08);

}


.dmxDigitalAnalyticsProgress span{

    display:block;

    width:var(--dmx-progress);

    height:100%;

    border-radius:inherit;

    background:
        linear-gradient(
            90deg,
            var(--dmx-blue),
            var(--dmx-cyan)
        );

    transform-origin:left center;

    animation:
        dmxDigitalAnalyticsProgressReveal
        1.1s ease
        both;

}


.dmxDigitalAnalyticsProgress.is-purple span{

    background:
        linear-gradient(
            90deg,
            #8e5bff,
            var(--dmx-cyan)
        );

}


/* ============================================================
   CANALES
============================================================ */

.dmxDigitalAnalyticsChannels{

    margin-top:18px;

    padding:
        20px;

    border:
        1px solid
        rgba(8,38,77,.07);

    border-radius:21px;

    background:
        rgba(248,251,254,.82);

}


.dmxDigitalAnalyticsChannelsHeader{

    display:flex;

    align-items:flex-start;

    justify-content:space-between;

    gap:18px;

    margin-bottom:15px;

}


.dmxDigitalAnalyticsChannelsHeader small{

    display:block;

    margin-bottom:4px;

    color:var(--dmx-muted);

    font-size:.64rem;

    font-weight:750;

    letter-spacing:.06em;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsChannelsHeader strong{

    display:block;

    color:var(--dmx-ink);

    font-size:.91rem;

    font-weight:850;

}


.dmxDigitalAnalyticsChannelsHeader > span{

    color:var(--dmx-muted);

    font-size:.62rem;

    font-weight:750;

}


.dmxDigitalAnalyticsChannelList{

    display:grid;

    gap:9px;

}


.dmxDigitalAnalyticsChannel{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:16px;

    padding:
        11px
        12px;

    border-radius:15px;

    background:
        rgba(255,255,255,.72);

    transition:
        transform .3s ease,
        background-color .3s ease,
        box-shadow .3s ease;

}


.dmxDigitalAnalyticsChannel:hover{

    transform:
        translateX(4px);

    background:
        var(--dmx-white);

    box-shadow:
        0 13px 28px rgba(15,51,88,.07);

}


.dmxDigitalAnalyticsChannelInfo{

    display:flex;

    align-items:center;

    gap:11px;

    min-width:0;

}


.dmxDigitalAnalyticsChannelInfo > span{

    position:relative;

    width:35px;

    height:35px;

    flex:0 0 auto;

    border-radius:12px;

}


.dmxDigitalAnalyticsChannelInfo > span::before{

    content:"";

    position:absolute;

    top:8px;

    left:8px;

    width:19px;

    height:19px;

    border:
        2px solid
        currentColor;

    border-radius:50%;

}


.dmxDigitalAnalyticsChannelInfo > span::after{

    content:"";

    position:absolute;

    top:15px;

    left:15px;

    width:5px;

    height:5px;

    border-radius:50%;

    background:
        currentColor;

}


.dmxDigitalAnalyticsChannelInfo .is-blue{

    color:var(--dmx-blue);

    background:
        rgba(6,103,241,.10);

}


.dmxDigitalAnalyticsChannelInfo .is-cyan{

    color:#068d95;

    background:
        rgba(0,217,220,.11);

}


.dmxDigitalAnalyticsChannelInfo .is-purple{

    color:#7842c7;

    background:
        rgba(142,91,255,.11);

}


.dmxDigitalAnalyticsChannelInfo .is-lime{

    color:#678f0b;

    background:
        rgba(198,255,47,.20);

}


.dmxDigitalAnalyticsChannelInfo strong{

    display:block;

    overflow:hidden;

    color:var(--dmx-ink);

    font-size:.74rem;

    font-weight:850;

    text-overflow:ellipsis;

    white-space:nowrap;

}


.dmxDigitalAnalyticsChannelInfo small{

    display:block;

    overflow:hidden;

    margin-top:4px;

    color:var(--dmx-muted);

    font-size:.58rem;

    text-overflow:ellipsis;

    white-space:nowrap;

}


.dmxDigitalAnalyticsChannelResult{

    flex:0 0 auto;

    text-align:right;

}


.dmxDigitalAnalyticsChannelResult strong{

    display:block;

    color:var(--dmx-ink);

    font-size:.74rem;

    font-weight:900;

}


.dmxDigitalAnalyticsChannelResult span{

    display:block;

    margin-top:4px;

    color:var(--dmx-muted);

    font-size:.58rem;

}


/* ============================================================
   EMBUDO
============================================================ */

.dmxDigitalAnalyticsFunnel{

    margin-top:18px;

    padding:
        20px;

    border:
        1px solid
        rgba(8,38,77,.07);

    border-radius:21px;

    background:
        rgba(255,255,255,.72);

}


.dmxDigitalAnalyticsFunnelHeader{

    display:flex;

    align-items:flex-start;

    justify-content:space-between;

    gap:18px;

    margin-bottom:17px;

}


.dmxDigitalAnalyticsFunnelHeader small{

    display:block;

    margin-bottom:4px;

    color:var(--dmx-muted);

    font-size:.64rem;

    font-weight:750;

    letter-spacing:.06em;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsFunnelHeader strong{

    display:block;

    color:var(--dmx-ink);

    font-size:.91rem;

    font-weight:850;

}


.dmxDigitalAnalyticsFunnelHeader > span{

    color:#087d70;

    font-size:.62rem;

    font-weight:850;

}


.dmxDigitalAnalyticsFunnelSteps{

    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:8px;

}


.dmxDigitalAnalyticsFunnelSteps > div{

    position:relative;

    min-width:0;

    padding:
        14px
        10px;

    overflow:hidden;

    border-radius:14px;

    text-align:center;

}


.dmxDigitalAnalyticsFunnelSteps > div:nth-child(1){

    color:#0b4a9c;

    background:
        rgba(6,103,241,.12);

}


.dmxDigitalAnalyticsFunnelSteps > div:nth-child(2){

    color:#087780;

    background:
        rgba(0,217,220,.13);

}


.dmxDigitalAnalyticsFunnelSteps > div:nth-child(3){

    color:#6940a8;

    background:
        rgba(142,91,255,.12);

}


.dmxDigitalAnalyticsFunnelSteps > div:nth-child(4){

    color:#597d08;

    background:
        rgba(198,255,47,.24);

}


.dmxDigitalAnalyticsFunnelSteps > div::after{

    content:"";

    position:absolute;

    top:50%;

    right:-9px;

    z-index:2;

    width:18px;

    height:18px;

    background:
        inherit;

    transform:
        translateY(-50%)
        rotate(45deg);

}


.dmxDigitalAnalyticsFunnelSteps > div:last-child::after{

    display:none;

}


.dmxDigitalAnalyticsFunnelSteps span{

    display:block;

    margin-bottom:6px;

    font-size:.56rem;

    font-weight:900;

}


.dmxDigitalAnalyticsFunnelSteps strong{

    display:block;

    overflow:hidden;

    color:var(--dmx-ink);

    font-size:.68rem;

    font-weight:850;

    text-overflow:ellipsis;

    white-space:nowrap;

}


.dmxDigitalAnalyticsFunnelSteps small{

    display:block;

    margin-top:5px;

    color:var(--dmx-muted);

    font-size:.57rem;

    font-weight:750;

}


/* ============================================================
   ELEMENTOS FLOTANTES
============================================================ */

.dmxDigitalAnalyticsFloating{

    position:absolute;

    z-index:5;

    border:
        1px solid
        rgba(255,255,255,.84);

    background:
        rgba(255,255,255,.88);

    box-shadow:
        0 24px 65px rgba(15,51,88,.16);

    backdrop-filter:
        blur(20px);

    -webkit-backdrop-filter:
        blur(20px);

    pointer-events:none;

}


.dmxDigitalAnalyticsFloatingRealtime,
.dmxDigitalAnalyticsFloatingGoal{

    display:flex;

    align-items:center;

    gap:11px;

    padding:
        13px
        16px;

    border-radius:17px;

}


.dmxDigitalAnalyticsFloatingRealtime{

    top:8%;

    left:-5%;

    animation:
        dmxDigitalAnalyticsFloatRealtime
        5.6s ease-in-out
        infinite;

}


.dmxDigitalAnalyticsFloatingGoal{

    right:-5%;

    bottom:18%;

    animation:
        dmxDigitalAnalyticsFloatGoal
        6.1s ease-in-out
        infinite;

}


.dmxDigitalAnalyticsFloating small{

    display:block;

    margin-bottom:3px;

    color:var(--dmx-muted);

    font-size:.60rem;

    font-weight:750;

}


.dmxDigitalAnalyticsFloating strong{

    display:block;

    color:var(--dmx-ink);

    font-size:.74rem;

    font-weight:850;

}


.dmxDigitalAnalyticsRealtimePulse{

    width:13px;

    height:13px;

    flex:0 0 auto;

    border-radius:50%;

    background:
        var(--dmx-cyan);

    box-shadow:
        0 0 0 7px rgba(0,217,220,.13),
        0 0 22px rgba(0,217,220,.35);

    animation:
        dmxDigitalAnalyticsRealtimePulse
        2s ease-in-out
        infinite;

}


.dmxDigitalAnalyticsGoalIcon{

    display:grid;

    place-items:center;

    width:36px;

    height:36px;

    flex:0 0 auto;

    border-radius:50%;

    color:#087966;

    background:
        rgba(0,190,150,.11);

    box-shadow:
        0 0 0 6px rgba(0,190,150,.06);

    font-size:.88rem;

    font-weight:900;

}


.dmxDigitalAnalyticsFloatingInsight{

    top:8%;

    right:-8%;

    min-width:220px;

    padding:
        15px
        17px;

    border-radius:18px;

    animation:
        dmxDigitalAnalyticsFloatInsight
        6.4s ease-in-out
        infinite;

}


.dmxDigitalAnalyticsFloatingInsight > strong{

    max-width:180px;

    line-height:1.4;

}


.dmxDigitalAnalyticsFloatingInsight > span{

    display:inline-flex;

    margin-top:8px;

    padding:
        5px
        8px;

    border-radius:999px;

    color:#087966;

    background:
        rgba(0,190,150,.10);

    font-size:.58rem;

    font-weight:850;

}


.dmxDigitalAnalyticsFloatingScore{

    bottom:5%;

    left:3%;

    min-width:175px;

    padding:
        15px
        17px;

    border-radius:18px;

    animation:
        dmxDigitalAnalyticsFloatScore
        5.8s ease-in-out
        infinite;

}


.dmxDigitalAnalyticsFloatingScore strong{

    margin-top:4px;

    font-size:1.35rem;

    letter-spacing:-.04em;

}


.dmxDigitalAnalyticsFloatingScore > div{

    height:6px;

    margin-top:10px;

    overflow:hidden;

    border-radius:999px;

    background:
        rgba(8,38,77,.08);

}


.dmxDigitalAnalyticsFloatingScore > div span{

    display:block;

    width:92%;

    height:100%;

    border-radius:inherit;

    background:
        linear-gradient(
            90deg,
            var(--dmx-blue),
            var(--dmx-cyan),
            #8e5bff
        );

}


/* ============================================================
   PROCESO
============================================================ */

.dmxDigitalAnalyticsProcess{

    position:relative;

    z-index:4;

    margin-top:
        clamp(76px,8vw,118px);

    padding:
        clamp(30px,4vw,48px);

    border:
        1px solid
        rgba(8,38,77,.08);

    border-radius:28px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.90),
            rgba(244,249,253,.78)
        );

    box-shadow:
        0 30px 80px rgba(15,51,88,.10);

    backdrop-filter:
        blur(20px);

    -webkit-backdrop-filter:
        blur(20px);

}


.dmxDigitalAnalyticsProcessHeader{

    display:grid;

    grid-template-columns:
        minmax(0,1.1fr)
        minmax(280px,.9fr);

    gap:
        clamp(28px,5vw,70px);

    align-items:end;

    padding-bottom:28px;

    border-bottom:
        1px solid
        rgba(8,38,77,.08);

}


.dmxDigitalAnalyticsProcessHeader small{

    display:block;

    margin-bottom:10px;

    color:var(--dmx-blue);

    font-size:.70rem;

    font-weight:850;

    letter-spacing:.13em;

    text-transform:uppercase;

}


.dmxDigitalAnalyticsProcessHeader h3{

    max-width:650px;

    margin:0;

    color:var(--dmx-ink);

    font-size:
        clamp(1.75rem,3vw,3rem);

    font-weight:850;

    letter-spacing:-.045em;

    line-height:1.05;

    text-wrap:balance;

}


.dmxDigitalAnalyticsProcessHeader p{

    max-width:500px;

    margin:0;

    color:var(--dmx-muted);

    font-size:.98rem;

    line-height:1.75;

}


.dmxDigitalAnalyticsProcessList{

    position:relative;

    display:grid;

    grid-template-columns:
        repeat(5,minmax(0,1fr));

    gap:14px;

    margin:
        30px
        0
        0;

    padding:0;

    list-style:none;

}


.dmxDigitalAnalyticsProcessList::before{

    content:"";

    position:absolute;

    top:28px;

    left:8%;

    right:8%;

    height:2px;

    background:
        linear-gradient(
            90deg,
            rgba(6,103,241,.14),
            rgba(0,217,220,.35),
            rgba(142,91,255,.30),
            rgba(198,255,47,.28)
        );

}


.dmxDigitalAnalyticsProcessList li{

    position:relative;

    z-index:2;

    min-width:0;

    padding:
        0
        8px;

    text-align:center;

}


.dmxDigitalAnalyticsProcessList li > span{

    display:grid;

    place-items:center;

    width:56px;

    height:56px;

    margin:
        0
        auto
        16px;

    border:
        1px solid
        rgba(6,103,241,.14);

    border-radius:18px;

    color:var(--dmx-blue);

    background:
        rgba(255,255,255,.92);

    box-shadow:
        0 14px 30px rgba(15,51,88,.09);

    font-size:.72rem;

    font-weight:900;

    transition:
        transform .3s ease,
        color .3s ease,
        background-color .3s ease,
        box-shadow .3s ease;

}


.dmxDigitalAnalyticsProcessList li:hover > span{

    transform:
        translateY(-5px)
        rotate(-3deg);

    color:var(--dmx-white);

    background:
        linear-gradient(
            145deg,
            var(--dmx-blue),
            var(--dmx-cyan)
        );

    box-shadow:
        0 20px 38px rgba(6,103,241,.22);

}


.dmxDigitalAnalyticsProcessList strong{

    display:block;

    color:var(--dmx-ink);

    font-size:.88rem;

    font-weight:850;

}


.dmxDigitalAnalyticsProcessList small{

    display:block;

    margin-top:5px;

    color:var(--dmx-muted);

    font-size:.66rem;

    line-height:1.5;

}


/* ============================================================
   ANIMACIONES
============================================================ */

@keyframes dmxDigitalAnalyticsStatusPulse{

    0%,
    100%{

        transform:scale(1);

        box-shadow:
            0 0 0 5px rgba(0,217,220,.12);

    }

    50%{

        transform:scale(.86);

        box-shadow:
            0 0 0 9px rgba(0,217,220,.04);

    }

}


@keyframes dmxDigitalAnalyticsRealtimePulse{

    0%,
    100%{

        transform:scale(1);

    }

    50%{

        transform:scale(.82);

    }

}


@keyframes dmxDigitalAnalyticsAreaReveal{

    from{

        opacity:0;

        transform:
            scaleY(.25);

    }

    to{

        opacity:.9;

        transform:
            scaleY(1);

    }

}


@keyframes dmxDigitalAnalyticsLineReveal{

    to{

        stroke-dashoffset:0;

    }

}


@keyframes dmxDigitalAnalyticsBarReveal{

    from{

        transform:
            scaleY(0);

    }

    to{

        transform:
            scaleY(1);

    }

}


@keyframes dmxDigitalAnalyticsProgressReveal{

    from{

        transform:
            scaleX(0);

    }

    to{

        transform:
            scaleX(1);

    }

}


@keyframes dmxDigitalAnalyticsFloatRealtime{

    0%,
    100%{

        transform:
            translate3d(0,0,0)
            rotate(-1deg);

    }

    50%{

        transform:
            translate3d(8px,-10px,0)
            rotate(1deg);

    }

}


@keyframes dmxDigitalAnalyticsFloatGoal{

    0%,
    100%{

        transform:
            translate3d(0,0,0);

    }

    50%{

        transform:
            translate3d(-8px,-11px,0);

    }

}


@keyframes dmxDigitalAnalyticsFloatInsight{

    0%,
    100%{

        transform:
            translate3d(0,0,0)
            rotate(1deg);

    }

    50%{

        transform:
            translate3d(-7px,-12px,0)
            rotate(-1deg);

    }

}


@keyframes dmxDigitalAnalyticsFloatScore{

    0%,
    100%{

        transform:
            translate3d(0,0,0);

    }

    50%{

        transform:
            translate3d(6px,-9px,0);

    }

}


/* ============================================================
   RESPONSIVE 1320px
============================================================ */

@media (max-width:1320px){

    .dmxDigitalAnalyticsGrid{

        grid-template-columns:
            minmax(0,.94fr)
            minmax(500px,1.06fr);

        gap:58px;

    }


    .dmxDigitalAnalyticsVisual{

        min-height:800px;

    }


    .dmxDigitalAnalyticsFloatingInsight{

        right:-3%;

    }


    .dmxDigitalAnalyticsFloatingRealtime{

        left:-1%;

    }


    .dmxDigitalAnalyticsFloatingGoal{

        right:-1%;

    }

}


/* ============================================================
   RESPONSIVE 1120px
============================================================ */

@media (max-width:1120px){

    .dmxDigitalAnalyticsGrid{

        grid-template-columns:
            minmax(0,1fr);

    }


    .dmxDigitalAnalyticsContent{

        max-width:820px;

    }


    .dmxDigitalAnalyticsVisual{

        width:min(100%,820px);

        min-height:850px;

        margin:
            18px
            auto
            0;

    }


    .dmxDigitalAnalyticsDashboard{

        width:min(100%,680px);

    }


    .dmxDigitalAnalyticsFloatingInsight{

        right:0;

    }


    .dmxDigitalAnalyticsFloatingRealtime{

        left:0;

    }


    .dmxDigitalAnalyticsFloatingGoal{

        right:0;

    }


    .dmxDigitalAnalyticsProcessList{

        grid-template-columns:
            repeat(5,minmax(130px,1fr));

        overflow-x:auto;

        padding-bottom:12px;

        scrollbar-width:thin;

    }


    .dmxDigitalAnalyticsProcessList::before{

        left:65px;

        right:65px;

    }

}


/* ============================================================
   RESPONSIVE 820px
============================================================ */

@media (max-width:820px){

    .dmxDigitalAnalytics{

        padding:
            90px
            0;

    }


    .dmxDigitalAnalyticsContent h2{

        font-size:
            clamp(2.35rem,10.5vw,3.9rem);

    }


    .dmxDigitalAnalyticsActions{

        align-items:stretch;

    }


    .dmxDigitalAnalyticsPrimary,
    .dmxDigitalAnalyticsSecondary{

        width:100%;

    }


    .dmxDigitalAnalyticsVisual{

        min-height:auto;

        padding:
            54px
            0
            110px;

    }


    .dmxDigitalAnalyticsDashboard{

        padding:
            22px;

        border-radius:26px;

        transform:none;

    }


    .dmxDigitalAnalyticsVisual:hover .dmxDigitalAnalyticsDashboard{

        transform:
            translateY(-3px);

    }


    .dmxDigitalAnalyticsSummary{

        grid-template-columns:
            minmax(0,1fr);

        align-items:start;

    }


    .dmxDigitalAnalyticsProcessHeader{

        grid-template-columns:
            minmax(0,1fr);

        align-items:start;

    }


    .dmxDigitalAnalyticsProcessList{

        grid-template-columns:
            repeat(5,minmax(150px,1fr));

    }


    .dmxDigitalAnalyticsFloatingInsight{

        top:0;

        right:12px;

    }


    .dmxDigitalAnalyticsFloatingRealtime{

        top:23px;

        left:12px;

    }


    .dmxDigitalAnalyticsFloatingGoal{

        right:12px;

        bottom:35px;

    }


    .dmxDigitalAnalyticsFloatingScore{

        display:none;

    }

}


/* ============================================================
   RESPONSIVE 600px
============================================================ */

@media (max-width:600px){

    .dmxDigitalAnalytics::before{

        background-size:
            40px 40px;

    }


    .dmxDigitalAnalyticsContent h2{

        letter-spacing:-.046em;

        line-height:1.02;

    }


    .dmxDigitalAnalyticsLead{

        margin-top:24px;

        font-size:.98rem;

        line-height:1.75;

    }


    .dmxDigitalAnalyticsBenefits{

        margin-top:30px;

    }


    .dmxDigitalAnalyticsBenefit{

        grid-template-columns:
            minmax(0,1fr);

        gap:14px;

        padding:
            18px;

    }


    .dmxDigitalAnalyticsBenefit::after{

        display:none;

    }


    .dmxDigitalAnalyticsBenefitIcon{

        width:45px;

        height:45px;

    }


    .dmxDigitalAnalyticsDashboard{

        padding:
            18px;

        border-radius:22px;

    }


    .dmxDigitalAnalyticsDashboardHeader{

        align-items:flex-start;

        flex-direction:column;

        gap:14px;

    }


    .dmxDigitalAnalyticsDashboardStatus{

        align-self:flex-start;

    }


    .dmxDigitalAnalyticsCards{

        grid-template-columns:
            minmax(0,1fr);

    }


    .dmxDigitalAnalyticsChannels{

        padding:
            16px;

    }


    .dmxDigitalAnalyticsFunnel{

        padding:
            16px;

    }


    .dmxDigitalAnalyticsFunnelSteps{

        grid-template-columns:
            repeat(2,minmax(0,1fr));

    }


    .dmxDigitalAnalyticsFunnelSteps > div:nth-child(2)::after{

        display:none;

    }


    .dmxDigitalAnalyticsFloatingInsight,
    .dmxDigitalAnalyticsFloatingRealtime,
    .dmxDigitalAnalyticsFloatingGoal{

        display:none;

    }


    .dmxDigitalAnalyticsVisual{

        padding:
            20px
            0
            0;

    }


    .dmxDigitalAnalyticsProcess{

        margin-top:65px;

        padding:
            26px
            20px;

        border-radius:23px;

    }


    .dmxDigitalAnalyticsProcessList{

        grid-template-columns:
            minmax(0,1fr);

        gap:10px;

        overflow:visible;

    }


    .dmxDigitalAnalyticsProcessList::before{

        top:28px;

        bottom:28px;

        left:27px;

        right:auto;

        width:2px;

        height:auto;

    }


    .dmxDigitalAnalyticsProcessList li{

        display:grid;

        grid-template-columns:
            56px
            minmax(0,1fr);

        gap:16px;

        align-items:center;

        padding:0;

        text-align:left;

    }


    .dmxDigitalAnalyticsProcessList li > span{

        margin:0;

    }


    .dmxDigitalAnalyticsProcessList small{

        margin-top:3px;

    }

}


/* ============================================================
   RESPONSIVE 420px
============================================================ */

@media (max-width:420px){

    .dmxDigitalAnalyticsEyebrow{

        align-items:flex-start;

    }


    .dmxDigitalAnalyticsEyebrow > span{

        margin-top:7px;

    }


    .dmxDigitalAnalyticsContent h2{

        font-size:
            clamp(2.2rem,12vw,3.1rem);

    }


    .dmxDigitalAnalyticsChannelsHeader,
    .dmxDigitalAnalyticsFunnelHeader{

        align-items:flex-start;

        flex-direction:column;

        gap:6px;

    }


    .dmxDigitalAnalyticsChannel{

        align-items:flex-start;

    }


    .dmxDigitalAnalyticsFunnelSteps{

        grid-template-columns:
            minmax(0,1fr);

    }


    .dmxDigitalAnalyticsFunnelSteps > div::after{

        display:none;

    }


    .dmxDigitalAnalyticsProcessHeader h3{

        font-size:1.75rem;

    }

}


/* ============================================================
   REDUCCIÓN DE MOVIMIENTO
============================================================ */

@media (prefers-reduced-motion:reduce){

    .dmxDigitalAnalyticsDashboardStatus > span,
    .dmxDigitalAnalyticsRealtimePulse,
    .dmxDigitalAnalyticsTrendArea,
    .dmxDigitalAnalyticsTrendLine,
    .dmxDigitalAnalyticsMiniBars span,
    .dmxDigitalAnalyticsProgress span,
    .dmxDigitalAnalyticsFloatingRealtime,
    .dmxDigitalAnalyticsFloatingGoal,
    .dmxDigitalAnalyticsFloatingInsight,
    .dmxDigitalAnalyticsFloatingScore{

        animation:none;

    }


    .dmxDigitalAnalyticsTrendLine{

        stroke-dashoffset:0;

    }


    .dmxDigitalAnalyticsBenefit,
    .dmxDigitalAnalyticsMetricList span,
    .dmxDigitalAnalyticsPrimary,
    .dmxDigitalAnalyticsSecondary,
    .dmxDigitalAnalyticsDashboard,
    .dmxDigitalAnalyticsCard,
    .dmxDigitalAnalyticsChannel,
    .dmxDigitalAnalyticsProcessList li > span{

        transition:none;

    }

}