.elementor-345 .elementor-element.elementor-element-764943e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-ae716cf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-9e511f7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-5cdd906{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-67d3dd3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-266c151{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-c0a42ad{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-345 .elementor-element.elementor-element-455de77{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-06fcbe5 *//* ======================================
   ESG · Sección 1 · Hero (CSS)
   ====================================== */

/* Tokens mínimos (ajusta si ya existen en tu proyecto) */
:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 14px 36px rgba(15,18,22,.18);
  --h1:clamp(30px, 7vw, 56px);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Hero ===== */
.esg-hero{
  position:relative; isolation:isolate; color:#fff;
  min-height:74vh; display:grid; align-items:end; overflow:hidden;
  /* deja algo de aire para que no tape el indicador de scroll */
  padding-bottom: clamp(56px, 9vh, 96px);
}
.esg-hero__media{position:absolute; inset:0; z-index:-2; background:#0b0d10}
.esg-hero__img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 40%;
  transform:scale(1.02); /* sutil zoom para evitar bordes vacíos */
  filter:saturate(102%);
}
.esg-hero__overlay{
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(1200px 480px at 70% -10%, rgba(155,28,28,.22) 0%, transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.38));
}

/* Contenido */
.esg-hero__content{padding-block: clamp(32px, 7vh, 84px) 0; max-width: 920px}
.esg-eyebrow{
  margin:0 0 6px; font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:rgba(255,255,255,.9)
}
.esg-hero__title{
  margin:0 0 10px; font-weight:800; font-size:var(--h1); line-height:1.1; text-wrap:balance;
}
.esg-hero__lead{
  margin:0 0 16px; font-size:clamp(15px, 2.2vw, 18px); line-height:1.6;
  color:rgba(255,255,255,.92); max-width: 64ch;
}

/* Acciones (usa tus estilos globales de botones si ya existen) */
.esg-hero__actions{display:flex; gap:10px; flex-wrap:wrap}
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 16px; border-radius:999px; border:1px solid var(--clr-line);
  font-weight:700; transition:transform .16s ease, box-shadow .22s ease, background .2s ease, color .2s ease;
  box-shadow:var(--shadow-sm);
}
.ce-btn--primary{background:var(--clr-primary); color:#fff; border-color:transparent}
.ce-btn--primary:hover{transform:translateY(-1px); box-shadow:var(--shadow-md); background:var(--clr-primary-600)}
.ce-btn--ghost{background:transparent; color:#fff; border-color:rgba(255,255,255,.35); backdrop-filter:saturate(130%) blur(2px)}
.ce-btn--ghost:hover{background:rgba(255,255,255,.10); transform:translateY(-1px); box-shadow:var(--shadow-md)}

/* Indicador de scroll */
.esg-hero__scroll{
  position:absolute; left:50%; bottom:18px; transform:translateX(-50%);
  width:28px; height:44px; border-radius:20px; border:2px solid rgba(255,255,255,.75);
  display:grid; place-items:center; background:transparent; cursor:pointer; opacity:.9;
}
.esg-hero__dot{
  width:6px; height:6px; border-radius:50%; background:#fff; animation:esg-dot 1.6s infinite;
}
@keyframes esg-dot{
  0%{transform:translateY(-8px); opacity:.2}
  40%{transform:translateY(0); opacity:1}
  100%{transform:translateY(8px); opacity:0}
}

/* Responsivo */
@media (min-width:768px){
  .esg-hero{min-height:82vh}
  .esg-hero__content{padding-block: clamp(48px, 9vh, 108px) 0}
}

/* Accesibilidad: reduce motion */
@media (prefers-reduced-motion:reduce){
  .esg-hero__dot{animation:none}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-845a5ee *//* ======================================
   ESG · Sección 2 · Pilares (Tabs) — CSS
   Mantiene el ancho .ce-wrap y la línea visual
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo de la sección ===== */
.esg-tabs{
  position:relative; isolation:isolate;
  padding-block: clamp(40px, 8vh, 84px);
  background:
    radial-gradient(1200px 460px at 15% -10%, rgba(155,28,28,.06) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}

/* ===== Tablist ===== */
.esg-tabs__list{
  display:flex; gap:8px; flex-wrap:wrap;
  border-bottom:1px solid var(--clr-line);
  margin-bottom: clamp(14px, 3.2vh, 24px);
}
.esg-tab{
  position:relative;
  appearance:none; background:#fff; color:var(--clr-ink);
  border:1px solid var(--clr-line); border-bottom:none;
  border-radius:12px 12px 0 0;
  padding:10px 14px; font-weight:800; font-size:14px; letter-spacing:.02em;
  box-shadow: var(--shadow-sm);
  cursor:pointer;
  transition: background .2s ease, color .2s ease, box-shadow .22s ease, transform .12s ease;
}
.esg-tab:is(:hover,:focus-visible){ transform: translateY(-1px); box-shadow: var(--shadow-md) }
.esg-tab.is-active{
  background: #fff; color: var(--clr-primary);
  box-shadow: 0 8px 22px rgba(15,18,22,.10);
}
.esg-tab.is-active::after{
  content:""; position:absolute; left:0; right:0; bottom:-1px; height:3px;
  background: var(--clr-primary);
  border-radius: 2px 2px 0 0;
}

/* ===== Panels ===== */
.esg-tabs__panels{ display:grid; gap:18px }
.esg-panel{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  box-shadow: var(--shadow-sm);
  padding: clamp(16px, 2.6vw, 24px);
  outline:0;
}
.esg-panel[hidden]{ display:none }  /* respeta atributo hidden */
.esg-panel__head{ max-width: 920px }
.esg-panel__title{
  margin:0 0 6px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(20px, 3.8vw, 28px); line-height:1.18; text-wrap:balance;
}
.esg-panel__lead{
  margin:0; color:var(--clr-muted);
  font-size: 16.5px; line-height:1.6;
}

/* Bullets / lista de acciones */
.esg-panel__bullets{
  margin: clamp(10px, 2.4vh, 16px) 0 0; padding:0 0 0 18px;
  color: var(--clr-ink);
  display:grid; gap:8px;
}
.esg-panel__bullets li{
  line-height:1.6; font-size: 15.5px; color: var(--clr-muted);
}
.esg-panel__bullets li strong{ color: var(--clr-ink); font-weight:800 }

/* Acciones dentro del panel */
.esg-panel__actions{
  display:flex; gap:10px; flex-wrap:wrap; margin-top: 12px;
}
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 16px; font-weight:700; border-radius:999px; border:1px solid var(--clr-line);
  background:#fff; color:var(--clr-ink); box-shadow: var(--shadow-sm);
  transition: transform .16s ease, box-shadow .22s ease, background .2s ease, color .2s ease, border-color .2s;
}
.ce-btn--primary{ background:var(--clr-primary); color:#fff; border-color:transparent }
.ce-btn--primary:hover{ transform:translateY(-1px); box-shadow: var(--shadow-md); background:var(--clr-primary-600) }
.ce-btn--ghost{ background:transparent; color:var(--clr-ink); }
.ce-btn--ghost:hover{ background:#f7f9fc; transform:translateY(-1px); box-shadow: var(--shadow-md) }

/* ===== Accesibilidad y focus ===== */
.esg-tab:focus-visible{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 70%, #fff);
  outline-offset:2px;
}
.esg-panel:focus-visible{
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--clr-primary) 32%, #fff);
}

/* ===== Responsive fino ===== */
@media (min-width: 980px){
  .esg-panel{
    padding: clamp(18px, 2.4vw, 28px);
  }
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .esg-tab, .ce-btn{ transition:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-95f367a *//* ======================================
   ESG · Sección 3 · Pilar: Ambiental (CSS)
   Respeta .ce-wrap (1120px) y la línea visual del sitio
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo del pilar ===== */
.esg-pillar{
  position:relative; isolation:isolate; overflow:clip;
  background:
    radial-gradient(1200px 520px at 12% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}
.esg-pillar--ambiente{ padding-block: clamp(40px, 8vh, 84px) }

/* ===== Banda visual ===== */
.esg-band{
  position:relative; max-width:1120px; margin: 0 auto clamp(18px, 4vh, 28px);
  border-radius:18px; overflow:hidden; box-shadow: var(--shadow-md);
}
.esg-band__img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 16 / 5;
  filter: saturate(1.04) contrast(1.04);
}
.esg-band__overlay{
  position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.06));
}

/* ===== Encabezado ===== */
.esg-pillar__head{ max-width: 920px; margin-inline:auto }
.esg-eyebrow{
  margin:0 0 6px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted);
}
.esg-pillar__title{
  margin:0 0 8px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.esg-pillar__lead{
  margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6;
}

/* ===== Lista de acciones (grid) ===== */
.esg-actions{
  list-style:none; margin: clamp(16px, 3.6vh, 24px) 0 0; padding:0;
  display:grid; gap:12px;
  grid-template-columns: 1fr;                /* móvil */
}
@media (min-width:760px){
  .esg-actions{ grid-template-columns: repeat(2, 1fr) }
}
@media (min-width:1080px){
  .esg-actions{ grid-template-columns: repeat(4, 1fr) }
}

.esg-actions__item{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(14px, 2.6vw, 18px);
  box-shadow: var(--shadow-sm);
  transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease;
  min-height: 160px;
  display:grid; gap:6px;
}
@media (hover:hover){
  .esg-actions__item:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.20);
  }
}
.esg-actions__title{
  margin:0; font-weight:800; color:var(--clr-ink);
  font-size: clamp(15px, 2.2vw, 16px); letter-spacing:.02em; text-transform:uppercase;
}
.esg-actions__text{
  margin:0; color:var(--clr-muted); font-size:15.5px; line-height:1.55;
}

/* ===== Apoyo / evidencia ===== */
.esg-proof{
  margin-top: clamp(16px, 3.8vh, 26px);
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(14px, 2.6vw, 20px);
  box-shadow: var(--shadow-sm);
  max-width: 920px; margin-inline:auto;
}
.esg-proof__title{
  margin:0 0 6px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(18px, 3.2vw, 20px); line-height:1.2;
}
.esg-proof__text{
  margin:0; color:var(--clr-muted); font-size:16px; line-height:1.6;
}

/* ===== Accesibilidad ===== */
.esg-actions__item:focus-within{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 32%, #fff);
  outline-offset:2px;
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .esg-actions__item{ transition:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a77d11e *//* ======================================
   ESG · Sección 4 · Pilar: Social (CSS)
   Consistente con la Sección 3 (Ambiental)
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo del pilar Social ===== */
.esg-pillar{
  position:relative; isolation:isolate; overflow:clip;
  background:
    radial-gradient(1200px 520px at 88% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}
.esg-pillar--social{ padding-block: clamp(40px, 8vh, 84px) }

/* ===== Banda visual (reutiliza patrón) ===== */
.esg-pillar--social .esg-band{
  position:relative; max-width:1120px; margin:0 auto clamp(18px, 4vh, 28px);
  border-radius:18px; overflow:hidden; box-shadow: var(--shadow-md);
}
.esg-pillar--social .esg-band__img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 16 / 5;
  object-position: center 40%;
  filter: saturate(1.04) contrast(1.04);
}
.esg-pillar--social .esg-band__overlay{
  position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.06));
}

/* ===== Encabezado ===== */
.esg-pillar__head{ max-width: 920px; margin-inline:auto }
.esg-eyebrow{
  margin:0 0 6px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted);
}
.esg-pillar__title{
  margin:0 0 8px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.esg-pillar__lead{
  margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6;
}

/* ===== Bullets principales (grid) ===== */
.esg-actions{
  list-style:none; margin: clamp(16px, 3.6vh, 24px) 0 0; padding:0;
  display:grid; gap:12px;
  grid-template-columns: 1fr;
}
@media (min-width:760px){
  .esg-actions{ grid-template-columns: repeat(2, 1fr) }
}
@media (min-width:1080px){
  .esg-actions{ grid-template-columns: repeat(4, 1fr) }
}
.esg-actions__item{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(14px, 2.6vw, 18px);
  box-shadow: var(--shadow-sm);
  transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease;
  min-height: 160px;
  display:grid; gap:6px;
}
@media (hover:hover){
  .esg-actions__item:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.20);
  }
}
.esg-actions__title{
  margin:0; font-weight:800; color:var(--clr-ink);
  font-size: clamp(15px, 2.2vw, 16px); letter-spacing:.02em; text-transform:uppercase;
}
.esg-actions__text{
  margin:0; color:var(--clr-muted); font-size:15.5px; line-height:1.55;
}

/* ===== Mini-cards de iniciativas ===== */
.esg-minicards{
  margin-top: clamp(16px, 3.8vh, 26px);
  display:grid; gap:12px;
  grid-template-columns: 1fr;             /* móvil */
}
@media (min-width:780px){
  .esg-minicards{ grid-template-columns: repeat(3, 1fr) }
}
.esg-mini{
  background:#fff;
  border:1px solid var(--clr-line);
  border-radius:16px;
  padding: clamp(14px, 2.6vw, 18px);
  box-shadow: var(--shadow-sm);
  display:grid; gap:6px;
  transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease, background .2s ease;
}
@media (hover:hover){
  .esg-mini:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.20);
    background: linear-gradient(#fff, #fdfdfd);
  }
}
.esg-mini__title{
  margin:0; font-weight:800; color:var(--clr-ink);
  font-size: clamp(15px, 2.2vw, 16px); letter-spacing:.02em;
}
.esg-mini__text{
  margin:0; color:var(--clr-muted); font-size:15.5px; line-height:1.55;
}

/* ===== Accesibilidad ===== */
.esg-actions__item:focus-within,
.esg-mini:focus-within{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 32%, #fff);
  outline-offset:2px;
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .esg-actions__item, .esg-mini{ transition:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6ea3634 *//* ======================================
   ESG · Sección 5 · Pilar: Gobernanza (CSS)
   Consistente con Sección 3 (Ambiental) y 4 (Social)
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo del pilar Gobernanza ===== */
.esg-pillar{
  position:relative; isolation:isolate; overflow:clip;
  background:
    radial-gradient(1200px 520px at 50% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}
.esg-pillar--gobernanza{ padding-block: clamp(40px, 8vh, 84px) }

/* ===== Banda visual ===== */
.esg-pillar--gobernanza .esg-band{
  position:relative; max-width:1120px; margin:0 auto clamp(18px, 4vh, 28px);
  border-radius:18px; overflow:hidden; box-shadow: var(--shadow-md);
}
.esg-pillar--gobernanza .esg-band__img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 16 / 5;
  object-position:center 45%;
  filter:saturate(1.04) contrast(1.04);
}
.esg-pillar--gobernanza .esg-band__overlay{
  position:absolute; inset:0; pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.06));
}

/* ===== Encabezado ===== */
.esg-pillar__head{ max-width: 920px; margin-inline:auto }
.esg-eyebrow{
  margin:0 0 6px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted);
}
.esg-pillar__title{
  margin:0 0 8px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.esg-pillar__lead{
  margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6;
}

/* ===== Principios (grid) ===== */
.esg-principles{
  list-style:none; margin: clamp(16px, 3.6vh, 24px) 0 0; padding:0;
  display:grid; gap:12px;
  grid-template-columns: 1fr;                 /* móvil */
}
@media (min-width:760px){
  .esg-principles{ grid-template-columns: repeat(2, 1fr) }
}
@media (min-width:1080px){
  .esg-principles{ grid-template-columns: repeat(4, 1fr) }
}

.esg-principles__item{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(14px, 2.6vw, 18px);
  box-shadow: var(--shadow-sm);
  min-height: 160px;
  display:grid; gap:6px;
  transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease, background .2s ease;
}
@media (hover:hover){
  .esg-principles__item:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.20);
    background: linear-gradient(#fff, #fdfdfd);
  }
}
.esg-principles__title{
  margin:0; font-weight:800; color:var(--clr-ink);
  font-size: clamp(15px, 2.2vw, 16px); letter-spacing:.02em; text-transform:uppercase;
}
.esg-principles__text{
  margin:0; color:var(--clr-muted); font-size:15.5px; line-height:1.55;
}

/* ===== Nota / apoyo ===== */
.esg-proof{
  margin-top: clamp(16px, 3.8vh, 26px);
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(14px, 2.6vw, 20px);
  box-shadow: var(--shadow-sm);
  max-width: 920px; margin-inline:auto;
}
.esg-proof__title{
  margin:0 0 6px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(18px, 3.2vw, 20px); line-height:1.2;
}
.esg-proof__text{
  margin:0; color:var(--clr-muted); font-size:16px; line-height:1.6;
}

/* ===== Accesibilidad ===== */
.esg-principles__item:focus-within{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 32%, #fff);
  outline-offset:2px;
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .esg-principles__item{ transition:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bad61ea *//* ======================================
   ESG · Sección 6 · Certificaciones (CSS)
   Consistente con las secciones previas
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo ===== */
.esg-certs{
  position:relative; isolation:isolate;
  padding-block: clamp(40px, 8vh, 84px);
  background:
    radial-gradient(1200px 480px at 12% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}

/* ===== Head ===== */
.esg-certs__head{ text-align:left; max-width:920px; margin-inline:auto; margin-bottom: clamp(14px,3.2vh,22px) }
.esg-eyebrow{ margin:0 0 6px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted) }
.esg-certs__title{
  margin:0 0 8px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.esg-certs__lead{ margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6 }

/* ===== Accordion ===== */
.esg-acc{
  display:grid; gap:12px;
  max-width:920px; margin-inline:auto;
}
.esg-acc__item{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  box-shadow: var(--shadow-sm);
  overflow:hidden;
  transition: box-shadow .22s ease, border-color .22s ease, transform .16s ease;
}
@media (hover:hover){
  .esg-acc__item:hover{
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.18);
  }
}

/* Botón disparador */
.esg-acc__trigger{
  width:100%;
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding: 14px 16px;
  background:#fff; color:var(--clr-ink);
  border:0; cursor:pointer; text-align:left;
  font-weight:800; font-size: clamp(15px, 2.2vw, 16px);
}
.esg-acc__trigger:focus-visible{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 70%, #fff);
  outline-offset:2px;
  border-radius:12px;
}

/* Icono +/– (o podrías usar un chevron con rotate) */
.esg-acc__icon{
  flex:0 0 auto;
  width:24px; height:24px; border-radius:999px;
  display:grid; place-items:center;
  background:#f4f6fa; color:#3a4150;
  font-weight:900; line-height:1;
  transition: transform .22s ease, background .2s ease, color .2s ease;
}
.esg-acc__trigger[aria-expanded="true"] .esg-acc__icon{
  background: color-mix(in srgb, var(--clr-primary) 12%, #f4f6fa);
  color: var(--clr-primary);
  transform: rotate(90deg);
}

/* Panel */
.esg-acc__panel{
  padding: 0 16px 14px 16px;
  border-top:1px solid var(--clr-line);
  animation: esg-acc-fade .22s ease;
}
@keyframes esg-acc-fade{
  from{ opacity:0; transform: translateY(-2px) }
  to{ opacity:1; transform: translateY(0) }
}

/* Lista interna */
.esg-acc__list{
  margin: 10px 0 0; padding: 0 0 0 18px;
  display:grid; gap:6px;
  color: var(--clr-muted);
  font-size:15.5px; line-height:1.6;
}

/* ===== CTA ===== */
.esg-certs__cta{
  margin-top: clamp(16px, 3.6vh, 26px);
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  box-shadow: var(--shadow-sm);
  padding: 14px 16px;
  display:flex; gap:10px; flex-wrap:wrap; align-items:center; justify-content:center;
}
.esg-certs__ctaText{ margin:0; color:var(--clr-ink); font-weight:700; font-size:16px }

/* Botón (fallback si no hereda global) */
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 16px; font-weight:700; border-radius:999px; border:1px solid var(--clr-line);
  background:#fff; color:var(--clr-ink); box-shadow: var(--shadow-sm);
  transition: transform .16s ease, box-shadow .22s ease, background .2s ease, color .2s ease, border-color .2s;
}
.ce-btn--primary{ background:var(--clr-primary); color:#fff; border-color:transparent }
.ce-btn--primary:hover{ transform:translateY(-1px); box-shadow: var(--shadow-md); background:var(--clr-primary-600) }

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .esg-acc__item, .esg-acc__panel{ transition:none; animation:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2809124 *//* ======================================
   ESG · KPIs (CSS)
   ====================================== */
:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

.esg-kpis{
  position:relative; isolation:isolate;
  padding-block: clamp(40px, 8vh, 84px);
  background:
    radial-gradient(1200px 460px at 85% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#fff, #fbfbfb);
}
.esg-kpis__head{
  text-align:left; max-width:920px; margin-inline:auto;
  margin-bottom: clamp(14px,3.2vh,24px);
}
.esg-eyebrow{ margin:0 0 6px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted) }
.esg-kpis__title{
  margin:0 0 6px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18;
}
.esg-kpis__lead{ margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6 }

.esg-kpis__grid{
  list-style:none; margin: clamp(16px, 3.6vh, 26px) 0 0; padding:0;
  display:grid; gap:12px;
  grid-template-columns: 1fr 1fr;               /* móvil ancho */
}
@media (min-width:820px){
  .esg-kpis__grid{ grid-template-columns: repeat(4, 1fr) }
}

.esg-kpi{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  box-shadow: var(--shadow-sm);
  padding: clamp(14px, 2.6vw, 20px);
  display:grid; gap:6px; place-items:center;
  transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease;
  min-height: 140px;
}
@media (hover:hover){
  .esg-kpi:hover{ transform: translateY(-2px); box-shadow: var(--shadow-md); border-color: rgba(155,28,28,.2) }
}

.esg-kpi__num{
  font-weight:900; color:var(--clr-ink);
  font-size: clamp(28px, 6vw, 40px);
  line-height:1;
}
.esg-kpi__label{
  margin:0; color:var(--clr-muted); font-size:15.5px; text-align:center;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-582e0d8 *//* ======================================
   ESG · Sección 8 · CTA final (CSS)
   Respeta .ce-wrap (1120px) y la línea visual
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 14px 36px rgba(15,18,22,.18);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo CTA ===== */
.esg-ctaFinal{
  --cta-bg:url("https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?q=80&w=2000&auto=format&fit=crop");
  position:relative; isolation:isolate; overflow:hidden;
  padding-block: clamp(56px, 10vh, 120px);
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.45)),
    var(--cta-bg);
  background-size:cover; background-position:center 45%; background-repeat:no-repeat;
}
.esg-ctaFinal::before{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(70% 55% at 50% 100%, rgba(0,0,0,.25) 0%, transparent 60%),
    linear-gradient(to top, rgba(0,0,0,.28) 0%, rgba(0,0,0,.10) 40%, rgba(0,0,0,0) 70%);
}

/* ===== Caja “glass” ===== */
.esg-ctaFinal__box{
  position:relative; z-index:1; margin-inline:auto; text-align:center; color:#fff;
  background: linear-gradient(180deg, rgba(255,255,255,.70), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.32);
  border-radius: 24px;
  padding: clamp(24px, 3.6vw, 42px);
  box-shadow: 0 20px 60px rgba(15,18,22,.28), inset 0 1px 0 rgba(255,255,255,.35);
  backdrop-filter: blur(8px) saturate(140%);
}

/* Titular y texto */
.esg-ctaFinal__title{
  margin:0 0 8px; font-weight:900; color:#fff;
  font-size: clamp(26px, 5vw, 40px); line-height:1.12; text-wrap:balance;
  text-shadow: 0 2px 10px rgba(0,0,0,.25);
}
.esg-ctaFinal__sub{
  margin:0 0 14px; color:rgba(255,255,255,.96);
  font-size: clamp(16px, 2.2vw, 20px); line-height:1.55;
}

/* Acciones */
.esg-ctaFinal__actions{
  display:flex; gap:12px; flex-wrap:wrap; justify-content:center; margin-bottom:10px;
}

/* Botones (usa tus clases globales si ya existen) */
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 22px; font-weight:800; border-radius:999px; border:1.5px solid rgba(255,255,255,.4);
  box-shadow:var(--shadow-sm);
  transition:transform .16s ease, box-shadow .22s ease, background .2s ease, color .2s ease, border-color .22s;
  font-size: clamp(15px, 2vw, 18px);
}
.ce-btn--light{ background:#fff; color:var(--clr-ink); border-color:transparent }
.ce-btn--light:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md) }
.ce-btn--ghostLight{ background:rgba(255,255,255,.04); color:#fff; border-color:rgba(255,255,255,.55) }
.ce-btn--ghostLight:hover{ background:rgba(255,255,255,.14); transform:translateY(-2px); box-shadow:var(--shadow-md) }

/* Nota */
.esg-ctaFinal__note{
  margin:10px 0 0; color:rgba(255,255,255,.92);
  font-size:clamp(13px,1.6vw,14.5px);
}
.esg-ctaFinal__note strong{ font-weight:800 }

/* Responsive */
@media (max-width:640px){
  .esg-ctaFinal__box{ border-radius:18px }
  .ce-btn{ width:100%; max-width:360px }
}

/* Reduce motion */
@media (prefers-reduced-motion:reduce){
  .ce-btn{ transition:none }
}/* End custom CSS */