/* TBCS Coffee Map — botón para la ficha de Directorist.
   Sin bordes: los botones se separan por relleno y contraste. */
.tbcs-cta{
	--tbcsb-primary:#211915;
	--tbcsb-accent:#d6d0bd;
	--tbcsb-radius:12px;
	--tbcsb-pad:13px 20px;
	--tbcsb-size:15px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:10px;
	margin:0;
}
.tbcs-cta--sm{--tbcsb-pad:9px 15px;--tbcsb-size:13.5px}
.tbcs-cta--lg{--tbcsb-pad:16px 26px;--tbcsb-size:16.5px}
.tbcs-cta--center{justify-content:center}
.tbcs-cta--right{justify-content:flex-end}
.tbcs-cta.is-full{display:grid;grid-template-columns:1fr}

.tbcs-cta *,
.tbcs-cta *::before,
.tbcs-cta *::after{box-sizing:border-box}

/* Blindaje contra los estilos de botón del tema (Hello Elementor pinta
   button:hover de rosado, entre otras cosas). */
.tbcs-cta .tbcs-cta__btn,
.tbcs-cta .tbcs-cta__btn:hover,
.tbcs-cta .tbcs-cta__btn:focus,
.tbcs-cta .tbcs-cta__btn:active{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:9px;
	width:auto;
	min-height:0;
	margin:0;
	padding:var(--tbcsb-pad);
	border:0;
	border-radius:var(--tbcsb-radius);
	box-shadow:none;
	font:600 var(--tbcsb-size)/1.2 inherit;
	letter-spacing:normal;
	text-transform:none;
	text-decoration:none;
	text-shadow:none;
	cursor:pointer;
	transition:background-color .16s,color .16s,transform .16s;
}
.tbcs-cta.is-full .tbcs-cta__btn{width:100%}

.tbcs-cta .tbcs-cta__btn--solid,
.tbcs-cta .tbcs-cta__btn--solid:focus{
	background:var(--tbcsb-primary);
	color:#fff;
}
.tbcs-cta .tbcs-cta__btn--solid:hover,
.tbcs-cta .tbcs-cta__btn--solid:active{
	background:var(--tbcsb-primary);
	color:var(--tbcsb-accent);
}
.tbcs-cta .tbcs-cta__btn--solid[aria-pressed="true"],
.tbcs-cta .tbcs-cta__btn--solid[aria-pressed="true"]:hover{
	background:var(--tbcsb-accent);
	color:var(--tbcsb-primary);
}

.tbcs-cta .tbcs-cta__btn--ghost,
.tbcs-cta .tbcs-cta__btn--ghost:focus{
	background:color-mix(in srgb,var(--tbcsb-primary) 9%,transparent);
	color:var(--tbcsb-primary);
}
.tbcs-cta .tbcs-cta__btn--ghost:hover,
.tbcs-cta .tbcs-cta__btn--ghost:active{
	background:color-mix(in srgb,var(--tbcsb-primary) 16%,transparent);
	color:var(--tbcsb-primary);
}

.tbcs-cta .tbcs-cta__btn:focus-visible{
	outline:2px solid var(--tbcsb-primary);
	outline-offset:2px;
}

.tbcs-cta svg{
	width:18px;
	height:18px;
	flex:none;
	fill:none;
	stroke:currentColor;
	stroke-width:1.9;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.tbcs-cta svg[hidden]{display:none}

.tbcs-cta .tbcs-cta__link{
	font:500 13.5px/1 inherit;
	color:var(--tbcsb-primary);
	text-decoration:underline;
	text-underline-offset:3px;
	opacity:.75;
}
.tbcs-cta .tbcs-cta__link:hover{opacity:1}
.tbcs-cta .tbcs-cta__link[hidden]{display:none}

@media (prefers-reduced-motion:reduce){
	.tbcs-cta .tbcs-cta__btn{transition:none}
}
