.rcp-contact {
	--rcp-contact-icon: var(--e-global-color-primary, #b5838d);
	--rcp-contact-icon-size: 16px;
	--rcp-social-size: 40px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
	font-style: normal;
}

.rcp-contact__list,
.rcp-contact__social {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.rcp-contact__list {
	flex-direction: column;
	flex-wrap: wrap;
	gap: 12px 28px;
}

.rcp-contact__item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
}

.rcp-contact .rcp-contact__item a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s ease;
}

.rcp-contact__item a:hover,
.rcp-contact__item a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.rcp-contact__icon {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: var(--rcp-contact-icon-size);
	height: 1.5em;
	color: var(--rcp-contact-icon);
	font-size: var(--rcp-contact-icon-size);
}

.rcp-contact__icon svg {
	width: var(--rcp-contact-icon-size);
	height: var(--rcp-contact-icon-size);
	fill: currentColor;
}

.rcp-contact__social {
	flex-wrap: wrap;
	gap: 10px;
}

.rcp-contact__social li {
	margin: 0;
}

.rcp-contact__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--rcp-social-size);
	height: var(--rcp-social-size);
	border-radius: 50%;
	background: var(--e-global-color-primary, #b5838d);
	color: #fff;
	font-size: calc(var(--rcp-social-size) * 0.42);
	text-decoration: none;
	transition: background-color 0.2s ease;
}

.rcp-contact__social svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
}

@media (prefers-reduced-motion: reduce) {
	.rcp-contact__item a,
	.rcp-contact__social a {
		transition: none;
	}
}

/* Ikony liniowe Recepcji: kreska zamiast wypełnienia, social w ramce. */
.rcp-contact-icons-line .rcp-contact__icon svg,
.rcp-contact-icons-line .rcp-contact__social svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
}

.rcp-contact-icons-line .rcp-contact__social a {
	border: 1px solid currentColor;
	border-radius: var(--rcp-radius, 0);
	background: transparent;
	color: var(--rcp-color-heading, #2e2a27);
}

.rcp-contact-icons-line .rcp-contact__social a:hover {
	background: var(--rcp-color-heading, #2e2a27);
	color: #fff;
}

/* Same ikony (np. telefon w headerze na telefonie): cała ikona jest linkiem 44×44,
   tekst zostaje dla czytników ekranu. */
@media (max-width: 1024px) {
	.rcp-contact-compact-tablet .rcp-contact__item {
		position: relative;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
	}

	.rcp-contact-compact-tablet .rcp-contact__item a {
		position: absolute;
		inset: 0;
	}

	.rcp-contact-compact-tablet .rcp-contact__txt {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}
}

@media (max-width: 767px) {
	.rcp-contact-compact-mobile .rcp-contact__item {
		position: relative;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
	}

	.rcp-contact-compact-mobile .rcp-contact__item a {
		position: absolute;
		inset: 0;
	}

	.rcp-contact-compact-mobile .rcp-contact__txt {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}
}
