.sosms-dynamic-block {
	width: 100%;
	margin-block: 0;
	background: transparent;
}

.sosms-dynamic-block > :first-child {
	margin-top: 0;
}

.sosms-dynamic-block > :last-child {
	margin-bottom: 0;
}

.sosms-block-fallback,
.sosms-plugin-fallback {
	max-width: 760px;
	margin: 28px auto;
	padding: 22px;
	border: 1px dashed var(--sos-line, #b8c9c3);
	border-radius: 14px;
	background: var(--sos-surface, #fff);
	color: var(--sos-text, #071b16);
}

.sosms-block-fallback p,
.sosms-plugin-fallback p {
	margin: 6px 0 0;
	color: var(--sos-muted, #62716c);
}

.sosms-directory,
.sosms-store-directory {
	padding: clamp(48px, 7vw, 92px) max(24px, calc((100vw - 1180px) / 2));
}

.sosms-directory-group + .sosms-directory-group {
	margin-top: 42px;
}

.sosms-directory-group h2,
.sosms-store-directory h2 {
	margin: 0 0 18px;
	color: var(--sos-primary);
}

.sosms-directory-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 12px;
}

.sosms-directory-grid a {
	display: block;
	padding: 18px;
	border: 1px solid var(--sos-line);
	border-radius: 14px;
	background: var(--sos-surface);
	color: var(--sos-primary);
	text-decoration: none;
}

.sosms-directory-grid span {
	display: block;
	margin-top: 4px;
	color: var(--sos-muted);
	font-size: 13px;
}

.sosms-store-contact-block {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 28px;
	padding: clamp(44px, 7vw, 86px) max(24px, calc((100vw - 1180px) / 2));
	background: var(--sos-primary);
	color: #fff;
}

.sosms-store-contact-block h1 {
	margin: 5px 0 12px;
	color: #fff;
}

.sosms-store-contact-block p {
	margin: 0;
	color: rgba(255, 255, 255, .76);
}

@media (max-width: 720px) {
	.sosms-store-contact-block {
		grid-template-columns: 1fr;
	}
}
