/**
 * Local SEO -lohkojen tyylit.
 *
 * Tarkoituksella niukat: lohkot perivät teeman typografian ja värit, eivätkä
 * yritä näyttää samalta joka sivustolla. Vain rakenne ja välit määritellään.
 */

.joinas-nap-address,
.joinas-nap-phone,
.joinas-nap-email,
.joinas-nap-directions {
	margin: 0 0 0.4em;
}

.joinas-nap-name {
	margin: 0 0 0.4em;
	font-weight: 600;
}

/* Aukioloajat */

.joinas-hours-week {
	width: 100%;
	max-width: 30em;
	border-collapse: collapse;
}

.joinas-hours-week th,
.joinas-hours-week td {
	padding: 0.35em 0.75em 0.35em 0;
	text-align: left;
	font-weight: inherit;
	vertical-align: top;
}

.joinas-hours-week tr[data-today] th,
.joinas-hours-week tr[data-today] td {
	font-weight: 600;
}

.joinas-status[data-open='true']::before,
.joinas-status[data-open='false']::before {
	content: '';
	display: inline-block;
	width: 0.6em;
	height: 0.6em;
	margin-right: 0.5em;
	border-radius: 50%;
	background: currentColor;
	vertical-align: baseline;
}

.joinas-status[data-open='true'] {
	color: #1a7f37;
}

.joinas-status[data-open='false'] {
	color: #6e7781;
}

.joinas-hours-exceptions {
	margin: 0.5em 0 0;
	padding: 0;
	list-style: none;
}

.joinas-hours-exceptions li {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	padding: 0.2em 0;
}

.joinas-exception-date {
	font-variant-numeric: tabular-nums;
	min-width: 6em;
}

/* Kartta */

.joinas-map,
.joinas-map iframe {
	width: 100%;
	height: var(--joinas-map-height, 360px);
	border: 0;
	display: block;
}

.joinas-map-consent {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.5em;
	height: 100%;
	padding: 1.5em;
	text-align: center;
	box-sizing: border-box;
	border: 1px solid rgba(0, 0, 0, 0.12);
	background: rgba(0, 0, 0, 0.03);
}

.joinas-map-note {
	margin: 0;
	font-size: 0.875em;
	opacity: 0.75;
	max-width: 32em;
}

.joinas-map-address {
	margin: 0;
	font-weight: 600;
}

.joinas-map-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	align-items: center;
	margin: 0;
}

.joinas-map-load {
	cursor: pointer;
	font: inherit;
	padding: 0.5em 1.1em;
	border: 1px solid currentColor;
	border-radius: 3px;
	background: transparent;
	color: inherit;
}

/* FAQ */

.joinas-faq-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.12);
	padding: 0.75em 0;
}

.joinas-faq-question {
	cursor: pointer;
	font-weight: 600;
	list-style-position: outside;
}

.joinas-faq-answer {
	padding-top: 0.5em;
}

.joinas-faq-answer > p:first-child {
	margin-top: 0;
}

.joinas-faq-answer > p:last-child {
	margin-bottom: 0;
}

/* Editorin tyhjä tila */

.joinas-block-empty {
	margin: 0;
	padding: 1em;
	border: 1px dashed rgba(0, 0, 0, 0.25);
	color: #6e7781;
	text-align: center;
}
