.fluro-floating-contact {
	--fluro-floating-contact-accent: #d8ff00;
	--fluro-floating-contact-background: #fcfcfc;
	--fluro-floating-contact-text: #202020;
	--fluro-floating-contact-icon-width: 38px;
	--fluro-floating-contact-label-width: 172px;
	--fluro-floating-contact-row-height: 42px;
	position: fixed;
	z-index: 9990;
	top: 55%;
	right: 0;
	width: var(--fluro-floating-contact-icon-width);
	height: calc(var(--fluro-floating-contact-row-height) * 5);
	overflow: hidden;
	border: 1px solid rgba(32, 32, 32, .18);
	border-right: 0;
	border-radius: 12px 0 0 12px;
	background: var(--fluro-floating-contact-background);
	box-shadow: -8px 12px 24px rgba(0, 0, 0, .10);
	color: var(--fluro-floating-contact-text);
	font-family: inherit;
	transform: translateY(-50%);
	transition: width .24s cubic-bezier(.2, .72, .2, 1), box-shadow .2s ease;
}

.fluro-floating-contact:hover,
.fluro-floating-contact:focus-within {
	width: calc(var(--fluro-floating-contact-label-width) + var(--fluro-floating-contact-icon-width));
	box-shadow: -12px 16px 30px rgba(0, 0, 0, .14);
}

.fluro-floating-contact *,
.fluro-floating-contact *::before,
.fluro-floating-contact *::after {
	box-sizing: border-box;
}

.fluro-floating-contact__links {
	position: absolute;
	top: 0;
	right: 0;
	width: calc(var(--fluro-floating-contact-label-width) + var(--fluro-floating-contact-icon-width));
	height: 100%;
	display: grid;
	grid-template-rows: repeat(5, var(--fluro-floating-contact-row-height));
	margin: 0;
	padding: 0;
	background: var(--fluro-floating-contact-background);
}

.fluro-floating-contact__action {
	min-width: 0;
	display: grid;
	grid-template-columns: var(--fluro-floating-contact-label-width) var(--fluro-floating-contact-icon-width);
	align-items: stretch;
	margin: 0;
	border: 0;
	border-bottom: 1px solid rgba(32, 32, 32, .11);
	padding: 0;
	background: var(--fluro-floating-contact-background);
	color: var(--fluro-floating-contact-text);
	font: inherit;
	font-size: 11.5px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}

.fluro-floating-contact__action:last-child {
	border-bottom: 0;
}

.fluro-floating-contact__label,
.fluro-floating-contact__icon {
	display: flex;
	align-items: center;
}

.fluro-floating-contact__label {
	padding: 0 14px;
	background: var(--fluro-floating-contact-background);
	color: var(--fluro-floating-contact-text);
}

.fluro-floating-contact__icon {
	justify-content: center;
	border-left: 1px solid rgba(255, 255, 255, .14);
	background: var(--fluro-floating-contact-text);
	color: var(--fluro-floating-contact-background);
}

.fluro-floating-contact__icon svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.fluro-floating-contact__action:hover,
.fluro-floating-contact__action:focus-visible,
.fluro-floating-contact__action:hover .fluro-floating-contact__label,
.fluro-floating-contact__action:focus-visible .fluro-floating-contact__label {
	background: #f1f1f1;
	color: var(--fluro-floating-contact-text);
	text-decoration: none;
}

.fluro-floating-contact__action:focus-visible {
	outline: 2px solid var(--fluro-floating-contact-accent);
	outline-offset: -3px;
}

.fluro-floating-contact__action--quote,
.fluro-floating-contact__action--quote .fluro-floating-contact__label,
.fluro-floating-contact__action--quote .fluro-floating-contact__icon,
.fluro-floating-contact__action--quote:hover,
.fluro-floating-contact__action--quote:hover .fluro-floating-contact__label,
.fluro-floating-contact__action--quote:hover .fluro-floating-contact__icon,
.fluro-floating-contact__action--quote:focus-visible,
.fluro-floating-contact__action--quote:focus-visible .fluro-floating-contact__label,
.fluro-floating-contact__action--quote:focus-visible .fluro-floating-contact__icon {
	border-color: rgba(32, 32, 32, .12);
	background: var(--fluro-floating-contact-accent);
	color: var(--fluro-floating-contact-text);
}

@media (max-width: 690px) {
	.fluro-floating-contact {
		top: 60%;
		--fluro-floating-contact-icon-width: 36px;
		--fluro-floating-contact-label-width: 164px;
		--fluro-floating-contact-row-height: 40px;
	}
}

@media (max-height: 520px) {
	.fluro-floating-contact {
		top: 50%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fluro-floating-contact {
		transition: none;
	}
}

@media print {
	.fluro-floating-contact {
		display: none !important;
	}
}
