#elp2{--navy:#102e4e;--cyan:#11b8ca;--ink:#122c40;--muted:#637386;color:var(--ink);font-family:Manrope,Arial,sans-serif}#elp2 *{box-sizing:border-box}#elp2 .elp2-container{width:min(1200px,calc(100% - 44px));margin-inline:auto}#elp2 .elp2-hero{background:linear-gradient(95deg,rgba(7,27,49,.89),rgba(8,40,66,.65)),url('https://elengygroup.com/wp-content/uploads/2026/09/breadcrumb-1.jpg') center/cover;min-height:340px;display:flex;align-items:center;color:white;padding:70px 0}#elp2 .elp2-hero h1{color:white;font-size:clamp(26px,3vw,40px);line-height:1.12;margin:12px 0 17px;font-weight:800}#elp2 .elp2-hero p{max-width:800px;color:#e1ebf3;font-size:17px}#elp2 .elp2-hero nav{font-size:13px;color:#d4e4ed;line-height:1.7}#elp2 .elp2-hero nav a{color:white;text-decoration:none}#elp2 .elp2-hero nav span{margin:0 5px}#elp2 .elp2-kicker{font-size:12px;letter-spacing:.16em;font-weight:800;color:var(--cyan)}#elp2 .elp2-intro{text-align:center;margin-bottom:28px}#elp2 .elp2-intro h2{font-size:clamp(27px,3.5vw,42px);color:var(--navy);margin:13px 0}#elp2 .elp2-intro p{color:var(--muted)}#elp2 .elp2-archive{padding-top:78px;padding-bottom:100px}#elp2 .elp2-filters{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:32px 0 38px}#elp2 .elp2-filters a{border:1px solid #d5e2ea;padding:11px 21px;text-decoration:none;border-radius:5px;color:var(--navy);font-weight:700;transition:.2s}#elp2 .elp2-filters a:hover,#elp2 .elp2-filters a.is-active{background:var(--cyan);border-color:var(--cyan);color:white}#elp2 .elp2-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}#elp2 .elp2-tile{position:relative;display:block;aspect-ratio:4/4.5;border-radius:7px;overflow:hidden;background:#e8eef2;text-decoration:none}#elp2 .elp2-tile img{width:100%;height:100%;object-fit:cover;transition:transform .55s}#elp2 .elp2-tile:hover img{transform:scale(1.07)}#elp2 .elp2-tile-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,34,55,.96),rgba(17,184,202,.73));display:flex;flex-direction:column;justify-content:flex-end;padding:24px;color:white;transform:translateY(100%);transition:transform .35s}#elp2 .elp2-tile:hover .elp2-tile-overlay,#elp2 .elp2-tile:focus-visible .elp2-tile-overlay{transform:translateY(0)}#elp2 .elp2-tile-overlay small{font-weight:800;letter-spacing:.08em;text-transform:uppercase}#elp2 .elp2-tile-overlay strong{font-size:12x;line-height:1.3;margin:10px 0}#elp2 .elp2-view{font-size:13px;font-weight:700}#elp2 .elp2-no-photo{height:100%;min-height:180px;display:grid;place-items:center;background:linear-gradient(135deg,#102e4e,#11b8ca);color:white;font-weight:800}#elp2 .navigation.pagination{margin-top:40px}#elp2 .nav-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}#elp2 .page-numbers{border:1px solid #d7e1e9;padding:10px 15px;text-decoration:none;color:var(--navy)}#elp2 .page-numbers.current,#elp2 .page-numbers:hover{background:var(--cyan);color:white}#elp2 .elp2-empty{padding:40px;text-align:center;background:#f1f6f8}#elp2 .elp2-detail{padding-top:80px;padding-bottom:80px}#elp2 .elp2-lead{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:stretch}#elp2 .elp2-main-image img{display:block;width:100%;height:100%;max-height:500px;min-height:360px;object-fit:cover;border-radius:5px}#elp2 .elp2-specs{background:var(--navy);padding:32px;color:white;border-radius:5px}#elp2 .elp2-specs h2{color:white;font-size:25px;margin:9px 0 24px}#elp2 .elp2-spec{border-top:1px solid #ffffff29;padding:12px 0;display:grid;gap:5px}#elp2 .elp2-spec strong{color:#a6e6eb;font-size:12px;text-transform:uppercase;letter-spacing:.04em}#elp2 .elp2-spec span{font-size:14px;line-height:1.65;overflow-wrap:anywhere}#elp2 .elp2-content{margin-top:64px;line-height:1.9;color:#536579;font-size:16px}#elp2 .elp2-content h2,#elp2 .elp2-gallery-section h2{color:var(--navy);font-size:clamp(26px,3vw,37px);margin:10px 0 22px}#elp2 .elp2-content p{margin:0 0 18px}#elp2 .elp2-content ul{padding-left:23px}#elp2 .elp2-alt{padding:40px;background:#f4f8fa;border-left:4px solid var(--cyan);border-radius:5px}#elp2 .elp2-gallery-section{margin-top:80px}#elp2 .elp2-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}#elp2 .elp2-gallery-item{padding:0;border:0;background:none;cursor:zoom-in;aspect-ratio:4/3;overflow:hidden;border-radius:5px}#elp2 .elp2-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}#elp2 .elp2-gallery-item:hover img{transform:scale(1.05)}#elp2 .elp2-back{margin-top:55px}#elp2 .elp2-back a{display:inline-block;background:var(--navy);color:white;text-decoration:none;padding:15px 23px;font-weight:700}#elp2 .elp2-lightbox:not([hidden]){position:fixed;inset:0;z-index:999999;background:rgba(3,13,24,.95);display:flex;align-items:center;justify-content:space-around;gap:10px;padding:55px 15px 30px}#elp2 .elp2-lightbox figure{margin:0;min-width:0;max-width:85vw;text-align:center}#elp2 .elp2-lightbox img{max-width:100%;max-height:78vh;object-fit:contain}#elp2 .elp2-lightbox figcaption{color:white;margin-top:12px}#elp2 .elp2-lightbox button{border:1px solid #ffffff70;background:#102e4e;color:white;font-size:23px;cursor:pointer;padding:8px 14px}#elp2 .elp2-close{position:absolute;top:16px;right:18px}@media(max-width:1024px){#elp2 .elp2-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(hover:none){#elp2 .elp2-tile-overlay{transform:none;background:linear-gradient(0deg,rgba(7,34,55,.94),transparent 65%);justify-content:flex-end}}@media(max-width:720px){#elp2 .elp2-container{width:min(100% - 28px,1200px)}#elp2 .elp2-hero{min-height:275px;padding:45px 0}#elp2 .elp2-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#elp2 .elp2-tile-overlay{padding:12px}#elp2 .elp2-tile-overlay strong{font-size:15px}#elp2 .elp2-lead{grid-template-columns:1fr}#elp2 .elp2-main-image img{min-height:220px}#elp2 .elp2-detail{padding-top:38px}#elp2 .elp2-content{margin-top:40px}#elp2 .elp2-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}#elp2 .elp2-alt{padding:20px}#elp2 .elp2-lightbox figure{max-width:75vw}}@media(max-width:390px){#elp2 .elp2-grid{grid-template-columns:1fr}#elp2 .elp2-tile{aspect-ratio:4/3}}

/* Optional photograph in flexible sections */
#elp2 .elp-flex-section-photo{margin-top:25px}#elp2 .elp-flex-section-photo img{display:block;width:100%;max-height:650px;object-fit:cover;border-radius:8px}



/* =========================================================
   BANDERAS - FILTROS ARCHIVO DE PROYECTOS
   Diseño limpio: protagonismo para banderas
   ========================================================= */

#elp2 .elp2-filters{
    display:flex;
    justify-content:center;
    align-items:flex-start;
    flex-wrap:wrap;
    gap:34px;
    margin:32px 0 42px;
}

/* =========================================================
   FILTRO BASE
   ========================================================= */

#elp2 .elp2-filters .elp2-filter{
    position:relative;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;

    width:54px;
    min-width:54px;
    height:auto;
    min-height:68px;

    padding:0 0 9px;

    background:transparent;
    border:0;
    border-radius:0;

    color:var(--navy);
    text-decoration:none;

    font-family:Manrope,Arial,sans-serif;
    font-size:12px;
    font-weight:700;
    line-height:1.2;

    cursor:pointer;

    transition:
        color .25s ease,
        transform .25s ease;
}


/* =========================================================
   BANDERAS
   ========================================================= */

#elp2 .elp2-country-flag{
    position:static;

    display:block;

    width:auto;
    height:38px;
    max-width:48px;

    object-fit:contain;

    margin:0 0 8px;

    transform:none;

    transition:
        transform .25s ease,
        filter .25s ease;
}


/* =========================================================
   NOMBRE DEL PAÍS
   ========================================================= */

#elp2 .elp2-filter-name{
    display:block;

    width:100%;

    color:inherit;

    text-align:center;
    line-height:1.2;
}


/* =========================================================
   TODOS - ICONO MUNDO
   ========================================================= */

#elp2 .elp2-filter-all{
    padding-bottom:9px;
}


/* Contenedor del mundo */

#elp2 .elp2-world-icon{
    display:flex;
    align-items:center;
    justify-content:center;

    width:38px;
    height:38px;

    margin:0 0 8px;

    color:var(--cyan);

    transition:
        transform .25s ease,
        color .25s ease;
}


/* SVG */

#elp2 .elp2-world-icon svg{
    display:block;

    width:38px;
    height:38px;

    overflow:visible;

    fill:none;
    stroke:currentColor;

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


/* =========================================================
   HOVER
   ========================================================= */

#elp2 .elp2-filters .elp2-filter:hover{
    background:transparent;
    border:0;
    box-shadow:none;

    color:var(--cyan);

    transform:translateY(-2px);
}


/* Bandera */

#elp2 .elp2-filter-country:hover .elp2-country-flag{
    transform:scale(1.10);
}


/* Mundo */

#elp2 .elp2-filter-all:hover .elp2-world-icon{
    transform:scale(1.10);
}


/* =========================================================
   FILTRO ACTIVO
   ========================================================= */

#elp2 .elp2-filters .elp2-filter.is-active{
    position:relative;

    background:transparent;
    border:0;

    color:var(--cyan);

    box-shadow:none;
}


/* Línea inferior */

#elp2 .elp2-filters .elp2-filter.is-active::after{
    content:"";

    position:absolute;

    left:50%;
    bottom:0;

    width:30px;
    height:2px;

    background:var(--cyan);

    border-radius:2px;

    transform:translateX(-50%);
}


/* País activo: el texto permanece navy */

#elp2 .elp2-filter-country.is-active{
    color:var(--navy);
}


/* Todos activo: mundo y texto cyan */

#elp2 .elp2-filter-all.is-active{
    color:var(--cyan);
}


/* =========================================================
   FOCUS ACCESIBLE
   ========================================================= */

#elp2 .elp2-filters .elp2-filter:focus-visible{
    outline:2px solid var(--cyan);
    outline-offset:6px;
}


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

@media(max-width:767px){

    #elp2 .elp2-filters{
        gap:22px;
        margin:28px 0 36px;
    }

    #elp2 .elp2-filters .elp2-filter{
        width:48px;
        min-width:48px;

        font-size:11px;
    }

    #elp2 .elp2-country-flag{
        height:34px;
        max-width:44px;

        margin-bottom:7px;
    }

    #elp2 .elp2-world-icon{
        width:34px;
        height:34px;

        margin-bottom:7px;
    }

    #elp2 .elp2-world-icon svg{
        width:34px;
        height:34px;
    }

    #elp2 .elp2-filters .elp2-filter.is-active::after{
        width:27px;
    }
}


@media(max-width:390px){

    #elp2 .elp2-filters{
        gap:16px;
    }

    #elp2 .elp2-filters .elp2-filter{
        width:46px;
        min-width:46px;
    }

    #elp2 .elp2-country-flag{
        height:32px;
        max-width:41px;
    }

    #elp2 .elp2-world-icon,
    #elp2 .elp2-world-icon svg{
        width:32px;
        height:32px;
    }
}