@keyframes animatedBackground {
	from { background-position: 0 0; }
	to { background-position: 100% 0; }
}
body
{
	box-sizing:border-box;
	margin:0px;
	padding:0px;
}
.mce-content-body p, .mce-content-body li
{
	font-size:1.9em;
	line-height:1.6em;
}
.mce-content-body h1
{
	display:block;
	font-size: 2.2em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-transform: uppercase;
	letter-spacing: 5px;
	text-align:center;
	font-weight:normal;
	margin: 45px auto 20px auto;	
}
.mce-content-body h2
{
	display: block;
	font-size: 3em !important;
	font-weight: 400;
	line-height: 1.1em;
	letter-spacing: 5px;
	text-align: center;
	font-weight: normal;
	margin: 0px auto 60px auto;
}
.mce-content-body h3
{
	display: block;
	font-size: 2.5em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-align: left;
	font-weight: normal;
}
.mce-content-body h4
{
	display: block;
	font-size: 2em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-align: left;
	font-weight: normal;
}
.mce-content-body h5
{
	display: block;
	font-size: 1.85em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-align: left;
	font-weight: normal;
}
/* Basic Text Settings */
div.hide
{
	display:none;
}
element.breaker
{
	display:none;
}
element.bullet
{
	color:#ffffff;
}
a
{
	text-decoration:none;
}
a:hover
{
	text-decoration:none;
}
#content-wrapper h1
{
	display:block;
	font-size: 2.2em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-transform: uppercase;
	letter-spacing: 5px;
	text-align:center;
	font-weight:normal;
	margin: 45px auto 20px auto;	
}
#content-wrapper h2
{
	display: block;
	font-size: 3em !important;
	font-weight: 400;
	line-height: 1.1em;
	letter-spacing: 5px;
	text-align: center;
	font-weight: normal;
	margin: 0px auto 60px auto;
}
#content-wrapper h3
{
	display: block;
	font-size: 2.5em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-align: left;
	font-weight: normal;
}
#content-wrapper h4
{
	display: block;
	font-size: 2em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-align: left;
	font-weight: normal;
}
#content-wrapper h5
{
	display: block;
	font-size: 1.85em !important;
	font-weight: 400;
	line-height: 1.1em;
	text-align: left;
	font-weight: normal;
}
#identity-block h1
{
	margin: 8px auto 0px auto;	
}
#identity-block h2
{
	margin: 0px auto 0px auto;
	font-size:1.45em;
}
#identity-block h3
{
	margin: 2px auto 0px auto;	
	font-size:1.45em;
}
#header-banner
{
	max-height:100px;
	width:100%;
	max-width:300px;
}
/* Slide Controls */
.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
  }

.rslides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
  }

.rslides li:first-child {
  position: relative;
  display: block;
  float: left;
  }

.rslides img {
  display: block;
  height: auto;
  float: left;
  width: 100%;
  border: 0;
  }

/* Structure Control */
#page-header
{
	box-sizing:border-box;
	display:table;
	width:100%;
	height:115px;
	overflow:display;
	position:fixed;
	top:0px; left:0px;
	z-index:99999;
}
#identity-block
{
	box-sizing:border-box;
	display:table-cell;
	width:30%;
	min-width:300px;
	vertical-align:top;
}
#navigation-block
{
	box-sizing:border-box;
	display:table-cell;
	width:70%;
	vertical-align:top;
}
img.loc-img
{
	display:block;
	width:100%;
	height:auto;
}
#identity-block img.small-identity
{
	height:100px;
	width:100px; 
	float:left;
	margin:5px 15px 0px 5px;
	display:block;
}
#primary-navigation
{
	box-sizing:border-box;
	display:block;
	margin: 0px auto 0px auto;
	text-align: center;
}
#primary-navigation div.nav-opt
{
	box-sizing:border-box;
	display:inline-block;
	padding:10px 10px 0px 10px;
	text-align:center;
}
#primary-navigation div p, #primary-navigation div a
{
	box-sizing:border-box;
	display:table-cell;
	padding:0px 10px 2px 10px;
	text-align:center;
	font-size:1.9em;
}
#location-links p 
{
	text-align:center;
	font-size:1.9em;
}

#index-banner
{
	box-sizing:border-box;
	background-size:cover;
	background-attachment:fixed;
	background-position:top center;
	display:block;
	overflow:hidden;
	margin-top:110px;
	min-height:150px;
}
#standard-banner
{
	box-sizing:border-box;
	background-size:cover;
	background-attachment:fixed;
	background-position:top center;
	display:block;
	width:100%;
	height:40vw;
	max-height:115px;
	min-height:125px;
}
#one-column
{
	box-sizing:border-box;
	display:block;
	padding:10px 0px;
	width:100%;
}
#one-column-solid
{
	box-sizing:border-box;
	display:block;
	padding:10px 0px;
	width:100%;
}
#one-column-accent
{
	box-sizing:border-box;
	display:block;
	padding:10px 0px;
	width:100%;
	min-height:225px;
}
#content-wrapper
{
	display:block;
	box-sizing:border-box;
	width:90%;
	max-width:1200px;
	min-width:850px;
	margin:50px auto;
	padding: 5px 50px 50px;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}
#common-footer
{
	box-sizing:border-box;
	display:table;
	width:100%;
}
#common-footer div
{
	box-sizing:border-box;
	display:table-cell;
	width:33%;
	padding:10px;
	//min-height:300px;
	text-align:left;
}
#footer-b
{
	text-align:center!important;
	padding: 0px 10px 10px 10px!important;
}
#footer-navigation
{
	box-sizing:border-box;
	display:block;
	padding:10px 10px;
	width:100%;
}
#footer-navigation img
{
	box-sizing:border-box;
	display:inline-block;
	width:30px;
	height:auto;
	margin:0px 5px 5px 0px;
}
#copyright
{
	box-sizing:border-box;
	display:block;
	padding:5px 5px;
	width:100%;
}
#common-highlights-special
{
	box-sizing:border-box;
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 10px;
	grid-auto-rows: minmax(100px, auto);	
	width:100%;
	max-width:1200px;
	margin: -50px auto 50px auto;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);	
	transition: grid-template-columns 2s;	
	z-index: 90000;
	position: relative;		
}
#common-highlights
{
	box-sizing:border-box;
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 10px;
	width:100%;
	max-width:none;
	margin: 0px auto 50px auto;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);	
	transition: grid-template-columns 2s;
}
#common-highlights div
{
	box-sizing:border-box;
	min-width:225px;
	padding:10px;
}
#common-highlights-special div
{
	box-sizing:border-box;
	min-width:225px;
	padding:10px;
	transition: border-top 2s;	
}
#common-highlights-special div:hover
{
	box-sizing:border-box;
	display:table-cell;
	min-width:225px;
	padding:10px;
	transition: border-top 1s;
}
#common-highlights div img, #common-highlights-special div img, #common-footer div img
{
	display:block;
	width:150px;
	height:150px;
	border-radius:50%;
	margin:5px auto;
	-webkit-transition: filter 2s; /* Safari */
	transition: filter 2s;		
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);

}
#common-highlights div:hover img, #common-highlights-special div:hover img, #common-footer div:hover img
{
	display:block;
	width:150px;
	height:150px;
	border-radius:50%;
	margin:5px auto;
	-webkit-transition: filter 2s; /* Safari */
	transition: filter 1s;	
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);	
}

#common-highlights div h2, #common-highlights-special div h2, #common-footer div h2
{
	display:block;
	font-weight:normal;
	text-align:center;
	font-size:2em;
}
#common-highlights div p, #common-highlights-special div p
{
	display:block;
	font-weight:normal;
	color:#656565;
	text-align:left;
	font-size:1.3em;
}
#common-footer div h3
{
	display:block;
	font-weight:normal;
	color:#656565;
	font-size:1.75em;
}
#common-footer div p
{
	display:block;
	font-weight:normal;
	color:#656565;
	font-size:1.5em;
}
#common-highlights div p.read-more, #common-highlights-special div p.read-more, #common-footer div p.read-more
{
	font-weight:normal;
	display:table;
	text-align:center;
	font-size:1.3em;
	padding:5px 15px;
	margin:5px auto;
}
#one-column-accent h3
{
	font-weight:normal;
	font-size:4em;
	text-align:center;
}
#one-column-accent a p
{
	display:table;
	font-weight:normal;
	font-size:2em;
	text-align:center;
	padding:10px 20px; 
	margin:-15px auto 10px;
}
#one-column-accent a p:hover
{
	text-decoration:none;
}
#one-column-accent a
{
	text-decoration:none;
}
#one-column-accent a:hover
{
	text-decoration:none;
}
.left
{
	float:left;
	margin:10px 45px 10px 0px!important;
}
.divider
{
	display:block!important;
	width:100px!important;
	border-top:0px!important;
	border-left:0px!important; 
	margin:00px auto 30px auto!important;
	min-height:0px!important;
	height:1px!important;
}
#content-wrapper p, #content-wrapper li, label
{
	font-size:1.9em;
	line-height:1.6em;
	list-style:none;
}
#content-wrapper p.small
{
	font-size:1.6em;
	line-height:1.6em;
}
#content-wrapper h2
{
	font-size:2.9em;
	line-height:1.6em;
	font-weight:normal;
}
#footer-navigation
{
	display:block;
	text-align:right;
}
#footer-navigation div
{
	display:inline-block;
	border-bottom:0px;
	padding:5px 10px;
}
#footer-navigation div a, #copyright p
{
	font-size:1.3em;
}
#content-wrapper p.selfie
{
	display:block;
	font-size:1.3em;
	text-align:center;
	font-style:italic;
}
#content-wrapper img.selfie
{
	display:block;
	margin:10px auto 0px auto;
	font-style:italic;
	width:100%;
	height:auto;
	max-width:300px;
	min-width:150px;
	border-radius:50%;
	border:1px solid rgba(0,0,0,.1);
}
.location-grid
{
	display:grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 10px;
	transition: grid-template-columns 2s;
}
.location-grid div
{
	box-sizing:border-box;
	padding:5px;
	border:1px solid rgba(0,0,0,.1);
}
.treatment-grid
{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 10px;
	transition: grid-template-columns 2s;
}
.treatment-grid div
{
	box-sizing:border-box;
	padding:15px;
	border:1px solid rgba(0,0,0,.1);
}
.treatment-box img
{
	width:100%;
	height:auto;
	max-width:300px;
	display:block;
	margin:0px auto;
	border-radius:50%;
}
.treatment-box h3
{
	text-align:center!important;
}
iframe.loc-map
{
	width:100%;
	height:300px;
}
.big-form
{
	height:35px;
	width:90%;
	font-size:1.9em;
}

fieldset
{
	border:0px;
}
.submit
{
	padding: 10px;
	border-radius: .5em;
	font-size: 1.9em;
}

#mobile-nav-overlay
{
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	border-top:0px;
	border-bottom:0px;
	display:block;
	width:100%;
	height:0%;
	overflow:hidden;
	position:fixed;
	top:0;left:0;
	z-index:999999;
	transition: all 1s;
}
#mobile-navigation div.nav-opt
{
	margin: 0px auto;
	text-align: center;
	font-size:3.5em;
	padding-top:5px;
	padding-bottom:10px;
}
#mobile-navigation div.nav-sub-opt
{
	display:none;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 10px;
	grid-auto-rows: minmax(32px, auto);
	padding:10px!important;
	border:0px;
	font-size:.5em;
}
#mobile-navigation div.nav-sub-opt div
{
	padding: 0px!important;
	width:100%;

}
div.mobile-nav-header
{
	margin-top: -15px;
	margin-bottom: 15px;	
	padding: 10px;
	text-align: center;
}
div.mobile-nav-header-buffered
{
	margin-top: 35px;
	margin-bottom: 15px;	
	padding: 10px;
	text-align: center;
}
div.mobile-nav-header-closer
{
	margin-top: 35px;
	padding: 10px;
	text-align: center;
}
div.mobile-nav-header h2
{
	font-weight: normal;
	font-size: 3em;
	margin: 15px 0px 0px 0px;
	text-transform: uppercase;
	letter-spacing: 4px;
}
div.mobile-nav-header-buffered h2, div.mobile-nav-header-closer h2 
{
	font-weight: normal;
	font-size: 3em;
	margin: 0px 0px 0px 0px;
	text-transform: uppercase;
	letter-spacing: 4px;
}
div.mobile-nav-location-container
{
	text-align:center;
}
div.mobile-nav-location-container h2
{
	display:none;
}
div.mobile-nav-location-container h3, div.mobile-nav-location-container p
{
	font-size: 2em;
	font-weight: normal;
}
#mobile-nav-overlay #toggle-button
{
	position: absolute;
	top: 0px;
	right: 0px;
}
#mobile-nav-overlay #toggle-button span.top-line
{
	transform: rotate(-45deg);
	margin-top: 10px;
	margin-left: -1px;
	transition: all 2s;	
}
#mobile-nav-overlay #toggle-button span.mid-line
{
	visibility:hidden;
	transition: all 2s;
}
#mobile-nav-overlay #toggle-button span.bottom-line
{
	transform: rotate(45deg);
	margin-top: -20px;
	margin-left: 3px;
	transition: all 2s;
}

#mobile-nav-toggle
{
	display:none;
}
#toggle-button
{
	display: block;
	float: right;
	margin: 5px;
	width: 35px;
	height: 35px;
	border-radius: .5em;
	padding: 5px;
	vertical-align: middle;
}
#toggle-button span
{
	display: block;
	width: 100%;
	height: 5px;
	transition: all 1s;
}
div.mobile-only
{
	display:none!important;
}
div.full-only
{
	display:inline;
}
#fullservices
{
	display:none;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 10px;
	grid-auto-rows: minmax(32px, auto);	
	position: absolute;
	top: 45px;
	margin-left: 25px;
	border-radius: 1em;
	padding: 0px 5px 10px 5px;
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	z-index: 100000;
	width: 430px;	
}
#content-wrapper > ul > li > ul > li, #content-wrapper > ul > li > ul > ul > li
{
	font-size:1em!important;
	list-style:none;	
}
#content-wrapper > ul > li > h4
{
	font-size: 1.2em !important;
	margin: 1em 0px 0px 0px;
}
.right
{
	float:right;
	margin-left:15px;
}
/* Mobile Adjustments */
@media screen and (max-width: 1150px)
{
	#primary-navigation, #location-links
	{
		display:none;
	}
	#mobile-nav-toggle
	{
		display:block	
	}
	#identity-block
	{
		width:auto;
		padding:5px;
	}
	#navigation-block
	{
		width:50px;
	}
	div.mobile-only
	{
		display:inherit!important;
	}
	div.full-only
	{
		display:none;
	}	
}
@media screen and (max-width: 949px)
{

	#common-highlights-special, #common-highlights, .location-grid, .treatment-grid
	{
		display:grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 10px;
		transition: grid-template-columns 2s;
	}
	#common-highlights-special
	{
		background:transparent;
		border:0px;
		margin: -20px 0px 0px 0px;
	}
	#one-column-accent
	{
		padding:10px 10px;
	}
	#common-footer
	{
		display:block;
	}
	#common-footer div
	{
		display:block;
		width:100%;
		margin-top:0px;
		border-left:0px;
	}
	#content-wrapper
	{
		width:100%;
		min-width:0px;
		padding:15px;
		margin:10px 0px;
	}
	{
	#one-column-accent h3
	{		
		margin-top: 10px;
	}
}

@media screen and (max-width: 750px)
{
	#one-column-accent h3
	{
		margin: 10px 0px 30px 0px;
	}
	#common-highlights-special, #common-highlights, .location-grid, .treatment-grid
	{
		display:grid;
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 10px;
		transition: grid-template-columns 2s;
	}	
	img.small-identity
	{
		display:block!important;
	}
}
@media screen and (max-width: 500px)
{
	img.small-identity
	{
		display:none!important;
	}
	#common-highlights-special
	{
		display:none;
	}	
	#mobile-navigation div.nav-sub-opt div
	{
		text-align:left;
		padding: 0px!important;
	}	
	#mobile-navigation div.nav-sub-opt
	{
		display:none;
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 10px;
		grid-auto-rows: minmax(32px, auto);
		padding:10px!important;
		border:0px;
		font-size:.5em;
	}	
}
@media screen and (max-width: 500px)
{
	*
	{
		min-width:0px!important;
	}
	.right
	{
		display:block;
		float:none;
		margin-left:auto;
		margin-right:auto;
		margin-top:5px;
		margin-bottom:15px;
	}
}


