/*
 * AV Sistemas de Gestión - Recursos globales
 * Ubicación: wp-content/themes/astra-child/assets/css/av-global.css
 */

:root{
    --av-verde:#042c23;
    --av-verde-secundario:#063b30;
    --av-verde-claro:#0b5848;
    --av-dorado:#b88a3d;
    --av-dorado-claro:#d4a84f;
    --av-texto:#26352f;
    --av-texto-suave:#65706b;
    --av-fondo-suave:#f7f7f5;
    --av-borde:#e6e1d8;
    --av-blanco:#fff;
    --av-sombra-suave:0 8px 24px rgba(4,44,35,.08);
    --av-sombra-media:0 14px 34px rgba(4,44,35,.14);
    --av-radio:12px;
}

.av-page,.av-page *{box-sizing:border-box}
.av-container{width:min(1240px,calc(100% - 40px));margin-inline:auto}
.av-text-justified{text-align:justify;text-justify:inter-word;hyphens:auto}

[data-lucide]{
    display:inline-block;
    width:1em;
    height:1em;
    stroke-width:1.9;
    vertical-align:middle;
    flex:0 0 auto;
}

.av-inline-link{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    color:var(--av-verde);
    font-weight:700;
    text-decoration:none;
}

.av-inline-link:hover{color:var(--av-dorado)}

.av-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    min-height:46px;
    padding:.72rem 1.25rem;
    border:1px solid transparent;
    border-radius:8px;
    font-weight:700;
    line-height:1.2;
    text-decoration:none;
    transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}

.av-btn:hover{transform:translateY(-2px)}
.av-btn--primary{background:var(--av-verde);color:#fff;box-shadow:0 8px 18px rgba(4,44,35,.18)}
.av-btn--primary:hover{background:var(--av-verde-claro);color:#fff}
.av-btn--gold{background:var(--av-dorado);color:#fff}
.av-btn--gold:hover{background:var(--av-dorado-claro);color:#fff}
.av-btn--outline{background:#fff;color:var(--av-verde);border-color:rgba(4,44,35,.3)}

.av-card{
    overflow:hidden;
    background:#fff;
    border:1px solid var(--av-borde);
    border-radius:var(--av-radio);
    box-shadow:var(--av-sombra-suave);
}

/* SINGLE SERVICIOS */
.av-single-service{
    padding-bottom:64px;
    background:#fff;
    color:var(--av-texto);
}

.av-single-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
    padding-top:24px;
    padding-bottom:24px;
    color:#6f7975;
    font-size:13px;
}

.av-single-breadcrumb a{color:#6f7975;text-decoration:none}
.av-single-breadcrumb a:hover{color:var(--av-verde)}
.av-single-breadcrumb svg{width:15px;height:15px}

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

.av-single-main{min-width:0}

.av-single-hero{
    border-radius:18px;
    background:linear-gradient(135deg,#fbfbfa,#f4f3f0);
}

.av-single-hero-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,.88fr);
    gap:38px;
    align-items:center;
    padding:42px;
}

.av-eyebrow{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:12px;
    color:var(--av-dorado);
    font-size:13px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.av-single-hero h1{
    margin:0;
    color:var(--av-verde);
    font-family:Cinzel,Georgia,serif;
    font-size:clamp(34px,4vw,52px);
    font-weight:700;
    line-height:1.08;
}

.av-title-rule{
    width:62px;
    height:3px;
    margin:18px 0 24px;
    border-radius:5px;
    background:var(--av-dorado);
}

.av-single-hero h2{
    margin:0 0 14px;
    color:var(--av-verde);
    font-size:23px;
    line-height:1.3;
}

.av-single-description{
    color:#47514d;
    font-size:16px;
    line-height:1.75;
}

.av-single-description p:last-child{margin-bottom:0}

.av-single-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:25px;
}

.av-single-hero-media{margin:0}
.av-single-hero-media img{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:15px;
    box-shadow:0 14px 27px rgba(0,0,0,.14);
}

.av-process-strip{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin:0 42px 38px;
    overflow:hidden;
    border:1px solid var(--av-borde);
    border-radius:12px;
    background:#fff;
}

.av-process-item{
    display:flex;
    gap:11px;
    padding:17px;
    border-right:1px solid var(--av-borde);
}

.av-process-item:last-child{border-right:0}
.av-process-item>svg{width:31px;height:31px;color:var(--av-verde)}
.av-process-item strong{display:block;color:var(--av-verde);font-size:14px}
.av-process-item span{display:block;margin-top:3px;color:#68736f;font-size:12px;line-height:1.35}

.av-single-section{margin-top:42px}
.av-section-heading{margin-bottom:22px}
.av-section-heading>span{
    display:block;
    margin-bottom:4px;
    color:var(--av-dorado);
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.av-section-heading h2{
    margin:0;
    color:var(--av-verde);
    font-family:Cinzel,Georgia,serif;
    font-size:32px;
    font-weight:600;
}

.av-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.av-benefit-card{padding:27px 23px;text-align:center;transition:.22s ease}
.av-benefit-card:hover{transform:translateY(-4px);box-shadow:var(--av-sombra-media)}
.av-benefit-icon{
    display:grid;
    width:54px;
    height:54px;
    margin:0 auto 14px;
    place-items:center;
    border-radius:50%;
    background:#edf3f0;
    color:var(--av-verde);
}
.av-benefit-icon svg{width:29px;height:29px}
.av-benefit-card h3{margin:0 0 9px;color:var(--av-verde);font-size:18px}
.av-benefit-card p{margin:0;color:#5d6763;font-size:14px;line-height:1.65}

.av-timeline{position:relative;padding-left:58px}
.av-timeline:before{
    content:"";
    position:absolute;
    top:8px;
    bottom:8px;
    left:20px;
    width:2px;
    background:linear-gradient(var(--av-verde),var(--av-dorado));
}
.av-timeline-item{position:relative;margin-bottom:22px}
.av-timeline-number{
    position:absolute;
    top:0;
    left:-58px;
    display:grid;
    width:42px;
    height:42px;
    place-items:center;
    border-radius:50%;
    background:var(--av-verde);
    color:#fff;
    font-weight:800;
    box-shadow:0 0 0 6px #eef4f1;
}
.av-timeline-content{padding:20px 22px}
.av-timeline-content h3{margin:0 0 7px;color:var(--av-verde);font-size:18px}
.av-timeline-content p{margin:0;color:#59635f;line-height:1.65}

.av-sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.av-sector-chip{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:57px;
    padding:13px;
    border:1px solid var(--av-borde);
    border-radius:10px;
    background:#fff;
    color:var(--av-verde);
    font-size:14px;
    font-weight:700;
    text-align:center;
}
.av-sector-chip svg{width:22px;height:22px;color:var(--av-dorado)}
.av-sector-description{margin-top:18px;color:#5d6763;line-height:1.72}

.av-single-cta{
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:20px;
    align-items:center;
    margin-top:38px;
    padding:28px;
    overflow:hidden;
    border-radius:14px;
    background:linear-gradient(135deg,var(--av-verde),#075141);
    color:#fff;
    box-shadow:0 12px 30px rgba(4,44,35,.18);
}
.av-single-cta>svg{width:52px;height:52px;color:var(--av-dorado)}
.av-single-cta h2{margin:0 0 4px;color:#fff;font-size:23px}
.av-single-cta p{margin:0;color:#dfe9e5}

.av-testimonial{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:18px;
    align-items:start;
    margin-top:26px;
    padding:24px;
}
.av-testimonial>svg{width:38px;height:38px;color:var(--av-dorado)}
.av-testimonial blockquote{margin:0;color:#5b6561;font-style:italic;line-height:1.7}
.av-testimonial cite{display:block;margin-top:10px;color:var(--av-verde);font-style:normal;font-weight:700}

.av-training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.av-training-card{
    overflow:hidden;
    border:1px solid var(--av-borde);
    border-radius:12px;
    background:#fff;
    box-shadow:var(--av-sombra-suave);
}
.av-training-media{display:block;height:145px;background:#e9eee9}
.av-training-media img{display:block;width:100%;height:100%;object-fit:cover}
.av-training-placeholder{display:grid;width:100%;height:100%;place-items:center;color:var(--av-verde)}
.av-training-placeholder svg{width:48px;height:48px}
.av-training-body{padding:17px}
.av-training-type{display:flex;align-items:center;gap:6px;color:var(--av-dorado);font-size:11px;font-weight:800;text-transform:uppercase}
.av-training-body h3{margin:7px 0;color:var(--av-verde);font-size:17px;line-height:1.3}
.av-training-body h3 a{color:inherit;text-decoration:none}
.av-training-body p{margin:0 0 12px;color:#66716c;font-size:13px;line-height:1.55;text-align:justify}

.av-single-sidebar{position:sticky;top:100px}
.av-contact-card{
    margin-bottom:25px;
    padding:26px;
    border-radius:16px;
    background:linear-gradient(160deg,var(--av-verde),#063b30);
    color:#fff;
    box-shadow:0 14px 34px rgba(4,44,35,.2);
}
.av-contact-main-icon{width:42px;height:42px;color:var(--av-dorado)}
.av-contact-card h2{margin:12px 0 10px;color:#fff;font-size:25px}
.av-contact-card>p{margin:0 0 20px;color:#dbe7e3;line-height:1.6}
.av-contact-list{display:grid;gap:15px;margin-bottom:20px}
.av-contact-list>div{display:flex;align-items:flex-start;gap:11px}
.av-contact-list svg{width:22px;height:22px;color:var(--av-dorado)}
.av-contact-list span{color:#dbe7e3;font-size:13px;line-height:1.4}
.av-contact-list strong{display:block;color:#fff;font-size:13px}
.av-contact-card .av-btn{width:100%}

.av-other-services{padding:21px}
.av-other-services>h2{margin:0 0 18px;color:var(--av-verde);font-size:24px}
.av-side-service{
    display:grid;
    grid-template-columns:82px 1fr;
    gap:11px;
    margin-bottom:14px;
    padding:9px;
    border:1px solid var(--av-borde);
    border-radius:11px;
    color:var(--av-texto);
    text-decoration:none;
    transition:.2s ease;
}
.av-side-service:last-child{margin-bottom:0}
.av-side-service:hover{transform:translateY(-2px);box-shadow:var(--av-sombra-suave)}
.av-side-service img,.av-side-placeholder{width:82px;height:92px;border-radius:8px}
.av-side-service img{object-fit:cover}
.av-side-placeholder{display:grid;place-items:center;background:#eef3f1;color:var(--av-verde)}
.av-side-placeholder svg{width:34px;height:34px}
.av-side-service strong{display:block;color:var(--av-verde);font-size:14px;line-height:1.3}
.av-side-service small{display:block;margin-top:4px;color:#66716c;font-size:12px;line-height:1.35}
.av-side-service em{display:flex;align-items:center;gap:4px;margin-top:8px;color:var(--av-dorado);font-size:11px;font-style:normal;font-weight:800}

.av-sr-only{
    position:absolute!important;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}

@media(max-width:1100px){
    .av-single-layout{grid-template-columns:1fr}
    .av-single-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:24px}
    .av-contact-card{margin-bottom:0}
}

@media(max-width:900px){
    .av-single-hero-inner{grid-template-columns:1fr}
    .av-process-strip{grid-template-columns:1fr 1fr}
    .av-process-item:nth-child(2){border-right:0}
    .av-benefits-grid,.av-training-grid{grid-template-columns:1fr}
    .av-sector-grid{grid-template-columns:repeat(2,1fr)}
    .av-single-sidebar{grid-template-columns:1fr}
}

@media(max-width:650px){
    .av-container{width:min(100% - 24px,1240px)}
    .av-single-hero-inner{padding:28px 22px}
    .av-process-strip{grid-template-columns:1fr;margin:0 22px 24px}
    .av-process-item{border-right:0;border-bottom:1px solid var(--av-borde)}
    .av-process-item:last-child{border-bottom:0}
    .av-single-actions{display:grid}
    .av-btn{width:100%}
    .av-sector-grid{grid-template-columns:1fr}
    .av-single-cta{grid-template-columns:1fr}
}
