body, html {width: 100%; height: 100%; padding: 0; margin: 0; font-family: 'Lato', sans-serif; font-weight: 400; font-size: 17px; color: #373737; -webkit-text-size-adjust: 100%;}
body {overflow-x: hidden;}
a {text-decoration: none;}
.clear {clear: both;}
input,textarea,button {outline:none;}
a img {border: none;}
form {padding: 0; margin: 0;}
img {max-width: 100%; height: auto;}
#system-message {
  	display: none !important;
	} 

.content {
    margin: 0 auto;
    text-align: left;
    width: 100%;
    max-width: 1300px;
    padding: 0 15px;
    box-sizing: border-box;
	}

/*Universal Elements*/

.underline {
	display: block;
    width: 75%;
    height: 1.7px;
    background: #fff;
    border: 0.2px solid black;
    border-radius: 123%;
    margin: 0 auto;
	}	

.underline-b {
	display: block;
	width: 100%;
	height: 2px;
	background: #000;
	border: 1px solid white;
	border-radius: 100%;
	}

/*--------------------*/

.table {
    display: table;
    vertical-align: middle;
	}

.table-row {
    display: table-row;
	}

.table-cell {
    display: table-cell;
    vertical-align: middle;
	}

.activeFeedbackField {
    display: inline-block;
    position: relative;
    width:0;
    overflow:hidden;
    }

.activeFeedbackField input{
    position:absolute;
    left:10px;
    }

.activeFeedbackDescription {
    padding-top: 5px;
    margin: 0;
    }

/*Navbar*/
nav {
	position: relative;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9000;
    background: #f8f8f8;
    transition: all 0.3s;
	box-shadow: 3px 3px 3px #00000056;
	}

#homepage nav {
	position: absolute;
	box-shadow: 3px 3px 3px #00000056;
	}

#homepage nav.slide {
	position: relative;
	display: none;
	box-shadow: 3px 3px 3px #00000056;
	}

nav.slide {
	position: fixed;
	display: none;
	box-shadow: 3px 3px 3px #00000056;
	}

.inner-nav.slide.fixed {
  	display: none;
	  box-shadow: 3px 3px 3px #00000056;
	}

nav.slide.fixed , .inner-nav.slide.fixed {
	position: fixed !important;
  	display: block;
	}

nav.slide.fixed, .inner-nav.slide.fixed .content {
	text-align: center;
	}

nav.slide.fixed, .inner-nav.slide.fixed .content .inner-logo {
    display: inline-block;
    vertical-align: middle;
	margin-right: 7%;
	}

nav.slide.fixed, .inner-nav.slide.fixed .content .topmenu {
    display: inline-block;
    vertical-align: middle;
	}

nav .content {
    max-width: 3000px;
    padding: 0;
	}

.inner-logo {
	padding: 5px;
    display: block;
	max-width: 400px;
    margin-top: 5px;
	}

.inner-logo a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	}

.inner-logo a img {
	/* width: unset; */
    width: 120px;
	}

.logo-text-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-direction: column;
	}

.sup-logo {
	color: #48575e;
    font-weight: 600;
    font-size: 30px;
	}

.sub-logo {
	color: #48575e;
	font-weight: 600;
	font-size: 20px;
	}

/*Logo slide down*/

nav.slide.fixed .inner-logo {
	margin-top: 5px;
	max-width: 470px;
	}

nav.slide.fixed, .inner-nav.slide.fixed .content .inner-logo a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: unset;
	}

nav.slide.fixed .logo-text-wrap {
	align-items: start;
	text-align: left;
	}

/*-----------------------*/

.topmenu {
	margin: 0;
    padding: 20px 0;
	}

.topmenu ul {
    padding: 0;
    margin: 0;
    display: flex;
	justify-content: center;
	}

.topmenu ul li {
    list-style: none;
    padding: 0 15px;
    position: relative;
    border-left: 1px solid #48575e;
	}

.deeper.parent {
	margin-right: 10px;	
	}

.topmenu ul li:first-child {
    border-left: none;
	}

.topmenu ul li.parent:after {
    content: '';
    position: absolute;
    top: 10px;
    right: 0;
    width: 0;
    height: 0;
    margin: 0 2px;
    vertical-align: middle;
    border-top: 4px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
	}

.topmenu ul li a , span.nav-header , span.separator {
    text-decoration: none;
    font-size: 18px;
    color: #48575e;
    transition: all 0.3s;
    white-space: nowrap;
	text-transform: uppercase;
	}

.topmenu ul li.active ul li a {
    color: #232323;
	display: block;
	width: 100%;
	}

.topmenu ul li a:hover, .topmenu ul li.active a {
	color: #000000;
	}

.topmenu ul li.active ul li a:hover , .topmenu ul li ul li.active a {
	color: #48575e;
	}

.topmenu ul li ul {
    position: absolute;
    top: 100%;
    left: 0;
    width: 260px;
    display: block;
    background: #f8f8f8;
    max-height: 0;
    overflow-y: hidden;
    transition: all 0.2s;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	}

nav.fixed .topmenu ul li ul {
    background: #fff;
	}

.topmenu ul li:hover ul {
    padding-top: 10px;
    max-height: 3000px;
    overflow-y: auto;
	}

.topmenu ul li ul li {
    display: block;
    padding: 10px 15px;
	border-left: none;
	}

.topmenu ul li ul li:last-child {
    border-bottom: 5px #48575e solid;
	}

/*Submenu*/
.submenu {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    background: #727778;
    padding: 5px 15px;
    border-top: ridge 3px;
    gap: 3%;
	}

/*Top Socials*/
.top-socials {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
	transition: 0.3s;
	}

nav .top-social {
	transition: 0.3s;
	}

nav .top-social:hover {
	transform: scale(1.1);
	}

/*Top Buttons*/
.top-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
	}

.top-button {
    display: inline-block;
	color: #fff !important;
    font-size: 18px;
    font-weight: 600;
    background: #8b0000;
    border: 2px solid #8b0000;
    border-radius: 10px;
    padding: 5px 10px;
    transition: 0.3s;
    text-transform: uppercase;
	}

.top-button:hover {
	color: #8b0000 !important;
	background: #ffffff;
	border: 2px solid #8b0000;
	}

a.top-button.portal {
    background: #1565C0;
    border-color: #1565c0;
    }

.top-button.portal:hover {
	color: #1565C0 !important;
	background: #ffffff;
	border: 2px solid #1565C0;
	}

/*Top Phone*/
.top-phone {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
	}

.tp-position {
    color: #fff;
    font-size: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
	}

.tp-position img {
	transition: 0.3s;
	}

.tp-position:hover img {
	transform: scale(1.3);
	}

.top-phone a {
	color: #fff;
	font-size: 22px;
	}

/*Hamburger*/
.hamburger.hamburger--slider {
	display: none;
	}

/* Slider block*/
.slider-block {
    text-align: center;
    position: relative;
	}

.slide-over-box {
    display: none;
	}

.slider-block .content {
    text-align: center;
	}

.mobile-slide {
    display: none;
	}

.nivo-caption {
    background: rgba(0,0,0,0.7);
    padding: 0;
    opacity: 1;
	}

.theme-pure .nivoSlider {
    margin-bottom: 0;
	}

.maintext-block-serv-wrapper {
	position: absolute;
    top: 20%;
    left: 0;
    width: 100%;
    z-index: 11;
	}

/* .maintext-block-serv {
    display: inline-block;
    padding: 15px;
    background: rgb(249 249 249 / 80%);
    float: left;
    text-align: left;
	} */

.maintext-block-serv {
    display: inline-block;
    padding: 15px;
    background: rgba(4,4,4,0.6);
    float: left;
    text-align: left;
    margin: 20px 0;
	}

/* .maintext-block-serv h2 {
	font-size: 36px;
    color: #8b0000;
    font-weight: 400;
    font-family: inherit;
    margin: 0px 0 10px 0;
    border-bottom: 2px solid gray;
	} */

.maintext-block-serv h2 {
    font-size: 37px;
    color: #fff;
    font-weight: 400;
    font-family: 'Cabin', sans-serif;
    margin: 0px 0 10px 0;
}

.maintext-block-serv ul {
	padding: 0;
    display: inline-block;
    vertical-align: top;
    /* margin: 10px 25px 10px 0; */
    margin: 0;
	}

/* .maintext-block-serv ul:last-child {
	margin: 10px 0px 10px 0;
	} */

.maintext-block-serv ul li {
    display: block;
    list-style: none;
    padding: 5px 0 5px 20px;
    position: relative;
	}

/* .maintext-block-serv ul li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 14px;
    width: 8px;
    height: 8px;
    background: rgb(249 249 249 / 80%);
    border: 2px solid #151515;
	} */

.maintext-block-serv ul li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 15px;
    width: 8px;
    height: 8px;
    background: rgb(249 249 249 / 80%);
    border: none;
	}

.maintext-block-serv ul li a {
    font-size: 22px;
    color: #fff;
    font-weight: 500;
    text-decoration: none;
	}

/* .office-map {
  width: 400px;
  height: 400px;
}

.office-map iframe {
  width: 100%;
  height: 100%;
} */

/* .maintext-block-serv ul li a {
    font-size: 22px;
    color: #8b0000;
    font-weight: 500;
    text-decoration: none;
	} */

.maintext-block-serv ul li a:hover {
    text-decoration: underline;
	}

.slider-tagline {
    display: block;
    position: absolute;
    bottom: 0;
    background: #f9f9f9;
    padding: 25px;
    font-size: 33px;
    width: 100%;
    color: #8b0000;
	box-sizing: border-box;
	}

.slider-tagline p {
	padding: 0;
	margin: 0;
	}

/*About Us Block*/

.about-block {
  position: relative;
  background: url(../../../images/welcome-background.jpg) no-repeat center center;
  background-size: cover;
  color: #fff;
  padding: 60px 25px 50px;
  overflow: hidden;
}

.about-block::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6); /* adjust opacity here */
  z-index: 1;
}

.about-block > * {
  position: relative;
  z-index: 2;
}

.about-block-title {
	text-align: center;
	font-size: 34px;
	font-weight: 400;
	}

.about-block-wrap {
    max-width: 1150px;
    margin: 0 auto;
    font-size: 23px;
    padding-bottom: 80px;
	}

.white-logo {
	float: left;
	margin: 0 25px 0 0;
	}

.about-us-button {
	color: #dd592b;
	background: #fff;
	padding: 6px 25px;
	border-radius: 10px;
	border: 2px solid #fff;
	}

.about-us-button:hover {
	color: #dd592b;
	background: #fff;
	padding: 10px 25px;
	border-radius: 10px;
	border: 2px solid #dd592b;
	}


/* Services block*/

img.services-background-mobile {
    display: none;
	}

.front-services {
    background: #eaeef0;
    box-sizing: border-box;
    width: 100%;
    position: relative;
    bottom: 0;
    display: block;
	}	

.fs-cont {
	display: flex;
	justify-content: space-around;
	align-items: center;
	width: 100%;
    padding: 15px;
    box-sizing: border-box;
	max-width: 1400px;
	margin: 0 auto;
	}

.front-service {
	max-width: 100px;
	position: relative;
	cursor: pointer;
	}

.front-service img {
    height: 100px;
	width: auto;
    /* filter: invert(14%) sepia(42%) saturate(1200%) hue-rotate(165deg) brightness(80%) contrast(105%); */
    filter: brightness(0) saturate(100%) invert(19%) sepia(0%) saturate(0%) brightness(55%) contrast(100%);
	}

.front-service:hover img {
	visibility: hidden;
	}

.front-service p {
	width: 100px;
    color: #000;
    font-size: 26px;
    font-weight: 900;
    text-align: center;
    font-family: 'Lato' , sans-serif;
    position: absolute;
	visibility: hidden;
	top: 50%;
    left: 50%;
    margin: 0;
    transform: translate(-50%, -50%);

	}

.front-service:hover p {
	visibility: visible;
	}

/*Doctors block*/

.doctors-title h2 {
	text-align: center;
    margin: 50px auto;
    font-size: 38px;
	}

.doctors-title h2 p {
	margin: 0;
	padding: 0;
	}

.doctors-wrap {
	display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 25px;
	}

.doctor-box {
    clear: both;
    max-width: 630px;
	}

.doctor-box-inner {
	padding: 25px;
	display: block;
	}

.doctor-box-inner p {
	color: #000;			
	}

.doctor-box-inner img {
	border-radius: 50%;
	border: 2px solid #8b0000;
	float: left;
	margin-right: 25px;
    max-width: 300px;
	}

.doctor-name {
    background: #8b0000;
    font-size: 22px;
    font-weight: 600;
    padding: 5px 20px;
    border-radius: 10px;
    max-width: 400px;
    width: 100%;
    margin: 25px 0px auto 150px;
    display: block;
	}

.doctor-name p {
	color: #fff;
	padding: 0;
	margin: 0;
	}

/*Locations block*/
.locations-block {
	display: flex;
    justify-content: space-evenly;
    /* align-items: center; */
    flex-wrap: wrap;
	background: #ebebeb;
    padding: 50px 0;
	gap: 25px;
  
    align-items: stretch;
	}

.loc-box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	border-radius: 20px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
	}

.office-map {
  max-width: 420px;        /* closer to card width */
  width: 100%;
  aspect-ratio: 1 / 1;    /* square map like original */
  background: #fff;
  border-radius: 20px;    /* match card rounding */
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  overflow: hidden;
  margin-top: 10px; 
}

.office-map iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.upper-image {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #8b0000;
	padding-top: 20px;
	}

.location-image-wrap {
    /*background: #d9d9d9;
    border: 5px solid #fff;
    height: 150px;
    width: 340px;
    border-radius: 20px;
    margin-bottom: -40px;
    z-index: 1; */
    background: none;
    border: 5px solid #fff;
    height: auto;
    width: auto;
    border-radius: 20px;
    margin-bottom: -40px;
    z-index: 1;
    overflow: hidden;
    box-sizing: border-box;
    display: flex;
	}

.loc-info {
    background: #ffffff;
    box-sizing: border-box;
    white-space: nowrap;
    width: 390px;
    padding: 60px 0 30px;
	}

.loc-box h2 {
	color: #8b0000;
    font-size: 32px;
    margin: 0px 0 0px 0;
    text-align: center;
    font-weight: 500;
	}

.loc-box .address {
    font-size: 20px;
    margin: 0px 0 30px 0;
    color: #000000;
    text-align: center;
	}

.loc-box .phone {
    font-size: 26px;
    font-weight: 500;
    text-align: center;
    color: rgb(0, 0, 0);
    margin-top: 20px;
	}

.loc-box .shedule {
    font-size: 20px;
    color: #000000;
    font-weight: 500;
    text-align: left;
    max-width: 225px;
    margin: 0 auto 0px;
	}

.loc-box .shedule .table-cell {width: 120px;}

.loc-box .day {
    padding-right: 10px;
	}

.loc-box .btn {
    text-align: center;
    margin: 30px auto 0 auto;
    padding: 0;
    border-radius: 10px;
	}
	
.loc-info .btn {
	max-width: 230px;
	}

.loc-btn-wrap {
    display: block;
    text-align: center;
    padding: 25px 15px 0;
	}

.loc-btn {
    color: #fff;
    text-transform: uppercase;
    background: #8b0000;
    border: 2px solid #8b0000;
    border-radius: 6px;
    font-size: 18px;
    font-weight: 400;
    padding: 10px 50px;
    display: inline-block;
    transition: 0.3s ease-in-out;
	}

.loc-btn:hover {
	background: #fff;
	color: #8b0000;
	}

.orange-logo {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	}

.orange-sub-text {
	color: #8b0000;
	font-weight: 600;
	font-size: 30px;
	max-width: 236px;
	text-align: left;
	}

.red-sub-text {
	color: #8b0000;
	font-weight: 600;
	font-size: 30px;
	max-width: 236px;
	text-align: left;
	}

.black-sub-text {
	color: #000;
	font-weight: 600;
	font-size: 30px;
	max-width: 236px;
	text-align: left;
	}

/*Blogs block*/
.blogs-block {
	padding: 25px 0;
	text-align: center;
	background-size: cover;
  	background-position: center;
    background-repeat: no-repeat;
	}

.blogs-block .content {
    text-align: center;
    max-width: 1400px;
	}

.blogs-block h2 {
	font-size: 48px;
	color: #151c15;
	font-weight: 300;
	text-align: left;
	display: block;
	margin: 10px 0;
	}

.blogs-list ul {
    display: inline-block;
    padding: 0;
    margin: 0 auto;
    text-align: left;
	}

.blogs-list ul li {
    list-style: none;
    display: block;
    padding: 8px 0 8px 15px;
    position: relative;
	}

.blogs-list ul li::before {
    /* content: '•'; */
  	content: '\2022';
    position: absolute;
    left: 0;
    top: 10px;
    color: #fff;
	}

.blogs-list ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 22px;
	}

.blogs-list ul li a:hover {
    text-decoration: underline;
	}

.blogs-block .btn {
    margin-top: 30px;
	}

/*Footer*/
footer {
    background: #f2f2f2;
	border-top: ridge 3px;
	}

footer .content {
	text-align: center;
	}

.logo-footer {
	display: inline-block;
	vertical-align: top;
	padding: 30px;
	max-width: 500px;
	}

.logo-footer p {
    margin: 15px auto 0;
    font-size: 18px;
	}

.quick-links-block {
	display: inline-block;
	vertical-align: top;
	padding: 30px;
	text-align: left;
	}

footer h4 {
    font-size: 18px;
    font-weight: 400;
    color: #141b14;
    margin-top: 0;
    padding-top: 0;
    text-transform: uppercase;
	}

.quick-links-block ul {
	padding: 0;
	margin: 0;
	}

.quick-links-block ul li {
	display: block;
	list-style: none;
	padding: 2px 0;
	color: #48575e;
	font-size: 18px;
	text-transform: uppercase;
	}

.quick-links-block ul li a , .quick-links-block ul li.a {
    color: #48575e;
    font-size: 18px;
    line-height: 25px;
    text-decoration: none;
    text-transform: uppercase;
	}

.quick-links-block ul li a:hover {
	text-decoration: underline;
	}

.quick-links-block ul li ul {
	margin: 5px 0 0 5px;
	}

.bottom-loc-block {
	display: inline-block;
	vertical-align: top;
	padding: 30px 0 30px 30px;
	text-align: left;
	color: #48575e;
	font-size: 18px;
	line-height: 25px;
	}

.offices-block {
    display: flex;
    flex-direction: column;
	}
	
.office {
	margin-bottom: 10px;
	}

.office p {
	margin: 0;
	padding: 0;
	color: #151515;
	}

.office span {
    display: block;
	}

.copy-left, .copy-right {
	text-align: left;
	float: left;
	color: #6e6d6d;
	font-size: 14px;
	padding: 30px;
	}

.copy-left a, .copy-right a {
	color: #6e6d6d;
	text-decoration: none;
	}

.copy-left a:hover, .copy-right a:hover {
	text-decoration: underline;
	}

.copy-right {
	text-align: right;
	float: right;
	}

.scroll-to-top {
	position: fixed;
	bottom: 72px;
	left: 20px;
	z-index: 8999;
	opacity: 1;
	transition: all 0.3s;
	display: none;
    cursor: pointer;
	}

.scroll-to-top.active {
	display: block;
	}

.scroll-to-top:hover {
	opacity: 0.8;
	}

.rabutton {
	max-width: 350px;
	position: fixed;
	right: 20px;
	bottom: 80px;
	z-index: 99;
	}

.rabutton .wrap {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	}
		
.rabutton .buttonrs {
	min-width: 255px;
	min-height: 45px;
	font-size: 18px;
	font-family: 'Lato',sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.3px;
	color: #fff;
	background: #8b0000;
	border: none;
	border-radius: 3px;
	box-shadow: 12px 12px 24px rgb(25 54 78 / 22%);
	transition: all 0.3s ease-in-out 0s;
	cursor: pointer;
	outline: none;
	position: relative;
	padding: 10px 20px;
	}
	
.rabutton .buttonrs::before {
	content: '';
	border-radius: 13px;
	min-width: calc(250px + 28px);
	min-height: calc(40px + 4px);
	border: 4px solid #8b0000;
	box-shadow: 0 0 60px rgb(195 195 195 / 64%);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	transition: all .3s ease-in-out 0s;
	}
		
.rabutton .buttonrs:hover, .buttonrs:focus {
	color: #8b0000;
	transform: translateY(-6px);
	background: #fff;
	}
		
.rabutton .buttonrs:hover::before, .rabutton .buttonrs:focus::before {
	opacity: 1;
	}
	
.rabutton .buttonrs::after {
	content: '';
	width: 30px; height: 30px;
	border-radius: 100%;
	border: 6px solid #cccccc;
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	animation: ring 1.5s infinite;
	}
		
.rabutton .buttonsr:hover::after, .buttonrs:focus::after {
	animation: none;
	display: none;
	}
		
@keyframes ring {
	0% {
		width: 30px;
		height: 30px;
		opacity: 1;
	}
	100% {
		width: 200px;
		height: 200px;
		opacity: 0;
	}
	}

/*Joomla corrections*/
.homepage .content.h {
	display: none;
	}

/*Inner pages*/
tr.rsform-block.rsform-block-ref {
    vertical-align: text-bottom;
    }

.inner-pages {
	padding-bottom: 30px;
	}

.inner-pages a {
    color: #8b0000;
	}

.inner-pages img {
	max-width: 100% !important;
	height: auto !important;
	}

.inner-pages .page-header h2 {
	font-size: 44px;
    color: #48575e;
	text-align: center;
	font-weight: 400;
	position: relative;
	margin: 0 0 20px 0;
	padding: 15px 0 20px 0;
	}

.inner-pages .page-header h2::after {
	content: '';
	height: 5px;
	width: 100px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -50px;
	background: #8b0000;
	}

.inner-pages .doctor {
	width: 223px;
	float: right;
	margin: 0px 0 10px 10px;
	text-align: center;
	padding: 3px;
	color: #586064;
	font-weight: 700;
	}

.inner-pages .doctor img {
	width: 100%;
	margin-bottom: 10px;
	height: auto;
	}

/*Rate US*/

.inner-wrap {
    padding: 50px 2% 100px;
    text-align: center;
    }

.inner-wrap h2 {
    font-size: 44px;
    margin: 0 auto;
    font-weight: 500;
    }

.inner-wrap h5 {
    margin: 25px auto;
    }

.google-review {
    margin-top: 60px;
    }


.google-review img:hover {
    transform: scale(1.02);
    transition: all 300ms ease;
    }

/*Rate Us --- END*/

/* How Are We Doing? */
    
.thumbs-wrap {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0 2% 100px;
    }

.thumbs-wrap .item {
    margin: 0 20px;
    max-width: 300px;
    }

.thumbs-wrap .item:hover {
    transform: scale(1.02);
    transition: all 300ms ease;
    }

.thumbs-wrap .item img {
    width: 100%;
	height: auto;
    }

.thumbs-wrap .item span {
    font-size: 23px;
    margin-bottom: 20px;
    display: block;
    font-weight: 600;
    }

/* How Are We Doing? --- END */

/*K2*/
div.latestItemsCategory {
	background: transparent;
	border: none;
	border-radius: 4px;
	margin: 0;
	padding: 0;
	}

div.latestItemsCategory h2 {
	font-size: 44px;
	color: #48575e;
	text-align: center;
	font-weight: 400;
	position: relative;
	margin: 0 0 20px 0;
	padding: 15px 0 20px 0;
	}

div.latestItemsCategory h2 a {
	color: #586064;
	}

div.latestItemsCategory h2::after {
	content: '';
	height: 5px;
	width: 100px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -50px;
	background: #8b0000;
	}

h2.latestItemTitle a {
	color: #48575e;
	}

#k2Container.latestView {
	padding-top: 0;
	}

#k2Container {
	padding-top: 40px;
	}

div.itemToolbar {
	display: none;
	}

div.k2LatestCommentsBlock ul, div.k2TopCommentersBlock ul, div.k2ItemsBlock ul, div.k2LoginBlock ul, div.k2UserBlock ul.k2UserBlockActions, div.k2UserBlock ul.k2UserBlockRenderedMenu, div.k2ArchivesBlock ul, div.k2AuthorsListBlock ul, div.k2CategoriesListBlock ul, div.k2UsersBlock ul {
	padding: 10px 20px;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
	}

div.k2ArchivesBlock ul {
  	flex-direction: column;
  	gap: 0px;
  	align-items: flex-start;
	}

div.k2LatestCommentsBlock ul li, div.k2TopCommentersBlock ul li, div.k2ItemsBlock ul li, div.k2LoginBlock ul li, div.k2ArchivesBlock ul li, div.k2AuthorsListBlock ul li, div.k2CategoriesListBlock ul li, div.k2UsersBlock ul li {
    margin: 0;
    padding: 5px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    flex-direction: row-reverse;
	}

div.k2ItemsBlock ul li a.moduleItemTitle {
    color: #48575e;
    font-style: italic;
    font-family: revert;
	}

div.k2ItemsBlock ul li div.moduleItemIntrotext {
	padding: 4px 0;
    display: flex;
    gap: 15px;
    justify-content: space-between;
    width: 400px;
    color: #868686;
	}

div.k2ItemsBlock ul li div.moduleItemIntrotext a.moduleItemImage img {
	float: right;
	margin: 2px 0 4px 4px;
	padding: 0;
	width: auto;
	}

.clr {
	clear: both;
	height: 0;
	line-height: 0;
	display: none;
	float: none;
	padding: 0;
	margin: 0;
	border: none;
	}

.clearList {
	display: none !important;
	}

#second {
	margin: 0;
	width: 100%;
	float: left;
	margin-top: 10px;
	}

#one {
	float: left;
	width: 53%;
	padding-right: 2%;
	}

#two {
	width: 45%;
	float: right;
	margin-bottom: 20px;
	}

#address {
	float: left;
	width: 45%;
	}

#week {
	float: left;
	width: 105px;
	}

#hours {
	float: left;
	width: 150px;
	}

#offices {
	margin: 0;
	width: 100%;
	float: left;
	}

#offices.images {
	margin-top: 23px;
	text-align: left;
	}

#offices.images img {
	/* margin: 5px; */
	max-width: 100;
	height: auto;
	}

#map {
	margin: 20px 0;
	float: left;
	width: 100%;
    position: relative;
    aspect-ratio: 1 / 1;
	}

/* #map iframe {
  width: 100%;
  height: 100%;
  border: 0;
} */

.vid_container {
	display: flex;
    justify-content: center;
    margin: 0 auto 35px;
    flex-wrap: wrap;
  	max-width: 840px;
    }

.vid {
    background: #000000;
    width: 100%;
    }

#osmap.osmap-sitemap .even {
	padding: 2px 0;
	}

body.rsform h1 , body.sitemap h1 {
	font-size: 44px;
	color: #48575e;
	text-align: center;
	font-weight: 400;
	position: relative;
	margin: 0 0 20px 0;
	padding: 15px 0 20px 0;
	}

body.rsform h1::after , body.sitemap h1::after {
	content: '';
	height: 5px;
	width: 100px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -50px;
	background: #8b0000;
	}

.formTableLayout {
	margin: 0 auto;
	}

.formTableLayout input#Send, .formTableLayout input#submit, .formTableLayout button#submit {
    background: #8b0000;
	color: #fff;
    border: 2px solid #8b0000;
    padding: 5px 10px;
    border-radius: 10px;
	font-size: 18px;
	font-weight: 600;
	font-family: 'Lato', sans-serif;
	border: 2px solid transparent;
	text-transform: uppercase;
    transition: 0.3s;
	}

.formTableLayout input#Send:hover, .formTableLayout input#submit:hover, .formTableLayout button#submit:hover {
	background: #fff;
	color: #8b0000;
	border-color: #fff;
	border: 2px solid;
	cursor: pointer;
	}

.formTableLayout tr.rsform-block>td {
	padding: 5px;
	font-weight: 600;
	}

input, textarea, button , select {
	outline: none;
	padding: 4px;
	}

/*Joomla content*/
body#homepage .content.h {display: none;}

.content.full {
	flex-wrap: wrap;
    display: flex;
	}

.divContent {
	flex: 0 0 80%;
	/*max-width: 1000px;
	float: left;*/
	}

.divRight {
	flex: 0 0 20%;
	/*max-width: 300px;
	float: right;*/
	}

.divRight .moduletable {
	margin-top: 25px;
	padding-left: 40px;
	}

.divRight .moduletable ul {
	padding: 0px 4px !important;
	}

.divRight .moduletable ul li {
	padding: 5px 0 5px 3px !important;
	}

body#bfa #k2Container {
    padding-top: 0;
	}

.latestItemsCategory {
	float: none;
    width: 100%;
	}

div.genericItemReadMore {
    display: none !important;
	}

div.k2ArchivesBlock ul li a {
	color: #074075;
	}

.video-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin: 25px auto;
	}
	
.video-item {
	max-width: 560px;
	width: 100%;
	text-align: center;
	}

.video-item video {
	background: #000000;
	width: 100%;
	height: auto;
	}

@media only screen and (max-width: 1650px) {
/*Slider overlay*/
.maintext-block-serv-wrapper {
	top: 17%;
	}

footer {
	padding-bottom: 140px;
	}
}

@media only screen and (max-width: 1400px) {
/*Slider overlay*/
.maintext-block-serv-wrapper {
	top: 15%;
	}

.maintext-block-serv h2 {
	font-size: 30px;
	}

.maintext-block-serv h2 {
    font-size: 28px;
	}

.maintext-block-serv ul li {
    padding: 4px 0 4px 15px;
	}

.maintext-block-serv ul li a {
	font-size: 18px;
	}

.maintext-block-serv ul li a {
	font-size: 20px;
	}

.maintext-block-serv ul li:before {
    top: 11px;
    width: 6px;
    height: 6px;
	}

.slider-tagline {
	padding: 15px;
	font-size: 25px;
	}
}

@media only screen and (max-width: 1255px) {
/*Header*/
nav.slide.fixed, .inner-nav.slide.fixed .content .inner-logo {
    margin-right: 0%;
	}

.doctors-wrap {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 25px;
	}

/*Submenu*/
.top-phone {
    width: 100%;
    order: 1;
	}

.top-socials {
	order: 2;
	}

.top-buttons {
	order: 2;
	}
}

@media only screen and (max-width: 1215px) {
/*Services Block*/
.fssvg {
    width: 80px;
	}

.front-service p {
	width: 80px;
	font-size: 16px;
	}

/*Doctors Block*/
.doc-info-wrap {
    flex-wrap: wrap;
	}

.doctors-box .doctor {
	padding: 30px 0 0 0;
	}

.doc-b-info {
	max-width: 100%;
	padding-top: 0px;
	}

/*Office Page*/	
#address {
	width: 100%;
	}

#week {
	margin: 20px 0 0;
	}

#hours {
	float: left;
	margin: 20px 0 0;
	}

#map iframe {
    height: 533px;
    }
}

@media only screen and (max-width: 1170px) {
.sup-logo {
	font-size: 23px;
	}

.sub-logo {
	font-size: 16px;
	}

.topmenu ul li.parent:after {
	content: '';
	position: absolute;
	top: 10px;
	right: -5px;
	width: 0;
	height: 0;
	margin: 0 2px;
	vertical-align: middle;
	border-top: 4px solid;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	}

nav.slide.fixed .inner-logo {
	margin-top: 5px;
	max-width: 380px;
	}


nav.slide.fixed .topmenu ul li {
		padding: 0 10px;
		}

nav.slide.fixed .topmenu ul li a, span.nav-header, span.separator {
	font-size: 16px;
	}

  .locations-block {
    flex-direction: column;
    align-items: center;
  }

  #office-map {
    max-width: 100%;
  }

}

@media only screen and (max-width: 1150px) {
/*Slider Overlay*/
.maintext-block-serv-wrapper {
	top: 12%;
	}
}

@media only screen and (max-width: 1080px) {
/*Footer */
.logo-footer {
	display: block;
	margin: 0 auto;
	}
  
/*sidebar*/
	
.divContent {
	flex: 0 0 70%;
	}
	
.divRight {
    flex: 0 0 30%;
	}
  
/*Rate Us*/

.inner-wrap {
    padding: 30px 2% 60px;
    }

.inner-wrap h2 {
    font-size: 32px;
    }

.google-review img {
    width: 300px !important;
	height: auto !important;
    }

/*Rate Us -- END*/
  
}

@media only screen and (max-width: 1000px) {
/*Header*/
.inner-logo {
    max-width: 300px;
	}

.topmenu ul li {
    padding: 0 10px;
	}

.topmenu ul li a, span.nav-header, span.separator {
    font-size: 16px;
	}

/*Submenu*/  
.tp-position {
    font-size: 18px;
	}

.top-phone a {
    font-size: 18px;
	}

.top-button {
	font-size: 16px;
	}

/*Slider Overlay*/
.maintext-block-serv-wrapper {
    top: 40px;
	}

.maintext-block-serv h2 {
    font-size: 19px;
    }

.maintext-block-serv ul li {
    padding: 3px 0 3px 15px;
    }
  
.maintext-block-serv ul li a {
    font-size: 15px;
    }

.maintext-block-serv ul li:before {
    top: 11px;
    }
  
.slider-tagline {
	padding: 15px;
	font-size: 18px;
	}
}


@media only screen and (max-width: 870px) {
/*Navbar*/
.hamburger {
	display: inline-block;
	position: relative;
	z-index: 9002;
	margin: 17px;
	}

.topmenu {
	position: fixed;
	z-index: 9001;
	top: -150%;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	background: #fff;
	transition: all 0.3s;
	}

.topmenu.active {
	top: 0;
	}

.topmenu ul {
	display: block;
	padding: 20px 15px 15px 15px;
	}

.topmenu ul li {
	display: block;
	padding: 5px;
	border-left: none;
	}

.topmenu ul li.parent:after {
	display: none;
	}

.topmenu ul li a , span.nav-header , span.separator {
	font-size: 15px;
	}

.topmenu ul li ul {
	position: relative;
	top: 0;
	left: 0;
	width: auto;
	display: block;
	background: transparent;
	max-height: 3000px;
	overflow-y: visible;
	padding: 5px 0 0 0;
	box-shadow: unset;
	}

.topmenu ul li ul li:last-child {
	border-bottom: unset;
	}

.topmenu ul li ul li {
	padding: 5px 10px;
	}

nav.fixed .topmenu ul li ul {
	background: transparent;
	}

.topmenu ul li:hover ul {
	overflow-y: visible;
	padding: 5px 0 0 0;
	}

.hamburger.hamburger--slider {
	display: block;
	position: absolute;
	top: 6px;
	right: 25px;
	}

nav.slide.fixed .hamburger.hamburger--slider {
	top: 0px;
	}
	
.hamburger-box {
	margin-top: 15px;
	}

table.pe td {
	display: block;
	}

table.pe ul {
	margin: 0;
	}

.white-logo {
	float: none;
	margin: 0 auto;
	display: block;
	}

  .content .content-top {
    justify-content: start !important;
  }
}
@media only screen and (max-width: 830px) {
.maintext-block h3 {
	font-size: 14px;
	}

.copy-left, .copy-right {
	text-align: center;
	float: left;
	font-size: 14px;
	padding: 0px;
	width: 100%;
	}
	
.copy-right p {
	margin-top: 0;
	}

#map iframe {
    height: 505px;
    }
}

@media only screen and (max-width: 800px) {
/*Slider Overlay*/
.slider-block {
    background: #8b0000;
	}

.maintext-block-serv {
    float: none;
    margin: 20px auto;
	}

.maintext-block-serv-wrapper {
    top: 0;
    position: relative;
    margin: 0 auto;
    max-width: 100%;
	}

.maintext-block-serv h2 {
    font-size: 20px;
	}

.maintext-block-serv ul li a {
    font-size: 15px;
	}
  
.slider-tagline {
	display: none;
	}
  
/* How Are We Doing? */
.thumbs-wrap .item {
    max-width: 35%;
    margin: 0 10px 20px 10px;
    }

.thumbs-wrap .item span {
    font-size: 18px;
    }

/* How Are We Doing? --- END */
  
}

@media only screen and (max-width: 767px) {
.locations-block {
    grid-template-columns: 1fr;
    }
  
/*Footer*/
footer {
	padding-bottom: 80px;
	}

.copy-left, .copy-right {
	float: left;
	font-size: 12px;
    }

footer h4 {
	font-size: 14px;
	}

.quick-links-block ul li ul {
	margin: 3px 0 0 5px;
	}

.quick-links-block ul li , .quick-links-block ul li a , .quick-links-block ul li.a {
	font-size: 14px;
	line-height: 18px;
	}

.bottom-loc-block {
	font-size: 14px;
	line-height: 18px;
	}

.scroll-to-top {
	width: 45px;
	left: 15px;
	bottom: 15px;
	}

.rabutton {
	max-width: 250px;
	bottom: 15px;
	}

.rabutton .buttonrs {
	min-width: 250px;
	font-size: 15px;
	}

.rabutton .buttonrs::before {
	min-width: calc(234px + 16px);
	min-height: calc(36px + 9px);
	}

/*Inner pages*/
.inner-pages .page-header h2 , body.rsform h1 , body.sitemap h1 , .latestItemsCategory h2 {
	font-size: 28px;
	}
  
/*sidebar*/
	
.divContent {
	flex: 0 0 70%;
	}
	
.divRight {
    flex: 0 0 30%;
	}

.about-block {
	/* color: #000; */
	padding: 5px 25px;
	}

.about-block-title {
	text-align: center;
	font-size: 28px;
	font-weight: 400;
	}

.about-block-wrap {
	max-width: 1150px;
	margin: 0 auto;
	font-size: 18px;
	padding-bottom: 40px;
	}
}

@media only screen and (max-width: 760px) {
/*Services Block*/
.services-block {
    background: url(../images/services-background-mobile.jpg) no-repeat center;
    background-size: cover;
    position: relative;
	}

/*Office Inner Page*/
#one {
	width: 100%;
	padding-right: 0px;
	}

#two {
	width: 100%;
	}

#map iframe {
    height: 450px;
    }
}

@media only screen and (max-width: 730px) {
img.pe , img.se , img.np {
	float: none !important;
	margin: 0 0 10px 0 !important;
	max-width: 100%;
	height: auto;
	}

tbody#rsform_3_page_0 td , tbody#rsform_4_page_0 td {
	display: block;
	}

textarea#Message , tbody#rsform_4_page_0 textarea {
	width: 90%;
	display: block;
	}
}

@media only screen and (max-width: 720px) {
/*Submenu*/
.top-phone {
    flex-wrap: wrap;
	gap: 8px;
	}

nav.slide.fixed, .inner-nav.slide.fixed .submenu .top-socials {
	display: none;
	}

nav.slide.fixed, .inner-nav.slide.fixed .submenu .top-phone {
	display: none;
	}

/*Services Block*/
.services-block {
    background-repeat: no-repeat;
    background-position: unsey;
  	background: #000;
    background-size: contain;
    background-image: none;
    height: unset;
	}
  
img.services-background-mobile {
    display: block;
    max-width: 100%;
    height: auto;
	}

.fs-cont {
    flex-wrap: wrap;
    gap: 10px;
	}
}


@media only screen and (max-width: 640px) {
.doctor-box {
	clear: both;
	max-width: 320px;
	}

.doctor-box-inner {
	padding: 10px;
	display: block;
	text-align: center;
	}

.doctor-box-inner img {
	display: block;
	border-radius: 50%;
	border: 2px solid #8b0000;
	float: none;
    margin: 0 auto;
	}

.doctor-name {
	background: #8b0000;
	font-size: 18px;
	font-weight: 600;
	padding: 5px 20px;
	border-radius: 10px;
	max-width: 220px;
	width: 100%;
	margin: 10px auto;
	display: block;
	text-align: center;
	}

}

@media only screen and (max-width: 590px) {
/*sidebar*/
	
.divContent , .divRight {
	flex: 0 0 100%;
	}
	
.divRight .moduletable {
    padding-left: 5px;
	margin-bottom: 60px;
	}
}

@media only screen and (max-width: 550px) {

nav.slide.fixed .inner-logo {
	max-width: 240px;
	margin: 0 auto 0 0;
	width: 100%;
	display: block !important;
    }

/*Slider Overlay*/
.maintext-block-serv-wrapper {
    max-width: 330px;
	}

.maintext-block-serv h2 {
    font-size: 20px;
	}

.maintext-block-serv ul {
    padding: 0;
    display: block;
    margin: 0;
	}

.maintext-block-serv ul:last-child {
	margin: 0;
	}

/*Services Block*/

.front-services {
    background: #eaeef0;
  	position: relative;
  	}
  
.front-service {
	max-width: 63px;
	position: relative;
	cursor: pointer;
	}

.front-service p {
	width: 63px;
	font-size: 14px;
	}

.fssvg {
	width: 63px;
	}
  
tbody#rsform_5_page_0 td {
	display: block;
	}

  /* .office-map {
     width: 300px;
     height: 300px;
   }

   .office-map iframe {
     width: 100%;
     height: 100%;
   } */

}

@media only screen and (max-width: 500px) {
/*Slider Overlay*/
.maintext-block-serv-wrapper {
    max-width: 280px;
    margin: 0 auto;
	}

.maintext-block-serv h2 {
	font-size: 16px;
	}

.maintext-block-serv ul li a {
	font-size: 15px;
	}

/*Footer*/
.logo-footer {
    max-width: 250px;
    padding: 20px;
	}	

/*Blog Block*/
div.k2ItemsBlock ul li div.moduleItemIntrotext {
    padding: 4px 0;
    display: flex;
    gap: 15px;
    justify-content: space-between;
    width: 100%;
    color: #868686;
	}

div.k2ItemsBlock ul li div.moduleItemIntrotext {
	padding: 4px 0;
	display: flex;
	gap: 15px;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 100%;
	color: #868686;
	}
}

@media only screen and (max-width: 470px) {

.inner-logo {
	max-width: 240px;
	margin: 0 auto 0 0;
    }

.hamburger-box {
	margin-top: 0px;
    }

nav.slide.fixed {
    padding: 0px;
	}

.inner-nav.slide.fixed .submenu {
    padding: 7px 5px;
	box-sizing: border-box;
	}
}

@media only screen and (max-width: 430px) {

.locations-block {
	padding: 50px 25px;
	}

.location-image-wrap {
	/* height: 120px; */
	width: 250px;
	margin-bottom: -40px;
	}

.loc-info {
	width: 300px;
	}

.loc-box .address {
	font-size: 18px;
	}

.loc-box .shedule {
	font-size: 18px;
	max-width: 205px;
	}

.loc-box h2 {
	font-size: 27px;
	}


}

@media only screen and (max-width: 380px) {  
.maintext-block-serv-wrapper {
    }
}

/* Make the header a flex container */
.content .content-top {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
}

/* Move menu to the left */
.content-top .topmenu {
  order: 1;
}

/* Move logo to the right */
.content-top .inner-logo {
  margin-right: 7%;
  order: 2;
}