/* Avive Clinic Online: the patient strip above the header on every page, and the Attend button fixed to the bottom
   of phone screens on the virtual care pages. Loaded on every page once /virtual-care/ is published. */
.avo-bar {
	background: #041e42;
	color: #fff;
	font-size: 14px;
	line-height: 1.3;
}
.avo-bar__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 6px 18px;
	max-width: 1400px;
	margin: 0 auto;
	padding: 8px 20px;
}
.avo-bar__label {
	font-weight: 500;
}
/* "a.avo-bar__link" outranks the site's global link colours. */
.avo-bar a.avo-bar__link {
	color: #fff;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.avo-bar a.avo-bar__link:hover,
.avo-bar a.avo-bar__link:focus-visible {
	color: #00c7b1;
}

/* Virtual care pages: the same links as big buttons, centred. */
.avo-bar--section .avo-bar__inner {
	justify-content: center;
	gap: 8px 12px;
	padding: 10px 20px;
}
.avo-bar--section .avo-bar__label {
	font-size: 16px;
	font-weight: 600;
}
.avo-bar--section a.avo-bar__link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 8px 22px;
	border: 2px solid #fff;
	border-radius: 999px;
	font-size: 16px;
	text-decoration: none;
	transition: background-color 0.15s, color 0.15s;
}
.avo-bar--section a.avo-bar__link:hover,
.avo-bar--section a.avo-bar__link:focus-visible {
	background: #fff;
	color: #041e42;
}
.avo-bar--section a.avo-bar__link--call {
	gap: 8px;
	border-color: transparent;
}
.avo-bar--section a.avo-bar__link--call svg {
	flex: none;
}
.avo-bar--section a.avo-bar__link--attend {
	border-color: #00c7b1;
	background: #00c7b1;
	color: #041e42;
}
.avo-bar--section a.avo-bar__link--attend:hover,
.avo-bar--section a.avo-bar__link--attend:focus-visible {
	border-color: #fff;
	background: #fff;
	color: #041e42;
}

/* Phones: everything centred; on the virtual care pages a big Attend button stays at the bottom of the screen. */
.avo-dock {
	display: none;
}
@media (max-width: 767px) {
	.avo-bar__inner {
		justify-content: center;
		padding: 7px 16px;
		font-size: 13px;
	}
	/* Virtual care pages: just the three buttons (the Attend button at the bottom says what it's for). */
	.avo-bar--section .avo-bar__label {
		display: none;
	}
	.avo-bar--section .avo-bar__inner {
		gap: 6px;
		padding: 8px 10px;
	}
	.avo-bar--section a.avo-bar__link {
		min-height: 40px;
		padding: 6px 12px;
		font-size: 14px;
	}
	.avo-dock,
	.avo-dock:hover,
	.avo-dock:focus-visible {
		display: block;
		position: fixed;
		right: 12px;
		bottom: 12px;
		left: 12px;
		z-index: 9990;
		padding: 16px 20px;
		border-radius: 999px;
		background: #00c7b1;
		box-shadow: 0 4px 16px rgba(4, 30, 66, 0.3);
		color: #041e42;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
	}
	body.avo-has-dock {
		padding-bottom: 84px;
	}
}
