/*==========================================================
AVISO DE PRIVACIDAD
==========================================================*/

.dmxPrivacyHero{

    position:relative;

    overflow:hidden;

    padding:

        clamp(140px,14vw,190px)

        0

        clamp(90px,9vw,120px);

    background:
    linear-gradient(
    180deg,
    #06111d,
    #081827);

    color:#fff;

}

.dmxPrivacyHeroBackground{

    position:absolute;

    inset:0;

    pointer-events:none;

    overflow:hidden;

}

.dmxPrivacyGrid{

    position:absolute;

    inset:0;

    opacity:.18;

    background-image:

        linear-gradient(
        rgba(255,255,255,.05) 1px,
        transparent 1px),

        linear-gradient(
        90deg,
        rgba(255,255,255,.05) 1px,
        transparent 1px);

    background-size:60px 60px;

}

.dmxPrivacyGlow{

    position:absolute;

    border-radius:50%;

    filter:blur(40px);

}

.dmxPrivacyGlowOne{

    width:620px;

    aspect-ratio:1;

    top:-220px;

    left:-180px;

    background:

    radial-gradient(circle,
    rgba(23,105,255,.22),
    transparent 72%);

}

.dmxPrivacyGlowTwo{

    width:700px;

    aspect-ratio:1;

    bottom:-260px;

    right:-240px;

    background:

    radial-gradient(circle,
    rgba(0,205,255,.16),
    transparent 72%);

}


/*==========================================================
HERO
==========================================================*/

.dmxPrivacyHeroContent{

    position:relative;

    z-index:2;

    max-width:860px;

}

.dmxPrivacyEyebrow{

    display:inline-flex;

    margin-bottom:22px;

    color:#42A5FF;

    font-size:12px;

    font-weight:800;

    letter-spacing:.22em;

    text-transform:uppercase;

}

.dmxPrivacyHero h1{

    margin:0;

    font-size:

        clamp(56px,6vw,88px);

    font-weight:900;

    line-height:1.02;

    letter-spacing:-.05em;

    text-wrap:balance;

}

.dmxPrivacyHero p{

    max-width:720px;

    margin:

        34px

        0

        0;

    color:#B9C6D6;

    font-size:20px;

    line-height:1.9;

}


/*==========================================================
META
==========================================================*/

.dmxPrivacyMeta{

    display:flex;

    flex-wrap:wrap;

    gap:26px;

    margin-top:45px;

}

.dmxPrivacyMeta>div{

    min-width:180px;

    padding:

        18px

        20px;

    border:1px solid rgba(255,255,255,.08);

    border-radius:18px;

    background:

    rgba(255,255,255,.05);

    backdrop-filter:blur(12px);

}

.dmxPrivacyMeta small{

    display:block;

    margin-bottom:8px;

    color:#8EA5BC;

    font-size:11px;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.dmxPrivacyMeta strong{

    color:#fff;

    font-size:15px;

    font-weight:700;

}


/*==========================================================
LAYOUT
==========================================================*/

.dmxPrivacyContent{

    background:#f6f8fb;

    padding:

        90px

        0;

}

.dmxPrivacyContent .container{

    display:grid;

    grid-template-columns:

        280px

        minmax(0,1fr);

    gap:70px;

    align-items:start;

}

.dmxPrivacyBody{

    min-width:0;

}


/*==========================================================
SIDEBAR
==========================================================*/

.dmxPrivacySidebar{

    position:sticky;

    top:120px;

    padding:

        30px;

    border-radius:24px;

    background:#fff;

    box-shadow:

        0 25px 70px

        rgba(25,45,80,.08);

}

.dmxPrivacySidebar small{

    display:block;

    margin-bottom:20px;

    color:#287BFF;

    font-size:11px;

    font-weight:800;

    letter-spacing:.16em;

    text-transform:uppercase;

}

.dmxPrivacySidebar nav{

    display:flex;

    flex-direction:column;

    gap:6px;

}

.dmxPrivacySidebar nav a{

    display:flex;

    align-items:center;

    min-height:44px;

    padding:

        0

        14px;

    border-radius:12px;

    color:#526377;

    font-size:14px;

    font-weight:600;

    text-decoration:none;

    transition:.30s;

}

.dmxPrivacySidebar nav a:hover{

    color:#287BFF;

    background:

        rgba(40,123,255,.08);

    transform:translateX(5px);

}
/*==========================================================
SECCIONES
==========================================================*/

.dmxPrivacySection{

    margin-bottom:90px;

}

.dmxPrivacySection:last-child{

    margin-bottom:0;

}

.dmxPrivacySectionNumber{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:56px;

    height:56px;

    margin-bottom:24px;

    border-radius:18px;

    background:

        linear-gradient(
        135deg,
        #287BFF,
        #14C7E6);

    color:#fff;

    font-size:14px;

    font-weight:800;

    letter-spacing:.12em;

    box-shadow:

        0 18px 40px

        rgba(40,123,255,.20);

}

.dmxPrivacySection h2{

    margin:0 0 24px;

    color:#13253B;

    font-size:

        clamp(34px,4vw,50px);

    font-weight:850;

    line-height:1.08;

    letter-spacing:-.03em;

    text-wrap:balance;

}

.dmxPrivacySection h3{

    margin:0 0 14px;

    color:#183250;

    font-size:20px;

    font-weight:750;

}

.dmxPrivacySection p{

    margin:0 0 24px;

    color:#55667B;

    font-size:17px;

    line-height:1.9;

}

.dmxPrivacySection p:last-child{

    margin-bottom:0;

}



/*==========================================================
TARJETA PRINCIPAL
==========================================================*/

.dmxPrivacyCard{

    margin-top:36px;

    padding:

        34px;

    border:1px solid rgba(40,123,255,.10);

    border-radius:26px;

    background:#fff;

    box-shadow:

        0 30px 70px

        rgba(30,55,90,.06);

}

.dmxPrivacyCard ul{

    margin:18px 0 0;

    padding:0;

    list-style:none;

}

.dmxPrivacyCard li{

    display:flex;

    gap:8px;

    margin-bottom:14px;

    color:#5A6D84;

    line-height:1.7;

}

.dmxPrivacyCard li:last-child{

    margin-bottom:0;

}

.dmxPrivacyCard strong{

    color:#13253B;

}



/*==========================================================
GRID
==========================================================*/

.dmxPrivacyGridCards{

    display:grid;

    grid-template-columns:

        repeat(2,minmax(0,1fr));

    gap:24px;

    margin:

        42px

        0;

}



/*==========================================================
MINI TARJETAS
==========================================================*/

.dmxPrivacyMiniCard{

    position:relative;

    overflow:hidden;

    padding:

        28px;

    border-radius:22px;

    border:1px solid rgba(18,40,80,.07);

    background:#fff;

    transition:

        transform .30s ease,

        box-shadow .30s ease,

        border-color .30s ease;

}

.dmxPrivacyMiniCard::before{

    content:"";

    position:absolute;

    inset:0;

    pointer-events:none;

    background:

        linear-gradient(
        135deg,

        rgba(40,123,255,.035),

        transparent 45%,

        transparent 70%,

        rgba(20,199,230,.04));

}

.dmxPrivacyMiniCard:hover{

    transform:

        translateY(-6px);

    border-color:

        rgba(40,123,255,.15);

    box-shadow:

        0 28px 55px

        rgba(30,55,90,.10);

}

.dmxPrivacyMiniCard h3{

    margin-bottom:14px;

    color:#16324D;

    font-size:19px;

}

.dmxPrivacyMiniCard p{

    margin:0;

    font-size:15px;

    color:#607288;

    line-height:1.8;

}

.dmxPrivacyMiniCard ul{

    margin:0;

    padding-left:20px;

}

.dmxPrivacyMiniCard li{

    margin-bottom:10px;

    color:#607288;

    line-height:1.7;

}

.dmxPrivacyMiniCard li:last-child{

    margin-bottom:0;

}



/*==========================================================
AVISO
==========================================================*/

.dmxPrivacyNotice{

    margin-top:38px;

    padding:

        24px

        30px;

    border-left:5px solid #287BFF;

    border-radius:18px;

    background:

        linear-gradient(
        90deg,

        rgba(40,123,255,.08),

        rgba(40,123,255,.03));

}

.dmxPrivacyNotice strong{

    display:block;

    margin-bottom:10px;

    color:#16324D;

    font-size:16px;

    font-weight:750;

}

.dmxPrivacyNotice p{

    margin:0;

}
/*==========================================================
CONTACTO
==========================================================*/

.dmxPrivacyContact{

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:24px;

    margin-top:42px;

}

.dmxPrivacyContactCard{

    position:relative;

    overflow:hidden;

    padding:30px;

    border-radius:24px;

    background:#ffffff;

    border:1px solid rgba(17,40,76,.08);

    box-shadow:
        0 25px 70px
        rgba(20,40,80,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;

}

.dmxPrivacyContactCard::before{

    content:"";

    position:absolute;

    inset:0;

    pointer-events:none;

    background:
        linear-gradient(
        135deg,

        rgba(23,105,255,.04),

        transparent 40%,

        transparent 70%,

        rgba(20,199,230,.04));

}

.dmxPrivacyContactCard:hover{

    transform:translateY(-6px);

    border-color:rgba(23,105,255,.16);

    box-shadow:
        0 35px 75px
        rgba(20,40,80,.10);

}

.dmxPrivacyContactCard small{

    display:block;

    margin-bottom:12px;

    color:#287BFF;

    font-size:11px;

    font-weight:800;

    letter-spacing:.14em;

    text-transform:uppercase;

}

.dmxPrivacyContactCard a{

    color:#16324D;

    font-size:17px;

    font-weight:700;

    text-decoration:none;

    word-break:break-word;

    transition:.3s;

}

.dmxPrivacyContactCard a:hover{

    color:#287BFF;

}

.dmxPrivacyContactCard strong{

    display:block;

    color:#16324D;

    font-size:16px;

    line-height:1.8;

}



/*==========================================================
MENSAJE FINAL
==========================================================*/

.dmxPrivacyClosing{

    margin-top:60px;

    padding:45px;

    border-radius:30px;

    text-align:center;

    background:
        linear-gradient(
        145deg,

        #0b1830,

        #102442);

    color:#ffffff;

    overflow:hidden;

    position:relative;

}

.dmxPrivacyClosing::before{

    content:"";

    position:absolute;

    inset:0;

    pointer-events:none;

    background:
        radial-gradient(
        circle at top right,

        rgba(255,255,255,.08),

        transparent 35%);

}

.dmxPrivacyClosing h3{

    margin:0 0 20px;

    color:#ffffff;

    font-size:

        clamp(30px,4vw,44px);

    font-weight:850;

    letter-spacing:-.03em;

}

.dmxPrivacyClosing p{

    max-width:760px;

    margin:auto;

    color:#C5D2DF;

    font-size:18px;

    line-height:1.9;

}



/*==========================================================
FOCUS
==========================================================*/

.dmxPrivacySidebar a:focus-visible,
.dmxPrivacyContactCard a:focus-visible{

    outline:3px solid rgba(23,105,255,.25);

    outline-offset:5px;

    border-radius:8px;

}



/*==========================================================
RESPONSIVE 1100
==========================================================*/

@media (max-width:1100px){

    .dmxPrivacyContent .container{

        grid-template-columns:1fr;

        gap:45px;

    }

    .dmxPrivacySidebar{

        position:relative;

        top:auto;

    }

}



/*==========================================================
RESPONSIVE 900
==========================================================*/

@media (max-width:900px){

    .dmxPrivacyGridCards{

        grid-template-columns:1fr;

    }

    .dmxPrivacyContact{

        grid-template-columns:1fr;

    }

}



/*==========================================================
RESPONSIVE 768
==========================================================*/

@media (max-width:768px){

    .dmxPrivacyHero{

        padding:
            120px
            0
            70px;

    }

    .dmxPrivacyHero h1{

        font-size:

            clamp(42px,11vw,60px);

    }

    .dmxPrivacyHero p{

        font-size:17px;

    }

    .dmxPrivacyMeta{

        flex-direction:column;

    }

    .dmxPrivacyMeta>div{

        width:100%;

    }

    .dmxPrivacyContent{

        padding:70px 0;

    }

    .dmxPrivacySection{

        margin-bottom:70px;

    }

    .dmxPrivacySection h2{

        font-size:

            clamp(32px,8vw,42px);

    }

    .dmxPrivacySection p{

        font-size:16px;

    }

    .dmxPrivacyCard{

        padding:28px;

    }

    .dmxPrivacyMiniCard{

        padding:24px;

    }

    .dmxPrivacyNotice{

        padding:22px;

    }

    .dmxPrivacyClosing{

        padding:34px 26px;

    }

}



/*==========================================================
RESPONSIVE 560
==========================================================*/

@media (max-width:560px){

    .dmxPrivacySidebar{

        padding:22px;

    }

    .dmxPrivacySidebar nav a{

        min-height:40px;

        font-size:13px;

    }

    .dmxPrivacySectionNumber{

        width:48px;

        height:48px;

        border-radius:15px;

        font-size:12px;

    }

    .dmxPrivacyCard{

        padding:22px;

    }

    .dmxPrivacyMiniCard{

        padding:20px;

    }

    .dmxPrivacyContactCard{

        padding:22px;

    }

    .dmxPrivacyClosing{

        border-radius:22px;

    }

}



/*==========================================================
REDUCED MOTION
==========================================================*/

@media (prefers-reduced-motion:reduce){

    .dmxPrivacyMiniCard,
    .dmxPrivacyContactCard,
    .dmxPrivacySidebar a{

        transition:none;

    }

    .dmxPrivacyMiniCard:hover,
    .dmxPrivacyContactCard:hover,
    .dmxPrivacySidebar a:hover{

        transform:none;

    }

}