/* ===== GENERALES ===== */
body {
  background-color: #fafafa;
  font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Contenedor principal */
main {
  min-height: 60vh;
}

/* ===== NAVBAR ===== */
.logo-navbar {
  height: 45px;
}

@media (max-width: 768px) {
  .logo-navbar {
    height: 36px;
  }
}

/* ===== HERO (encabezado de la página principal) ===== */
.hero {
  background-color: #fef2f2;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
}

/* ===== TARJETAS DE PROCEDIMIENTOS ===== */
.card-procedimiento {
  border: none;
  border-radius: 14px;
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,.08);
  transition: transform .25s ease, box-shadow .25s ease;
  background-color: #fff;
}

.card-procedimiento:hover {
  transform: translateY(-4px);
  box-shadow: 0 0.75rem 1.5rem rgba(0,0,0,.15);
}

.icono-procedimiento {
  width: 90px;
  height: 90px;
  object-fit: contain;
  transition: transform 0.25s ease-in-out;
}

.icono-procedimiento:hover {
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .icono-procedimiento {
    width: 75px;
    height: 75px;
  }
}

/* ===== TARJETAS DE PUBLICACIONES (INDEX) ===== */
.card-publicacion .card-img-top {
  height: 230px;           /* altura fija para que no se hagan enormes */
  object-fit: cover;       /* recorta la imagen manteniendo proporción */
}

@media (max-width: 768px) {
  .card-publicacion .card-img-top {
    height: 190px;
  }
}

/* ===== VISTA ver_publicacion ===== */
.post-header {
  padding-top: 1.5rem;
  padding-bottom: 1rem;
}

.post-image {
  max-height: 380px;
  object-fit: contain;
}

/* ===== FOOTER ===== */
.footer {
  background-color: #1f2933;
  color: #f8f9fa;
  font-size: 0.9rem;
}

.footer a {
  color: #f97373;
  text-decoration: none;
}

.footer a:hover {
  text-decoration: underline;
}

/* ================= COOKIES MODAL ================= */
.cookies-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.65);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.cookies-modal{
  background: #df1732;
  color: #fff;
  padding: 2rem;
  max-width: 420px;
  width: 90%;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 20px 40px rgba(0,0,0,0.4);
  animation: fadeInScale 0.4s ease;
}

.cookies-icon{
  font-size: 2.5rem;
  margin-bottom: .5rem;
}

.cookies-modal h5{
  font-weight: 700;
  margin-bottom: .75rem;
}

.cookies-modal p{
  font-size: .95rem;
  line-height: 1.5;
}

.cookies-modal a{
  color: #ffe66d;
  font-weight: 600;
  text-decoration: underline;
}

@keyframes fadeInScale{
  from{
    opacity:0;
    transform: scale(.9);
  }
  to{
    opacity:1;
    transform: scale(1);
  }
}

