/* === FUENTES === */
@font-face {
  font-family: 'EditorialNew';
  src: url('../fonts/EditorialNew-Italic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: 'New Spirit';
  src: url('../fonts/New-Spirit.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'New Spirit';
  src: url('../fonts/New-Spirit-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'New Spirit';
  src: url('../fonts/New-Spirit-Semi-Bold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'New Spirit';
  src: url('../fonts/New-Spirit-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
}

/* === TÍTULOS === */
h1 {
  font-family: 'New Spirit', serif;
  font-weight: 400;
  font-size: px;
  line-height: 1.2;
  color: #798BA3;
  text-align: center;
  margin: 0 0 20px 0;
}

.hero p {
  font-family: 'New Spirit', serif;
  font-weight: 800;
  font-size: 63px;
  line-height: 1.2;
  color: #798BA3;
  text-align: center;
  margin: 0 0 20px 0;
}

.hero2 p {
  font-family: 'New Spirit', serif;
  font-weight: 800;
  font-size: 40px;
  line-height: 1.2;
  color: #798BA3;
  text-align: center;
  margin: 0 0 20px 0;
}

.hero2 {
  margin-top: 90px;
}

.herotext {
  display: flex;
  justify-self: center;
  width: 50%;
  font-family: 'New Spirit', serif;
  font-weight: 800;
  font-size: 42px;
  line-height: 1.2;
  color: #798BA3;
  text-align: center;
  margin: 0 0 100px 20px;
}


.herotextburdeos {
  background-color: #90443A;
  text-align: center;
  margin: 0 0 20px 0;
  padding: 60px;
}


.herotextburdeos h2 {
  font-family: 'New Spirit', serif;
  font-weight: 800;
  font-size: 42px;
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  margin: 0 0 20px 0;
}

.herotextburdeos p {
  font-family: 'EditorialNew', serif;
  font-weight: 200;
  font-size: 28px;
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  margin: 0 0 20px 0;
}

/* === HEADER === */


.cd_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1320px;
  width: 100%;
  margin: auto;
}

.cd_header .cd_header-col-1 img {
  max-height: 50px;
}

.cd_header .cd_header-col-2 img {
  max-height: 100px;
}

.cd_white {
  color: #ffffff !important;
}

/* === HERO === */
.hero {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-top: 5%;
}

/* === CONTENEDOR PRINCIPAL === */
.cd_container {
  max-width: 1320px;
  width: 100%;
  margin: auto;
  padding: 0 20px;
}

/* === SECCIÓN DE DOS COLUMNAS === */
.cd_container-col {
  display: flex;
  align-items: center;
  gap: 5%;
  flex-wrap: wrap;
}

.cd_container-col-img {
  flex-basis: 45%;
}

.cd_container-col-text {
  flex-basis: 50%;
}

.cd_container-col-img img {
  width: 100%;
  height: auto;
  display: block;
}

/* === TEXTO Y LISTAS === */
.cd_container p,
.cd_container li {
  font-family: 'New Spirit', serif;
  font-size: 18px;
  line-height: 1.6;
  color: #333;
}

.cd_title {
  font-family: 'New Spirit', serif;
  font-weight: 600;
  color: #7b2c1f;
  margin-bottom: 16px;
}

h2.cd_title.seccion3 {
  color: #2E4740;
}

h2.cd_title.seccion4 {
  color: #DBB778;
}

/* === LISTAS CON PUNTOS NORMALES === */
.cd_container ul {
  list-style: disc;
  /* puntos normales */
  padding-left: 20px;
  /* espacio para los puntos */
}

.cd_container ul li {
  position: static;
  /* elimina posicionamiento relativo */
  padding: 0px 0;
  /* espaciado entre elementos */
}

/* elimina icono personalizado */
.cd_container ul li::before {
  content: none;
}



/* === SECCIÓN PROPÓSITO === */
.cd_proposito {
  background-color: #DBB778;
  /* color dorado de fondo */
  padding: 60px 20px;
  text-align: center;
}

.cd_title-center {
  text-align: center;
  font-family: 'New Spirit', serif;
  font-weight: 700;
  font-size: 36px;
  color: #ffffff;
  margin-bottom: 40px;
}

.cd_proposito-cols {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 5%;
  flex-wrap: wrap;
}

.cd_proposito-item {
  flex-basis: 25%;
  min-width: 250px;
  color: #ffffff;
}

.cd_proposito-item img {
  width: 120px;
  height: auto;
  margin-bottom: 20px;
}

.cd_proposito-item h3 {
  font-family: 'New Spirit', serif;
  font-weight: 700;
  font-size: 24px;
  margin-bottom: 10px;
  color: #ffffff;
}

.cd_proposito-item p {
  font-family: 'New Spirit', serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
  color: #ffffff;
}

.cd_container-banner video {
  width: 100%;
}

/* === RESPONSIVE === */
@media (max-width: 1024px) {
  .cd_proposito-cols {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .cd_proposito-item {
    flex-basis: 100%;
    max-width: 400px;
    margin-bottom: 40px;
  }

  .cd_title-center {
    font-size: 28px;
  }

  .cd_proposito-item p {
    font-size: 16px;
  }
}

/* === ALINEAR TODO A LA IZQUIERDA SOLO EN MÓVILES === */
@media (max-width: 767px) {

  /* Textos y títulos */
  h1,
  h2,
  h3,
  p,
  ul,
  li {
    text-align: left !important;
  }


  /* Quitar centrado del título de la sección “Nuestro propósito” */
  .cd_title-center {
    text-align: left !important;
    margin-left: 0 !important;
  }

  /* Imágenes dentro de columnas */
  .cd_container-col-img img {
    display: block;
    margin: 0;
    /* elimina centrado automático */
  }

  .hero2 p {
    margin-left: 20px !important;
  }

}


/* === RESPONSIVE === */
@media (max-width: 1024px) {
  .cd_container-col {
    flex-direction: column;
    text-align: center;
  }

  .cd_container-col-img,
  .cd_container-col-text {
    flex-basis: 100%;
  }

  .cd_container p,
  .cd_container li {
    font-size: 16px;
  }

  .cd_title {
    font-size: 28px !important;
  }

  .cd_container ul {
    padding-left: 25px;
    /* reduce el margen lateral en móviles */
  }

  .cd_container ul {
    padding-left: 10px;
    /* aún menos espacio lateral */
    margin: 0.5em 0;
    /* margen vertical reducido */
  }

  .cd_container ul li {
    padding: 2px 0;
    /* casi sin separación entre puntos */
    font-size: 15px;
    /* texto ligeramente más pequeño */
  }

  .cd_header .cd_header-col-2 img {
    max-height: 50px;
  }

  .cd_header .cd_header-col-1 img {
    max-height: 30px;
  }

  .herotextburdeos img {
    width: 100% !important;
  }


  .herotext {
    width: 80% !important;
  }

  .herotextburdeos h2 {
    font-size: 32px !important;
  }

  .cd_proposito-item h3 {
    text-align: center !important;
  }

  .cd_proposito-item p {
    text-align: center !important;
  }

}