/* Desktop contact rail. */
@media (min-width: 768px) {
	.slide-bar.aodson-contact-rail {
		top: 50% !important;
		right: 18px !important;
		bottom: auto !important;
		width: 58px !important;
		background: #ffffff !important;
		border: 1px solid #dce5eb;
		border-radius: 6px;
		box-shadow: 0 14px 34px rgba(16, 40, 61, 0.16);
		transform: translateY(-50%) !important;
		overflow: visible;
		z-index: 99;
	}

	.aodson-contact-rail .slide-bar__item {
		position: relative;
		display: flex !important;
		width: 58px !important;
		height: 60px !important;
		padding: 7px 3px !important;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		background: transparent !important;
		border: 0 !important;
		border-top: 1px solid #e7edf1 !important;
		color: #395063 !important;
		line-height: 1 !important;
		cursor: pointer;
		transition: background-color 180ms ease, color 180ms ease;
	}

	.aodson-contact-rail .slide-bar__item:first-child {
		border-top: 0 !important;
		border-radius: 6px 6px 0 0;
	}

	.aodson-contact-rail .slide-bar__item:hover,
	.aodson-contact-rail .slide-bar__item:focus-visible,
	.aodson-contact-rail .slide-bar__item:focus-within {
		background: #f2f7fa !important;
		color: #0d6eaa !important;
		outline: 0;
	}

	.aodson-contact-rail .aodson-ui-icon {
		display: block;
		font-size: 25px;
		line-height: 1;
	}

	.aodson-contact-rail .aodson-contact-whatsapp .aodson-ui-icon {
		color: #159c56;
	}

	.aodson-contact-rail .aodson-contact-quote .aodson-ui-icon {
		color: #1686c4;
	}

	.aodson-contact-rail .aodson-contact-email .aodson-ui-icon {
		color: #173a54;
	}

	.aodson-contact-rail .aodson-contact-original-icon {
		display: none !important;
	}

	.aodson-contact-rail .slide-bar__item__text {
		display: block !important;
		width: 100%;
		margin: 0 !important;
		color: inherit !important;
		font-size: 9px !important;
		font-weight: 600;
		line-height: 1.1 !important;
		text-align: center;
		white-space: nowrap;
	}

	.aodson-contact-rail .slide-bar__item__tips {
		top: 50% !important;
		right: calc(100% + 10px) !important;
		bottom: auto !important;
		left: auto !important;
		display: block !important;
		width: max-content !important;
		min-width: 144px;
		height: auto !important;
		padding: 10px 13px !important;
		background: #10283d !important;
		border: 0 !important;
		border-radius: 5px;
		box-shadow: 0 10px 24px rgba(16, 40, 61, 0.22);
		color: #ffffff !important;
		opacity: 0;
		pointer-events: none;
		transform: translate(8px, -50%);
		visibility: hidden;
		transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
	}

	.aodson-contact-rail .slide-bar__item:hover .slide-bar__item__tips,
	.aodson-contact-rail .slide-bar__item:focus-visible .slide-bar__item__tips,
	.aodson-contact-rail .slide-bar__item:focus-within .slide-bar__item__tips {
		opacity: 1;
		transform: translate(0, -50%);
		visibility: visible;
	}

	.aodson-contact-rail .slide-bar__item__tips::after {
		position: absolute;
		top: 50%;
		right: -6px;
		width: 0;
		height: 0;
		border-top: 6px solid transparent;
		border-bottom: 6px solid transparent;
		border-left: 6px solid #10283d;
		content: '';
		transform: translateY(-50%);
	}

	.aodson-contact-rail .aodson-contact-tip-title {
		display: block;
		margin-bottom: 3px;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.2;
		letter-spacing: 0;
	}

	.aodson-contact-rail .slide-bar__item__tips p {
		margin: 0 !important;
		color: #cbd8e1 !important;
		font-size: 10px !important;
		line-height: 1.3 !important;
		white-space: nowrap;
	}

	.aodson-contact-rail .slide-bar__item__img {
		right: calc(100% + 12px) !important;
		left: auto !important;
		width: 174px !important;
		padding: 8px;
		background: #ffffff;
		border: 1px solid #dce5eb;
		border-radius: 6px;
		box-shadow: 0 12px 30px rgba(16, 40, 61, 0.2);
		opacity: 0;
		pointer-events: none;
		transform: translateX(8px);
		visibility: hidden;
		transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
	}

	.aodson-contact-rail .slide-bar__item:hover .slide-bar__item__img,
	.aodson-contact-rail .slide-bar__item:focus-within .slide-bar__item__img,
	.aodson-contact-rail .aodson-qr-open .slide-bar__item__img {
		opacity: 1;
		pointer-events: auto;
		transform: translateX(0);
		visibility: visible;
	}

	.aodson-contact-rail .slide-bar__item__img img {
		display: block;
		width: 100%;
		height: auto;
	}

	.aodson-contact-rail .aodson-contact-top {
		height: 42px !important;
		border-radius: 0 0 6px 6px;
		color: #728592 !important;
	}

	.aodson-contact-rail .aodson-contact-top .slide-bar__item__top {
		font-size: 22px !important;
		line-height: 1 !important;
	}
}

/* Mobile navigation dock. */
@media (max-width: 767px) {
	body {
		padding-bottom: calc(76px + env(safe-area-inset-bottom)) !important;
	}

	.footer-fix.aodson-mobile-dock {
		height: calc(70px + env(safe-area-inset-bottom)) !important;
		padding-bottom: env(safe-area-inset-bottom);
		background: rgba(255, 255, 255, 0.97) !important;
		border-top: 1px solid #dce5eb;
		box-shadow: 0 -8px 24px rgba(16, 40, 61, 0.11);
		backdrop-filter: blur(12px);
		-webkit-backdrop-filter: blur(12px);
		z-index: 100 !important;
	}

	.aodson-mobile-dock > ul {
		display: grid !important;
		width: 100% !important;
		height: 70px;
		margin: 0 !important;
		padding: 0 4px !important;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		align-items: stretch;
	}

	.aodson-mobile-dock > ul > li {
		display: block !important;
		width: auto !important;
		min-width: 0;
		height: 70px !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.aodson-mobile-dock > ul > li > a {
		position: relative;
		display: flex !important;
		width: 100%;
		height: 70px !important;
		padding: 8px 2px 6px !important;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 5px;
		color: #667987 !important;
		line-height: 1 !important;
		text-decoration: none !important;
		transition: color 160ms ease, background-color 160ms ease;
	}

	.aodson-mobile-dock .aodson-ui-icon {
		display: flex;
		width: 28px;
		height: 26px;
		align-items: center;
		justify-content: center;
		font-size: 24px;
		line-height: 1;
	}

	.aodson-mobile-dock .aodson-mobile-original-icon {
		display: none !important;
	}

	.aodson-mobile-dock > ul > li > a > span {
		display: block;
		max-width: 100%;
		margin: 0 !important;
		font-size: 10px !important;
		font-weight: 600;
		line-height: 1.1 !important;
		letter-spacing: 0;
		overflow: hidden;
		text-align: center;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.aodson-mobile-dock > ul > li.is-current > a {
		color: #087bb8 !important;
	}

	.aodson-mobile-dock > ul > li.is-current > a::before {
		position: absolute;
		top: 0;
		left: 50%;
		width: 26px;
		height: 2px;
		background: #1686c4;
		content: '';
		transform: translateX(-50%);
	}

	.aodson-mobile-dock .aodson-mobile-quote > a {
		color: #143a55 !important;
	}

	.aodson-mobile-dock .aodson-mobile-quote .aodson-ui-icon {
		width: 38px;
		height: 38px;
		margin-top: -14px;
		background: #1686c4;
		border: 3px solid #ffffff;
		border-radius: 6px;
		box-shadow: 0 5px 12px rgba(22, 134, 196, 0.26);
		color: #ffffff;
		font-size: 21px;
	}

	.aodson-mobile-dock .aodson-mobile-quote > a > span {
		margin-top: -1px !important;
	}

	.aodson-mobile-dock a:focus-visible {
		outline: 2px solid #1686c4;
		outline-offset: -3px;
	}

	#ht-ctc-chat {
		right: 12px !important;
		bottom: calc(82px + env(safe-area-inset-bottom)) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aodson-contact-rail *,
	.aodson-mobile-dock * {
		transition-duration: 0.01ms !important;
	}
}
