/* Operaciones — extiende los estilos comunes definidos en historia.css */

.hero-operations{
  min-height:540px;
  height:36vw;
  max-height:690px;
  background:
    linear-gradient(180deg,rgba(8,24,50,.10) 0%,rgba(8,24,50,.04) 48%,rgba(8,24,50,.20) 100%),
    url("operaciones-hero.jpg") center 50%/cover no-repeat;
}
.hero-operations .hero-title{left:80px;bottom:58px}

.operations-intro{padding:92px 0 96px}
.operations-intro .intro-grid{
  grid-template-columns:.9fr 1.1fr;
  gap:110px;
}
.operations-intro h2{
  color:#555;
  font-size:clamp(36px,3.4vw,58px);
  font-weight:900;
  line-height:1.16;
  letter-spacing:-.7px;
}
.operations-intro p{
  color:#626262;
  font-size:clamp(17px,1.35vw,21px);
  line-height:1.66;
}

.operations-pillars{
  background:var(--blue);
  border-radius:46px 46px 0 0;
  padding:88px 7% 86px;
  color:#fff;
}
.pillar-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:80px;
  max-width:1500px;
  margin:0 auto;
  text-align:center;
}
.pillar-icon{
  width:78px;
  height:78px;
  margin:0 auto 30px;
}
.pillar-icon img{width:100%;height:100%;object-fit:contain}
.pillar h2{
  margin-bottom:18px;
  color:#fff;
  font-size:clamp(20px,1.55vw,25px);
  font-weight:800;
  line-height:1.2;
}
.pillar p{
  max-width:360px;
  margin:0 auto;
  color:#fff;
  font-size:clamp(16px,1.25vw,19px);
  line-height:1.5;
}

.proof{padding:90px 0 104px}
.proof-grid{
  display:grid;
  grid-template-columns:.35fr .65fr;
  gap:90px;
  align-items:start;
}
.section-kicker{
  margin-bottom:16px;
  color:#5b5b5b;
  font-size:17px;
  font-weight:500;
  letter-spacing:1px;
  text-transform:uppercase;
}
.section-title{
  color:var(--blue);
  font-size:clamp(40px,4vw,62px);
  font-weight:300;
  line-height:1.1;
  letter-spacing:-.5px;
  text-transform:uppercase;
}
.proof-tables{min-width:0}
.table-wrap{overflow-x:auto;margin-bottom:46px}
.production-table{
  width:100%;
  min-width:560px;
  border-collapse:collapse;
  color:#595959;
  font-size:16px;
}
.production-table thead th{
  background:#0a2b4b;
  color:#fff;
  padding:13px 18px;
  text-align:left;
  font-size:14px;
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
}
.production-table tbody td{padding:11px 18px;line-height:1.25}
.production-table tbody tr:nth-child(odd){background:#fff}
.production-table tbody tr:nth-child(even){background:#e9ebef}

.model-banner{
  position:relative;
  min-height:330px;
  height:22vw;
  max-height:430px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 20%,rgba(0,0,0,.45) 100%),
    url("operaciones-modelo.jpg") center 48%/cover no-repeat;
}
.model-banner h2{
  position:relative;
  z-index:1;
  max-width:1300px;
  margin:0 auto 60px;
  padding:0 80px;
  color:#fff;
  font-size:clamp(38px,4.1vw,68px);
  font-weight:300;
  line-height:1.12;
  letter-spacing:.3px;
  text-transform:uppercase;
}

.model-compare{width:100%}
.compare-head{
  display:grid;
  grid-template-columns:1fr 1fr;
  background:var(--blue);
  color:#fff;
  text-align:center;
}
.compare-head div{
  padding:26px 30px;
  font-size:clamp(19px,1.8vw,29px);
  font-weight:400;
  text-transform:uppercase;
}
.compare-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:128px;
  text-align:center;
}
.compare-row>div{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px 42px;
  color:#fff;
  font-size:clamp(18px,1.45vw,23px);
  line-height:1.35;
}
.compare-row.dark>div:first-child{background:#696969}
.compare-row.dark>div:last-child{background:#3b3b3b}
.compare-row.light>div{background:#fff;color:#555}
.compare-row.light>div:first-child{border-right:1px solid #d9dce2}

.services{padding:94px 0 0}
.services-heading{margin-bottom:54px}
.services-body{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:390px;
}
.services-list{
  display:flex;
  align-items:center;
  background:var(--blue);
  color:#fff;
  padding:66px 8%;
}
.services-list ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px 70px;
  width:100%;
  list-style:none;
}
.services-list li{
  position:relative;
  padding-left:26px;
  color:#fff;
  font-size:clamp(18px,1.55vw,25px);
  line-height:1.25;
}
.services-list li::before{
  content:"•";
  position:absolute;
  left:0;
  top:-1px;
  color:#fff;
  font-size:1.15em;
}
.services-image{
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
}

.kpis{padding:100px 0 132px;text-align:center}
.kpis .section-title{margin-bottom:80px}
.kpi-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:82px 90px;
  max-width:1160px;
  margin:0 auto 78px;
}
.kpi strong{
  display:block;
  margin-bottom:20px;
  color:var(--blue);
  font-size:clamp(44px,4.5vw,72px);
  font-weight:900;
  line-height:1;
  letter-spacing:-.8px;
}
.kpi span{
  color:#5f5f5f;
  font-size:clamp(17px,1.35vw,21px);
}
.kpis .cta{padding:18px 46px}

@media (max-width:1100px){
  .pillar-grid{gap:48px}
  .proof-grid{gap:54px}
}
@media (max-width:900px){
  .hero-operations{min-height:480px;height:66vw}
  .hero-operations .hero-title{left:34px;bottom:42px}
  .operations-intro{padding:76px 0 78px}
  .operations-intro .intro-grid{grid-template-columns:1fr;gap:38px}
  .operations-pillars{border-radius:34px 34px 0 0;padding:66px 34px 70px}
  .pillar-grid{grid-template-columns:1fr;gap:54px;max-width:520px}
  .proof{padding:70px 0 82px}
  .proof-grid{grid-template-columns:1fr;gap:44px}
  .model-banner{min-height:320px;height:58vw}
  .model-banner h2{margin:0 auto 42px;padding:0 34px}
  .compare-head div{padding:22px 18px}
  .compare-row>div{padding:28px 22px}
  .services{padding-top:72px}
  .services-body{grid-template-columns:1fr}
  .services-list{padding:54px 34px}
  .services-image{min-height:300px}
  .kpis{padding:76px 0 98px}
  .kpis .section-title{margin-bottom:54px}
  .kpi-grid{gap:54px;margin-bottom:58px}
}
@media (max-width:560px){
  .hero-operations{min-height:430px;height:105vw;background-position:center 50%}
  .hero-operations .hero-title{left:22px;bottom:34px;font-size:45px}
  .operations-intro{padding:62px 0 66px}
  .operations-intro h2{font-size:33px}
  .operations-pillars{padding:56px 22px 62px}
  .proof{padding:62px 0 68px}
  .section-title{font-size:36px}
  .production-table{min-width:0;font-size:12.5px}
  .production-table thead th,.production-table tbody td{padding:10px 10px}
  .model-banner{min-height:300px;height:72vw}
  .model-banner h2{margin-bottom:32px;padding:0 22px;font-size:31px}
  .compare-head{grid-template-columns:1fr}
  .compare-head div{padding:18px 16px;font-size:18px}
  .compare-row{grid-template-columns:1fr;min-height:0}
  .compare-row>div{padding:22px 18px;font-size:16px}
  .compare-row.light>div:first-child{border-right:0;border-bottom:1px solid #d9dce2}
  .services-list{padding:44px 22px}
  .services-list ul{grid-template-columns:1fr;gap:18px}
  .services-image{min-height:240px}
  .kpis{padding:62px 0 80px}
  .kpi-grid{grid-template-columns:1fr;gap:46px}
  .kpis .cta{width:100%}
}
