/* GEP · Servicios. Usa las variables y componentes de style.css. */
.service-list{display:grid;gap:34px}
.service-block{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:44px;align-items:center;scroll-margin-top:calc(var(--header-h,74px) + 70px)}
.service-block.is-reverse{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
.service-block.is-reverse .service-media{order:2}
.service-media{position:relative;border-radius:var(--radius,18px);overflow:hidden;aspect-ratio:4/3;background:var(--green-soft,#e8efe9);box-shadow:var(--shadow,0 18px 50px rgba(22,42,29,.10))}
.service-media img{width:100%;height:100%;object-fit:cover;display:block}
.service-media-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:28px;color:#fff;
  background:
    repeating-radial-gradient(circle at 78% 30%,transparent 0 26px,rgba(255,255,255,.08) 26px 27px),
    linear-gradient(135deg,#173c2a 0%,#1f5a3b 55%,#3d7652 100%)}
.service-media-no{font:800 clamp(3rem,7vw,5.5rem)/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:-.04em;opacity:.9}
.service-media-tag{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.85}
.service-body{min-width:0}
.service-topline{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.service-no{font:800 .7rem/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:.1em;color:var(--green,#1f5a3b);background:var(--green-soft,#e8efe9);border-radius:999px;padding:7px 10px}
.service-tag{font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted,#607067)}
.service-body h3{font-size:clamp(1.6rem,2.8vw,2.4rem);line-height:1.06;letter-spacing:-.035em;margin:0 0 14px;text-wrap:balance}
.service-summary{font-size:1.06rem;color:var(--ink,#15231b);margin:0 0 10px}
.service-description{color:var(--muted,#607067);font-size:.95rem;margin:0 0 22px}
.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:22px;padding-top:20px;border-top:1px solid var(--line,#dce2dc)}
.service-columns h4{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green,#1f5a3b);margin:0 0 12px}
.service-checklist{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.service-checklist li{position:relative;padding-left:24px;font-size:.9rem;color:#2c3a31}
.service-checklist li::before{content:"";position:absolute;left:0;top:.35em;width:13px;height:13px;border-radius:50%;background:var(--green-soft,#e8efe9);box-shadow:inset 0 0 0 4px var(--green,#1f5a3b)}
.service-equipment{display:flex;gap:10px;align-items:baseline;font-size:.88rem;color:#2c3a31;margin:0 0 22px}
.service-equipment span{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted,#607067)}
.service-steps{grid-template-columns:repeat(4,1fr);margin-bottom:0}
.service-steps.service-steps-3{grid-template-columns:repeat(3,1fr)}
.service-steps.service-steps-2{grid-template-columns:repeat(2,1fr)}
.service-steps.service-steps-1{grid-template-columns:1fr}
.services-steps-section .section-head{grid-template-columns:1fr}

@media(max-width:1020px){
  .service-steps,.service-steps.service-steps-3{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
  .service-block,.service-block.is-reverse{grid-template-columns:1fr;gap:22px}
  .service-block.is-reverse .service-media{order:0}
  .service-media{aspect-ratio:16/9}
  .service-list{gap:56px}
}
@media(max-width:560px){
  .service-columns{grid-template-columns:1fr}
  .service-steps,.service-steps.service-steps-3,.service-steps.service-steps-2{grid-template-columns:1fr}
  .service-media-placeholder{padding:20px}
  .service-button{width:100%}
}
