:root{--mdg-green:#0CAB21;--mdg-green-dark:#075B18;--mdg-ink:#181818;--mdg-text:#555;--mdg-border:#e3e7e4;--mdg-soft:#f5faf6}.mdg-site{background:#fff;color:var(--mdg-text)}.mdg-shell,.mdg-archive{width:min(1180px,calc(100% - 36px));margin:0 auto}.mdg-page-hero{padding:52px 0 34px}.mdg-eyebrow,.mdg-card-category,.mdg-section-heading>span,.mdg-news-meta span{display:block;color:var(--mdg-green);font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.mdg-page-hero h1{max-width:930px;margin:8px 0 14px;color:var(--mdg-ink);font-size:clamp(32px,5vw,58px);line-height:1.08}.mdg-page-hero p{max-width:760px;margin:0;color:#686868;font-size:16px;line-height:1.75}.mdg-hero-image{width:100%;aspect-ratio:16/7;overflow:hidden;background:#eee}.mdg-hero-image img{width:100%;height:100%;object-fit:cover}.mdg-project-intro{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:56px;padding:55px 0}.mdg-prose{font-size:15px;line-height:1.85;color:#555}.mdg-prose>*:first-child{margin-top:0}.mdg-project-facts{align-self:start;border:1px solid var(--mdg-border);border-top:4px solid var(--mdg-green);border-radius:7px;background:#fff;overflow:hidden}.mdg-fact{padding:16px 18px;border-bottom:1px solid #eee}.mdg-fact:last-child{border-bottom:0}.mdg-fact span{display:block;margin-bottom:5px;color:#888;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px}.mdg-fact strong{display:block;color:#292929;font-size:14px;line-height:1.45}.mdg-content-section{padding:42px 0;border-top:1px solid #ededed}.mdg-section-heading{margin-bottom:20px}.mdg-section-heading h2{margin:5px 0 0;color:var(--mdg-ink);font-size:29px;line-height:1.2}.mdg-numbered-section{display:grid;grid-template-columns:70px 1fr;gap:22px}.mdg-section-number{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--mdg-green-dark);color:#fff;font-size:12px;font-weight:700}.mdg-video-frame{position:relative;aspect-ratio:16/9;background:#111;border-radius:8px;overflow:hidden}.mdg-video-frame iframe{position:absolute;inset:0;width:100%;height:100%}.mdg-document-list{display:grid;gap:10px}.mdg-document-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:17px 18px;border:1px solid var(--mdg-border);border-left:4px solid var(--mdg-green);border-radius:6px;background:#fff;text-decoration:none!important;color:inherit!important;transition:.2s}.mdg-document-card:hover{transform:translateY(-1px);border-color:#b9ddbf;background:#fbfdfb}.mdg-document-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--mdg-soft);color:var(--mdg-green-dark);font-size:20px}.mdg-document-copy strong{display:block;color:#262626}.mdg-document-copy small{display:block;margin-top:4px;color:#777;line-height:1.4}.mdg-document-meta{color:var(--mdg-green-dark);font-size:11px;font-weight:700;white-space:nowrap}.mdg-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mdg-gallery-item{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:#eee}.mdg-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.mdg-gallery-item:hover img{transform:scale(1.03)}.mdg-related{padding:55px 0 70px;background:#f8faf8}.mdg-filterbar{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin:45px 0 30px;padding-bottom:16px;border-bottom:1px solid var(--mdg-border)}.mdg-filterbar-simple{justify-content:flex-start}.mdg-category-filters{display:flex;gap:8px;flex-wrap:wrap}.mdg-category-filters a{padding:9px 12px;border:1px solid #dfe5e0;border-radius:4px;color:#555!important;font-size:10px;font-weight:700;text-decoration:none!important;letter-spacing:.45px}.mdg-category-filters a:hover,.mdg-category-filters a.is-active{background:var(--mdg-green-dark);border-color:var(--mdg-green-dark);color:#fff!important}.mdg-status-filter{display:flex;align-items:center;gap:9px}.mdg-status-filter label{font-size:12px;font-weight:700;color:#555}.mdg-status-filter select{min-height:38px;border:1px solid #dfe5e0;border-radius:4px;background:#fff;padding:6px 32px 6px 10px}.mdg-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.mdg-card{background:#fff;border:1px solid var(--mdg-border);border-radius:8px;overflow:hidden;transition:transform .22s,box-shadow .22s}.mdg-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.07)}.mdg-card-image{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#eef2ef}.mdg-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.mdg-card:hover .mdg-card-image img{transform:scale(1.025)}.mdg-image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#9ba39c;font-size:12px;font-weight:700;letter-spacing:1px}.mdg-status-badge{position:absolute;top:13px;right:13px;padding:7px 9px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.55px;text-transform:uppercase}.mdg-status-running{background:#e8f7eb;color:#087a1d}.mdg-status-complete{background:#075B18;color:#fff}.mdg-status-planning{background:#f0f2f0;color:#5f665f}.mdg-card-body{padding:19px 20px 21px}.mdg-card-category{margin-bottom:7px}.mdg-card h2{margin:0 0 9px;font-size:20px;line-height:1.3}.mdg-card h2 a{color:#202020!important;text-decoration:none!important}.mdg-card p{min-height:46px;margin:0 0 15px;color:#6b6b6b;font-size:13px;line-height:1.65}.mdg-card-link{color:var(--mdg-green-dark)!important;font-size:11px;font-weight:800;text-decoration:none!important;letter-spacing:.5px}.mdg-news-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.mdg-news-meta time{color:#888;font-size:11px}.mdg-pagination{display:flex;justify-content:center;gap:6px;margin:34px 0 65px}.mdg-pagination a{display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;border:1px solid var(--mdg-border);border-radius:4px;color:#444!important;text-decoration:none!important}.mdg-pagination a.is-current,.mdg-pagination a:hover{background:var(--mdg-green-dark);border-color:var(--mdg-green-dark);color:#fff!important}.mdg-empty-state{margin:40px 0 70px;padding:28px;border:1px dashed #cdd6ce;border-radius:7px;background:#fafcfa;text-align:center;color:#666}.mdg-news-single .mdg-page-hero{max-width:900px;margin:0 auto;text-align:center}.mdg-news-single .mdg-page-hero p{margin-left:auto;margin-right:auto}.mdg-news-byline{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px;color:#888;font-size:12px}.mdg-news-content{max-width:820px;margin:0 auto;padding:52px 0}.mdg-news-content .mdg-prose{font-size:16px;line-height:1.9}.mdg-related .mdg-card-grid{margin-top:25px}@media(max-width:1024px){.mdg-project-intro{grid-template-columns:1fr;gap:28px}.mdg-card-grid{grid-template-columns:repeat(2,1fr)}.mdg-filterbar{align-items:flex-start;flex-direction:column}.mdg-gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.mdg-shell,.mdg-archive{width:min(100% - 28px,1180px)}.mdg-page-hero{padding:36px 0 24px}.mdg-page-hero p{font-size:14px}.mdg-hero-image{aspect-ratio:4/3}.mdg-project-intro{padding:35px 0}.mdg-numbered-section{grid-template-columns:1fr}.mdg-card-grid{grid-template-columns:1fr}.mdg-gallery-grid{grid-template-columns:1fr 1fr}.mdg-document-card{grid-template-columns:auto 1fr}.mdg-document-meta{grid-column:2;white-space:normal}.mdg-status-filter{width:100%}.mdg-status-filter select{flex:1;max-width:100%}.mdg-news-content{padding:35px 0}.mdg-related{padding:40px 0 50px}}


/* =========================================================
   CABECERAS DE ENDPOINTS MASDESARROLLO
   ========================================================= */
.mdg-endpoint-hero{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:820px;padding:180px 28px 90px;box-sizing:border-box;background-color:#303530;background-image:linear-gradient(135deg,#3b433d,#171917);background-size:cover;background-position:center center;background-repeat:no-repeat;color:#fff;text-align:center;overflow:hidden}.mdg-endpoint-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.12),rgba(0,0,0,.03));pointer-events:none}.mdg-endpoint-hero-inner{position:relative;z-index:1;width:min(1120px,100%);margin:0 auto}.mdg-endpoint-kicker{display:block;margin-bottom:12px;color:#0CAB21;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.mdg-endpoint-hero h1{max-width:1100px;margin:0 auto;color:#fff!important;font-size:clamp(48px,6.4vw,86px)!important;font-weight:800!important;line-height:1.02!important;letter-spacing:-1.5px;text-transform:uppercase;text-shadow:0 2px 15px rgba(0,0,0,.18)}.mdg-endpoint-hero-line{width:145px;height:5px;margin:27px auto 28px;background:#0CAB21}.mdg-endpoint-hero p{max-width:900px;margin:0 auto!important;color:#fff!important;font-size:clamp(18px,2.1vw,27px)!important;font-style:italic;font-weight:400;line-height:1.5!important;letter-spacing:.4px;text-shadow:0 2px 10px rgba(0,0,0,.25)}.mdg-endpoint-hero-single h1{font-size:clamp(38px,5vw,70px)!important}.mdg-news-byline-under-hero{justify-content:center;margin-top:20px;margin-bottom:0;padding-top:0;color:#777}.mdg-news-byline-under-hero time,.mdg-news-byline-under-hero span{color:#777}.mdg-site>.mdg-archive{padding-top:0}.mdg-site .mdg-filterbar{margin-top:45px}
@media(max-width:1730px){.mdg-endpoint-hero{min-height:640px;padding:150px 28px 72px}}
@media(max-width:1279px){.mdg-endpoint-hero{min-height:440px;padding:125px 24px 55px}.mdg-endpoint-hero-line{width:110px;margin:22px auto}.mdg-endpoint-hero p{max-width:760px}}
@media(max-width:1024px){.mdg-endpoint-hero{min-height:440px;padding:125px 24px 55px}.mdg-endpoint-hero-line{width:110px;margin:22px auto}.mdg-endpoint-hero p{max-width:760px}}
@media(max-width:767px){.mdg-endpoint-hero{min-height:340px;padding:105px 20px 45px}.mdg-endpoint-kicker{font-size:9px;letter-spacing:1.5px}.mdg-endpoint-hero h1{font-size:clamp(34px,11vw,50px)!important;letter-spacing:-.5px}.mdg-endpoint-hero-single h1{font-size:clamp(30px,9vw,44px)!important}.mdg-endpoint-hero-line{width:82px;height:4px;margin:18px auto}.mdg-endpoint-hero p{font-size:16px!important;line-height:1.45!important}.mdg-site .mdg-filterbar{margin-top:32px}}

/* v1.0.3 · Ficha técnica compacta + cabecera propia por proyecto */
.md-g-unused{display:none}
.mdg-project-intro{grid-template-columns:minmax(0,1.12fr) minmax(470px,.88fr);gap:48px;align-items:start}
.mdg-project-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:start}
.mdg-project-facts-heading{grid-column:1/-1;padding:18px 20px;background:#f7faf7;border-bottom:1px solid #e7ece8}
.mdg-project-facts-heading span{display:block;margin-bottom:4px;color:var(--mdg-green);font-size:9px;font-weight:800;letter-spacing:1.25px;text-transform:uppercase}
.mdg-project-facts-heading strong{display:block;color:#202020;font-size:17px;line-height:1.3}
.mdg-project-facts .mdg-fact{min-width:0;padding:15px 17px;border-bottom:1px solid #eee}
.mdg-project-facts .mdg-fact:nth-child(even){border-right:1px solid #eee}
.mdg-project-facts .mdg-fact:nth-last-child(-n+2){border-bottom:0}
.mdg-project-facts .mdg-fact span{font-size:9px;line-height:1.35}
.mdg-project-facts .mdg-fact strong{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
@media(max-width:1100px){.mdg-project-intro{grid-template-columns:1fr;gap:30px}.mdg-project-facts{width:100%}}
@media(max-width:600px){.mdg-project-facts{grid-template-columns:1fr}.mdg-project-facts .mdg-fact:nth-child(even){border-right:0}.mdg-project-facts .mdg-fact:nth-last-child(-n+2){border-bottom:1px solid #eee}.mdg-project-facts .mdg-fact:last-child{border-bottom:0}}

/* v1.0.5 · Cabecera individual robusta */
.mdg-project-single .mdg-endpoint-hero{background-size:cover!important;background-repeat:no-repeat!important;background-color:#252b26}.mdg-project-single .mdg-project-intro{padding-top:64px}.mdg-project-single .mdg-endpoint-hero-inner{max-width:1100px}.mdg-project-single .mdg-endpoint-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,255,255,.025),rgba(0,0,0,.10));pointer-events:none}.mdg-project-single .mdg-endpoint-hero-inner{z-index:2}@media(max-width:767px){.mdg-project-single .mdg-project-intro{padding-top:38px}}


/* =========================================================
   v1.0.7 · Listado de proyectos + clasificación visible
   ========================================================= */

/* Más aire antes y después del listado, incluso cuando solo existe 1 proyecto. */
.mdg-projects-archive{
    padding:60px 0 95px;
}

.mdg-projects-archive .mdg-project-filterbar{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:22px;
    margin:0 0 38px;
    padding:0 0 26px;
}

.mdg-filter-group{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.mdg-filter-label{
    display:block;
    color:#777;
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.mdg-status-filters{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.mdg-status-filters a{
    padding:9px 12px;
    border:1px solid #dfe5e0;
    border-radius:4px;
    color:#555!important;
    font-size:10px;
    font-weight:700;
    text-decoration:none!important;
    letter-spacing:.45px;
    transition:background .2s,border-color .2s,color .2s;
}

.mdg-status-filters a:hover,
.mdg-status-filters a.is-active{
    background:var(--mdg-green-dark);
    border-color:var(--mdg-green-dark);
    color:#fff!important;
}

.mdg-projects-archive .mdg-card-grid{
    gap:30px;
}

/* El texto corporativo se lee mejor justificado en la ficha y en las tarjetas. */
.mdg-project-single .mdg-project-intro .mdg-prose{
    text-align:justify;
    text-justify:inter-word;
    hyphens:auto;
}

.mdg-project-card .mdg-card-body p{
    text-align:justify;
    text-justify:inter-word;
    hyphens:auto;
}

/* Cuando hay pocos proyectos, mantenemos un cierre visual antes del footer. */
.mdg-projects-archive .mdg-empty-state{
    margin-bottom:0;
}

@media(max-width:767px){
    .mdg-projects-archive{
        padding:40px 0 65px;
    }

    .mdg-projects-archive .mdg-project-filterbar{
        gap:18px;
        margin-bottom:28px;
        padding-bottom:22px;
    }

    .mdg-category-filters,
    .mdg-status-filters{
        gap:7px;
    }

    .mdg-category-filters a,
    .mdg-status-filters a{
        padding:8px 10px;
        font-size:9px;
    }

    .mdg-project-single .mdg-project-intro .mdg-prose,
    .mdg-project-card .mdg-card-body p{
        text-align:left;
        hyphens:none;
    }
}


/* =========================================================
   ESPACIADO ENTRE HERO Y FILTROS DE PROYECTOS / NOTICIAS
   ========================================================= */
.mdg-site > .mdg-archive{
    padding-top:64px;
    padding-bottom:80px;
}
.mdg-site > .mdg-archive > .mdg-filterbar{
    margin-top:0;
}
@media(max-width:1024px){
    .mdg-site > .mdg-archive{
        padding-top:48px;
        padding-bottom:65px;
    }
}
@media(max-width:767px){
    .mdg-site > .mdg-archive{
        padding-top:34px;
        padding-bottom:50px;
    }
}

/* =========================================================
   v1.0.11 · Lectura editorial + bloque audiovisual refinado
   ========================================================= */

/* La noticia puede usar todo el ancho disponible para módulos especiales,
   pero el texto conserva una columna de lectura cómoda. */
.mdg-news-single .mdg-news-content{
    max-width:1180px;
}

.mdg-news-single .mdg-news-content > .mdg-prose{
    width:min(900px,100%);
    margin-left:auto;
    margin-right:auto;
    text-align:justify;
    text-justify:inter-word;
    hyphens:auto;
}

/* Bloque audiovisual compartido por noticias y proyectos. */
.mdg-video-public{
    padding:58px 0 64px;
    text-align:center;
}

.mdg-video-panel{
    width:min(1000px,100%);
    margin:0 auto;
    padding:34px;
    box-sizing:border-box;
    background:#F7FAF7;
    border:1px solid #DFE9E1;
    border-radius:14px;
}

.mdg-video-heading{
    width:min(760px,100%);
    margin:0 auto 28px;
    text-align:center;
}

.mdg-video-heading > span{
    display:block;
    margin-bottom:8px;
    color:var(--mdg-green);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.mdg-video-heading h2{
    max-width:720px;
    margin:0 auto!important;
    color:var(--mdg-ink)!important;
    font-size:clamp(24px,3vw,33px)!important;
    font-weight:750!important;
    line-height:1.25!important;
}

.mdg-video-heading-line{
    width:58px;
    height:3px;
    margin:16px auto 0;
    background:var(--mdg-green);
}

.mdg-video-public.no-title .mdg-video-heading{
    margin-bottom:22px;
}

.mdg-video-public.no-title .mdg-video-heading > span{
    margin-bottom:0;
}

.mdg-video-frame{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    margin:0 auto;
    overflow:hidden;
    background:#111;
    border-radius:10px;
    box-shadow:0 12px 34px rgba(0,0,0,.10);
}

.mdg-video-frame iframe{
    position:absolute;
    inset:0;
    width:100%!important;
    height:100%!important;
    border:0;
}

@media(max-width:767px){
    .mdg-news-single .mdg-news-content > .mdg-prose{
        width:100%;
        text-align:left;
        hyphens:none;
    }

    .mdg-video-public{
        padding:40px 0 44px;
    }

    .mdg-video-panel{
        padding:20px 14px 14px;
        border-radius:10px;
    }

    .mdg-video-heading{
        margin-bottom:18px;
    }

    .mdg-video-heading h2{
        font-size:22px!important;
    }

    .mdg-video-frame{
        border-radius:8px;
    }
}

/* =========================================================
   v1.0.14 · Componentes sincronizados para página de inicio
   ========================================================= */
.mdg-home-component{
    width:100%;
    box-sizing:border-box;
}
.mdg-home-component .mdg-home-grid{
    width:100%;
    margin:0;
}
.mdg-home-component .mdg-home-card{
    height:100%;
    display:flex;
    flex-direction:column;
}
.mdg-home-component .mdg-home-card .mdg-card-body{
    display:flex;
    flex:1;
    flex-direction:column;
}
.mdg-home-component .mdg-home-card .mdg-card-body p{
    min-height:64px;
    text-align:left;
}
.mdg-home-component .mdg-home-card .mdg-card-link{
    margin-top:auto;
}
.mdg-home-component-footer{
    display:flex;
    justify-content:center;
    margin-top:34px;
}
.mdg-home-all-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 22px;
    background:#075B18;
    border:1px solid #075B18;
    border-radius:4px;
    color:#fff!important;
    font-size:11px;
    font-weight:800;
    letter-spacing:.55px;
    text-decoration:none!important;
    transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.mdg-home-all-link:hover{
    background:#0CAB21;
    border-color:#0CAB21;
    color:#fff!important;
    transform:translateY(-1px);
}
.mdg-home-empty{
    padding:24px;
    border:1px dashed #ccd8ce;
    border-radius:6px;
    background:#fafcfa;
    color:#666;
    text-align:center;
}
@media(max-width:1024px){
    .mdg-home-component .mdg-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
    .mdg-home-component .mdg-home-grid{grid-template-columns:1fr}
    .mdg-home-component .mdg-home-card .mdg-card-body p{min-height:0}
    .mdg-home-component-footer{margin-top:26px}
    .mdg-home-all-link{width:100%;box-sizing:border-box}
}


/* =========================================================
   v1.0.15 · Proyectos del Inicio sobre fondo oscuro
   ========================================================= */

/* El componente no toca el fondo del contenedor de Elementor; solo crea
   un área interior con respiración lateral para que las tarjetas nunca
   queden pegadas a los bordes de la pantalla. */
.mdg-home-projects{
    width:min(1480px,calc(100% - 72px));
    margin-left:auto;
    margin-right:auto;
}

/* Tarjetas oscuras, coherentes con la sección NUESTROS PROYECTOS del Home. */
.mdg-home-projects .mdg-project-card{
    background:#141714;
    border-color:#303630;
    box-shadow:0 8px 24px rgba(0,0,0,.18);
}

.mdg-home-projects .mdg-project-card:hover{
    border-color:rgba(12,171,33,.72);
    box-shadow:0 16px 34px rgba(0,0,0,.28);
}

.mdg-home-projects .mdg-project-card .mdg-card-body{
    background:#141714;
    border-top:1px solid rgba(255,255,255,.05);
}

.mdg-home-projects .mdg-project-card .mdg-card-category{
    color:#39c94d;
}

.mdg-home-projects .mdg-project-card h2,
.mdg-home-projects .mdg-project-card h2 a{
    color:#fff!important;
}

.mdg-home-projects .mdg-project-card .mdg-card-body p{
    color:#b6bcb7!important;
}

.mdg-home-projects .mdg-project-card .mdg-card-link{
    color:#58d66a!important;
}

.mdg-home-projects .mdg-project-card .mdg-card-link:hover{
    color:#8ae697!important;
}

/* El placeholder también debe integrarse al modo oscuro. */
.mdg-home-projects .mdg-image-placeholder{
    background:#202420;
    color:#8f988f;
}

/* Pequeño refinamiento para que la fotografía y el cuerpo se sientan como
   una sola tarjeta sobre el patrón oscuro del Home. */
.mdg-home-projects .mdg-card-image{
    background:#202420;
}

@media(max-width:1024px){
    .mdg-home-projects{
        width:min(100% - 48px,1480px);
    }
}

@media(max-width:767px){
    .mdg-home-projects{
        width:min(100% - 28px,1480px);
    }
}
