@import url('fonts-roboto.css');
@import url('fonts-raleway.css');
/* ===========================================================
   Energy Gaia - estilos propios del sitio estático
   (slider de portada, formulario de WhatsApp, ajustes)
   =========================================================== */

/* ---------- Slider de portada ---------- */
.gaia-slider {
  position: relative;
  height: 500px;
  overflow: hidden;
  background: #0c2e20;
  color: #fff;
}

.gaia-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 1s ease, visibility 0s linear 1s;
  background-size: cover;
  background-position: left center;
  background-repeat: no-repeat;
}

.gaia-slide.is-active {
  opacity: 1;
  visibility: visible;
  z-index: 1;
  transition: opacity 1s ease;
}

.gaia-slide__bg-overlay {
  position: absolute;
  inset: 0;
  background: rgba(12, 46, 32, .5);
}

.gaia-slide__inner {
  position: relative;
  z-index: 2;
  height: 100%;
  max-width: 1140px;
  margin: 0 auto;
}

.gaia-slide__content {
  position: absolute;
  inset: 0;
}

.gaia-slide__title {
  position: absolute;
    left: 1px;
  bottom: 202px;
  width: 89.5%;
  margin: 0;
  padding: 15px;
  font-family: Roboto, Arial, sans-serif;
  font-size: 56px;
  line-height: 56px;
  font-weight: 500;
  color: #fff;
}

.gaia-slide__title.gaia-shadow {
  text-shadow: 0 3px 5px rgba(0, 0, 0, .75);
}

.gaia-slide__sub {
  position: absolute;
  left: 0;
  bottom: 130px;
  margin: 0;
  padding: 0 15px;
  font-family: Roboto, Arial, sans-serif;
  font-size: 24px;
  line-height: 25px;
  font-weight: 400;
  color: #fff;
  text-shadow: 0 3px 5px rgba(0, 0, 0, .55);
}

.gaia-slide__btn {
  position: absolute;
  left: 16px;
  bottom: 70px;
  display: inline-block;
  padding: 0 25px;
  font-family: Roboto, Arial, sans-serif;
  font-size: 16px;
  line-height: 40px;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  border: 2px solid #fff;
  border-radius: 30px;
  background: transparent;
  transition: transform .3s ease, background-color .3s ease, border-color .3s ease;
}

.gaia-slide__btn:hover,
.gaia-slide__btn:focus {
  background: rgba(255, 255, 255, .12);
  border-color: rgba(255, 255, 255, .75);
  transform: scale(1.1);
  color: #fff;
}

.gaia-slider__arrow {
  position: absolute;
  top: 50%;
  z-index: 5;
  width: 50px;
  height: 50px;
  margin-top: -25px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  opacity: .85;
  transition: opacity .3s ease;
}

.gaia-slider__arrow:hover,
.gaia-slider__arrow:focus {
  opacity: 1;
}

.gaia-slider__arrow svg {
  width: 26px;
  height: 26px;
  display: block;
  margin: 0 auto;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .4));
}

.gaia-slider__arrow--prev { left: 30px; }
.gaia-slider__arrow--next { right: 30px; }

.gaia-slider__dots {
  position: absolute;
  right: 20px;
  bottom: 20px;
  z-index: 5;
  display: flex;
  gap: 5px;
}

.gaia-slider__dot {
  width: 12px;
  height: 12px;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 50%;
  background: rgba(255, 255, 255, .55);
  cursor: pointer;
  transition: background-color .3s ease, transform .3s ease;
}

.gaia-slider__dot.is-active {
  background: transparent;
  border-color: #fff;
  transform: scale(1.15);
}

/* Animaciones de entrada del slider original (Revolution Slider):
   título sube (390 ms), subtítulo entra desde la izquierda (670 ms),
   botón sube (730 ms). fill-mode "backwards" para no pisar el hover. */
@keyframes gaia-from-bottom { from { opacity: 0; transform: translateY(60%); } to { opacity: 1; transform: none; } }
@keyframes gaia-from-left   { from { opacity: 0; transform: translateX(-100%); } to { opacity: 1; transform: none; } }
@keyframes gaia-btn-up      { from { opacity: 0; transform: translateY(100%); } to { opacity: 1; transform: none; } }

.gaia-slide.is-active .gaia-slide__title {
  animation: gaia-from-bottom 1s cubic-bezier(.175, .885, .32, 1.275) .39s backwards;
}
.gaia-slide.is-active .gaia-slide__sub {
  animation: gaia-from-left 1s ease .67s backwards;
}
.gaia-slide.is-active .gaia-slide__btn {
  animation: gaia-btn-up 1.2s cubic-bezier(.83, 0, .17, 1) .73s backwards;
}

@media (max-width: 480px) {
  .gaia-slider__arrow { display: none; }
}

@media (max-width: 1140px) {
  .gaia-slider { height: 400px; }
  .gaia-slide__title { bottom: 183px; font-size: 48px; line-height: 48px; }
  .gaia-slide__sub { bottom: 130px; }
}

@media (max-width: 1024px) {
  .gaia-slide__title { bottom: 172px; font-size: 36px; line-height: 36px; }
  .gaia-slide__sub { font-size: 18px; line-height: 18px; bottom: 130px; }
}

@media (max-width: 768px) {
  .gaia-slider { height: 400px; }
  .gaia-slide__title { bottom: 150px; font-size: 30px; line-height: 30px; width: 100%; }
  .gaia-slide__sub { font-size: 16px; line-height: 16px; bottom: 120px; }
  .gaia-slide__btn { bottom: 60px; font-size: 14px; line-height: 34px; }
  .gaia-slider__arrow--prev { left: 4px; }
  .gaia-slider__arrow--next { right: 4px; }
  .gaia-slider__dots { bottom: 16px; right: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .gaia-slide,
  .gaia-slide__btn,
  .gaia-slider__dot { transition: none; }
  .gaia-slide.is-active .gaia-slide__title,
  .gaia-slide.is-active .gaia-slide__sub,
  .gaia-slide.is-active .gaia-slide__btn { animation: none; }
}

/* ---------- Beneficios: tarjetas en 3 columnas x 2 filas (escritorio) ---------- */
/* CSS personalizado de la sección original: en >= 1024 px las 6 tarjetas
   se reparten en 2 filas de 3. */
@media (min-width: 1024px) {
  .elementor-element-07ffba8 > .elementor-container {
    flex-wrap: wrap;
  }
  .elementor-element-07ffba8 > .elementor-container > .elementor-column {
    flex: 1 1 33.33%;
  }
}

/* ---------- Cabecera y navegación ---------- */
html, body {
  overflow-x: hidden;
}
.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  background: #0c2e20;
  color: #fff;
  padding: 8px 16px;
  text-decoration: none;
  z-index: 100;
}

/* Estilos para páginas limpias */
.seccion__subtitulo--secundario {
  color: #707070;
  letter-spacing: normal;
  text-transform: uppercase;
  margin: 8px 0 0;
  font-size: clamp(24px, 4vw, 36px);
  font-weight: 500;
  font-family: 'Raleway', sans-serif;
  line-height: 1.2em;
}

.seccion__subtitulo--claro {
  color: rgba(255, 255, 255, 0.9);
}

.seccion__titulo--claro {
  color: #fff;
}

.seccion__texto {
  max-width: 900px;
  margin: 0 auto;
  line-height: 1.8;
  color: #3f4f46;
}

.seccion__texto p {
  margin: 0 0 18px;
}

.seccion__texto p:last-child {
  margin-bottom: 0;
}

.seccion--parallax {
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  padding: 80px 0;
}

.seccion--parallax__contenido {
  text-align: center;
}

.seccion__cabecera--claro .seccion__titulo,
.seccion__cabecera--claro .seccion__subtitulo--secundario {
  color: #fff;
}

.tarjetas-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
}

.tarjetas-grid--tres {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.tarjetas-grid--seis {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.tarjeta {
  background: #fff;
  border: 1px solid #e5e5e5;
  padding: 32px;
  border-radius: 8px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(12, 46, 32, 0.04);
}

.seccion--destacado .tarjeta {
  background: #fff;
}

.tarjeta__icono {
  color: #0c2e20;
  margin-bottom: 16px;
  display: flex;
  justify-content: center;
}

.tarjeta__icono svg {
  width: 64px;
  height: 64px;
}

.tarjeta__titulo {
  margin: 0 0 12px;
  font-size: 20px;
  color: #0c2e20;
}

.tarjeta__texto {
  margin: 0;
  color: #3f4f46;
  line-height: 1.7;
}

.tarjeta--beneficio {
  text-align: left;
}

.tarjeta--beneficio .tarjeta__titulo {
  font-size: 18px;
}

.seccion--llamado {
  background: linear-gradient(rgba(12, 46, 32, 0.9), rgba(12, 46, 32, 0.9)), url('assets/img/hero-oil-bg.jpg');
  background-size: cover;
  background-position: center;
  color: #fff;
  text-align: center;
  padding: 60px 0;
}

.seccion--llamado__titulo {
  margin: 0 0 12px;
  font-size: clamp(24px, 4vw, 34px);
  color: #fff;
}

.seccion--llamado__texto {
  margin: 0 0 24px;
  color: rgba(255, 255, 255, 0.9);
}

.petroleo-beneficios {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  align-items: center;
}

.petroleo-beneficio {
  padding: 24px;
}

.petroleo-beneficio--destacado {
  grid-column: span 2;
}

.petroleo-beneficio--destacado img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
}

.petroleo-beneficio__titulo {
  margin: 0 0 12px;
  color: #0c2e20;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 16px;
}

.petroleo-beneficio__texto {
  margin: 0;
  color: #3f4f46;
  line-height: 1.7;
}

@media (max-width: 900px) {
  .petroleo-beneficio--destacado {
    grid-column: span 1;
  }
  .seccion--parallax {
    background-attachment: scroll;
  }
}

@media (min-width: 1024px) {
  .tarjetas-grid--seis {
    grid-template-columns: repeat(3, 1fr);
  }
}

.skip-link:focus {
  top: 0;
}

.cabecera {
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
}

.cabecera__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-top: 10px;
  padding-bottom: 9px;
}

.cabecera__logo img {
  display: block;
  height: 62px;
  width: auto;
}

.nav-toggle {
  display: none;
  flex-direction: column;
  gap: 4px;
  background: transparent;
  border: 1px solid #d9d9d9;
  padding: 8px;
  cursor: pointer;
}

.nav-toggle__bar {
  width: 24px;
  height: 2px;
  background: #0c2e20;
}

.nav__lista {
  display: flex;
  align-items: center;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav__link {
  color: #0c2e20;
  text-decoration: none;
  font-weight: 500;
}

.nav__link {
  position: relative;
  display: block;
  padding: 10px 0;
}

.nav__link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 0;
  height: 3px;
  background: #0d7e4a;
  transition: width .25s ease, left .25s ease;
}

.nav__link:hover,
.nav__link:focus-visible,
.nav__link--activo {
  color: #0c2e20;
}

.nav__link:hover::after,
.nav__link:focus-visible::after,
.nav__link--activo::after {
  left: 0;
  width: 100%;
}

.contenedor {
  width: min(1120px, 100% - 32px);
  margin: 0 auto;
}

.pagina-cabecera {
  background: #ffffff;
  padding: 16px 0 17px;
  text-align: left;
  border-bottom: 1px solid #e5e5e5;
}

.pagina-cabecera .contenedor {
  text-align: left;
}

.pagina-cabecera h1 {
  margin: 0;
  font-size: 20px;
  color: #707070;
  text-transform: uppercase;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  letter-spacing: normal;
  line-height: 1.2;
}

.seccion {
  padding: 60px 0;
}

.seccion--destacado {
  background: #ffffff;
}

.seccion__cabecera {
  text-align: center;
  margin-bottom: 40px;
}

.seccion__subtitulo {
  color: #0c2e20;
  letter-spacing: normal;
  text-transform: uppercase;
  margin: 0 0 8px;
  font-size: 24px;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
}

.seccion__titulo {
  margin: 0 0 16px;
  font-size: clamp(40px, 6vw, 64px);
  color: #0c2e20;
  font-weight: 900;
  text-transform: uppercase;
  font-family: 'Roboto', sans-serif;
  line-height: 1em;
}

.seccion__intro {
  margin: 0;
  color: #5a6a63;
}

.contacto-datos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 24px;
}

.contacto-dato {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: #fff;
  border: 1px solid #e5e5e5;
  padding: 24px;
  border-radius: 8px;
}

.contacto-dato__texto,
.contacto-dato__texto a {
  margin: 0;
  color: #0c2e20;
  text-decoration: none;
}

.contacto-formulario {
  max-width: 900px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.form-campo--completo {
  grid-column: 1 / -1;
}

.form-etiqueta {
  display: block;
  margin-bottom: 8px;
  color: #0c2e20;
}

.form-input,
.form-textarea {
  width: 100%;
  border: 1px solid #d9d9d9;
  padding: 10px 12px;
  font: inherit;
  border-radius: 4px;
}

.form-acciones {
  margin-top: 24px;
  text-align: center;
}

.boton {
  display: inline-block;
  padding: 12px 32px;
  border-radius: 999px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  font: inherit;
}

.boton--primario {
  background: #0c2e20;
  color: #fff;
}

.texto-largo {
  max-width: 900px;
}

.texto-largo h3 {
  margin-top: 32px;
  color: #0c2e20;
}

.texto-largo p {
  line-height: 1.8;
  color: #3f4f46;
}

.pie {
  background: #0c2e20;
  color: #fff;
}

.pie__superior {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 40px;
  padding: 60px 0;
}

.pie__logo img {
  display: block;
  height: 48px;
  width: auto;
  margin-bottom: 16px;
}

.pie__titulo {
  margin: 0 0 16px;
  font-size: 18px;
}

.pie__texto,
.pie__direccion {
  color: rgba(255, 255, 255, 0.8);
  margin: 0;
  font-style: normal;
  line-height: 1.7;
}

.pie__lista,
.pie__lista-contacto {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.pie__item-contacto {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.pie__link {
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
}

.pie__link:hover {
  text-decoration: underline;
}

.pie__inferior {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  padding: 20px 0;
  text-align: center;
}

.pie__copyright {
  margin: 0;
  color: rgba(255, 255, 255, 0.7);
}

.pie__copyright a {
  color: #fff;
}

@media (max-width: 900px) {
  .nav-toggle {
    display: flex;
  }

  .nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border-bottom: 1px solid #e5e5e5;
    display: none;
  }

  .nav--abierto {
    display: block;
  }

  .nav__lista {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 12px 16px;
  }

  .nav__item {
    width: 100%;
  }

  .nav__link {
    display: block;
    padding: 10px 0;
  }

  .nav__link--activo::after {
    display: none;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }
}

/* Extra small screens */
@media (max-width: 480px) {
  .contenedor {
    width: min(1140px, 100% - 24px);
  }
  img {
    max-width: 100%;
    height: auto;
  }
  * {
    box-sizing: border-box;
  }
  body, html {
    overflow-x: hidden;
    max-width: 100%;
  }
}
@media (max-width: 390px) {
  .contenedor {
    width: min(1140px, 100% - 16px);
  }
  .pagina-cabecera {
    padding: 16px 0 17px;
  }
}

/* ---------- Formularios (WhatsApp / correo) ---------- */
.gaia-form__note {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.5;
  color: #5a6a63;
  text-align: center;
}

.gaia-form__note a {
  color: #0c2e20;
  text-decoration: underline;
}

.gaia-form .elementor-button {
  cursor: pointer;
}

.gaia-form .elementor-field-textual:focus {
  outline: 2px solid rgba(12, 46, 32, .35);
  outline-offset: 1px;
}

/* ---------- Ajustes varios ---------- */
.elementor-icon-list-text a,
.elementor-icon-list-text a:hover {
  color: inherit;
  text-decoration: none;
}

/* Si JavaScript está desactivado, mostrar el contenido animado */
.no-js .elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}

.gaia-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* Base */
*, *::before, *::after { box-sizing: border-box; }
html { line-height: 1.15; -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica Neue, Arial, 'Noto Sans', sans-serif; font-size: 16px; line-height: 1.5; color: #333; background: #fff; }
h1,h2,h3,h4,h5,h6 { font-family: 'Roboto', sans-serif; font-weight: 500; line-height: 1.2; color: #0C2E20; margin: 0.5rem 0 1rem; }

@import url('fonts-roboto.css');

body { font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; }
h1,h2,h3,h4,h5,h6 { font-family: 'Roboto', sans-serif; color: #0C2E20; font-weight: 500; }


/* Raleway removed from Google Fonts - using local fonts if available */
.elementor-section{position:relative;}
.elementor-container{max-width:1140px;margin:0 auto;padding:0 15px;display:flex;flex-wrap:wrap;}
.elementor-column{position:relative;min-height:1px;display:flex;}
.elementor-widget-wrap{position:relative;width:100%;flex-wrap:wrap;align-content:flex-start;display:flex;}


/* Servicios panels styles for web-limpia matching original feel */
.servicio-panel--claro { background: #f8f9fa; color: #0C2E20; }
.servicio-panel--oscuro { background-color: #0c2e20; background-blend-mode: normal; color: #fff; }
.servicio-panel--oscuro .servicio-panel__titulo { color: #febd00; }
.servicio-panel--oscuro .servicio-panel__eyebrow { color: #fff; }
.servicio-panel--oscuro .servicio-panel__texto { color: #fff; }
.servicio-panel__eyebrow { color: #febd00; font-size: 20px; font-weight: 500; text-transform: uppercase; margin: 0 0 12px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; letter-spacing: normal; line-height: 1.2; }
.servicio-panel__titulo { margin: 0 0 12px; font-size: 36px; font-weight: 600; text-transform: uppercase; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; line-height: 1.2; letter-spacing: normal; color: #333; }
.servicio-panel__texto { margin: 0; font-size: 16px; line-height: 1.7; color: #707070; font-family: 'Raleway', sans-serif; font-weight: 400; }




/* Index/sections styling to closer match */
.seccion__subtitulo { color: #0c2e20; letter-spacing: normal; text-transform: uppercase; margin: 0 0 8px; font-size: 24px; font-family: 'Roboto', sans-serif; font-weight: 400; }
.seccion__titulo { margin: 0 0 16px; font-size: clamp(40px, 6vw, 64px); color: #0C2E20; font-weight: 900; text-transform: uppercase; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; line-height: 1em; }
.seccion__subtitulo--secundario { color: #707070; letter-spacing: normal; text-transform: uppercase; margin: 8px 0 0; font-size: clamp(24px, 4vw, 36px); font-weight: 500; font-family: 'Raleway', sans-serif; line-height: 1.2em; }
.boton--primario { background: #0d7e4a; color: #fff; padding: 10px 30px; border-radius: 50px; text-transform: uppercase; font-size: 16px; font-weight: 400; font-family: 'Roboto', sans-serif; }
.boton--primario:hover, .boton--primario:focus { background: #febd00; color: #000; }
.beneficios-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.beneficio-item { text-align: left; }
.beneficio-item__icono { font-size: 28px; }
.beneficio-item__titulo { color: #febd00; font-weight: 800; font-size: 18px; margin: 8px 0 4px; text-transform: uppercase; font-family: 'Roboto', sans-serif; }
.beneficio-item__texto { color: #fff; font-weight: 600; font-size: 14px; margin: 0; }
.servicios-destacados { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; align-items: start; }
.servicio-destacado__titulo { color: #0C2E20; font-size: 24px; text-transform: uppercase; margin: 0 0 12px; font-family: 'Roboto', sans-serif; }
.servicio-destacado__texto { color: #707070; font-family: 'Roboto', sans-serif; margin: 0; }
.sectores-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
.sector-item { position: relative; height: 180px; background-size: cover; background-position: center; border-radius: 4px; overflow: hidden; display: flex; align-items: flex-end; }
.sector-item__overlay { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(255,255,255,0) 40%, rgba(13,126,74,0.9) 100%); }
.sector-item__titulo { position: relative; z-index: 2; color: #fff; margin: 12px; font-weight: 500; }
@media (max-width: 1024px) { .beneficios-grid { grid-template-columns: repeat(2,1fr); } .servicios-destacados { grid-template-columns: 1fr; gap: 24px; } .sectores-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 640px) { .beneficios-grid { grid-template-columns: 1fr; } .sectores-grid { grid-template-columns: repeat(2,1fr); } }


/* Ensure header/nav style closer to original */
.cabecera { background: #fff; border-bottom: 1px solid #e5e5e5; position: relative; z-index: 980; }
.nav__link { font-family: 'Roboto', sans-serif; font-size: 16px; font-weight: 500; text-transform: uppercase; color: #0c2e20; }
.nav__link--activo::after { background: #0d7e4a; }
.pie { background: #0c2e20; color: #fff; }
.pie__titulo { font-family: 'Roboto', sans-serif; font-weight: 500; text-transform: uppercase; }

/* Benefits grid adjustment for original look */
@media (min-width: 1024px) { .tarjetas-grid--seis { grid-template-columns: repeat(3, 1fr); } }
/* Ensure benefits section layout matches */
.seccion--destacado { background: #f8f9fa; }


/* Index hero adjustments */
.gaia-slider { height: 500px; }
.gaia-slide__title { font-size: 56px; line-height: 56px; font-weight: 500; font-family: 'Roboto', sans-serif; }
.gaia-slide__sub { font-size: 24px; line-height: 25px; font-family: 'Roboto', sans-serif; }
.gaia-slide__btn { font-family: 'Roboto', sans-serif; font-size: 16px; line-height: 40px; font-weight: 500; text-transform: none; }
@media (max-width: 1024px) { .gaia-slide__title { font-size: 36px; line-height: 36px; } .gaia-slide__sub { font-size: 18px; line-height: 18px; } }
@media (max-width: 768px) { .gaia-slide__title { font-size: 30px; line-height: 30px; } .gaia-slide__sub { font-size: 16px; line-height: 16px; } .gaia-slide__btn { font-size: 14px; line-height: 34px; } }


/* Mobile nav */
@media (max-width: 900px) { .nav-toggle { display: flex; } .nav { position: absolute; top: 100%; left: 0; right: 0; background: #fff; border-bottom: 1px solid #e5e5e5; display: none; } .nav--abierto { display: block; } .nav__lista { flex-direction: column; align-items: flex-start; gap: 0; padding: 12px 16px; } .nav__item { width: 100%; } .nav__link { display: block; padding: 10px 0; } .nav__link--activo::after { display: none; } }


/* Ensure grid rows match */


/* Ensure no extra padding issues */


/* Copy some elementor styles from original for better match */
.seccion { padding: 60px 0; }
.pagina-cabecera h1 { font-size: 20px; font-weight: 900; font-family: 'Roboto', sans-serif; color: #707070; letter-spacing: normal; line-height: 1.2; }


/* Ensure beneficios grid 3x2 at >=1024px */
@media (min-width: 1024px) { .tarjetas-grid--seis { grid-template-columns: repeat(3, 1fr); } .beneficios-grid { grid-template-columns: repeat(4,1fr); } }


.seccion__cabecera--estrecha { max-width: 560px; margin-left: auto; margin-right: auto; }
@media (max-width: 767px) { .cabecera__inner { padding-top: 17px; padding-bottom: 17px; } .cabecera__logo img { height: 62px; } }

.seccion__texto { max-width: 800px; margin-left: auto; margin-right: auto; }
.seccion__texto p { font-family: 'Raleway', sans-serif; color: #707070; text-align: justify; font-size: 16px; line-height: 1.5; }
.seccion__texto strong { font-weight: 700; }
@media (max-width: 767px) { .seccion__texto p { text-align: left; } }

.escribiendo__cursor { font-weight: 100; animation: escribiendo-parpadeo .7s infinite; }
@keyframes escribiendo-parpadeo { 50% { opacity: 0; } }

/* Tipografía igual a la del original: sistema en títulos, Raleway en textos, Roboto en menú y banda de título */
:root {
  --fuente-sistema: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  --fuente-texto: 'Raleway', sans-serif;
}
.pie__titulo, .servicio-destacado__titulo, .sector-item__titulo, .tarjeta__titulo,
.petroleo-beneficio__titulo, .gaia-form__note, .seccion__intro,
.seccion__subtitulo--secundario { font-family: var(--fuente-sistema); }
.pagina-servicios .seccion__subtitulo--secundario { font-family: var(--fuente-texto); }
.pie__link, .pie__direccion, .pie__copyright, .pie__texto, .boton, button.boton,
.petroleo-beneficio__texto, .tarjeta__texto, .seccion--llamado__texto, .beneficio-item__texto,
.servicio-destacado__texto, .contacto-dato__texto, .form-etiqueta,
.contenido-legal { font-family: var(--fuente-texto); }
.contenido-legal h1, .contenido-legal h2, .contenido-legal h3 { font-family: var(--fuente-sistema); }
.pagina-nosotros .tarjeta__texto { font-family: var(--fuente-sistema); }

.seccion--quienes { background: #f6f6f6; padding: 100px 0; }
.seccion__texto--centrado p { text-align: center; }
.boton--primario { min-width: 200px; line-height: 16px; text-align: center; box-sizing: border-box; }
@media (max-width: 767px) { .seccion--quienes { padding: 60px 0; } }
.escribiendo { font-weight: 700; }

/* Sección "¡Listo cuando lo necesites!" del inicio */
.seccion--listo {
  padding: 96px 0;
  background: linear-gradient(rgba(12, 46, 32, .75), rgba(12, 46, 32, .75)), url('../img/bg-01.webp') center / cover no-repeat, #0c2e20;
  color: #fff;
}
.seccion--listo .seccion__titulo { font-family: 'Roboto', sans-serif; font-weight: 600; font-size: clamp(30px, 5vw, 48px); line-height: 1.2; color: #fff; }
.seccion--listo .seccion__subtitulo--secundario { font-family: var(--fuente-texto); font-weight: 500; font-size: clamp(22px, 3vw, 32px); color: #f6f6f6; }
.seccion--listo .seccion__cabecera { margin-bottom: 56px; }
.seccion--listo .beneficios-grid { grid-template-columns: repeat(4, 1fr); gap: 0; }
.seccion--listo .beneficio-item { display: flex; align-items: flex-start; gap: 10px; padding: 0 10px; }
.beneficio-item__icono { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 1px solid #fff; border-radius: 50%; color: #fff; font-size: 16px; }
.beneficio-item__icono .icono { width: 16px; height: 16px; }
.seccion--listo .beneficio-item__titulo { margin: 0; font-family: 'Roboto', sans-serif; font-weight: 800; font-size: 18px; line-height: 1.2; color: #febd00; text-transform: uppercase; }
.seccion--listo .beneficio-item__texto { margin: 0; font-family: var(--fuente-texto); font-weight: 600; font-size: 14px; line-height: 1.5; color: #fff; text-transform: uppercase; }
@media (max-width: 1023px) { .seccion--listo .beneficios-grid { grid-template-columns: repeat(2, 1fr); row-gap: 28px; } }
@media (max-width: 600px) { .seccion--listo { padding: 60px 0; } .seccion--listo .beneficios-grid { grid-template-columns: 1fr; } }
.seccion--listo { padding: 112px 0 106px; }
.seccion--listo .seccion__cabecera { margin-bottom: 44px; }
.seccion--listo .boton-fila { text-align: center; margin-top: 58px; }
@media (max-width: 600px) { .seccion--listo { padding: 60px 0; } .seccion--listo .boton-fila { margin-top: 36px; } }

/* Parallax: el fondo es más alto que la sección; gaia.js desplaza su posición vertical al hacer scroll */
.seccion--listo {
  background-image: linear-gradient(rgba(12, 46, 32, .75), rgba(12, 46, 32, .75)), url('../img/bg-01.webp');
  background-color: #0c2e20;
  background-repeat: no-repeat;
  background-size: 100% 100%, auto 190%;
  background-position: 0 0, 50% 50%;
}
@media (min-width: 1400px) { .seccion--listo { background-size: 100% 100%, 100% auto; } }

/* Sección "Más servicios, más valor" del inicio */
.seccion--servicios-home {
  padding: 100px 0 120px;
  background: #fff url('../img/bg-what-we-can.jpg') right bottom / cover no-repeat;
}
.seccion--servicios-home .seccion__cabecera { max-width: 800px; margin: 0 auto 63px; }
.seccion--servicios-home .servicios-destacados { width: min(1176px, 100%); margin: 0 auto; gap: 0; }
.seccion--servicios-home .servicio-destacado { position: relative; padding: 0 40px; text-align: center; }
.seccion--servicios-home .servicio-destacado + .servicio-destacado::before { content: ""; position: absolute; left: 0; top: 10px; width: 2px; height: 124px; background: #febd00; }
.seccion--servicios-home .servicio-destacado__titulo { margin: 0 0 12px; font-family: var(--fuente-sistema); font-weight: 700; font-size: 24px; line-height: 1.2; color: #0c2e20; text-transform: uppercase; }
.seccion--servicios-home .servicio-destacado__texto { margin: 0; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #707070; }
.seccion--servicios-home .boton-fila { margin-top: 92px; }
@media (max-width: 1023px) {
  .seccion--servicios-home { padding: 70px 0 80px; }
  .seccion--servicios-home .servicios-destacados { grid-template-columns: 1fr; row-gap: 32px; }
  .seccion--servicios-home .servicio-destacado + .servicio-destacado::before { display: none; }
  .seccion--servicios-home .boton-fila { margin-top: 48px; }
}
.boton-fila { text-align: center; }
@media (min-width: 1200px) { .seccion--servicios-home .servicios-destacados { width: auto; margin-left: -28px; margin-right: -28px; } }
@media (max-width: 1023px) { .seccion--servicios-home .servicios-destacados { row-gap: 54px; } }

/* Sección "Experiencia con grandes industrias": carrusel de sectores */
.seccion--sectores { background: #f6f6f6; padding: 100px 0; }
.seccion__cabecera--800 { max-width: 800px; margin-left: auto; margin-right: auto; }
.carrusel__ventana { overflow: hidden; padding: 10px; }
.carrusel__pista { position: relative; display: flex; gap: 30px; margin: 0; padding: 0; list-style: none; transition: transform .5s ease; }
.carrusel__pista--sin-transicion { transition: none; }
.carrusel__slide { flex: 0 0 100%; }
@media (min-width: 767px) { .carrusel__slide { flex-basis: calc((100% - 60px) / 3); } }
@media (min-width: 1023px) { .carrusel__slide { flex-basis: calc((100% - 90px) / 4); } }
.carrusel__slide figure { position: relative; margin: 0; height: 360px; border-radius: 10px; overflow: hidden; }
.carrusel__slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.carrusel__slide figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(rgba(255, 255, 255, 0) 40%, #0d7e4a 100%); opacity: 0; transition: opacity .3s ease-out; }
.carrusel__slide figcaption { position: absolute; z-index: 1; left: 0; right: 0; bottom: 0; padding: 20px 30px; font-family: var(--fuente-sistema); font-weight: 500; font-size: 28px; line-height: 1.2; color: #fff; opacity: 0; transform: translateY(34px); transition: opacity .3s ease-out, transform .3s ease-out; }
.carrusel__slide figure:hover::after, .carrusel__slide figure:focus-within::after { opacity: 1; }
.carrusel__slide figure:hover figcaption, .carrusel__slide figure:focus-within figcaption { opacity: 1; transform: none; }
.carrusel__controles { display: flex; margin-top: 40px; padding-left: 10px; }
.carrusel__boton { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 42px; padding: 5px 10px; border: 0; background: none; color: #febd00; cursor: pointer; transition: color .3s; }
.carrusel__boton:hover, .carrusel__boton:focus-visible { color: #0d7e4a; }
.carrusel__boton svg { width: 32px; height: 32px; }
@media (max-width: 767px) { .seccion--sectores { padding: 60px 0; } }

/* "Estamos a tu servicio": foto con velo verde y parallax (gaia.js desplaza la posición vertical del fondo) */
.seccion--llamado {
  padding: 58px 0;
  background-image: linear-gradient(rgba(12, 46, 32, .5), rgba(12, 46, 32, .5)), url('../img/slider-02.webp');
  background-color: #0c2e20;
  background-repeat: no-repeat;
  background-size: 100% 100%, auto 240%;
  background-position: 0 0, 50% 50%;
}
@media (min-width: 1400px) { .seccion--llamado { background-size: 100% 100%, 100% auto; } }
.seccion--llamado__titulo { max-width: 600px; margin: 0 auto 24px; font-family: 'Roboto', sans-serif; font-weight: 600; font-size: clamp(37px, 5vw, 48px); line-height: 1; text-transform: uppercase; }
.seccion--llamado__texto { margin: 0 0 20px; font-family: var(--fuente-texto); font-weight: 300; font-size: clamp(19px, 2.4vw, 24px); line-height: 1.5; color: #f6f6f6; }
@media (max-width: 767px) { .seccion--llamado { padding: 48px 0; } }

/* Pie de página igual al del original */
footer.pie { background: #0c2e20; color: #fff; padding: 0; }
footer.pie .pie__superior { display: grid; grid-template-columns: 44% 23% 29%; justify-content: space-between; align-items: start; padding: 48px 0 40px; gap: 0; }
footer.pie .pie__columna { min-width: 0; }
footer.pie .pie__columna--marca { padding: 0 10px; }
footer.pie .pie__logo { display: block; width: 160px; margin: 20px auto 30px; }
footer.pie .pie__logo img { display: block; width: 160px; height: auto; }
footer.pie .pie__texto { margin: 0; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #d3d3d3; text-align: justify; }
footer.pie .pie__titulo { position: relative; margin: 14px 0 38px; padding-bottom: 20px; font-family: var(--fuente-sistema); font-weight: 600; font-size: 20px; line-height: 1.2; text-transform: uppercase; color: #fff; }
footer.pie .pie__titulo::after { content: ""; position: absolute; left: 0; bottom: 0; width: 32px; height: 2px; background: #febd00; }
footer.pie .pie__lista { margin: 0; padding: 0 0 0 20px; list-style: none; }
footer.pie .pie__item { position: relative; padding: 4px 0 4px 5px; }
footer.pie .pie__item::before { content: ""; position: absolute; left: -12px; top: 50%; width: 5px; height: 5px; margin-top: -2px; border-radius: 50%; background: #febd00; }
footer.pie .pie__link { font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #fff; text-decoration: none; transition: color .3s; }
footer.pie .pie__link:hover, footer.pie .pie__link:focus-visible { color: #febd00; }
footer.pie .pie__lista-contacto { margin: 0; padding: 0; list-style: none; }
footer.pie .pie__item-contacto { display: flex; align-items: center; gap: 5px; margin: 0 0 20px; }
footer.pie .pie__item-contacto:last-child { margin-bottom: 0; }
footer.pie .pie__icono { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-right: 0; border: 1px solid #febd00; border-radius: 50%; color: #febd00; font-size: 16px; }
footer.pie .pie__icono svg { width: 16px; height: 16px; }
footer.pie .pie__direccion { font-style: normal; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #fff; }
footer.pie .pie__inferior { border-top: 1px solid #707070; padding: 30px 0 28px; background: none; }
footer.pie .pie__copyright { margin: 0; text-align: center; font-family: var(--fuente-texto); font-size: 14px; line-height: 1.5; color: #707070; }
footer.pie .pie__copyright a { color: #febd00; text-decoration: none; }
footer.pie .pie__copyright a:hover { text-decoration: underline; }
@media (max-width: 900px) {
  footer.pie .pie__superior { grid-template-columns: 1fr; padding: 40px 0 30px; row-gap: 40px; }
  footer.pie .pie__columna--marca { padding: 0; }
  footer.pie .pie__lista { padding-left: 30px; }
  footer.pie .pie__lista-contacto { padding-left: 30px; }
  footer.pie .pie__titulo { margin-top: 0; }
}
footer.pie .pie__titulo { margin: 32px 0 25px; padding-bottom: 24px; font-size: 18px; }
footer.pie .pie__columna:not(.pie__columna--marca) { padding-left: 10px; }
footer.pie .pie__item { margin: 0; padding: 4.5px 0 4.5px 5px; line-height: 24px; }
footer.pie .pie__item-contacto { margin: 0 0 20px; padding: 0; }
footer.pie .pie__item-contacto:last-child { margin-bottom: 0; }
@media (max-width: 900px) {
  footer.pie .pie__superior, footer.pie .pie__inferior .contenedor { width: auto; margin-left: 20px; margin-right: 20px; }
  footer.pie .pie__columna:not(.pie__columna--marca) { padding-left: 0; }
  footer.pie .pie__titulo { margin-top: 0; }
}
footer.pie .pie__lista, footer.pie .pie__lista-contacto { display: block; gap: 0; }
footer.pie .pie__link:hover { text-decoration: none; }
@media (max-width: 480px) { footer.pie .pie__copyright { font-size: 13.5px; } }
footer.pie .pie__inferior { padding-bottom: 47px; }
@media (min-width: 601px) and (max-width: 1023px) {
  footer.pie .pie__superior { grid-template-columns: 1fr 1fr; column-gap: 40px; row-gap: 40px; }
  footer.pie .pie__columna--marca { padding: 0; }
  footer.pie .pie__titulo { margin-top: 32px; }
  footer.pie .pie__lista-contacto { padding-left: 50px; }
}
@media (min-width: 901px) and (max-width: 1023px) {
  footer.pie .pie__superior { width: min(1120px, 100% - 40px); margin-left: auto; margin-right: auto; }
}

/* Animaciones de entrada al hacer scroll (data-anim); solo se ocultan si el JS está activo */
.anim-lista [data-anim]:not(.anim-corre) { opacity: 0; }
.anim-corre { animation-duration: 1s; animation-fill-mode: backwards; animation-timing-function: ease; }
.anim-corre[data-anim-rapida] { animation-duration: .75s; }
.anim-corre[data-anim="fadeIn"] { animation-name: gaia-fade-in; }
.anim-corre[data-anim="fadeInUp"] { animation-name: gaia-fade-in-up; }
.anim-corre[data-anim="zoomIn"] { animation-name: gaia-zoom-in; }
.anim-corre[data-anim="bounceIn"] { animation-name: gaia-bounce-in; animation-duration: .75s; animation-timing-function: cubic-bezier(.215, .61, .355, 1); }
@keyframes gaia-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes gaia-fade-in-up { from { opacity: 0; transform: translate3d(0, 100%, 0); } to { opacity: 1; transform: none; } }
@keyframes gaia-zoom-in { from { opacity: 0; transform: scale3d(.3, .3, .3); } 50% { opacity: 1; } to { opacity: 1; transform: none; } }
@keyframes gaia-bounce-in {
  0% { opacity: 0; transform: scale3d(.3, .3, .3); }
  20% { transform: scale3d(1.1, 1.1, 1.1); }
  40% { transform: scale3d(.9, .9, .9); }
  60% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); }
  80% { transform: scale3d(.97, .97, .97); }
  100% { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .anim-lista [data-anim]:not(.anim-corre) { opacity: 1; }
  .anim-corre { animation: none !important; }
}

/* Cabecera que reaparece fija al subir el scroll (como en el original) */
.cabecera--fija { position: fixed; top: 0; left: 0; right: 0; box-shadow: 0 0 10px rgba(0, 0, 0, .5); animation: gaia-cab-entra .2s ease; }
.cabecera--saliendo { animation: gaia-cab-sale .2s ease forwards; }
@keyframes gaia-cab-entra { from { transform: translateY(-100%); } to { transform: none; } }
@keyframes gaia-cab-sale { from { transform: none; } to { transform: translateY(-100%); } }
@media (prefers-reduced-motion: reduce) { .cabecera--fija, .cabecera--saliendo { animation: none; } }

/* Petróleo: sección con fondo de plataforma petrolera (el original usa un vídeo de YouTube) */
.seccion--parallax {
  background: linear-gradient(rgba(12, 46, 32, .5), rgba(12, 46, 32, .5)), url('../img/oil-slide.webp') center / cover no-repeat;
  padding: 96px 0 79px;
}
.seccion--parallax .seccion__subtitulo--claro { color: #fff; }
@media (max-width: 767px) { .seccion--parallax { background: #0c2e20; } }

/* Petróleo: rejilla de beneficios 2 + 3 (con el barril al centro) + 2 */
.petroleo-beneficios { grid-template-columns: minmax(0, 1fr) 353px minmax(0, 1fr); gap: 40px 0; align-items: center; max-width: 1120px; margin: 0 auto; padding: 20px 0; }
.petroleo-beneficio { padding: 0; text-align: center; }
.petroleo-beneficio__titulo { margin: 8px 0 16px; font-size: 24px; line-height: 1.2; font-weight: 700; letter-spacing: normal; text-transform: uppercase; color: #0c2e20; }
.petroleo-beneficio__texto { margin: 0; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #707070; }
.petroleo-beneficio:not(.petroleo-beneficio--destacado) { width: 300px; justify-self: center; }
.petroleo-beneficio--destacado { grid-column: 2; grid-row: 2; }
.petroleo-beneficio--destacado img { border-radius: 0; }
.petroleo-beneficio:nth-child(1) { grid-column: 1; grid-row: 1; justify-self: start; margin-left: 130px; }
.petroleo-beneficio:nth-child(2) { grid-column: 3; grid-row: 1; justify-self: start; margin-left: -46px; }
.petroleo-beneficio:nth-child(4) { grid-column: 1; grid-row: 2; justify-self: start; margin-left: 37px; }
.petroleo-beneficio:nth-child(5) { grid-column: 3; grid-row: 2; justify-self: start; margin-left: 47px; }
.petroleo-beneficio:nth-child(6) { grid-column: 1; grid-row: 3; justify-self: start; margin-left: 130px; }
.petroleo-beneficio:nth-child(7) { grid-column: 3; grid-row: 3; justify-self: start; margin-left: -46px; }
.seccion--intro .seccion__cabecera--800 + .seccion__texto { margin-top: -41px; }
@media (max-width: 900px) {
  .petroleo-beneficios { grid-template-columns: 1fr; gap: 32px; }
  .petroleo-beneficio:nth-child(n), .petroleo-beneficio--destacado { grid-column: 1; grid-row: auto; margin: 0; justify-self: center; }
  .petroleo-beneficio--destacado { order: 1; width: min(353px, 100%); }
  .petroleo-beneficio:nth-child(n+5) { order: 2; }
}
.seccion--intro { padding: 48px 0 120px; }
.seccion--beneficios-oil { padding: 96px 0; }
@media (max-width: 767px) {
  .seccion--intro .seccion__cabecera, .seccion--intro .seccion__texto { padding-left: 12px; padding-right: 12px; }
  .seccion--intro .seccion__texto p { text-align: justify; }
  .seccion--intro .seccion__cabecera--800 + .seccion__texto { margin-top: -26px; }
}

/* Nosotros */
.seccion--historia { padding: 48px 0 96px; }
.seccion--existimos { padding: 48px 0 96px; }
.seccion--guia { background: #f6f6f6; padding: 100px 0; }
.seccion--guia .seccion__titulo { max-width: 560px; margin-left: auto; margin-right: auto; }
.tarjetas-grid--tres { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; max-width: 1088px; margin: 0 auto; }
.tarjetas-grid--tres .tarjeta { min-height: 350px; padding: 48px 32px; background: #fff; border: 0; border-radius: 3px; box-shadow: 0 0 10px rgba(0, 0, 0, .12); text-align: center; }
.tarjetas-grid--tres .tarjeta__icono { display: flex; justify-content: center; height: 64px; margin: 0 0 29px; color: #febd00; }
.tarjetas-grid--tres .tarjeta__icono svg { width: 64px; height: 64px; }
.tarjetas-grid--tres .tarjeta__titulo { margin: 0 0 16px; font-family: var(--fuente-sistema); font-size: 24px; line-height: 1.2; font-weight: 700; text-transform: uppercase; letter-spacing: normal; color: #0c2e20; }
.tarjetas-grid--tres .tarjeta__texto { margin: 0; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #707070; }
@media (max-width: 900px) { .tarjetas-grid--tres { grid-template-columns: 1fr; max-width: 420px; } }
.seccion--historia { padding: 63px 0 156px; }
.seccion--historia .seccion__cabecera + .seccion__texto { margin-top: -21px; }
.seccion--existimos { padding: 63px 0 134px; }
.seccion--guia { padding-bottom: 124px; }
.seccion--guia .seccion__cabecera { margin-bottom: 62px; }
.seccion--cita { padding-bottom: 86px; }
.tarjetas-grid--tres .tarjeta__texto { font-family: var(--fuente-sistema); }
@media (max-width: 767px) {
  .seccion--historia .seccion__cabecera, .seccion--historia .seccion__texto, .seccion--existimos .seccion__cabecera, .seccion--existimos .seccion__texto { padding-left: 12px; padding-right: 12px; }
  .seccion--historia .seccion__texto p { text-align: justify; }
}
.seccion--cita { background: linear-gradient(rgba(12, 46, 32, .86), rgba(12, 46, 32, .86)), url('../img/oil-slide.webp') center / cover no-repeat; }
.seccion--cita .seccion__titulo { font-size: clamp(32px, 5vw, 56px); line-height: 1.1; }
@media (max-width: 767px) {
  .seccion--guia { padding: 100px 0; }
  .seccion--guia .seccion__titulo { max-width: 320px; }
  .tarjetas-grid--tres { max-width: none; padding: 0 18px; }
  .tarjetas-grid--tres .tarjeta { padding: 48px 40px; }
}

/* Servicios: rejilla de paneles 2 x 5 (claro/oscuro alternados) */
.servicios-paneles { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; }
.servicio-panel { position: relative; display: flex; align-items: center; min-height: 500px; padding: 40px 110px; background-size: cover; background-position: center; }
.servicio-panel--oscuro::before { content: ""; position: absolute; inset: 0; background: rgba(12, 46, 32, .68); }
.servicio-panel__contenido { position: relative; width: 100%; max-width: 410px; padding: 0; }
@media (max-width: 1023px) { .servicio-panel { padding: 40px 48px; } }
@media (max-width: 767px) {
  .servicios-paneles { grid-template-columns: 1fr; }
  .servicio-panel { min-height: 332px; padding: 16px 27px; }
  .servicio-panel:nth-child(1) { order: 1; }
  .servicio-panel:nth-child(2) { order: 2; }
  .servicio-panel:nth-child(5) { order: 5; }
  .servicio-panel:nth-child(6) { order: 6; }
  .servicio-panel:nth-child(9) { order: 9; }
  .servicio-panel:nth-child(10) { order: 10; }
  .servicio-panel:nth-child(3) { order: 4; }
  .servicio-panel:nth-child(4) { order: 3; }
  .servicio-panel:nth-child(7) { order: 8; }
  .servicio-panel:nth-child(8) { order: 7; }
}
@keyframes gaia-fade-in-left { from { opacity: 0; transform: translate3d(-70px, 0, 0); } to { opacity: 1; transform: none; } }
@keyframes gaia-fade-in-right { from { opacity: 0; transform: translate3d(70px, 0, 0); } to { opacity: 1; transform: none; } }
.anim-corre[data-anim="fadeInLeft"] { animation-name: gaia-fade-in-left; }
.anim-corre[data-anim="fadeInRight"] { animation-name: gaia-fade-in-right; }
@media (max-width: 767px) { .anim-corre[data-anim="fadeInLeft"], .anim-corre[data-anim="fadeInRight"] { animation-name: gaia-fade-in; } }
.seccion--servicios-intro { padding-bottom: 68px; }
.seccion--servicios-intro .seccion__subtitulo--secundario { margin-top: -6px; }
.servicio-panel__eyebrow { margin: 0; line-height: 1; }
.servicio-panel__titulo { margin: 8px 0 50px; }
.servicio-panel__texto { line-height: 1.5; }

/* Beneficios */
.seccion--beneficios { padding: 48px 0 96px; }
.seccion--beneficios .seccion__subtitulo--secundario { font-family: var(--fuente-texto); }
.tarjetas-grid--seis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1120px; margin: 0 auto; }
.tarjetas-grid--seis .tarjeta--beneficio { display: flex; flex-direction: column; justify-content: center; position: relative; min-height: 281px; padding: 32px; border: 0; border-radius: 0; box-shadow: none; text-align: center; background: #f8f9fa; background-size: cover; background-position: center; }
.tarjetas-grid--seis .tarjeta--oscura::before { content: ""; position: absolute; inset: 0; background: rgba(12, 46, 32, .7); }
.tarjetas-grid--seis .tarjeta--ben-1 { background-image: url('../img/ben-1.webp'); }
.tarjetas-grid--seis .tarjeta--ben-2 { background-image: url('../img/ben-2.webp'); }
.tarjetas-grid--seis .tarjeta--ben-3 { background-image: url('../img/oil-slide.webp'); }
.tarjetas-grid--seis .tarjeta--beneficio > * { position: relative; }
.tarjetas-grid--seis .tarjeta__titulo { margin: 8px 0 16px; font-family: var(--fuente-sistema); font-size: 22px; line-height: 1.2; font-weight: 700; text-transform: uppercase; letter-spacing: normal; color: #0c2e20; }
.tarjetas-grid--seis .tarjeta__texto { margin: 0 0 20px; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #707070; }
.tarjetas-grid--seis .tarjeta--oscura .tarjeta__titulo { color: #febd00; }
.tarjetas-grid--seis .tarjeta--oscura .tarjeta__texto { color: #fff; }
@media (max-width: 1023px) { .tarjetas-grid--seis { grid-template-columns: 1fr; } .tarjetas-grid--seis .tarjeta--beneficio { min-height: 281px; } }
.seccion--beneficios { padding: 62px 0 154px; }
.seccion--beneficios .seccion__titulo { margin-bottom: 12px; }
.seccion--beneficios .seccion__subtitulo--secundario { margin-top: -8px; }
.seccion--beneficios .seccion__cabecera { margin-bottom: 54px; }
@media (max-width: 767px) { .seccion--beneficios { padding: 48px 0 96px; } .seccion--beneficios .seccion__cabecera { padding: 0 12px; } }
@media (max-width: 1023px) { .tarjetas-grid--seis .tarjeta--beneficio { min-height: 0; } .tarjetas-grid--seis { padding: 0 2px; } }
@media (max-width: 767px) { .seccion--beneficios .seccion__subtitulo { font-size: 18px; } }

/* Contacto */
.seccion--contacto-datos { padding: 63px 0 116px; }
.seccion--contacto-datos .seccion__cabecera { margin-bottom: 52px; }
.contacto-datos { display: flex; justify-content: flex-start; align-items: flex-start; gap: 47px; padding-left: 134px; }
.contacto-dato:nth-child(2) { margin-right: 24px; }
.contacto-dato { display: flex; align-items: center; gap: 5px; padding: 0; background: none; border: 0; border-radius: 0; }
.contacto-dato__icono { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid #febd00; border-radius: 50%; color: #febd00; }
.contacto-dato__icono svg { width: 16px; height: 16px; }
.contacto-dato__texto, .contacto-dato__texto a { margin: 0; padding-left: 0; font-family: var(--fuente-texto); font-style: normal; font-size: 16px; line-height: 1.5; color: #0c2e20; text-decoration: none; }
.contacto-dato__texto a:hover, .contacto-dato__texto a:focus-visible { color: #0d7e4a; }

.contacto-cotiza { background: url('../img/oil-slide.webp') center / cover no-repeat; }
.contacto-cotiza__marco { display: grid; grid-template-columns: 456px 1fr; max-width: 1140px; margin: 0 auto; }
.contacto-cotiza__panel { grid-column: 2; max-width: 684px; padding: 96px 48px; background: rgba(248, 249, 250, .9); }
.contacto-cotiza .seccion__cabecera { margin-bottom: 0; }
.contacto-cotiza .seccion__titulo { font-size: clamp(30px, 4vw, 36px); line-height: 1.0; }
.contacto-cotiza .seccion__subtitulo--secundario { margin: 8px 0 0; font-family: var(--fuente-sistema); font-size: 24px; font-weight: 500; line-height: 1.2; }
.contacto-cotiza .form-grid { margin-top: 56px; gap: 0 18px; grid-template-columns: repeat(2, 1fr); }
.contacto-cotiza .form-campo { margin-bottom: 24px; }
.contacto-cotiza .form-etiqueta { display: block; margin: 0 0 8px; font-family: var(--fuente-texto); font-size: 16px; line-height: 16px; color: #707070; }
.form-req { color: #c00; font-size: 12px; vertical-align: super; }
.contacto-cotiza .form-input, .contacto-cotiza .form-textarea { display: block; width: 100%; box-sizing: border-box; padding: 8px 16px; background: #fff; border: 1px solid #c4c4c4; border-radius: 3px; font-family: var(--fuente-texto); font-size: 15px; line-height: 21px; color: #707070; }
.contacto-cotiza .form-input { height: 40px; }
.contacto-cotiza .form-textarea { height: 96px; padding: 5px 14px; resize: vertical; }
.contacto-cotiza .form-acciones { margin-top: 0; }
.contacto-cotiza .boton--primario { min-width: 183px; padding: 0 64px; height: 40px; line-height: 40px; font-family: var(--fuente-texto); font-size: 15px; font-weight: 500; border: 0; cursor: pointer; }
.contacto-cotiza .gaia-form__note { margin-top: 35px; font-family: var(--fuente-sistema); font-size: 13px; line-height: 1.5; color: #0c2e20; }
@media (max-width: 1023px) {
  .contacto-cotiza__marco { grid-template-columns: 1fr; }
  .contacto-cotiza__panel { grid-column: 1; max-width: none; }
  .contacto-datos { flex-wrap: wrap; padding-left: 0; justify-content: center; }
}
@media (max-width: 767px) {
  .contacto-cotiza__panel { padding: 60px 20px; }
  .contacto-cotiza .form-grid { grid-template-columns: 1fr; }
}
.seccion--contacto-datos { padding-bottom: 111px; }
.contacto-cotiza__panel { padding-bottom: 66px; }
.contacto-cotiza .form-grid { column-gap: 24px; }
.form-req { font-size: 14px; vertical-align: baseline; margin-left: 3px; }
@media (max-width: 767px) {
  .seccion--contacto-datos { padding: 48px 0 70px; }
  .seccion--contacto-datos .seccion__cabecera { margin-bottom: 40px; }
  .seccion--contacto-datos .seccion__subtitulo, .contacto-cotiza .seccion__subtitulo { font-size: 18px; }
  .contacto-datos { flex-direction: column; align-items: flex-start; flex-wrap: nowrap; gap: 20px; padding-left: 12px; justify-content: flex-start; }
  .contacto-dato:nth-child(2) { margin-right: 0; }
  .contacto-cotiza .seccion__titulo { font-size: 24px; line-height: 1.2; }
  .contacto-cotiza .seccion__subtitulo--secundario { font-size: 20px; }
  .contacto-cotiza__panel { padding: 48px 24px; }
  .contacto-cotiza .form-grid { margin-top: 32px; }
}
@media (max-width: 767px) {
  .seccion--contacto-datos { padding: 66px 0 116px; }
  .contacto-datos { gap: 26px; }
  .contacto-cotiza__panel { padding: 58px 24px 70px; }
  .contacto-cotiza .seccion__titulo { font-size: 22px; }
  .contacto-cotiza .form-grid { margin-top: 56px; }
}

/* Términos y condiciones */
.pagina-terminos .pagina-cabecera { margin: 10px 10px 0; border-top: 1px solid #e5e5e5; }
.seccion--legal { padding: 48px 0 136px; }
.seccion--legal .seccion__titulo { max-width: 800px; margin: 0 auto 40px; font-family: 'Raleway', sans-serif; font-size: 64px; font-weight: 900; line-height: 1; }
.seccion--legal .seccion__cabecera { margin-bottom: 0; }
.contenido-legal p { margin: 0 0 14.4px; font-family: var(--fuente-texto); font-size: 16px; line-height: 1.5; color: #707070; text-align: left; }
.contenido-legal strong { font-weight: 700; }
.contenido-legal a { color: #c36; text-decoration: none; }
.contenido-legal a:hover, .contenido-legal a:focus-visible { text-decoration: underline; }
@media (max-width: 767px) { .seccion--legal .seccion__titulo { font-size: 40px; } .seccion--legal { padding: 48px 0 60px; } .seccion--legal .contenedor { padding-left: 12px; padding-right: 12px; } }

/* Index móvil: portada de 400px como el original */
@media (max-width: 767px) { .gaia-slider { height: 400px; } }
@media (max-width: 600px) {
  .seccion--listo { padding: 100px 0; }
  .seccion--listo .beneficios-grid { row-gap: 0; }
  .seccion--listo .beneficio-item { flex-direction: column; align-items: stretch; gap: 10px; padding: 0 20px 30px; }
  .seccion--listo .beneficio-item__icono { align-self: center; }
}

/* Index móvil: espaciados de las secciones iguales al original */
@media (max-width: 767px) {
  .seccion--inicio-intro, .seccion--quienes, .seccion--servicios-home, .seccion--sectores { padding: 146px 0 120px; }
  .seccion--inicio-intro .seccion__cabecera, .seccion--quienes .seccion__cabecera, .seccion--servicios-home .seccion__cabecera, .seccion--sectores .seccion__cabecera { padding: 0 12px; }
  .seccion--inicio-intro .seccion__subtitulo--secundario, .seccion--quienes .seccion__subtitulo--secundario { height: 35px; white-space: nowrap; overflow: hidden; }
  .seccion--inicio-intro .seccion__cabecera { margin-bottom: 61px; }
  .seccion--quienes .seccion__cabecera { margin-bottom: 93px; }
}
@media (max-width: 767px) {
  .seccion--inicio-intro .seccion__cabecera { margin-bottom: 19px; }
  .seccion--quienes .seccion__cabecera { margin-bottom: 81px; }
  .seccion--sectores { padding-bottom: 34px; }
}
@media (max-width: 900px) {
  footer.pie .pie__superior { padding: 78px 0 60px; row-gap: 56px; }
  footer.pie .pie__columna--marca { margin-bottom: 56px; }
}
@media (max-width: 900px) {
  footer.pie .pie__superior { padding-bottom: 40px; }
  footer.pie .pie__copyright { text-align: left; }
}
@media (max-width: 767px) { .seccion--llamado { padding-top: calc(var(--llamado-pt, 48px) + 10px); padding-bottom: calc(var(--llamado-pb, 48px) + 5px); } }

/* Vídeo de YouTube de fondo (Petróleo y Nosotros); en móvil queda el fondo liso */
.seccion--parallax { position: relative; overflow: hidden; }
.seccion--parallax > .contenedor { position: relative; z-index: 2; }
.fondo-video { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; opacity: 0; transition: opacity .8s; }
.fondo-video--activo { opacity: 1; }
.fondo-video iframe { position: absolute; top: 50%; left: 50%; width: 100%; height: 56.25vw; min-height: 100%; min-width: 177.78vh; transform: translate(-50%, -50%); border: 0; }
.fondo-video::after { content: ""; position: absolute; inset: 0; background: rgba(12, 46, 32, .5); }
.seccion--cita .fondo-video::after { background: rgba(12, 46, 32, .86); }
@media (max-width: 767px) { .fondo-video { display: none; } }

/* Formulario: campo trampa anti-bots y mensaje de estado */
.form-trampa { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.gaia-form__estado { margin: 16px 0 0; font-family: var(--fuente-texto); font-size: 15px; line-height: 1.4; color: #0d7e4a; text-align: center; }
.gaia-form__estado--error { color: #c0392b; }
