/* ===== Contenedor y espaciado superior ===== */
.kbo-container { 
	padding: 0 16px; 
	max-width: 1290px; }
.kbo-container--mt { 
	margin: 40px auto; 
} /* más aire bajo el header */

/* ===== Breadcrumbs estilo Blocksy-like ===== */
.kbo-breadcrumb { 
	display:flex; 
	align-items:center; 
	gap:10px; color:#6B4A3B; 
	font-weight:600; 
}
.kbo-breadcrumb a { 
	color:#7bbabc; 
	letter-spacing:.05em; 
	font-weight:600; 
}
.kbo-bc-home { 
	color:#7bbabc; 
	vertical-align:-2px; 
}
.kbo-bc-sep { 
	color:#6B4A3B; 
	opacity:.9; 
	font-size:18px; 
}
.kbo-bc-current { 
	color:#6B4A3B; 
}

/* ===== Grid principal (2 columnas) ===== */
.kbo-activity-woo .kbo-activity-grid {
  display:grid; 
  grid-template-columns:1fr 1fr; 
  gap:32px; align-items:start; 
  margin: 18px 0 26px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.kbo-activity-woo .images .woocommerce-product-gallery__image img {
  width:100%; 
  height:auto; 
  border-radius:12px;
  max-height: 80vh;
  min-height: 480px;
  object-fit: contain;
}

/* ===== Meta (una por línea) ===== */
.kbo-activity-woo .product_meta { 
	margin:.5rem 0 1rem; 
}
.kbo-activity-woo .product_meta .kbo-meta-row { 
	display:block; 
	margin:2rem 0; 
}
.kbo-activity-woo .kbo-meta-label { 
	font-weight:600; 
	margin-right:.4rem; 
}
.kbo-activity-woo .kbo-meta-value a { 
	text-decoration:none; 
}

/* ===== Short description a la derecha ===== */
.kbo-shortdesc { 
	margin: 2rem 0 3rem;
}

/* ===== CTA Download (grande) ===== */
body.single-activity .kbo-activity-woo .kbo-activity-grid .kbo-download-button {
  font-size:1.05rem;
  margin: 30px 0;
  width: 100%;
  max-width: 320px;
}

/* ===== Share (iconos con color marrón del theme) ===== */
:root { 
	--kbo-brown:#6B4A3B; 
}
.kbo-share { 
	display:flex; 
	align-items:center; 
	gap:10px; 
	margin-top: 2rem; 
	flex-wrap: wrap; 
}
.kbo-share__label { 
	font-weight:600; 
	margin-right:4px; 
	color: var(--kbo-brown); 
}
.kbo-share__btn {
  display:inline-flex; 
  align-items:center; 
  justify-content:center;
  width:36px; 
  height:36px; 
  border-radius:999px; 
  border:1px solid rgba(0,0,0,.08);
  background:#fff; color: var(--kbo-brown);
  box-shadow:0 2px 6px rgba(0,0,0,.06); 
  transition: transform .15s ease, background .15s ease;
  cursor: pointer;
}
.kbo-share__btn:hover { 
	transform: translateY(-1px); 
	background: rgba(107,74,59,.08);
}
.kbo-share__btn svg { 
	display:block; 
}

.kbo-copy-toast {
  position: absolute;
  transform: translate(-50%, -100%);
  background: #222;
  color: #fff;
  font-size: 13px;
  padding: 4px 8px;
  border-radius: 4px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease;
  z-index: 9999;
}
.kbo-copy-toast.visible {
  opacity: 0.95;
  transform: translate(-50%, -120%);
}


/* ===== Separadores ===== */
.kbo-hr { 
	border:0; 
	border-top:1px solid rgba(0,0,0,.08); 
	margin:24px 0; 
}

/* ===== Related y navegación ===== */
.kbo-activity-woo .related.products ul.products { 
	margin-top: 12px; 
}
.kbo-activity-woo .kbo-post-nav { 
	display:flex; 
	justify-content:space-between; 
	margin-top: 40px; 
  gap: 1em;
}

.kbo-activity-woo .kbo-post-nav .kbo-post-nav__next {
  text-align: right;
}

/* ===== Responsive ===== */
@media (max-width: 900px) { 
	.kbo-activity-woo .kbo-activity-grid { 
		grid-template-columns:1fr; 
	}

  body.single-activity .kbo-activity-woo .kbo-activity-grid .kbo-download-button {
    margin: 30px auto;
    display: block;
  }

  body .kbo-share {
    justify-content: center;
  }

  body.single-activity .kbo-share__label {
    width: 100%;
    text-align: center;
  }
}






/* ===== Grid ===== */
.kbo-activities-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
  margin: 12px 0 24px;
}
@media (max-width: 960px){ .kbo-activities-grid{ grid-template-columns:repeat(2,1fr);} }
@media (max-width: 640px){ .kbo-activities-grid{ grid-template-columns:1fr;} }

/* ===== Card ===== */
.kbo-activity-card{
  list-style:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 1px 0 rgba(0,0,0,.03);
  padding:16px 14px;
}

/* Imagen con marco, misma proporción en todas */
.kbo-card-thumb{
  display:flex; 
  align-items:center; 
  justify-content:center;
  width:100%; 
  background:#fff; 
  border-radius:8px;
  aspect-ratio: 1 / 1; 
  overflow:hidden;
}
.kbo-thumb-img{ 
	width:100%; 
	height:100%; 
	object-fit:contain; 
}

/* Título */
.kbo-card-title{
  font-size: clamp(18px, 2vw, 20px);
  line-height:1.3;
  margin: 15px 0;
}
.kbo-card-title a { 
	text-decoration:none; 
	color: var(--paletteColor5, #5e3f2e); 
}
.kbo-card-title a:hover { 
	text-decoration:underline; 
	text-decoration: none; 
	color: inherit;
}

/* Descripción recortada */
.kbo-card-desc{
  margin: 0 0 21px;
  color: #615a57;
  display: -webkit-box;
  -webkit-line-clamp: 2; /* número de líneas visibles */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Botón */
.kbo-card-cta {
	margin-bottom: 15px;
}

.kbo-card-cta .button{
/*
  border-radius: 15px;
  padding: 12px 16px;
  font-weight:600;
*/
  min-width: 160px;
}

/* Separador y meta */
.kbo-card-hr{
  width: 100%;
  border: 0; height:1px;
  background: color-mix(in oklab, var(--paletteColor5,#5e3f2e) 14%, transparent);
  margin: 12px auto 10px;
}

.kbo-card-book{
  font-size: 14px;
  color: #6a635f;
}
.kbo-card-book a, .kbo-card-book a:hover { 
	text-decoration: none; 
  color: var(--theme-link-initial-color);
}

/* Share */
body:not(.single-activity) .kbo-share {
  text-align: center;
  margin-top: 32px;
  justify-content: center;
  flex-direction: column;
  border-top: 1px solid #ccc;
  padding-top: 30px;
}

body:not(.single-activity)  .kbo-share__label {
  display: block;
  font-weight: 600;
  margin-bottom: 0;
}

body:not(.single-activity) .kbo-share__icons {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
}

body:not(.single-activity) .kbo-share__icons .kbo-share__btn {
	width: 60px;
	height: 60px;
}

@media (max-width: 690px) { 
	body:not(.single-activity) .kbo-share__icons .kbo-share__btn {
		width: 36px;
		height: 36px;
	}
}

@media (max-width: 480px) { 
	body:not(.single-activity) .kbo-share__icons .kbo-share__btn {
		width: 24px;
		height: 24px;
	}
}


