/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* ====== ESTILOS GENERALES ====== */
body {
  font-family: 'JetBrains Mono', monospace;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  background-color: #E8F5E9; /* verde menta */
  color: #1B5E20; /* verde hoja */
}

/* ====== NAVBAR ====== */
.navbar {
  padding: 1rem 2rem;
  background-color: rgba(27, 94, 31, 0.856); /* verde hoja con transparencia */
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}

.navbar .navbar-brand {
  color: #ffffff; /* blanco puro para contraste */
  font-weight: 700;
  font-family: 'JetBrains Mono', monospace;
  font-size: 2rem; /* opcional para destacar más */
  letter-spacing: 0.5px;
  transition: color 0.3s ease;
}

.navbar .navbar-brand:hover {
  color: #8BC34A; /* verde manzana al pasar el mouse */
}

.nav-link {
  color: #f1f1f1;
  position: relative; /* necesario para el ::after */
  transition: color 0.3s ease;
}

.nav-link:hover {
  color: #8BC34A;
}

/* ====== Subrayado animado en verde oscuro ====== */
.navbar-nav .nav-link {
  position: relative;
  transition: color 0.3s ease;
}

.navbar-nav .nav-link::after {
  content: '';
  position: absolute;
  bottom: -2px; /* un poco más abajo para que se note */
  left: 0;
  width: 100%; /* la línea ya ocupa todo el ancho */
  height: 2px;
  background-color: #8BC34A; /* verde manzana para contraste */
  transform: scaleX(0); /* empieza invisible desde el centro */
  transform-origin: center; /* se expande desde el centro */
  transition: transform 0.3s ease;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after {
  transform: scaleX(1); /* se expande hacia los lados */
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='white' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  }

a,
a:visited {
  color: inherit;   /* mismo color que el texto padre */
  text-decoration: none;
}
  
/* ====== HERO ====== */
.hero {
  position: relative;
  min-height: 70vh;
  background: url('../img/bg2.jpg') center/cover no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  overflow: hidden;
}

.hero-filter {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    rgba(27, 94, 32, 0.7),
    rgba(62, 126, 66, 0.5)
  ); /* gradiente verde hoja → verde brillante */
  z-index: 1;
  pointer-events: none;
}

.hero-content {
  position: relative;
  z-index: 2;
}

.hero-text {
  text-shadow: 0 4px 6px rgba(0,0,0,0.5);
}

/* ====== BOTÓN PULSANTE ====== */
.btn-pulse {
  background-color: #388E3C; /* verde musgo */
  color: white;
  border: none;
  border-radius: 0;
  text-shadow: 0 4px 6px rgba(0,0,0,0.5);
  box-shadow: 0 6px 15px rgba(0,0,0,0.4);
  animation: pulse 2s infinite;
  transition: all 0.3s ease;
}

.btn-pulse:hover {
  background-color: #8BC34A; /* verde manzana */
  transform: scale(1.05);
  box-shadow: 0 0 15px #C5E1A5; /* glow verde lima */
}

@keyframes pulse {
  0% { transform: scale(1); box-shadow: 0 0 0 0 #388E3C; }
  70% { transform: scale(1.05); box-shadow: 0 0 0 10px rgba(139, 195, 74, 0); }
  100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(139, 195, 74, 0); }
}

/*Biografía*/

section#diario, section#pregunta
  {
    background-color: #F1F8E9; /* verde muy claro */
  }

.social-icons {
  display: flex;
  gap: 1.2rem;
  justify-content: flex-center;
}

.social-icons a {
  color: #43A047; /* verde brillante base */
  font-size: 1.8rem;
  transition: color 0.3s ease, transform 0.3s ease;
}

.social-icons a:hover {
  color: #1B5E20; /* verde oscuro */
  transform: scale(1.2);
}

.perfil-img {
  width: 30rem;   /* ancho fijo */
  height: 30rem;  /* alto fijo */
  object-fit: cover; /* recorta la imagen para que no se deforme */
  border-radius: 2%;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.4); /* sombreado */
}

/* ====== Diarios ====== */
.diario-img {
  cursor: pointer;
  transition: transform 0.6s ease, filter 0.6s ease; /* más lenta y animando ambos */
}

.diario-img:hover {
  transform: scale(1.05);
  filter: drop-shadow(2px 4px 6px black) brightness(0.8); /* dos filtros aplicados */
}


/* ====== CARDS AGRADECIMIENTOS ====== */
.card {
  border-radius: 1rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
  height: 100%; /* todas las cards misma altura */
}

.card-body {
  flex-grow: 1; /* expande contenido para igualar alturas */
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* Imagen circular para agradecimientos */
.agradecimiento-img {
  width: 20vh;
  height: 20vh;
  object-fit: cover;
  border-radius: 50%;          /* círculo */
  border: 3px solid #1B5E20;   /* borde verde oscuro Codex */
  display: block;
  margin: 0 auto 1rem;         /* centrada y con espacio abajo */
}

/* ====== FOOTER CODIGO ESTÁTICO ====== */
.site-footer,
footer {
  all: unset;
  display: block;
}

/* Estructura principal */
footer {
  background-color: #1B5E20; /* verde hoja oscuro */
  color: #ffffff;
  padding: 2rem 0;
  text-align: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.95rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
}

/* Texto del footer */
footer p {
  margin: 0;
  letter-spacing: 0.5px;
}

/* Estilo general acordeón */
.faq-accordion h3 {
  background-color: #ffffff;
  border-radius: 0.5rem;
  padding: 1rem 1.25rem;
  margin-bottom: 0.5rem;
  cursor: pointer;
  position: relative;
  box-shadow: 0 4px 6px rgba(0,0,0,0.05);
  transition: background-color 0.3s;
  font-weight: 600;
}

.faq-accordion h3:hover {
  background-color: #f8f9fa;
}

.faq-accordion h3::after {
  content: '+';
  position: absolute;
  right: 1.5rem;
  font-size: 1.5rem;
  transition: transform 0.3s;
}

.faq-accordion .ui-accordion-header-active::after {
  content: '−';
  transform: rotate(180deg);
}

.faq-accordion div {
  padding: 1rem 1.25rem;
  background-color: #fdfdfd;
  border-left: 3px solid #8BC34A;
  margin-bottom: 0.5rem;
  border-radius: 0 0.5rem 0.5rem 0.5rem;
}

#corazon {
  fill: #8BC34A;
}

.post,
.page {
  margin: 0 !important; /* elimina el margen inferior */
}
