/*
 Theme Name:   bloghash Child
 Template:     bloghash
 Version:      1.0
*/


h1.entry-title{
font-size:3rem!important; 
}
h2.wp-block-heading{
font-size:2.75rem!important;
}
.menu-item{
font-size: 1.4rem!important;
}
.content-area{
margin-top:2rem!important;}
#content{
margin-top: 0!important}

.widget-area{margin-top:2rem!important;}
/* ------------------------------
   Utilidades y botones internos
--------------------------------*/
#copyBtn, #downloadBtn {
  margin: 5px;
  padding: 10px 16px;
  background-color: #007BFF;
  color: white;
  border: none;
  border-radius: 6px;
  cursor: pointer;
}
#copyBtn:hover, #downloadBtn:hover {
  background-color: #0056b3;
}

/* Ocultar descripción de menú en header (tema) */
html body #bloghash-header-inner .bloghash-nav > ul > li > a > span > span.description {
  display: none;
}

/* Botón nativo de Gutenberg */
.wp-block-button__link {
  background-color: #2c8aa5;
  margin: 3px;
  font-size: 20px !important;
  padding: 2.2rem 5.2rem !important;
  border-radius: 2.5rem !important;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover, .wp-block-button:not(.is-style-outline) .wp-block-button__link:active{
        border-color: #2c8aa5 !important;
    background-color: transparent !important;
    color: #2c8aa5 !important;
    
}

/* Caja de contenido personalizado (categorías/archivos) */
.contenido-personalizado {
  margin-left: 3rem;
  box-shadow: 0 5px 20px 0 rgba(69, 67, 96, 0.1);
  border-color: transparent;
  background-color: #FFFFFF;
  border-radius: 2rem;
  border: .1rem solid rgba(185, 185, 185, 0.4);
  padding: 30px;
  margin-bottom: 2.4rem;
}

/* Footer */
.site-footer a { text-decoration: none; }
.site-footer a:hover { color: #2c8aa5 !important;transition:.5s ease; }

/* H1 SEO en home: visible para SEO/lectores, oculto visualmente */
.site-header .bloghash-logo .site-title.dg-home-h1 {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

/* ------------------------------
   Secciones de la Home
--------------------------------*/
.home-section { padding: 2rem 0; }
.section-inner { max-width: 1100px; margin: 0 auto; padding: 0 1rem; }
.section-intro { margin: .5rem 0 1.25rem; }

/* ---- Grid de tarjetas ---- */
.dg-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1rem;
  margin: 1rem 0px!important ;
  padding: 0;
  list-style: none;
}

/* Variantes de columnas (para shortcodes) */
.dg-cols-6 { grid-template-columns: repeat(6, minmax(0,1fr)); }
.dg-cols-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
.dg-cols-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }

@media (max-width: 1100px) { .dg-cols-6 { grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (max-width: 900px)  { .dg-cols-6, .dg-cols-4 { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 680px)  { .dg-cols-6, .dg-cols-4, .dg-cols-3 { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 420px)  { .dg-cols-6, .dg-cols-4, .dg-cols-3 { grid-template-columns: 1fr; } }

/* ---- Tarjetas ---- */
.dg-card {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 1px 5px rgba(0,0,0,0.15);
  transition: box-shadow .5s ease, transform .5s ease, border-color .5s ease;
}

.dg-card:hover {
  box-shadow: 0 1px 7px rgba(0,0,0,.35);
    transition: box-shadow .5s ease, transform .5s ease, border-color .5s ease;

}


.dg-card-link {
  display: grid;
  grid-template-rows: auto 1fr;
  text-decoration: none;
  color: inherit;
  height: 100%;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.dg-card-link:hover {
  background-color: #fff;
  transition:.5s ease;
}

.dg-card-body { 
    gap: .35rem; 
  display: flex;
  flex-direction: column;
  padding: .75rem .9rem;
  flex: 1 1 auto; /* ocupa el alto disponible */    
}

/* Título y CTA de tarjeta */
.dg-card-title {
  font-size: 15px;
  margin: 0;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;       /* máx 2 líneas, ajusta a 3 si prefieres */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ---- Lista de formatos y pasos ---- */
.formatos-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px,1fr));
  gap: 0px;
  margin-top: 5px;
  list-style: none;
  padding: 0;
}
.steps { margin-top: 1rem; }
details {
  margin: .5rem 0;
  padding: .5rem .75rem;
  border: 1px solid #eee;
  border-radius: 10px;
  background: #fff;
}
summary { cursor: pointer; font-weight: 600; }

/* ---- Hero CTA (above the fold) ---- */
.hero-actions { margin: 1rem 0 1.25rem; }


/* ---- Botones DG (coherentes y redondeados) ---- */
.btn {
  display: inline-block;
  padding: .75rem 10.5rem;
  border-radius: 50px;
  text-decoration: none;
  border: 1px solid transparent;
  font-weight: 600;
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .15s ease;
}
.btn-primary {
  background-color: #2c8aa5 !important;
  color: #fff !important;
  text-decoration: none !important;
  padding: 10px 15px !important;
  width: 100%;
  text-align: center;
}
.btn-primary:hover {
  background-color: #4db3d0!important;           
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  transition:.5s ease;
}
.btn-secondary {
  background-color: #2c8aa5 !important; 
  color: #fff !important;
  border: none !important;
  border-radius: 50px !important;
  text-decoration: none !
  important;width: 100%;
  text-align: center;
}
.btn-secondary:hover {
  background-color: #4db3d0!important;           
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  transition:.5s ease;
}

/* ---- Top descargas (compacto) ---- */
.top-descargas { margin-top: 1.25rem; }
.top-descargas > h2 { margin: 0 0 .25rem; font-size: 2.5 rem}
.top-descargas .section-intro { margin: 0 0 .75rem; opacity: .9; font-size: 16px }
/* Resalte opcional para Top */
.dg-top-card .dg-card-title { font-weight: 700; }

/* ---- Enlaces en contenido ---- */
.content-area .bloghash-entry a {
  text-decoration: none !important;
}

/* ===== Top del mes: que use TODO el espacio disponible ===== */
/* Fuerza al grid del Top a auto-ajustarse y estirarse por fila */
.dg-top-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  align-items: stretch;
  margin-left: 0px!important;
}

/* En pantallas anchas, un poquito más de ancho mínimo por tarjeta */
@media (min-width: 1280px) {
  .dg-top-grid {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
    margin-left:0px!important;
  }
}

/* Asegura que cada card estire a la altura total del grid mobile */
.dg-top-grid .dg-card,
.dg-top-grid .dg-card-link {
  height: 100%;
  margin-left:0px!important;
}

/* ===== Tipografía responsiva en tarjetas (móvil) ===== */
.dg-card-title {
  /* Escala fluida: sube en móvil, se controla en desktop */
  font-size: 15px;
  line-height: 1.25;
}
.dg-card-cta {
  font-size: 14px;
    text-align: center;
    align-content:center;
    background-color: #2c8aa5;
    color: #fff;
    border-radius: 30px;
}
.dg-card-cta:hover{ 
    background-color:#4db3d0!important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  transition:.85s ease;
}

/* Extra legibilidad en pantallas pequeñas */
@media (max-width: 480px) {
  .dg-card-body {
    gap: .45rem;
    padding: .85rem 1rem;
  }
}

/* (Opcional) Mantener imágenes consistentes en alto sin deformar */
.dg-card-media {
 aspect-ratio: 4 / 3;         /* o 1 / 1 si te gusta cuadrado */
  overflow: hidden;
}
.dg-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display:block; 
}
/* === Tipografías consistentes en "Top descargas del mes" (en widget) === */
.top-descargas > h2 {
  font-size: 2.5rem;
  line-height: 1.2;
  font-weight: 800;
  margin: 0 0 .35rem;
}

/* Si está dentro de un widget o bloque que reduce fuente, sobrescribe */
.widget .top-descargas > h2,
.widget_text .top-descargas > h2,
.wp-block-group .top-descargas > h2,
.wp-block-widget-area .top-descargas > h2 {
  font-size: 2.5rem !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
}

.top-descargas .section-intro {
  font-size: 15px;
  line-height: 1.5;
  opacity: .95;
  margin: 0 0 .9rem;
}

/* Igual refuerzo si está en widget */
.widget .top-descargas .section-intro,
.widget_text .top-descargas .section-intro,
.wp-block-group .top-descargas .section-intro,
.wp-block-widget-area .top-descargas .section-intro {
  font-size: clamp(1rem, 1.6vw, 1.125rem) !important;
  line-height: 1.5 !important;
}

/* Opcional: unifica H2 de todas las secciones de la home para que luzcan igual */
.home-section h2 {
  font-size: 2.5rem;
  line-height: 1.2;
  font-weight: 800;
} 
/* bajar margen de las tarjetas en home para ahorrar un poco de espacio */
.bloghash-entry figure {
    margin-top: 0px!important;
    margin-bottom:0px!important;
  }
#bloghash-header-inner .bloghash-nav>ul{
min-height: 6rem!important;
}
#ez-toc-container {
padding: 5px 20px 5px 10px!important;
background: #fff;
}
/* Alturas mínimas para evitar CLS en todos los contenedores de anuncios */
.dg-ads-archive-top .adsbygoogle,
.dg-ads-single-top .adsbygoogle,
.dg-ads-single-mid .adsbygoogle,
.dg-ads-single-end .adsbygoogle,
.dg-card-ad .adsbygoogle { min-height: 280px; }

/* En móviles, un poco más compacto para in-feed (sin perder estabilidad) */
@media (max-width: 768px){
  .dg-card-ad .adsbygoogle { min-height: 250px; }
}
        .dg-swiper { overflow: hidden; margin-bottom: 0; }
        .dg-swiper .swiper-slide { height: auto; }
        .dg-swiper .dg-card { height: 100%; }
        .dg-swiper .swiper-button-prev,
        .dg-swiper .swiper-button-next { color: #319bb9; }
        .swiper-wrapper{padding: 15px 5px 15px 5px;}
.dg-swiper .swiper-pagination{ display:none !important; }
.swiper{padding-right: 8px!important;}

/* 1) Normalizar el box model en todo */
*, *::before, *::after { box-sizing: border-box; }

/* 2) Asegurar que TODAS las cards tengan la misma altura */
.dg-card-grid { align-items: stretch; }

/* 3) Reestructurar la card para que el CTA siempre quede al fondo */
.dg-card-link{
  display: flex;
  flex-direction: column;
  height: 100%;
}



/* Empuja el CTA al fondo SIEMPRE */
.dg-card-cta { margin-top: auto; }

/* 4) Botón consistente: altura fija visual + centrado */
.dg-card-cta{
  display: flex;               /* NO inline */
  align-items: center;
  justify-content: center;
  padding: 1px 1px;          /* padding real, no heredado */
  min-height: 44px;            /* alto mínimo accesible */
  line-height: 1;              /* evita alturas variables por line-height heredado */
  text-align: center;
  background-color: #2c8aa5;
  color: #fff;
  border-radius: 30px;
  font-size: 14px;             /* congruente con lo que ya usas */
}




