/* Política de Cookies */
/* =========================================================
   VARIABLES Y BASE
========================================================= */

.ge-cookies-page,
.ge-cookies-page *,
.ge-cookies-page *::before,
.ge-cookies-page *::after{
    box-sizing:border-box;
}

.ge-cookies-page{
    --ge-green:#31c91d;
    --ge-green-light:#42d52f;
    --ge-green-dark:#08752d;
    --ge-green-deep:#04521f;

    --ge-yellow:#ffd523;
    --ge-yellow-soft:#fff7cf;

    --ge-white:#ffffff;
    --ge-soft:#f4faf1;
    --ge-soft-2:#e9f6e5;

    --ge-black:#172019;
    --ge-text:#3f4942;
    --ge-muted:#6e786f;
    --ge-border:#dce9da;

    --ge-shadow:0 20px 55px rgba(19,72,31,.09);
    --ge-max:1180px;

    width:100%;
    margin:0;
    padding:0;

    overflow:hidden;

    font-family:"Poppins",Arial,Helvetica,sans-serif;
    color:var(--ge-text);
    background:var(--ge-white);

    -webkit-font-smoothing:antialiased;
}

.ge-cookies-page h1,
.ge-cookies-page h2,
.ge-cookies-page h3,
.ge-cookies-page p{
    font-family:inherit;
}

.ge-cookies-page a{
    transition:color .2s ease;
}

/* =========================================================
   HERO
========================================================= */

.ge-cookies-page .ge-legal-hero{
    position:relative;

    min-height:390px;

    display:flex;
    align-items:center;

    overflow:hidden;

    background:var(--ge-green-deep);
}

.ge-cookies-page .ge-legal-hero__image{
    position:absolute;
    inset:0;
    z-index:1;
}

.ge-cookies-page .ge-legal-hero__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;

    transform:scale(1.01);
}

.ge-cookies-page .ge-legal-hero__overlay{
    position:absolute;
    inset:0;
    z-index:2;

    background:linear-gradient(
        90deg,
        rgba(4,82,31,.94) 0%,
        rgba(4,82,31,.84) 36%,
        rgba(4,82,31,.47) 67%,
        rgba(4,82,31,.28) 100%
    );
}

.ge-cookies-page .ge-legal-hero::after{
    content:"";

    position:absolute;
    z-index:3;

    width:260px;
    height:260px;

    right:-110px;
    bottom:-160px;

    border-radius:50%;

    background:rgba(255,213,35,.20);

    pointer-events:none;
}

.ge-cookies-page .ge-legal-hero__container{
    position:relative;
    z-index:4;

    width:100%;
    max-width:var(--ge-max);

    margin:0 auto;

    padding:70px 30px;
}

.ge-cookies-page .ge-legal-hero__content{
    max-width:680px;
}

.ge-cookies-page .ge-legal-hero__eyebrow{
    margin:0 0 13px!important;

    color:var(--ge-yellow);

    font-size:12px;
    line-height:1.4;

    font-weight:700;

    letter-spacing:.1em;
    text-transform:uppercase;
}

.ge-cookies-page .ge-legal-hero h1{
    margin:0 0 15px!important;

    color:var(--ge-white);

    font-size:clamp(40px,5vw,58px);
    line-height:1.08;

    font-weight:700;
    letter-spacing:-.035em;
}

.ge-cookies-page .ge-legal-hero__lead{
    max-width:590px;

    margin:0!important;

    color:rgba(255,255,255,.85);

    font-size:16px;
    line-height:1.75;
}

/* =========================================================
   INTRODUCCIÓN
========================================================= */

.ge-cookies-page .ge-legal-intro{
    background:var(--ge-soft);
}

.ge-cookies-page .ge-legal-intro__container{
    width:100%;
    max-width:var(--ge-max);

    margin:0 auto;
    padding:31px 30px;

    display:flex;
    align-items:center;
    gap:15px;
}

.ge-cookies-page .ge-legal-intro__icon{
    width:44px;
    height:44px;

    flex:0 0 44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:12px;

    background:var(--ge-green-dark);
    color:var(--ge-white);
}

.ge-cookies-page .ge-legal-intro__icon svg{
    width:21px;
    height:21px;

    fill:none;
    stroke:currentColor;

    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.ge-cookies-page .ge-legal-intro p{
    margin:0!important;

    color:var(--ge-text);

    font-size:14px;
    line-height:1.7;
}

/* =========================================================
   CONTENEDOR DEL DOCUMENTO
========================================================= */

.ge-cookies-page .ge-legal-content{
    padding:80px 0 95px;

    background:#ffffff;
}

.ge-cookies-page .ge-legal-container{
    width:100%;
    max-width:var(--ge-max);

    margin:0 auto;
    padding:0 30px;
}

.ge-cookies-page .ge-legal-document{
    width:100%;
    max-width:960px;

    margin:0 auto;
}

.ge-cookies-page .ge-legal-document-header{
    margin-bottom:35px;
    padding-bottom:27px;

    border-bottom:1px solid var(--ge-border);
}

.ge-cookies-page .ge-legal-label{
    display:inline-flex;
    align-items:center;
    gap:9px;

    margin-bottom:15px;

    color:var(--ge-green-dark);

    font-size:11px;
    line-height:1.4;
    font-weight:700;

    letter-spacing:1.1px;
    text-transform:uppercase;
}

.ge-cookies-page .ge-legal-label::before{
    content:"";

    width:7px;
    height:7px;

    border-radius:50%;
    background:var(--ge-yellow);
}

.ge-cookies-page .ge-legal-document-header h2{
    margin:0 0 15px!important;

    color:var(--ge-black);

    font-size:clamp(29px,3.4vw,40px);
    line-height:1.2;

    font-weight:700;
    letter-spacing:-1px;
}

.ge-cookies-page .ge-legal-document-header h2 span{
    color:var(--ge-green-dark);
}

.ge-cookies-page .ge-legal-document-header p{
    max-width:780px;

    margin:0!important;

    color:var(--ge-text);

    font-size:14px;
    line-height:1.85;
}

/* =========================================================
   ZONA PARA COMPLIANZ
========================================================= */

.ge-cookies-page .ge-complianz-container{
    width:100%;

    padding:38px 42px;

    border:1px solid var(--ge-border);
    border-radius:22px;

    background:#ffffff;

    box-shadow:var(--ge-shadow);
}

/* =========================================================
   ESTILOS DEL DOCUMENTO COMPLIANZ
========================================================= */

.ge-cookies-page .ge-complianz-container #cmplz-document,
.ge-cookies-page .ge-complianz-container .cmplz-document{
    width:100%;
    max-width:none!important;

    margin:0!important;
    padding:0!important;

    color:var(--ge-text);

    font-family:"Poppins",Arial,Helvetica,sans-serif;
    font-size:14px;
    line-height:1.85;
}

.ge-cookies-page .ge-complianz-container #cmplz-document h2,
.ge-cookies-page .ge-complianz-container .cmplz-document h2{
    margin:34px 0 16px!important;

    color:var(--ge-black)!important;

    font-family:"Poppins",Arial,Helvetica,sans-serif!important;

    font-size:25px!important;
    line-height:1.3!important;

    font-weight:700!important;
    letter-spacing:-.02em;
}

.ge-cookies-page .ge-complianz-container #cmplz-document h2:first-child,
.ge-cookies-page .ge-complianz-container .cmplz-document h2:first-child{
    margin-top:0!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document h3,
.ge-cookies-page .ge-complianz-container .cmplz-document h3{
    margin:26px 0 13px!important;

    color:var(--ge-green-dark)!important;

    font-family:"Poppins",Arial,Helvetica,sans-serif!important;

    font-size:18px!important;
    line-height:1.4!important;

    font-weight:700!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document h4,
.ge-cookies-page .ge-complianz-container .cmplz-document h4{
    color:var(--ge-black)!important;

    font-family:"Poppins",Arial,Helvetica,sans-serif!important;

    font-size:15px!important;
    font-weight:700!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document p,
.ge-cookies-page .ge-complianz-container .cmplz-document p{
    margin:0 0 16px!important;

    color:var(--ge-text)!important;

    font-family:"Poppins",Arial,Helvetica,sans-serif!important;

    font-size:14px!important;
    line-height:1.85!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document a,
.ge-cookies-page .ge-complianz-container .cmplz-document a{
    color:var(--ge-green-dark)!important;

    font-weight:600!important;

    text-decoration:underline!important;
    text-underline-offset:3px;
}

.ge-cookies-page .ge-complianz-container #cmplz-document a:hover,
.ge-cookies-page .ge-complianz-container .cmplz-document a:hover{
    color:var(--ge-green-deep)!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document ul,
.ge-cookies-page .ge-complianz-container #cmplz-document ol,
.ge-cookies-page .ge-complianz-container .cmplz-document ul,
.ge-cookies-page .ge-complianz-container .cmplz-document ol{
    margin:16px 0 20px!important;
    padding-left:24px!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document li,
.ge-cookies-page .ge-complianz-container .cmplz-document li{
    margin-bottom:9px!important;

    color:var(--ge-text)!important;

    font-size:14px!important;
    line-height:1.75!important;
}

/* =========================================================
   TABLAS COMPLIANZ
========================================================= */

.ge-cookies-page .ge-complianz-container #cmplz-document .cmplz-dropdown,
.ge-cookies-page .ge-complianz-container .cmplz-document .cmplz-dropdown{
    margin:12px 0!important;

    border:1px solid var(--ge-border)!important;
    border-radius:13px!important;

    background:var(--ge-soft)!important;

    overflow:hidden;
}

.ge-cookies-page .ge-complianz-container #cmplz-document .cmplz-dropdown summary,
.ge-cookies-page .ge-complianz-container .cmplz-document .cmplz-dropdown summary{
    padding:16px!important;

    color:var(--ge-black)!important;

    font-weight:600!important;

    cursor:pointer;
}

.ge-cookies-page .ge-complianz-container #cmplz-document table,
.ge-cookies-page .ge-complianz-container .cmplz-document table{
    width:100%!important;

    border-collapse:collapse;

    font-size:12px!important;
}

.ge-cookies-page .ge-complianz-container #cmplz-document th,
.ge-cookies-page .ge-complianz-container .cmplz-document th{
    padding:12px!important;

    background:var(--ge-soft-2)!important;

    color:var(--ge-green-deep)!important;

    font-weight:700!important;

    text-align:left;
}

.ge-cookies-page .ge-complianz-container #cmplz-document td,
.ge-cookies-page .ge-complianz-container .cmplz-document td{
    padding:12px!important;

    border-bottom:1px solid var(--ge-border)!important;

    color:var(--ge-text)!important;

    vertical-align:top;

    overflow-wrap:anywhere;
}

/* =========================================================
   BOTONES COMPLIANZ
========================================================= */

.ge-cookies-page .ge-complianz-container .cmplz-manage-consent,
.ge-cookies-page .ge-complianz-container .cmplz-btn{
    border-radius:999px!important;

    background:var(--ge-green-dark)!important;

    color:#ffffff!important;

    font-family:"Poppins",Arial,Helvetica,sans-serif!important;

    font-weight:600!important;
}

/* =========================================================
   INFORMACIÓN FINAL
========================================================= */

.ge-cookies-page .ge-legal-final{
    max-width:960px;

    margin:45px auto 0;
    padding:27px 30px;

    display:flex;
    align-items:center;
    gap:18px;

    border-radius:18px;

    background:linear-gradient(
        135deg,
        var(--ge-green-dark),
        var(--ge-green-deep)
    );

    color:#ffffff;
}

.ge-cookies-page .ge-legal-final__icon{
    width:46px;
    height:46px;

    flex:0 0 46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:13px;

    background:rgba(255,255,255,.11);
    color:var(--ge-yellow);
}

.ge-cookies-page .ge-legal-final__icon svg{
    width:22px;
    height:22px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
}

.ge-cookies-page .ge-legal-final strong{
    display:block;

    margin-bottom:4px;

    color:#ffffff;

    font-size:14px;
    line-height:1.4;

    font-weight:600;
}

.ge-cookies-page .ge-legal-final p{
    margin:0!important;

    color:rgba(255,255,255,.8);

    font-size:12.5px;
    line-height:1.65;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:900px){

    .ge-cookies-page .ge-legal-content{
        padding:65px 0 75px;
    }

    .ge-cookies-page .ge-complianz-container{
        padding:30px;
    }

}

@media(max-width:600px){

    .ge-cookies-page .ge-legal-hero{
        min-height:350px;
    }

    .ge-cookies-page .ge-legal-hero__overlay{
        background:linear-gradient(
            90deg,
            rgba(4,82,31,.94),
            rgba(4,82,31,.72)
        );
    }

    .ge-cookies-page .ge-legal-hero__container{
        padding:58px 17px;
    }

    .ge-cookies-page .ge-legal-hero h1{
        font-size:clamp(35px,11vw,44px);
    }

    .ge-cookies-page .ge-legal-hero__lead{
        font-size:14px;
    }

    .ge-cookies-page .ge-legal-intro__container{
        padding:24px 17px;

        align-items:flex-start;
    }

    .ge-cookies-page .ge-legal-intro p{
        font-size:13px;
    }

    .ge-cookies-page .ge-legal-content{
        padding:55px 0 65px;
    }

    .ge-cookies-page .ge-legal-container{
        padding:0 17px;
    }

    .ge-cookies-page .ge-legal-document-header h2{
        font-size:29px;
    }

    .ge-cookies-page .ge-complianz-container{
        padding:24px 18px;

        border-radius:17px;
    }

    .ge-cookies-page .ge-complianz-container #cmplz-document h2,
    .ge-cookies-page .ge-complianz-container .cmplz-document h2{
        font-size:21px!important;
    }

    .ge-cookies-page .ge-complianz-container #cmplz-document h3,
    .ge-cookies-page .ge-complianz-container .cmplz-document h3{
        font-size:16px!important;
    }

    .ge-cookies-page .ge-complianz-container #cmplz-document p,
    .ge-cookies-page .ge-complianz-container .cmplz-document p{
        font-size:13px!important;
    }

    .ge-cookies-page .ge-legal-final{
        padding:23px 20px;
        align-items:flex-start;
    }

}

/* =========================================================
   ACCESIBILIDAD
========================================================= */

.ge-cookies-page a:focus-visible,
.ge-cookies-page button:focus-visible{
    outline:3px solid var(--ge-yellow);
    outline-offset:3px;
}
