a, a:focus {
	color: #6A5415; /*#ae985d;*/
	text-decoration: underline;
}
a:hover, a:active {
	color: #513f0c;
	text-decoration: underline;
}
.position-bottom {
	position: absolute;
	bottom: 0;
}
.blockquote {
	font-size: 1em;
	font-style: italic;
	padding-left: 1rem;
	border-left: 5px solid #eee;
}
#wpadminbar {
	position: fixed;
}
.admin-bar header#masthead {
	margin-top: 46px;
}
@media(min-width:783px) {
	.admin-bar header#masthead {
		margin-top: 32px;
	}
}

hr.wp-block-separator {
	margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, .1);
}


.text-center ol li,
ol.text-center li,
.text-center ul li,
ul.text-center li {
	list-style-position: inside;
}

.list-style-tick li {
	position: relative;
	list-style: none;
}
.list-style-tick li:before {
	content: "";
	color: #ae985d;
    position: absolute;
    left: -20px;
    top: 0px;
	width: 1.2em;
	height: 1.2em;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath fill='%23ae985d' d='M530.8 134.1C545.1 144.5 548.3 164.5 537.9 178.8L281.9 530.8C276.4 538.4 267.9 543.1 258.5 543.9C249.1 544.7 240 541.2 233.4 534.6L105.4 406.6C92.9 394.1 92.9 373.8 105.4 361.3C117.9 348.8 138.2 348.8 150.7 361.3L252.2 462.8L486.2 141.1C496.6 126.8 516.6 123.6 530.9 134z'/%3E%3C/svg%3E");
}


.banner-full-height {
	height: 100%;
	display: table;
}
.banner-center-content {
	display: table-cell;
	vertical-align: middle;
	color: #fff;
}

.slogan-container {
	padding: 10px 0;
	line-height: 1;
}
.banner-slogan {
	background-color: #000;
	background-color: rgba(0,0,0,0.5);
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 101;
	font-size: 2em;
	font-weight: 300;
	line-height: 1.2;
	text-align: center;
}
.profile-img {
	width: 200px;
	height: auto;
}
.banner-image {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}
.banner-cta {
	margin: 2rem 0;
	display: flex;
	justify-content: center;
	gap: 1rem;
	flex-wrap: wrap;
}
@media (min-width: 768px) {
	.slogan-container {
		width: 370px;
	}
	.banner-slogan {
		font-size: 2.2em;
		width: 100%;
		text-align: right;
		z-index: 99;
		letter-spacing: 0;
	}
	.banner-image {
		z-index: 100;
	}
	.banner-image .container {
		text-align: right;
	}
	.profile-img {
		width: 272px;
	}
}
@media (min-width: 992px) {
	.slogan-container {
		width: 600px;
	}
	.banner-slogan {
		font-size: 3.4em;
		font-weight: 100;
	}
}
@media (min-width: 1200px) {
	.slogan-container {
		width: 700px;
	}
}

header#masthead {
	margin-bottom: 0;
	background-color: #fff;
	padding: 0;
	box-shadow: rgba(0,0,0,0.3) 0 0 5px;
	background-color: #1b1b1a;
	z-index: 99999;
}
#masthead .navbar-nav > li > a {
	color: #fff;
	padding: 0.5rem;
	font-weight: 500;
	text-decoration: none;
}
#masthead .navbar-nav > li > a:hover {
	color: #e6cc85;
	text-decoration: none;
}

.quick-phone {
	position: fixed;
	bottom: 10px;
	right: 10px;
	top: inherit;
	font-size: 1.4em;
	text-shadow: rgba(0,0,0,0.3) 0 3px 5px;
}
@media(min-width: 380px) {
	.quick-phone {
		font-size: 1em;
		position: absolute;
		right: 50px;
		top: 11px;
		text-shadow:none;
	}
}
@media(min-width: 768px) {
	.quick-phone {
		display: none;
	}
}

@media (max-width: 767px) {
	.quick-phone {
		animation-name: fx-shake;
		animation-duration: 1s;
		transform-origin: 50% 50%;
		animation-iteration-count: infinite;
		animation-timing-function: linear;
		animation-duration: 6s
	}
}

.navbar-brand {
	margin: 10px 0;
	position: relative;
}
.navbar-brand .site-title {
	color: #e6cc85;
	font-size: 1.4em;
	font-weight: 100;
	line-height: 1.4em;
	text-decoration: none;
}
.navbar-brand .main-logo {
	width: 200px;
	position: relative;
	z-index: 100;
}
@media(min-width:992px) {
	.navbar-brand .site-title {
		font-size: 1.8em;
		line-height: 1em;
	}
	.navbar-brand .main-logo {
		width: 300px;
	}
}

#masthead .navbar-toggler {
	border: 0;
}
#masthead .navbar-toggler:focus {
	outline: 0;
}

/* Page Header */
div#page-sub-header {
	/* background: url(/wp-content/uploads/2017/11/banner.jpg) no-repeat center center; */
	background-size: cover; 
	height: 350px;
	margin-top: 55px;
}
@media(min-width:768px) {
	div#page-sub-header { 
		height: 500px;
		margin-top: 60px;
	}
}
@media(min-width:992px) {
	div#page-sub-header { 
		margin-top: 80px;
	}
}

div#page-sub-header.hero-banner {
	height:100vh;
	/* background-image: url(/wp-content/uploads/2018/02/hero-banner.jpg) !important; */
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	margin:0;
}
div#page-sub-header.hero-banner h1 {
	font-weight: 300;
	font-size: 1.8rem;
	max-width: 80%;
	margin: auto;
	color: #e6cc85;
}
div#page-sub-header.hero-banner h2 {
	font-size: 1.2rem;
	max-width: 80%;
	margin: auto;
}
@media(min-width: 768px) {
	div#page-sub-header.hero-banner h1 {
		font-size: 3.5rem;
		max-width: 80%;
	}
	div#page-sub-header.hero-banner h2 {
		font-size: 1.5rem;
		max-width: 80%;
	}
}


.home #content.site-content {
	padding-bottom: 3.75rem;
	padding-top: 2.125rem;
}
#content.site-content {
	padding-bottom: 3.75rem;
	padding-top: 4.5rem; 
}
@media (min-width: 768px) {
	#content.site-content {
		padding-top: 4.25rem; 
	}
}
.btn.btn-default {
	border-color: #2a2b29;
}
.btn.btn-primary {
	background-color:#2a2b29;
	color: #d6c38f;
	border-color:#2a2b29; 
	outline:0;
	box-shadow:none;
}
.btn.btn-primary:hover {
	background-color:#000;
	outline:0;
}
.btn.btn.btn-primary:active,
.btn.btn.btn-primary:focus {
	background-color:#000;
	color: #fff;
	outline:0;
	border-color: #000;
}
.btn.btn-primary-alt {
	background-color:#ae985d;
	color: #000;
	border-color:#ae985d; 
	outline:0;
	box-shadow:none;
}
.btn.btn-primary-alt:hover {
	background-color:#000;
	color:#ae985d;
	outline:0;
}
.btn.btn.btn-primary-alt:active,
.btn.btn.btn-primary-alt:focus {
	background-color:#000;
	color: #fff;
	outline:0;
	border-color: #ae985d;
}
@media(min-width: 992px) {
	.btn.btn.btn-primary-alt:active,
	.btn.btn.btn-primary-alt:focus {
		color: #ae985d;
	}
}
.btn.btn {
	padding: .5rem 2rem;
	text-transform: uppercase;
}
.btn.btn-xs {
	padding: .1rem .5rem;
	font-size: .8em;
}

.form-control.form-control:focus {
	border-color: #d6c38f;
}

.btn.btn-primary:not([disabled]):not(.disabled):active, 
.btn.btn-primary:not([disabled]):not(.disabled).active,
.show > .btn-primary.dropdown-toggle,
.btn.btn-primary:focus, .btn-primary.focus,
.custom-control-input.custom-control-input:focus ~ .custom-control-indicator,
.form-control.form-control:focus,
.btn.btn:focus, .btn.btn.focus
{

	box-shadow:none;
}


/* CUSTOM STYLES */
.margin-bottom-1rem {
	margin-bottom: 1rem;
}
.padding-20 {
	padding:20px;
}
.relative {
	position: relative;
}
.white-text {
	color: #fff;
}
.gold-text {
	color: #d6c38f;
}

.visible-xs {
	display: block;
}
@media(min-width: 768px) {
	.visible-xs {
		display: none;
	}
}
/* CONTENT STYLES */

h2 {
	color: #B88F28; /*#ae985d;*/
	font-weight: 500;
}
.entry-content h2.lead {
    color: #000;
    font-size: 1.5rem;
    margin-top: 1rem;
    margin-bottom: 2rem;
}
.entry-content h2 {
	margin-top: 40px;
	margin-bottom: 20px;
	text-align: center;
}
.entry-content h3 {
	margin-bottom:20px;
}

@media(max-width: 575px) {
	.entry-content h2 {
		margin-top: 20px;
		margin-bottom: 10px;
	}
	.entry-content ol,
	.entry-content ul {
		padding-left: 30px;
	}
	.entry-title {
		text-align: center;
	}
	.alignright, .alignleft {
		margin: 0 auto 1.5rem;
		float: none;
		display: block;
	}
}

.youtube {
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	display: inline-block;
	overflow: hidden;
	transition: all 200ms ease-out;
	cursor: pointer;
	width: 100%;
	background-size: cover;
}
.youtube .play {
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAERklEQVR4nOWbTWhcVRTHb1IJVoxGtNCNdal2JYJReC6GWuO83PM/59yUS3FRFARdFlwYP1CfiojQWt36sRCUurRIdVFXIn41lAoVdRGrG1M01YpKrWjiYmaSl8ybZJL3cd+YA//NLObd3++eO8x79z5jSq5Gw+8kov0AP8vMR5l1BtBZQM4B8ks75wCdZdYZZj5qLZ4hov2Nht9Z9vhKKSIaB/gI4M4w62KeAO6Mte4lYOq20FxrlqqOibhHmeWbvNC9ZfDX1mLae391aN6limO/gwgvAPJbWeAZuSDingdwXTBw7/0IsyaA/Fkh+KqOkD+YNfHej1QKD+y7iVlOhgLvFqFfNJvNGyuBJ+KDAF8MDd0tgS8y64OlgSdJMsysL4cG7SOHkyQZLhTee7+d2R2rAVy/S+Jd7/32ouBHAP4gNNRGQyTHc/84NhqNywZp5rvjjnnvt21aABFeCQ+RLwAf2hQ8s7sv9OCLk6AHNgQvIrvbfzKCD76g/O6cu7lf/iER/aQGgy448pExZmhdegAPhR9sObFWH1gT3lp7DaA/5bkIgJhZPgsNmz02novj+KqeApj1ubwXWe4kdyeznAgNvTpE/HQmvKqOMeuFogTUVQSRno+iaLRLAJF7uIgL9O4ubgL8aWgB7S44mNX+35YpICUiAvS9sBLkq1WzT+NFffl6AuoiApi6NT37h6sWkBIRZGkQ8YtLgyji6e1mBYTqCEBPG2Naz+0BWQgtoGoRgCzEsd9hAN1X5BfnFZASUfrSAFQNsyZ1FJASUVpHiLinDJG8U2cBZYogkrcNs5waBAGdstbeU9zdqpw0gPwwSAI6VUxHyFlDpOcHUUBBIuYNs14aZAE5RVwyzPr3/0EAEY0TyfGNjBWQvwZ +CTSbehfAH29mrID8bET0+0EUkAd8WYDOmqJ3ecsG30yr9wqRfm6Y+a1BEFDEjHfHvWmY9ck6CygHvBVr8Xhtb4ZE5HZA3y8DvBNA1TjnrmXWf+sioMwZX5V/VHXMGGMMoKdDCxCRvRWBdzKzdHEO+EisilbPyopHYqp6S9UCAsz4iojI7hUDAtyXVQgIDd6KnOoaWNkbI6FaPSuZGyMArsi7MZoloB4zviI/Nhr3X95jltwTRQmoIfgisy5ai+me67OI7fE4nrqjrqfK1t0eby0FPRB6oGVlchL3rgnfrq19RKbVBdhV9IOSwJmfmJi4vi/4ThERitwyCxVAFqydshuCX5awhQ9KtmuIWd8IDZED/nXT77rvVVv6sHRKwjYi91poqP7Dr+Y6JJ1VSZIMA3wkPNy6bX+o8Bcm0sXMdwM8Fxo0A3xORPaWBp6uPXsmbxCRD0NDL0dOANhVCXy6iAjMcjbcrMt3RITKwdMVRdFo+y5yvkL4eWZ+zHt/ZVD4dEVRNGotpst+dZZZH8k86lqn2pIvT/eqrNfn2xuyqYPZ8mv7s8pfn/8Pybm4TIjanscAAAAASUVORK5CYII=") no-repeat center center;
	background-size: 64px 64px;
	position: absolute;
	height: 100%;
	width: 100%;
	opacity: .8;
	filter: alpha(opacity=80);
	transition: all 0.2s ease-out;
}

/* CONTACT FORM 7 STYLES */
div.wpcf7-mail-sent-ok.wpcf7-mail-sent-ok {
	position: relative;
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid transparent;
	border-radius: .25rem;	
	color: #155724;
	background-color: #d4edda;
	border-color: #c3e6cb;
}
div.wpcf7-validation-errors.wpcf7-validation-errors {
	position: relative;
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid transparent;
	border-radius: .25rem;
	color: #721c24;
	background-color: #f8d7da;
	border-color: #f5c6cb;	
}
div.wpcf7-response-output.wpcf7-response-output.wpcf7-response-output {
	margin:0;
	position: relative;
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid #76c7e0;
	border-radius: .25rem;
	background-color: #e6f7fd;
	color: #0c374b;
}
.wpcf7.wpcf7 form.sent .wpcf7-response-output {
	border-color: #8edf95; /* Green */
	background-color: #e6f9ed;
	color: #104520;
}
.wpcf7.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7.wpcf7 form.failed .wpcf7-response-output,
.wpcf7.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #e78888; /* Red */
	background-color: #fdeaea;
	color: rgb(104, 10, 10);
}
.wpcf7.wpcf7 form.spam .wpcf7-response-output {
	border-color: #e9a685; /* Orange */
	background-color: #fff4e6;
	color: #b35105;
}
.wpcf7.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #e6cb84; /* Yellow */
	background-color: #fffbe6;
	color: #6e5a0b;
}

.wpcf7-not-valid-tip.wpcf7-not-valid-tip {
    font-size: .875em;
    margin-top: .25rem;
}

.post-title a,
.entry-title a,
.btn {
	text-decoration: none;
}


.heading-bg {
	padding:60px 20px 40px;
	background: url(/wp-content/uploads/2018/01/piano-concert-hall.jpg) no-repeat center center;
	background-size: cover;
	color: #fff;
}
@media(min-width: 576px) {
	.heading-bg {
		padding:100px 20px;
		background-size: cover;
	}
}


.wbtrn_testimonial .rating {
	color: #f90;
}

#breadcrumbs a {
	color: #fff;
}

#breadcrumbs a:hover {
	color: #e4ce94;
}

.heading-map-bg {
	position: relative;
}
.heading-map-container {
	position: absolute;
	height: 100%;
	width: 100%;
	z-index: 999;
	color: #fff;
	background: rgba(0,0,0,0.3);
}
@media(min-width: 992px) {
	.google-map.embed-responsive-21by9::before {
		padding-top: 30%;
	}
}


@keyframes fx-shake {
	0% {
		transform: rotate(0deg);
	}
	1% {
		transform: rotate(20deg);
	}
	2% {
		transform: rotate(0deg);
	}
	3% {
		transform: rotate(20deg);
	}
	4% {
		transform: rotate(0deg);
	}
	5% {
		transform: rotate(20deg);
	}
	6% {
		transform: rotate(0deg);
	}
	7% {
		transform: rotate(20deg);
	}
	8% {
		transform: rotate(0deg);
	}
	9% {
		transform: rotate(0deg);
	}
}

.wp-block-image img {
	width: 100%;
	max-width: none;
}

.ptl-important-message {
    margin:0;
    width: 100%;
    border-radius: 0;
}
#page-sub-header .ptl-important-message {
	position: absolute;
	z-index: 999;
	width: 100%;
    font-size: 1rem;
}

.ptl-info-blocks h2 {
	font-size: 1.4rem;
}

.service-areas {
	margin-bottom: 20px;
	text-align: center;
}
.location-pages {
	display: flex;
    column-gap: .5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) input,
.wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) textarea {
	border-color: #fdbfbf;
	background-color: #fffafa;
}