@font-face {
  font-family: 'Inter';
  src: url('InterVariable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'Inter', sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #3a3e58;
  background: #ffffff;
  line-height: 1.6;
 
}

/* Estilos base comunes */
h1 {
  font-family: 'Inter', sans-serif;
  margin-bottom: 20px;
  color: #ff57ce;
  line-height: 1.1;
}

/* Muy grueso */
.h1-black {
  font-weight: 900; /* Black */
  font-style: normal;
  font-size: 48px;
}

.h1-extrabold {
  font-weight: 800; /* ExtraBold */
  font-style: normal;
  font-size: 48px;
}

.h1-bold {
  font-weight: 700; /* Bold */
  font-style: normal;
  font-size: 48px;
}

/* Más fino */
.h1-semibold {
  font-weight: 600; /* SemiBold */
  font-size: 48px;
}

.h1-medium {
  font-weight: 500; /* Medium */
  font-size: 48px;
}

.h1-light {
  font-weight: 300; /* Light */
  font-size: 48px;
}

/* Extra fino (si lo permite la fuente) */
.h1-thin {
  font-weight: 100; /* Thin */
  font-size: 48px;
}

.h1-naranja { color: #feaa6f; }

.h1-naranja { color: #feaa6f; }
.h1-rosa { color: #ff57ce; }
.h1-azul-marino { color: #3a3e58; }
.h1-azul-claro { color: #41c2ff; }
.h1-violeta { color: #9e41ea; }

.bg-naranja { background-color: #feaa6f; }
.bg-rosa { background-color: #ff57ce; }
.bg-azul-marino { background-color: #3a3e58; }
.bg-azul-claro { background-color: #41c2ff; }
.bg-violeta { background-color: #9e41ea; }



/* Muy grueso */
.h3-black {
  font-weight: 900; /* Black */
  font-style: normal;
  font-size: 32px;
}

.h3-extrabold {
  font-weight: 800; /* ExtraBold */
  font-style: normal;
  font-size: 32px;
}

.h3-bold {
  font-weight: 700; /* Bold */
  font-style: normal;
  font-size: 20px;
}

/* Más fino */
.h3-semibold {
  font-weight: 600; /* SemiBold */
  font-size: 32px;
}

.h3-medium {
  font-weight: 500; /* Medium */
  font-size: 32px;
}

.h3-light {
  font-weight: 300; /* Light */
  font-size: 32px;
}

/* Extra fino (si lo permite la fuente) */
.h3-thin {
  font-weight: 100; /* Thin */
  font-size: 32px;
}


.h3-naranja { color: #feaa6f; }
.h3-naranja { color: #feaa6f; }
.h3-rosa { color: #ff57ce; }
.h3-azul-marino { color: #3a3e58; }
.h3-azul-claro { color: #41c2ff; }
.h3-violeta { color: #9e41ea; }


/* Muy grueso */
.h2-black {
  font-weight: 900; /* Black */
  font-style: normal;
  font-size: 32px;
}

.h2-extrabold {
  font-weight: 800; /* ExtraBold */
  font-style: normal;
  font-size: 32px;
}

.h2-bold {
  font-weight: 700; /* Bold */
  font-style: normal;
  font-size: 20px;
}

/* Más fino */
.h2-semibold {
  font-weight: 600; /* SemiBold */
  font-size: 32px;
}

.h2-medium {
  font-weight: 500; /* Medium */
  font-size: 32px;
}

.h2-light {
  font-weight: 300; /* Light */
  font-size: 32px;
}

/* Extra fino (si lo permite la fuente) */
.h2-thin {
  font-weight: 100; /* Thin */
  font-size: 32px;
}


.h2-naranja { color: #feaa6f; }
.h2-naranja { color: #feaa6f; }
.h2-rosa { color: #ff57ce; }
.h2-azul-marino { color: #3a3e58; }
.h2-azul-claro { color: #41c2ff; }
.h2-violeta { color: #9e41ea; }



h2, h3 {
  font-size: 32px;
  font-weight: 600;
  margin-top: 10px;
  margin-bottom: 10px;
}

p, li {
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 1.2em;
}

img {
  max-width: 100%;
  height: auto;
  margin: 30px 0;
  border-radius: 8px;
}

button, .btn {
  font-size: 20px;
  font-weight: 500;
}

.small-text {
  font-size: 16px;
  font-weight: 300;
}

.fuente-noticia {
  color: #888;
  margin-top: 40px;
}

.fuente-noticia a {
  color: #888;
  text-decoration: underline;
}

.tags {
   color: #3a3e58;
  text-decoration: none;
}



.noticia {
  padding: 20px;
}

.noticia p {
  text-align: justify;
}

.noticia img {
  display: block;
  margin: 30px auto;       /* centra horizontalmente */
  max-width: 100%;         /* nunca se sale del contenedor */
  width: 40%;              /* por defecto, 50% del ancho */
  height: auto;
  border-radius: 8px;
}

 
/* Encabezado en banda */
.header-principal {
  width: 100%;
  height: 80px;
  background-color: #3a3e58;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
}

/* Solo se anima si tiene esta clase */
.animar-header {
  animation: headerColorFlash 1.2s ease-in-out forwards;
  will-change: background-color;
}

@keyframes headerColorFlash {
  0%   { background-color: #feaa6f; }   /* naranja */
  25%  { background-color: #ff57ce; }   /* rosa */
  50%  { background-color: #9e41ea; }   /* violeta */
  75%  { background-color: #41c2ff; }   /* azul claro */
  100% { background-color: #3a3e58; }   /* azul marino final */
}


.nav-bar {
  width: 100%;
  position: relative;
}

/* Logo centrado */
.contenedor-logo {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 80px;
  pointer-events: none; /* Evita interferencias con iconos al superponer */
}

.contenedor-logo img {
  height: 60px;
  pointer-events: auto;
}

/* Icono hamburguesa */
#pulseitor, #sandwich, #sandwich:before, #sandwich:after {
  position: absolute;
  top: 25px;
  left: 25px;
  background: white;
  width: 30px;
  height: 5px;
  transition: transform 0.1s ease;
  cursor: pointer;
  z-index: 9999;
}

#pulseitor {
  height: 25px;
  background: none;
}

#sandwich:before {
  content: " ";
  top: 10px;
  left: 0;
}

#sandwich:after {
  content: " ";
  top: 20px;
  left: 0;
}

#atont:checked + #pulseitor + #sandwich {
  top: 35px;
  transform: rotate(180deg);
}

#atont:checked + #pulseitor + #sandwich:before {
  width: 20px;
  top: -2px;
  left: 18px;
  transform: rotate(45deg) translateX(-5px);
}

#atont:checked + #pulseitor + #sandwich:after {
  width: 20px;
  top: 2px;
  left: 18px;
  transform: rotate(-45deg) translateX(-5px);
}

/* Menú */
#menuprincipal {
  /* Elimina la forma de semicírculo */
  border-bottom-right-radius: 0; /* O simplemente elimínalo */
  width: 350px;
  background-color: #3a3e58;
  position: absolute;
  top: 0px;
  left: 0px;
  display: none; /* Esto se añade también (ver punto 2) */
  z-index: 999;
}


.menup > li,
.menup > a {
  display: none;
  list-style: none;
  margin: 3px 0 -1px 0;
  color: white;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.8;
  z-index: 999;
}

.menup > li {
  width: 250px;
  text-indent: 56px;
}

#menuprincipal > li:first-child {
  margin-top: 80px;
}

#atont:checked + #pulseitor ~ #menuprincipal > .menup,
#atont:checked + #pulseitor ~ #menuprincipal > .menup > a {
  display: block;
}

#menuprincipal a {
  color: #ffffff;
  text-decoration: none;
  display: block;
  padding: 10px;
}

#menuprincipal a:hover {
  background-color: #ff57ce;
  transition: background 0.2s ease;
}
#atont:checked ~ #menuprincipal {
  display: block;
}
.borrado {
  display: none;
}


.footer-section {
  background-color: #3a3e58;
  color: #ffffff;
  padding: 40px 20px;
  text-align: center;
}

.footer-section a img {
  height: 32px;
  margin: 0 8px;
}

.footer-social {
  margin-bottom: 20px;
}

.footer-info {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
}

.footer-info a {
  color: white;
  font-size: 16px;
  text-decoration: none;
}

.footer-languages img {
  height: 30px;
  margin: 5px;
  transition: transform 0.2s ease;
}

.footer-languages img:hover {
  transform: scale(1.1);
}
.botones-compartir {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 15px 0;
}

.boton-red {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 2px 3px;
  border-radius: 8px;
  color: white;
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  flex: 1 1 29%; /* 2 botones por fila en móvil */
  min-width: 80px;
}

.boton-red img {
  height: 18px;
  width: 18px;
}

.boton-fb {
  background-color: #3a3e58;
  box-shadow: 0 4px 0 #2c2f45; /* sombra más oscura del azul marino */
}

.boton-tw {
  background-color: #41c2ff;
  box-shadow: 0 4px 0 #2b8dc0; /* sombra azul claro más oscura */
}

.boton-wa {
  background-color: #feaa6f;
  box-shadow: 0 4px 0 #d88b55; /* sombra naranja más oscura */
}

.boton-tg {
  background-color: #9e41ea;
  box-shadow: 0 4px 0 #742eb5; /* sombra violeta más oscura */
}

/* Efecto al hacer click (opcional) */
.boton-red:active {
  transform: translateY(2px);
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
}



.banda-compartir {
 
   color: #3a3e58;/* rosa llamativo de tu paleta */
 
  font-family: 'Inter', sans-serif;
  font-size: 18px;
  font-weight: 800;
  text-align: center;
  padding: 12px 20px;
  margin: 15px 0 15px 0;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}


.noticias-relacionadas {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  margin-top: 10px;
  justify-content: center;
}

.tarjeta-mini {
  display: flex;
  flex-direction: column;
  width: 40%;
  min-width: 280px;
  max-width: 400px;
  background: #f4f4f4;
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  color: #3a3e58;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.tarjeta-mini:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.tarjeta-mini img {
  width: 100%;
  height: auto;
  display: block;
}

.tarjeta-contenido {
  padding: 10px;
}

.tarjeta-contenido h3 {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #ff57ce;
 
}

.tarjeta-contenido p {
  font-size: 16px;
  font-weight: 400;
  color: #3a3e58;
  text-align: justify;  
}

 

.noticia-grid-pc {
  display: flex;
  flex-wrap: nowrap;
  gap: 40px;
  margin-bottom: 30px;
}

.noticia-titulo {
  flex: 1;
  display: flex;
  align-items: center;
}

.noticia-titulo h1 {
  margin: 0;
}

.noticia-imagen {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.noticia-imagen img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  min-width: 512px; /* mínimo 50% de su tamaño original */
}


.noticia-cuerpo {
  margin-top: 20px;
}

.container1 {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  background-color: #ffffff;
  min-height: 50px;
}

.cuadro44contacto {
  flex-basis: 25%;
  padding: 1%;
  text-align: center;
  box-sizing: border-box; /* importante para que el padding no rompa el ancho */
}

.cuadrocookie {
position: fixed;
        bottom: 20px;
        left: 50%;
        transform: translateX(-50%);
        width: 92%;
        max-width: 1020px;
        background: #3a3e58;
        border: 2px solid #ff57ce;
        box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
        border-radius: 15px;
        padding: 15px;
        font-family: Inter, sans-serif;
        font-weight: 400;
        color: #ffffff;
        z-index: 9999;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        text-align: center;
        opacity: 0.95;
}


.formcookie {
display: flex; 
flex-wrap: wrap; 
justify-content: center; 
gap: 10px;
}

.botoncookie {
background-color: #ff57ce;
            color: #212121;
            border: none;
            padding: 10px 20px;
            border-radius: 8px;
            font-weight: 600;
            cursor: pointer;
            box-shadow: 0 3px #00000050;
            transition: background 0.2s;
            }


/* En móvil se desactiva el grid y se muestra todo vertical */
@media (max-width: 768px) {

  h1 {
    font-size: 40px;
  }

  body {
    font-size: 18px;
  }
   .noticia img {
    width: 100%;
  }
  
  .noticia-grid-pc {
    flex-direction: column;
  }

  .noticia-imagen,
  .noticia-titulo {
    width: 100%;
  }
  
  .container1 {
    flex-direction: column;
    margin-bottom: 15px;
  }

  .cuadro44contacto {
    flex-basis: 100%;       /* ocupa todo el ancho del contenedor */
    width: 95%;            /* por si acaso */
    max-width: 90vw;        /* si quieres limitarlo al 90% de la pantalla */
    margin: 0 auto;         /* centrado horizontal */
    padding: 10px 0;
  justify-content: space-between;    
  }

    .tarjeta-mini {
    width: 100%;
  }
}
 
input[type="text"] {
    width: 90%;   
    height: 40px;   
    padding: 3px;   
    border: 1px solid #9e41ea; 
    border-radius: 5px; 
    font-size: 16px; 
    box-sizing: border-box; 
    margin-bottom: 10px; 
    color: grey;

}
 
.pretty{
  
  transform: scale(1.5);
  
  margin: 10px;
  
  filter: hue-rotate(90deg) brightness(0.9);
  
  cursor: pointer;
}
 

.btn {
    display: inline-block;
    padding: 15px 30px;
    background-color: #9e41ea; 
    color: white;
 
    font-size: 16px;
        font-weight: 600; /* Usar valores más altos como 700, 800 o 900 */

    font-style: normal;      
    text-decoration: none;
    border-radius: 5px;
    border:none;
    transition: background-color 0.3s ease;
    text-align: center;    
    width: 93%;  
  justify-content: center; 
  align-items: center;     
}

 

.btn:disabled {
    background: #e2f2ff; 
 
}

.bgazulclaro {
    background: #ffe4f4;
}
