:root{
    --mdc-red:#c90012;
    --mdc-red-dark:#a50010;
    --mdc-gray:#5d5d63;
    --mdc-gray-dark:#374151;
    --mdc-light:#f7f7f8;
    --mdc-border:#e5e7eb;
}

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

.mdc-home-hero{
    position:relative;
    overflow:hidden;
    padding:24px 24px 54px;
    background:
        radial-gradient(circle at 80% 20%,rgba(201,0,18,.08),transparent 32%),
        linear-gradient(135deg,#fff 0%,#f7f7f8 100%);
}

.mdc-home-hero:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:16px;
    background:var(--mdc-red);
    clip-path:polygon(0 55%,100% 0,100% 100%,0 100%);
}

.mdc-home-hero__inner{
    width:min(1180px,100%);
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
    gap:38px;
    align-items:start;
}

.mdc-home-hero__eyebrow{
    margin-bottom:12px;
    color:var(--mdc-red);
    font-size:13px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.mdc-home-hero__title{
    margin:0 0 18px;
    color:var(--mdc-gray-dark);
    font-size:clamp(40px,3.7vw,58px);
    line-height:1.03;
    font-weight:800;
    letter-spacing:-.035em;
}

.mdc-home-hero__title span{
    display:block;
    color:var(--mdc-red);
}

.mdc-home-hero__intro{
    max-width:700px;
    margin:0 0 22px;
    color:var(--mdc-gray);
    font-size:17px;
    line-height:1.62;
}

.mdc-home-hero__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:18px;
}

.mdc-home-hero__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:11px 20px;
    border-radius:6px;
    text-decoration:none!important;
    font-size:14px;
    font-weight:700;
    letter-spacing:.02em;
    transition:.2s ease;
}

.mdc-home-hero__button--primary{
    background:var(--mdc-red);
    color:#fff!important;
}

.mdc-home-hero__button--primary:hover{
    background:var(--mdc-red-dark);
}

.mdc-home-hero__button--secondary{
    border:1px solid var(--mdc-red);
    background:#fff;
    color:var(--mdc-red)!important;
}

.mdc-home-hero__button--secondary:hover{
    background:#fff5f5;
}

.mdc-home-hero__contact{
    display:flex;
    flex-wrap:wrap;
    gap:8px 18px;
    margin-bottom:22px;
    color:var(--mdc-gray-dark);
    font-size:14px;
}

.mdc-home-hero__contact a{
    color:inherit;
    text-decoration:none;
}

.mdc-home-hero__trust{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}

.mdc-home-hero__trust-item{
    padding:13px 14px;
    border:1px solid var(--mdc-border);
    border-radius:8px;
    background:rgba(255,255,255,.82);
}

.mdc-home-hero__trust-item strong{
    display:block;
    margin-bottom:3px;
    color:var(--mdc-gray-dark);
    font-size:13px;
}

.mdc-home-hero__trust-item span{
    color:var(--mdc-gray);
    font-size:12px;
    line-height:1.35;
}

/* ===== DIAGRAMA ===== */

.mdc-home-hero__visual{
    display:flex;
    align-items:center;
    justify-content:center;
    padding-top:40px;
}

.mdc-capabilities{
    position:relative;
    width:420px;
    max-width:100%;
    aspect-ratio:1;
}

.mdc-capabilities__center,
.mdc-capability{
    position:absolute;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-radius:50%;
    box-sizing:border-box;
}

.mdc-capabilities__center{
    inset:29%;
    z-index:2;
    padding:16px;
    background:#fff;
    border:2px solid rgba(201,0,18,.14);
    box-shadow:0 12px 30px rgba(55,65,81,.14);
}

.mdc-capabilities__logo{
    display:block;
    width:92%;
    max-width:175px;
    height:auto;
    object-fit:contain;
}

.mdc-capability{
    width:112px;
    height:112px;
    padding:12px;
    border:1px solid var(--mdc-border);
    background:#fff;
    color:var(--mdc-gray-dark);
    box-shadow:0 8px 22px rgba(0,0,0,.06);
    font-size:13px;
    line-height:1.2;
    font-weight:700;
}

.mdc-capability__icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    margin-right:7px;
    color:var(--mdc-red);
    line-height:0;
}

.mdc-capability__icon svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.mdc-capability small{
    display:none;
}

.mdc-capability--prevention{
    top:0;
    left:50%;
    transform:translateX(-50%);
}

.mdc-capability--consultation{
    top:17%;
    right:0;
}

.mdc-capability--lab{
    bottom:17%;
    right:0;
}

.mdc-capability--imaging{
    bottom:0;
    left:50%;
    transform:translateX(-50%);
}

.mdc-capability--surgery{
    bottom:17%;
    left:0;
}

.mdc-capability--hospital{
    top:17%;
    left:0;
}

/* ===== TABLET ===== */

@media(max-width:1024px){
    .mdc-home-hero__inner{
        grid-template-columns:1fr;
        gap:30px;
    }

    .mdc-home-hero__visual{
        margin-top:4px;
    }
}

/* ===== MÓVIL ===== */

@media(max-width:767px){
    .mdc-home-hero{
        padding:34px 18px 58px;
    }

    .mdc-home-hero__title{
        font-size:clamp(36px,10.5vw,50px);
    }

    .mdc-home-hero__intro{
        font-size:16px;
    }

    .mdc-home-hero__actions{
        display:grid;
    }

    .mdc-home-hero__button{
        width:100%;
    }

    .mdc-home-hero__trust{
        grid-template-columns:1fr;
    }

    .mdc-capabilities{
        width:100%;
        aspect-ratio:auto;
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }

    .mdc-capabilities__center,
    .mdc-capability{
        position:static;
        width:auto;
        height:auto;
        min-height:106px;
        border-radius:10px;
        transform:none!important;
    }

    .mdc-capabilities__center{
        grid-column:1/-1;
        min-height:125px;
    }

    .mdc-capabilities__logo{
        max-width:220px;
    }
}

/* HOME: elimina separación superior estándar de WoodMart */
body.page-id-71 .wd-page-content .content-layout-wrapper{
    padding-top:0!important;
}

/* HERO: protege los iconos SVG frente a estilos globales del tema */
.mdc-home-hero .mdc-capability .mdc-capability__icon{
    display:inline-flex!important;
    width:22px!important;
    height:22px!important;
    flex:0 0 22px!important;
    align-items:center!important;
    justify-content:center!important;
    margin-right:7px!important;
    color:var(--mdc-red)!important;
    line-height:0!important;
}

.mdc-home-hero .mdc-capability .mdc-capability__icon svg{
    display:block!important;
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    min-height:22px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    overflow:visible!important;
}



/* =========================================================
   MDC HERO — CAPACIDADES
   Icono dentro del círculo / texto fuera
   ========================================================= */

@media (min-width:768px){

    .mdc-capabilities{
        width:440px;
        max-width:100%;
        aspect-ratio:1;
    }

    /* Órbita visual sutil */
    .mdc-capabilities::before{
        content:"";
        position:absolute;
        inset:17%;
        border:1px solid rgba(55,65,81,.12);
        border-radius:50%;
        pointer-events:none;
    }

    /*
     * Cada capacidad deja de ser el círculo.
     * Ahora es el contenedor del icono + etiqueta.
     */
    .mdc-home-hero .mdc-capability{
        width:140px;
        height:142px;
        padding:0;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;

        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:8px;

        overflow:visible;
        color:var(--mdc-gray-dark);
    }

    /*
     * El círculo pertenece únicamente al icono.
     */
    .mdc-home-hero .mdc-capability .mdc-capability__icon{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;

        width:92px!important;
        height:92px!important;
        flex:0 0 92px!important;

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

        border-radius:50%;
        border:1.5px solid rgba(201,0,18,.20);
        background:#fff;

        box-shadow:
            0 10px 25px rgba(55,65,81,.09),
            0 0 0 1px rgba(255,255,255,.8);

        color:var(--mdc-red)!important;
        line-height:0!important;
    }

    .mdc-home-hero .mdc-capability .mdc-capability__icon svg{
        display:block!important;

        width:38px!important;
        height:38px!important;
        min-width:38px!important;
        min-height:38px!important;

        fill:none!important;
        stroke:currentColor!important;
        stroke-width:1.8!important;
        stroke-linecap:round!important;
        stroke-linejoin:round!important;
    }

    /*
     * Nombre del servicio fuera del círculo.
     */
    .mdc-home-hero .mdc-capability strong{
        display:block;
        width:140px;
        margin:0;

        color:var(--mdc-gray-dark);
        font-size:14px;
        font-weight:700;
        line-height:1.18;
        text-align:center;
    }

    /*
     * Servicios superiores:
     * texto arriba y círculo debajo.
     */
    .mdc-capability--prevention strong,
    .mdc-capability--consultation strong,
    .mdc-capability--hospital strong{
        order:-1;
    }

    /*
     * Servicios inferiores:
     * círculo arriba y texto debajo.
     */
    .mdc-capability--surgery strong,
    .mdc-capability--lab strong,
    .mdc-capability--imaging strong{
        order:2;
    }

    /* Posiciones alrededor del logo */

    .mdc-capability--prevention{
        top:-4%;
        left:50%;
        transform:translateX(-50%);
    }

    .mdc-capability--consultation{
        top:15%;
        right:-5%;
    }

    .mdc-capability--lab{
        right:-5%;
        bottom:8%;
    }

    .mdc-capability--imaging{
        bottom:-7%;
        left:50%;
        transform:translateX(-50%);
    }

    .mdc-capability--surgery{
        bottom:8%;
        left:-5%;
    }

    .mdc-capability--hospital{
        top:15%;
        left:-5%;
    }
}


/* ===== MÓVIL ===== */

@media (max-width:767px){

    .mdc-home-hero .mdc-capability{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:8px;

        padding:16px 10px!important;

        background:rgba(255,255,255,.88);
        border:1px solid var(--mdc-border);
        border-radius:10px;
        box-shadow:none;
    }

    .mdc-home-hero .mdc-capability .mdc-capability__icon{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;

        width:64px!important;
        height:64px!important;
        flex:0 0 64px!important;

        margin:0!important;

        border-radius:50%;
        border:1.5px solid rgba(201,0,18,.20);
        background:#fff;

        color:var(--mdc-red)!important;
    }

    .mdc-home-hero .mdc-capability .mdc-capability__icon svg{
        display:block!important;
        width:30px!important;
        height:30px!important;
        min-width:30px!important;
        min-height:30px!important;

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

    .mdc-home-hero .mdc-capability strong{
        order:2!important;
        margin:0;
        font-size:13px;
        line-height:1.2;
        text-align:center;
    }
}

