/*
 * SINGLE SERVICIOS - Corrección aislada
 * Ubicación: wp-content/themes/astra-child/assets/css/av-single-servicios.css
 *
 * Este archivo se carga después de Astra y av-global.css.
 */

body.single-servicios .av-single-service{
    width:100%;
    max-width:none;
    overflow:hidden;
}

body.single-servicios .av-single-service .av-container{
    width:min(1240px,calc(100% - 40px));
    max-width:1240px;
    margin-left:auto;
    margin-right:auto;
}

body.single-servicios .av-single-service .av-single-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 320px;
    gap:40px;
    align-items:start;
}

body.single-servicios .av-single-service .av-single-main{
    min-width:0;
    overflow:hidden;
}

body.single-servicios .av-single-service .av-single-hero{
    width:100%;
    max-width:100%;
    overflow:hidden;
}

body.single-servicios .av-single-service .av-single-hero-inner{
    display:block;
    padding:42px;
}

body.single-servicios .av-single-service .av-single-hero-heading{
    display:block;
    width:100%;
    max-width:none;
    margin:0 0 28px;
}

body.single-servicios .av-single-service .av-single-hero-content{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,.88fr);
    gap:38px;
    align-items:center;
    width:100%;
}

body.single-servicios .av-single-service .av-service-title,
body.single-servicios .av-single-service .av-service-subtitle{
    width:100%;
    max-width:none;
}

body.single-servicios .av-single-service .av-service-title{
    display:block;
    max-width:100%;
    margin:0;
    color:var(--av-verde);
    font-family:Cinzel,Georgia,serif;
    font-size:clamp(32px,3.2vw,46px) !important;
    font-weight:700 !important;
    line-height:1.08 !important;
    letter-spacing:-.015em;
    overflow-wrap:anywhere;
    word-break:normal;
    text-wrap:balance;
}

body.single-servicios .av-single-service .av-service-subtitle{
    display:block;
    max-width:100%;
    margin:0 0 14px;
    color:var(--av-verde);
    font-family:Montserrat,Arial,sans-serif;
    font-size:22px !important;
    font-weight:700 !important;
    line-height:1.34 !important;
    letter-spacing:0;
    text-transform:none;
    overflow-wrap:anywhere;
}

body.single-servicios .av-single-service .av-single-description,
body.single-servicios .av-single-service .av-single-description p{
    font-family:Montserrat,Arial,sans-serif;
    font-size:16px !important;
    font-weight:400;
    line-height:1.72 !important;
    text-transform:none;
}

body.single-servicios .av-single-service .av-section-heading h2{
    font-size:32px !important;
    line-height:1.2 !important;
}

body.single-servicios .av-single-service .av-benefit-card h3,
body.single-servicios .av-single-service .av-timeline-content h3,
body.single-servicios .av-single-service .av-training-body h3{
    font-family:Montserrat,Arial,sans-serif;
    text-transform:none;
}

body.single-servicios .av-single-service .av-single-hero-media img{
    width:100%;
    max-width:100%;
    height:auto;
    aspect-ratio:4/3;
    object-fit:cover;
}

@media(max-width:1100px){
    body.single-servicios .av-single-service .av-single-layout{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    body.single-servicios .av-single-service .av-single-hero-content{
        grid-template-columns:1fr;
    }

    body.single-servicios .av-single-service .av-service-title{
        font-size:clamp(30px,6vw,42px) !important;
    }
}

@media(max-width:650px){
    body.single-servicios .av-single-service .av-container{
        width:min(100% - 24px,1240px);
    }

    body.single-servicios .av-single-service .av-single-hero-inner{
        padding:26px 20px;
    }

    body.single-servicios .av-single-service .av-service-title{
        font-size:clamp(28px,9vw,36px) !important;
        line-height:1.12 !important;
    }

    body.single-servicios .av-single-service .av-service-subtitle{
        font-size:19px !important;
    }
}
