/* Directorio y ficha del negocio. Poppins, como la web. */
.crd-directorio, .crd-ficha { font-family: "Poppins", ui-sans-serif, system-ui, sans-serif; }
.crd-ficha {
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	align-items: flex-start;
	margin: 0 0 2rem;
}
.crd-ficha__logo img { width: 120px; height: 120px; object-fit: contain; border-radius: 12px; }
.crd-ficha__datos { flex: 1 1 260px; min-width: 0; }
.crd-ficha__nombre { margin: 0 0 .25rem; }
.crd-ficha__tipo { margin: 0 0 .5rem; opacity: .75; }
.crd-ficha__contacto { list-style: none; margin: .5rem 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem 1.25rem; }
.crd-ficha__horario { font-size: .95em; }

.crd-indice {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0 0 1.5rem;
	position: sticky;
	top: 0;
	z-index: 2;
	padding: .5rem 0;
	background: inherit;
}
.crd-indice a {
	padding: .4rem .9rem;
	border-radius: 99px;
	border: 1px solid currentColor;
	text-decoration: none;
}
.crd-bloque { margin: 0 0 2.5rem; scroll-margin-top: 4rem; }

.crd-directorio__buscador {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0 0 1.5rem;
}
.crd-directorio__buscador input[type="search"] { flex: 1 1 220px; }
.crd-directorio__buscador input,
.crd-directorio__buscador select,
.crd-directorio__buscador button { padding: .6rem .8rem; border-radius: 8px; font: inherit; }

.crd-directorio__rejilla {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 1rem;
}
.crd-tarjeta__enlace {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: .4rem;
	padding: 1.25rem 1rem;
	height: 100%;
	border: 1px solid rgba(0, 0, 0, .1);
	border-radius: 12px;
	text-decoration: none;
	color: inherit;
	transition: box-shadow .15s ease;
}
.crd-tarjeta__enlace:hover,
.crd-tarjeta__enlace:focus-visible { box-shadow: 0 6px 20px rgba(0, 0, 0, .08); }
.crd-tarjeta__logo img { width: 96px; height: 96px; object-fit: contain; }
.crd-tarjeta__inicial {
	display: grid;
	place-items: center;
	width: 96px;
	height: 96px;
	border-radius: 50%;
	background: rgba(0, 0, 0, .06);
	font-size: 2.5rem;
	font-weight: 700;
}
.crd-tarjeta__nombre { font-weight: 700; }
.crd-tarjeta__meta { font-size: .9em; opacity: .75; }

.crd-directorio__paginas { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1.5rem; }
.crd-directorio__paginas a { padding: .3rem .7rem; border-radius: 6px; border: 1px solid rgba(0, 0, 0, .15); text-decoration: none; }
.crd-directorio__paginas a[aria-current] { font-weight: 700; background: rgba(0, 0, 0, .06); }

@media (prefers-reduced-motion: reduce) {
	.crd-tarjeta__enlace { transition: none; }
}

.crd-ficha__hoy { display: grid; gap: .15rem; margin: .75rem 0; padding: .75rem 1rem; border-radius: 14px; background: color-mix(in srgb, currentColor 7%, transparent); border-left: 4px solid #1f6fa8; }
.crd-ficha__hoy small { opacity: .7; }
.crd-ficha__servicios { list-style: none; margin: .75rem 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.crd-ficha__servicios li { padding: .3rem .75rem; border-radius: 99px; font-size: .85rem; border: 1px solid color-mix(in srgb, currentColor 22%, transparent); }
.crd-ficha__pedir { margin: .75rem 0 0; }
.crd-ficha__boton { display: inline-block; padding: .6rem 1.2rem; border-radius: 12px; background: currentColor; text-decoration: none; font-weight: 700; }
.crd-ficha__boton { background: #e4572e; color: #fff !important; }
.crd-bloque__horario { margin: -.5rem 0 1rem; opacity: .7; font-size: .95rem; }
