/**
* Fuel Theme
* Version 5.0.12
**/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# WordPress / Gutenberg
# Content Header
# Content
# Sidebar
# Secondary Pages
# Manufacturer Pages
--------------------------------------------------------------*/

:root {
	--block-spacing: 1.5em;
}

@media (min-width: 38.5em) {
	:root {
		--block-spacing: 2em;
	}
}

/*--------------------------------------------------------------
# WordPress / Gutenberg
--------------------------------------------------------------*/
.entry-meta,
.entry-by {
	display: none;
}

.single-post .entry-meta {
	display: block;
	font-size: 0.9em;
}

.pagination {
	margin: 2em 0;
	text-align: center;
}

.page-numbers {
	display: inline-block;
	margin: 0.5em 0.2em;
	border-radius: 0.2em;
	width: 2em;
	overflow: hidden;
	line-height: 2;
	text-align: center;
	color: #fff;
	background: var(--accent-color);
}

.entry-content a.page-numbers {
	text-decoration: none;
}

.entry-content a.page-numbers:hover {
	color: #fff;
	text-decoration: none;
	background: var(--primary-color);
}

.page-numbers.current {
	background: #999;
}

.page-numbers svg {
	vertical-align: top;
	margin-top: 0.5em;
	width: 1em;
	height: 1em;
}

@media (min-width: 68.5em) {
	.pagination {
		text-align: left;
	}
}

@media (min-width: 38.5em) {
	.list-col-2 {
		column-count: 2;
		column-gap: 2em;
		margin-left: 1rem;
		color: #000;
	}
}

.wp-block-file {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: var(--block-spacing) auto;
	border-bottom: 1px solid var(--accent-color);
	padding: 0.5em 0;
	font-size: 0.9em;
}

.wp-block-file a:empty {
	display: none;
}

.wp-block-file+.wp-block-file {
	margin: calc(0em - var(--block-spacing)) auto var(--block-spacing);
}

.wp-block-file a {
	padding: 0.5em;
	text-align: left;
}

.wp-block-file .wp-block-file__button {
	border: 1px solid transparent;
	border-radius: 0.25em;
	line-height: normal;
	text-decoration: none;
	color: #fff;
	background: var(--primary-color);
	width: fit-content;
}

.wp-block-file .wp-block-file__button:hover {
	text-decoration: none;
	color: #fff;
	background: var(--accent-color);
}

@media (min-width: 40.5em) {
	.wp-block-file {
		flex-direction: row;
	}
}

/*--------------------------------------------------------------
# Content Header
--------------------------------------------------------------*/
.main-header {
	padding-top: 13rem;
	padding-bottom: 8rem;
	background: url(../images/header-secondary.webp);
	background-size: cover;
	background-position: top right;
	background-repeat: no-repeat;
	color: #fff;
	margin-top: -11em;
	text-align: center;
}

.main-title {
	color: #fff;
}

@media (min-width: 68.5em) {
	.main-header {
		text-align: left;
		padding-top: 15rem;
		padding-bottom: 3em;
	}
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.entry-content {
	font-size: 0.9em;
	font-size: clamp(0.9em, 0.5em + 1.5vw, 1em);
}

@media (min-width: 68.5em) {
	.entry-content {
		font-size: 1.1em;
		font-size: clamp(0.9em, 0.4em + 1vw, 1em);
	}
}

.entry-sidebar .entry-content,
.entry-no-sidebar .entry-content {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.entry-sidebar .entry-content {
	margin: 0 auto;
	max-width: 42rem;
}

.entry-content> :first-child,
.entry-content>script:first-child+* {
	margin-top: 0;
}

.entry-content> :last-child {
	margin-bottom: 0;
}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	margin: 1.2em 0 0.5em 0;
}

.entry-content h2 {
	position: relative;
	padding-top: 1em;
	text-align: center;
}

.entry-content h2::before {
	content: '';
	width: 1em;
	height: 1em;
	background: url(../images/red-star.svg);
	background-size: cover;
	position: absolute;
	top: 0em;
	left: calc(50% - 0.5em);
}

.entry-content h2.loc-heading {
	text-align: center;
	margin-bottom: 4em;
}

.entry-content h2.loc-heading::before {
	display: none;
}

.entry-content a {
	text-decoration: underline;
	word-break: break-word;
}

.entry-content a:hover {
	text-decoration: underline double;
}

.entry-content .button,
.entry-content .wp-block-button__link,
.entry-content .button:hover,
.entry-content .wp-block-button__link:hover {
	text-decoration: none;
}

.entry-content ul,
.entry-content ol {
	margin-bottom: 1.6em;
	padding-left: 2.4em;
	list-style: initial;
	position: relative;
}

.entry-content li>ul,
.entry-content li>ol {
	margin: 0 0 0 1.2em;
}

.entry-content li {
	margin: 0 0 0.4em;
}

.wp-block-media-text .wp-block-media-text__media {
	position: relative;
}

.wp-block-media-text .wp-block-media-text__media::before {
	content: '';
	width: calc(100% - 2em);
	height: calc(100% - 2em);
	border: 0.05em solid var(--site-white);
	position: absolute;
	top: 1em;
	left: 1em;
	z-index: 1;
}

@media (min-width: 68.5em) {
	.entry-content h2 {
		padding-top: 0;
		text-align: left;
	}

	.entry-content h2::before {
		top: 0.1em;
		left: -1.4em;
	}

	.entry-bio ul:first-of-type::before {
		content: '';
		width: 0.05em;
		height: calc(100% + 2em);
		background: var(--site-red);
		position: absolute;
		top: 1em;
		left: -1.3em;
	}

	.entry-bio ul:first-of-type::after {
		content: '';
		width: 0.5em;
		aspect-ratio: 1/1;
		background-color: var(--site-red);
		transform: rotate(45deg);
		position: absolute;
		top: 0.6em;
		left: -1.55em;
	}
}

/*--------------------------------------------------------------
# Sidebar
--------------------------------------------------------------*/
.entry-sidebar .widget-area {
	margin: 0 auto;
	padding-bottom: 3rem;
	max-width: 20rem;
}

.widget {
	display: block;
	margin: 0 0 2em 0;
}

.widget:last-child {
	margin-bottom: 0;
}

.widget-title {
	margin: 0 0 0.7rem 0;
	font-size: 1.6em;
}

.widget ul {
	margin-left: 2em;
	list-style: initial;
}

.widget li {
	margin-bottom: 0.4em;
}

.sidebar-contact {
	text-align: center;
	position: relative;
}

.sidebar-contact::before,
.sidebar-contact::after {
	content: '';
	width: calc(50% - 2.5em);
	height: 0.05em;
	background-color: var(--site-red);
	position: absolute;
	top: 1.1em;
	left: 1em;
	z-index: 3;
}

.sidebar-contact::after {
	left: unset;
	right: 1em;
}

.gform-body {
	text-align: left;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

.contact-emergency {
	font-weight: bold;
}

.gform_required_legend {
	display: none;
}

.sidebar-contact p {
	font-size: 0.8em;
}

.sidebar-contact p:first-of-type {
	margin-bottom: 0;
}

@media (min-width:68.5em) {
	.entry-sidebar {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}

	.entry-sidebar .entry-content {
		flex: 1 1 auto;
	}

	.entry-sidebar .widget-area {
		flex: 0 0 auto;
		margin-left: 4%;
		padding-top: 3rem;
		width: 18rem;
	}

	.sidebar-wrap {
		background-color: var(--dark-blue);
	}

}

@media (min-width: 68.5em) and (min-height: 38.5em) {
	.sidebar .widget:last-child {
		position: -webkit-sticky;
		position: sticky;
		top: 4.5rem;
	}
}

/*--------------------------------------------------------------
# Secondary Pages
--------------------------------------------------------------*/
/* Bill Pay */
#custrefid {
	border: 0.05em solid var(--site-gray);
	padding: 0.5em;
}

#submit:hover {
	background-color: var(--primary-color);
}

/* Secondary Header */
.header-logo {
	display: block;
	max-width: 26em;
	margin: auto;
	z-index: 1000;
}

/* Overview Header */
.post-123 .entry-title,
.post-2112 .entry-title,
.post-85 .entry-title,
.post-206 .entry-title {
	background: #151749;
	text-align: center;
	padding: 3em 1em;
	min-height: 8em;
}

.post-123 .location-star,
.post-2112 .location-star,
.post-85 .location-star,
.post-206 .location-star {
	max-width: calc(100% - calc(var(--contain-padding) * 2));
	position: absolute;
	margin-top: 1em;
}

.ov-logo {
	color: var(--site-red);
	width: 8em;
	display: block;
	margin: auto;
	position: absolute;
	z-index: 5;
	bottom: 3em;
	left: calc(50% - 4em);
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.thyroid-block {
	margin-top: 3em;
	padding: 1.5em;
	position: relative;
	margin-bottom: 3em;
}

.thyroid-block h2 {
	margin-top: 3em;
	text-align: center;
}

.thyroid-block h2::before {
	display: none;
}

.thyroid-block::before {
	content: '';
	width: 9em;
	aspect-ratio: 435/374;
	background: url('../images/red-corner.svg');
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 3;
}

.thyroid-block .location-star {
	width: 24em;
	left: calc(50% - 11em);
}

.allergy-bottom {
	margin-top: 1.5em;
}

.allergy-bottom h2 {
	text-align: center;
}

.allergy-bottom h2::before {
	display: none;
}

.post-206 .allergy-bottom .location-star {
	position: relative;
}

.allergy-bottom p {
	max-width: 34em;
}

.allergy-bottom p:empty {
	display: none;
}

.allergy-bottom p:nth-of-type(3) {
	text-align: center;
}

.allergy-bottom .phone {
	color: var(--light-blue);
}


@media (min-width:68.5em) {

	.post-123 .main-header,
	.post-2112 .main-header,
	.post-85 .main-header,
	.post-206 .main-header {
		background-position: top right;
	}

	.ov-logo {

		bottom: -1em;
	}

	.thyroid-block::before {
		width: clamp(15em, 24vw, 20em);
	}

	.thyroid-block .location-star {
		width: 28em;
		max-width: 100%;
		left: calc(50% - 14em);
	}
}

.thyroid-block .wp-block-cover__inner-container {
	max-width: 33.5em;
	margin: auto;
}

.red-corner {
	width: fit-content;
	max-width: 20em;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
}

/* About US */
.red-border {
	padding: 1em 0 1em 2em;
	position: relative;
}

.red-border::before {
	content: '';
	width: 0.5em;
	height: 100%;
	background-color: var(--site-red);
	position: absolute;
	top: 0;
	left: 0;
}

@media (min-width:68.5em) {
	.red-border {
		padding-left: 4em;
	}

	.red-border::before {
		left: 2em;
	}

	.red-border::after {
		content: '';
		width: calc(var(--contain-padding) + 5em);
		height: 0.1em;
		background-color: var(--site-red);
		position: absolute;
		top: 50%;
		left: calc(calc(var(--contain-padding) + 3em) * -1);
	}
}

/* Request Appointment */
.request-appt {
	display: flex;
	flex-direction: column;
	padding-top: 10em;
}

.post-22 .request-appt {
	padding-top: unset;
}

.request-appt .wp-block-cover a {
	color: var(--site-white);
}

.request-content {
	max-width: 47.5em;
	margin: auto;
	width: fit-content;
	position: relative;
	z-index: 1;
}

.request-content .wp-block-cover::before {
	content: '';
	width: calc(100% - 3em);
	height: calc(100% - 3em);
	border: 0.15em solid var(--site-white);
	position: absolute;
	top: 1.5em;
	left: 1.5em;
	z-index: -1;
}

.request-content .wp-block-cover::after {
	content: '';
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.request-content img {
	z-index: -2;
}

.request-content p {
	z-index: 2;
}

.request-content strong {
	display: block;
	margin-top: 2em;
}

.request-content .wp-block-cover {
	z-index: 1;
	position: relative;
	padding: 2em;
}

.request-form {
	padding: 0 var(--contain-padding);
}

.request-content p {
	max-width: 35rem;
	margin: auto;
	z-index: 1;
	position: relative;
	color: var(--site-white);
	margin-bottom: 1em;
}

.request-appt p:empty,
.request-appt .gform_title::before {
	display: none;
}

.request-appt .gform_title {
	text-align: center;
	display: none;
}

@media only screen and (min-width: 68.5em) {
	.request-appt {
		flex-direction: row;
	}

	.request-content {
		max-width: unset;
		width: 50%;
		aspect-ratio: 1/1;
		margin: unset;
	}

	.request-content .wp-block-cover {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 2em;
	}

	.request-content p {
		font-size: 1.46em;
		margin-bottom: 1em;
	}

	.request-form {
		padding: unset;
		width: 50%;
	}

	.request-form .gform_wrapper {
		max-width: 21em;
		margin: auto;
	}

	.post-22 .main-header {
		padding-top: 11.4em;
	}
}

/* Benefits of Hearing */
.boha-top {
	max-width: 35em;
	margin: auto;
}

.boha-top h2 {
	text-align: center;
	max-width: 29rem;
	margin: auto;
	margin-bottom: 2rem;
}

.boha-top h2::before {
	display: none;
}

.boha-mid {
	position: relative;
	z-index: 1;
	padding-top: 6em;
	margin-bottom: 6em;
}

.boha-mid::before {
	content: '';
	width: calc(100% + calc(var(--contain-padding) * 2));
	height: 16.5em;
	background: linear-gradient(180deg, #EEE -36.27%, rgba(255, 255, 255, 0.00) 111.64%);
	position: absolute;
	top: 0;
	left: calc(var(--contain-padding) * -1);
	z-index: -1;
}

@media only screen and (min-width: 68.5em) {
	.boha-top {
		margin-bottom: 5em;
	}

	.wp-block-media-text {
		grid-template-columns: 40% 1fr;
		gap: 3.5em;
		margin-bottom: 5em;
	}

	.wp-block-media-text.has-media-on-the-right {
		grid-template-columns: 1fr 42%;
	}

	.entry-no-sidebar .wp-block-media-text__media {
		position: sticky;
		top: 5em;
		align-self: start;
		margin-top: 2em;
		max-width: 25em;
	}

	.wp-block-media-text__content p {
		position: relative;
	}

	.boha-mid .wp-block-media-text__content p::before {
		content: '';
		width: 0.05rem;
		height: calc(100% + 2rem);
		background-color: var(--site-red);
		position: absolute;
		top: 0.7rem;
		left: -1.35rem;
	}

	.boha-mid .wp-block-media-text__content .wp-block-heading::after {
		content: '';
		width: 0.5rem;
		aspect-ratio: 1/1;
		background-color: var(--site-red);
		transform: rotate(45deg);
		position: absolute;
		bottom: -1em;
		left: -1em;
	}

	.boha-mid .wp-block-media-text__content .wp-block-heading:last-of-type:after,
	.boha-mid .wp-block-media-text__content p:last-of-type:before {
		display: none;
	}
}

/* Patient Forms */
@media only screen and (max-width: 30em) {
	.wp-block-file {
		justify-content: center;
		align-items: center;
	}

	.wp-block-file a:first-of-type {
		width: 100%;
	}
}

/* Contact Us */
.entry-content .location-section {
	padding: unset;
}

.entry-content .location-section::before,
.entry-content .location-section::after {
	display: none;
}

/* Bio pages */
.single-bio .entry-wrapper {
	--contain-padding: clamp(9vw, calc(50vw - 35rem), 18rem);
}

.entry-bio .bio {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 3rem;
	container-type: inline-size;
	container-name: bio;
}

.entry-bio .bio-image {
	flex: 0 1 10.5rem;
	text-align: center;
	height: fit-content;
	text-align: left;
}

.entry-bio .bio-image img {
	aspect-ratio: 210/235;
}

.entry-bio .bio-image>* {
	margin-bottom: 0;
}

.entry-bio .bio-title {
	font-size: 1rem;
}

.entry-bio .bio-position {
	margin-top: 0;
	font-size: 0.8rem;
}

.entry-bio .bio-content {
	min-width: 15rem;
	flex: 1 1 calc(100% - 14.5rem);
}

h2.bio-title::before {
	display: none;
}

.vert-align-center {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

/* Meet Us */
.bio-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 3em;
	/* max-width: 31em; */
}

.bio-list-item {
	width: fit-content;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: auto;
	text-align: center;
}

.bio-list-image {
	width: 12.5em;
	margin: auto;
}

.bio-list-image img {
	aspect-ratio: 253 / 285;
}

.bio-list-label {
	font-size: 1.2em;
	font-weight: 500;
}

a.bio-list-item {
	text-decoration: none;
}

@container bio (min-width: 29.5rem) {
	.entry-bio .bio-image {
		position: sticky;
		top: 1rem;
	}
}

@media (min-width: 68.5em) {
	.bio-list-item {
		margin: unset;
		width: calc(50% - 3em);
		margin-top: 0;
		justify-content: start;
	}

	.bio-list-image {
		width: unset;
		margin-top: 0;
		margin-bottom: 0;
	}
}

@media only screen and (min-width: 80em) {
	.entry-bio .bio-image {
		position: sticky;
		top: 4.5rem;
	}
}

/* Single Location page */
.single-location .single-loc-details {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

/* Search Page */
.entry-search .no-results {
	margin: 2rem 0;
	text-align: center;
	color: #cc2d3f;
}

/* 404 Page */
.entry-404 .search-form {
	margin: 2rem 0 0;
}

/* Media Text */
.main .wp-block-media-text .wp-block-media-text__content {
	padding: unset;
	/* padding-left: 2em; */
}

.h3-small h3 {
	font-size: 1.2em;
}

/*--------------------------------------------------------------
# Manufacturer Pages
--------------------------------------------------------------*/
.manufacturer .wp-block-media-text {
    display: flex;
    gap: 2rem;
}

.manufacturer .wp-block-media-text__content {
    width: 60%;
}

@media (min-width: 46.937em) {
    .manufacturer .wp-block-media-text__media img {
        position: sticky;
        top: 5em
    }
}

@media (max-width: 46.875em) {
    .manufacturer .wp-block-media-text {
        flex-direction: column;
    }
    
    .manufacturer .wp-block-media-text__content {
        width: 100%;
    }
}