/* ==============================================
   METÁFORAS — CSS
   Usa --page-margin de estilos.css: clamp(20px, 6vw, 120px)
   Todos los contenedores usan .meta-container
   ============================================== */

/* ── Contenedor con márgenes estándar ── */
.meta-container {
  width: 100%;
  max-width: min(1440px, 100%);
  margin-left:  auto;
  margin-right: auto;
  padding-left:  var(--page-margin, clamp(20px, 6vw, 120px));
  padding-right: var(--page-margin, clamp(20px, 6vw, 120px));
  box-sizing: border-box;
}

/* ==============================================
   HERO
   ============================================== */
.metaforas-hero {
  height: 100vh;
  width: 100%;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  overflow: hidden;
  padding-bottom: clamp(40px, 8vw, 160px);
  /* El overlay (.hero-title-overlay) es absolute,
     su posición la controla estilos.css */
}

.metaforas-hero .hero-background {
  position: absolute;
  inset: 0;
  background-image: url('/assets/Imagenes de alta resolucion/metaforas-portada.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.metaforas-hero .hero-background::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  z-index: 2;
}

/* El overlay hereda .hero-title-overlay y .page-title de estilos.css */
.metaforas-hero .hero-title-overlay { position: absolute; z-index: 3; }

/* ==============================================
   SECCIONES DE CONTENIDO
   ============================================== */
.metaforas-content {
  background: #ECF1F8;
  padding: clamp(56px, 8vw, 160px) 0;
}

/* Título de sección */
.metaforas-content .section-title {
  font-family: 'Switzer', sans-serif;
  font-size: clamp(28px, 4vw, 64px) !important;
  font-weight: 600;
  color: #072A40;
  text-align: left;
  margin-bottom: clamp(24px, 4vw, 80px) !important;
  margin-left: 0 !important;
}

/* Texto columna — bloque 1 */
.content-text {
  font-family: 'Switzer', sans-serif;
  font-size: clamp(15px, 1.6vw, 24px) !important;
  font-weight: 400;
  color: #142139;
  line-height: 1.55;
  text-align: left !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
}

/* Texto columna — bloque 2 */
.content-text-2 {
  font-family: 'Switzer', sans-serif;
  font-size: clamp(18px, 2vw, 32px) !important;
  font-weight: 400;
  color: #142139;
  line-height: 1.5;
  text-align: left !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
}

/* Texto centrado grande */
.content-text-center {
  font-family: 'Switzer', sans-serif;
  font-size: clamp(18px, 2.4vw, 40px) !important;
  font-weight: 600;
  color: #2D3139;
  line-height: 1.3;
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

/* highlight-text y highlight-text-orange se definen en estilos.css — no se repiten aquí */

/* ==============================================
   TARJETAS DE IMAGEN — patrón idéntico a cartografias
   ============================================== */

/* Columna contenedora: alinea la imagen al fondo
   para que el label que sobresale por abajo tenga espacio */
.meta-img-col {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

/* Contenedor de la imagen — borde en la imagen, no aquí */
.section-imgder-metaforas {
  position: relative;
  width: 100%;
  max-width: clamp(260px, 38vw, 520px);
  aspect-ratio: 1 / 1;
  border-radius: 20px;
  overflow: visible;
  margin: 0 auto;
}

/* La imagen lleva el borde — igual que cartografias */
.section-imgder-metaforas .content-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 16px;
  border: 4px solid #092C44;
  box-shadow: -4px 4px 0 #092C44;
}

/* Etiqueta — sale por abajo-izquierda, igual que cartografias */
.section-imgder-metaforas .content-btn {
  position: absolute;
  z-index: 30;
  bottom: -20px;
  left: -20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #F8AF40;
  border: 2px solid #092C44;
  color: #092C44;
  font-family: 'Switzer', sans-serif;
  font-size: clamp(13px, 1.2vw, 20px);
  font-weight: 600;
  padding: clamp(6px, 0.6vw, 10px) clamp(10px, 1vw, 20px);
  border-radius: 10px;
  box-shadow: 8px 8px 0 0 #092C44;
  pointer-events: none;
  cursor: default;
  line-height: 1.4;
}

/* Label con texto multilínea (card 1) */
.meta-label-multiline {
  white-space: normal;
  max-width: clamp(180px, 22vw, 320px);
  text-align: left;
}

/* Label de una línea (card 2) */
.section-imgder-metaforas .content-btn:not(.meta-label-multiline) {
  white-space: nowrap;
}

@media (max-width: 767.98px) {
  .section-imgder-metaforas {
    max-width: 88%;
    /* Espacio para el label que sobresale por abajo */
    margin-bottom: clamp(36px, 8vw, 56px);
  }
  .section-imgder-metaforas .content-btn {
    left: -10px;
    bottom: -14px;
  }
  .meta-label-multiline {
    max-width: 75vw;
    font-size: 12px;
  }
}
.section-divider {
  width: 100%;
  height: 2px;
  background-color: #072A40;
  margin: clamp(48px, 8vw, 140px) 0;
}

.section-divider-bottom {
  width: min(calc(100% - (var(--page-margin, clamp(20px, 6vw, 120px)) * 2)), 1200px);
  height: 2px;
  background-color: #072A40;
  margin: clamp(32px, 5vw, 80px) auto;
}

/* ==============================================
   SECCIÓN VIDEO
   ============================================== */
.video-section {
  background: #9AD1F5;
  padding: clamp(48px, 7vw, 100px) 0;
}

.video-description-banner {
  margin-bottom: clamp(24px, 4vw, 48px);
  text-align: center;
}

.video-description-banner .video-description {
  font-family: 'Switzer', sans-serif !important;
  font-size: clamp(20px, 3.5vw, 52px) !important;
  font-weight: 600 !important;
  color: #2c3e50 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  text-align: center !important;
}



/* Wrapper del embed — mismo estilo que cartografias */
.video-embed-wrapper {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  border: 4px solid #092C44;
  box-shadow: 8px 8px 0 #092C44;
}

.video-embed-wrapper .ratio iframe {
  border-radius: 12px;
  display: block;
}



