@charset "utf-8";

/* CSS Document */


/*RESET*/

html {
	margin: 0;
	padding: 0;
	border: 0
}

body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
code,
del,
dfn,
em,
img,
q,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
	font-size: 18px;
}

body {
	line-height: 1.5
}

article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block
}

table {
	border-collapse: separate;
	border-spacing: 0
}

caption,
th,
td {
	text-align: left;
	font-weight: normal;
	float: none !important
}

table,
td,
th {
	vertical-align: middle
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: ""
}

blockquote,
q {
	quotes: """"
}


/*TYPOGRAPHY*/

html {
	font-size: 100.01%
}

body {
	font-size: 93.75%;
	color: #757575;
	font-family: "Times New Roman", Georgia, sans-serif
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: normal;
	color: #4F8EAA
}

h3,
h4,
h5,
h6 {
	color: #333
}

h1 {
	font-size: 3.429em;
	line-height: 1.1;
	margin-bottom: 0.5em
}

h2 {
	font-size: 2.616em;
	line-height: 1.20;
	margin-bottom: 0.5em
}

h3 {
	font-size: 1.692em;
	line-height: 1;
	margin-bottom: 0.5em
}

h4 {
	font-size: 1.2em;
	line-height: 1.25;
	margin-bottom: 0.5em
}

h5 {
	font-size: 1em;
	font-weight: bold;
	margin-bottom: 0.5em
}

h6 {
	font-size: 1em;
	font-weight: bold
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
	text-decoration: none
}

p {
	margin: 0 0 1em
}

.left {
	float: left !important
}

p .left {
	margin: 1.5em 1.5em 1.5em 0;
	padding: 0
}

.right {
	float: right !important
}

p .right {
	margin: 1.5em 0 1.5em 1.5em;
	padding: 0
}

img,
img.left {
	border: 3px solid #FFF;
	-moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
	-o-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
	float: left;
	margin: 10px 20px 20px 0
}

.no-boxshadow img {
	background-color: #FFF;
	border: 1px solid #DDD;
	padding: 2px
}

img[align=middle],
img.center,
img.middle {
	display: block;
	float: none;
	margin: 0 auto 20px
}

img[align=right],
img.right {
	float: right;
	margin: 10px 0 20px 20px
}

a:focus,
a:hover {
	color: #333
}

a {
	color: #37677B;
	cursor: pointer;
	text-decoration: underline
}

blockquote {
	margin: 1.5em;
	color: #666;
	font-style: italic
}

strong,
dfn {
	font-weight: bold
}

em,
dfn {
	font-style: italic
}

sup,
sub {
	line-height: 0
}

abbr,
acronym {
	border-bottom: 1px dotted #666
}

address {
	margin: 0 0 1.5em;
	font-style: italic
}

del {
	color: #666
}

pre {
	margin: 1.5em 0;
	white-space: pre
}

pre,
code,
tt {
	font: 1em 'andale mono', 'lucida console', monospace;
	line-height: 1.5
}

hr {
	background-color: transparent;
	border: none;
	border-top: 1px dotted #CCC;
	clear: both;
	display: block;
	margin: 2em 0
}

li ul,
li ol {
	margin: 0
}

ul,
ol {
	margin: 0 1.5em 1.5em 0;
	padding-left: 1.5em
}

ul {
	list-style-type: disc
}

ol {
	list-style-type: decimal
}

dl {
	margin: 0 0 1.5em 0
}

dl dt {
	font-weight: bold
}

dd {
	margin-left: 1.5em
}

table {
	margin-bottom: 1.4em;
	width: 100%
}

th {
	font-weight: bold
}

thead th {
	background: #c3d9ff
}

th,
td,
caption {
	padding: 4px 10px 4px 5px
}

tbody tr:nth-child(even) td,
tbody tr.even td {
	background: #e5ecf9
}

tfoot {
	font-style: italic
}

caption {
	background: #eee
}

.small {
	font-size: .8em;
	margin-bottom: 1.875em;
	line-height: 1.875em
}

.large {
	font-size: 1.2em;
	line-height: 2.5em;
	margin-bottom: 1.25em
}

.hide {
	display: none
}

.quiet {
	color: #666
}

.loud {
	color: #000
}

.highlight {
	background: #ff0
}

.added {
	background: #060;
	color: #fff
}

.removed {
	background: #900;
	color: #fff
}

.first {
	margin-left: 0;
	padding-left: 0
}

.last {
	margin-right: 0;
	padding-right: 0
}

.top {
	margin-top: 0;
	padding-top: 0
}

.bottom {
	margin-bottom: 0;
	padding-bottom: 0
}


/*FORM*/

form ul.form-structure {
	list-style: none;
	padding: 0;
	margin: 0;
	float: left;
}

form ul.form-structure li {
	border-top: 1px dotted #CCC;
	padding: 15px 0;
	overflow: hidden
}

form ul.form-structure li:first-child {
	border-top: none
}

form label {
	display: block;
	clear: left;
	float: left;
	font-size: 13px;
	line-height: 27px;
	margin: 0 1% 0 0;
	color: #757575;
	width: 33%
}

form label span.optional,
form label span.required {
	color: #666;
	font-style: italic;
	text-transform: lowercase
}

form label span.required {
	color: #C00
}

form label.required-note {
	color: #999;
	font-size: 11px
}

form label.error {
	color: #C00;
	font-size: 11px;
	margin-left: 34%;
	width: 61%
}

form input,
form textarea,
form select {
	color: #757575;
	font-family: "TisaProRegular", Georgia, sans-serif
}

form input[type=text],
form textarea,
form select {
	background-color: #FFF;
	border: 1px solid #CCC;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	-moz-box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.15);
	-webkit-box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.15);
	-o-box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.15);
	box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.15);
	font-size: inherit;
	float: left;
	padding: 5px;
	width: 61%
}

form input[type=text].error,
form textarea.error,
form select.error {
	background-color: #F7D9D9;
	border: 1px solid #C99
}

form input[type=submit] {
	margin: 0 0 3px 0
}


/*LAYOUT*/

body {
	background: #E2E2E2 url(../images/content-with-sidebar.jpg) center top repeat-y
}

.wrapper {
	width: 960px;
	margin: 0 auto;
	overflow: visible;
	padding: 0 0 0 20px
}

a.button,
input[type=submit] {
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#CFCFCF), to(#9D9D9D));
	background-image: -moz-linear-gradient(0% 100% 90deg, #9D9D9D, #CFCFCF);
	background-color: #B6B6B6;
	border: 1px solid #FFF;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.40);
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.40);
	-o-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.40);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.40);
	color: #FFF;
	display: inline-block;
	font-size: 16px;
	height: 18px;
	line-height: 16px;
	margin: 0;
	outline: none;
	padding: 7px 15px 7px;
	position: relative;
	text-decoration: none;
	text-shadow: 0px -1px 1px rgba(0, 0, 0, 0.50)
}

input[type=submit] {
	height: auto
}

a.button.small {
	font-size: 13px;
	height: 16px;
	line-height: 13px;
	padding: 4px 10px
}

a.button.cta,
input[type=submit] {
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#3b6b7f), to(#4F8EAA));
	background-image: -moz-linear-gradient(0% 100% 90deg, #4F8EAA, #3b6b7f);
	background-color: #3b6b7f;
	border: 1px solid #FFF
}

input[type=submit] {
	cursor: pointer;
	padding: 4px 10px
}

a.button img {
	background-color: transparent;
	border: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	float: none;
	margin: 0 0 0 5px;
	vertical-align: middle
}

a.button:active,
a.button.cta:active,
input[type=submit]:active {
	-moz-box-shadow: 0 0 1px rgba(0, 0, 0, 0.40);
	-webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.40);
	-o-box-shadow: 0 0 1px rgba(0, 0, 0, 0.40);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.40);
	top: 2px
}

#site-header {
	background: #000 url(../images/homepage-background-1.jpg) center top no-repeat;
	min-height: 480px;
	-moz-box-shadow: inset 0 -10px 40px rgba(0, 0, 0, 1);
	-webkit-box-shadow: inset 0 -10px 40px rgba(0, 0, 0, 1);
	-o-box-shadow: inset 0 -10px 40px rgba(0, 0, 0, 1);
	box-shadow: inset 0 -10px 40px rgba(0, 0, 0, 1)
}

#site-header div.wrapper {
	min-height: 370px;
	overflow: auto;
	position: relative
}

body.home #site-header {
	min-height: 560px;
	padding-bottom: 20px
}

#logo {
	background: url(../images/logo-background.png) center bottom no-repeat;
	height: 90px;
	left: 322px;
	position: absolute;
	text-indent: -9999px;
	top: 0;
	width: 320px
}

#logo a {
	display: block;
	height: 90px;
	width: 320px
}

#strapline {
	color: #FFF;
	display: block;
	line-height: 50px;
	margin-top: 170px;
	padding-left: 60px;
	font-size: 60px;
	text-shadow: 0 3px 5px #000;
	width: 560px
}

#strapline span {
	display: block;
	color: #FFF;
	font-size: 36px
}

#strapline span {
	margin-left: 250px
}

#strapline span:first-child {
	margin-left: -60px
}

#video {
	background: transparent url(../images/video.png) center no-repeat;
	height: 262px;
	width: 402px;
	position: absolute;
	right: 15px;
	top: 15px
}

#primary-nav {
	background: url(../images/primary-nav.jpg) center bottom no-repeat;
	-moz-box-shadow: 0 0 20px rgba(0, 0, 0, 1);
	-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 1);
	-o-box-shadow: 0 0 20px rgba(0, 0, 0, 1);
	box-shadow: 0 0 20px rgba(0, 0, 0, 1)
}

#primary-nav div.wrapper {
	height: inherit;
	min-height: 0;
	overflow: visible;
	padding: 0 1px 0;
	position: relative;
	width: 962px
}

#primary-nav ul {
	border-left: 1px solid rgba(255, 255, 255, 0.1);
	border-right: 1px solid rgba(0, 0, 0, 0.1);
	list-style: none;
	margin: 0;
	overflow: auto;
	padding: 0
}

.no-rgba #primary-nav ul {
	border-left: 1px solid #484848;
	border-right: 1px solid #2E2E2E
}

#primary-nav li {
	border-left: 1px solid rgba(0, 0, 0, 0.1);
	border-right: 1px solid rgba(255, 255, 255, 0.1);
	float: left;
	text-align: center;
	width: 158px
}

.no-rgba #primary-nav li {
	border-left: 1px solid #2E2E2E;
	border-right: 1px solid #484848
}

#primary-nav li.instruments {
	margin-left: 320px
}

#primary-nav li a {
	color: #CCC;
	display: block;
	font-size: 18px;
	padding: 40px 0 13px;
	text-decoration: none;
	width: 100%
}

#primary-nav li a:hover {
	background-color: rgba(0, 0, 0, 0.25);
	color: #FFF
}

.no-rgba #primary-nav li a:hover {
	background-color: #202020
}

#secondary-nav ul {
	list-style: none;
	margin: 0;
	overflow: hidden;
	padding: 0 0 0 3px
}

#secondary-nav li {
	border-top: 1px dotted #ADADAD;
	display: block;
	margin: 0;
	overflow: auto
}

#secondary-nav li:first-child {
	border-top: none
}

#secondary-nav li.current {
	background: transparent url(../images/content.jpg) left top repeat;
	border-top: none;
	-webkit-border-top-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-bottomleft: 5px;
	-o-border-top-left-radius: 5px;
	-o-border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	-moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
	-o-box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
	-ms-box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.25)
}

#secondary-nav li.current:first-child {
	margin-top: 3px
}

#secondary-nav li.current:last-child {
	margin-bottom: 3px
}

#secondary-nav li:hover {
	background-color: rgba(0, 0, 0, 0.10)
}

#secondary-nav li:hover {
	background-color: #CBCBCB
}

#secondary-nav li.current+li {
	border-top: none
}

#secondary-nav a {
	display: block;
	overflow: auto;
	padding: 15px 10px 19px;
	text-decoration: none
}

#secondary-nav a.button {
	display: inline-block;
	margin: 5px 10px 10px;
	overflow: visible;
	padding: 7px 15px 7px
}

#secondary-nav a.button.small {
	padding: 4px 10px
}

.no-boxshadow #secondary-nav li.current a {
	border: 1px solid #C7C7C7;
	border-right: none;
	padding: 14px 9px
}

#secondary-nav img {
	float: left;
	margin: 0 10px 0 0
}

#secondary-nav li div {
	float: left;
	width: 108px
}

#secondary-nav li h3 {
	font-size: 22px;
	line-height: 26px;
	margin-bottom: 10px
}

#secondary-nav li p {
	color: #757575;
	font-size: 11px;
	line-height: 16px;
	margin: 0
}

#secondary-nav li time {
	color: #999;
	display: block;
	font-size: 11px
}

#services {
	background: url(../images/services-border.jpg) center bottom no-repeat, #333333 url(../images/services.jpg) center top no-repeat;
	box-shadow: 0 0 20px rgba(0, 0, 0, 1.0);
	margin-bottom: 30px
}

.no-multiplebgs #services {
	background: #282828 url(../images/services.jpg) center top no-repeat
}

#services div.wrapper {
	height: inherit;
	min-height: 0;
	padding: 0 1px 0;
	width: 962px
}

#services ul {
	border-left: 1px solid rgba(255, 255, 255, 0.1);
	border-right: 1px solid rgba(0, 0, 0, 0.10);
	list-style: none;
	margin: 0;
	overflow: auto;
	padding: 0
}

.no-rgba #services ul {
	border-left: 1px solid #484848;
	border-right: 1px solid #2E2E2E
}

#services li {
	border-left: 1px solid rgba(0, 0, 0, 0.10);
	border-right: 1px solid rgba(255, 255, 255, 0.1);
	float: left;
	width: 238px
}

.no-rgba #services li {
	border-left: 1px solid #2E2E2E;
	border-right: 1px solid #484848
}

#services li:hover {
	background-color: rgba(0, 0, 0, 0.25)
}

.no-rgba #services li:hover {
	background-color: #202020
}

#services li a {
	display: block;
	padding: 15px;
	text-decoration: none
}

#services li img {
	border: 3px solid #FFF;
	float: left;
	margin: 4px 10px 0 0
}

#services li h3 {
	color: #FFF;
	font-size: 22px;
	line-height: 22px;
	margin-bottom: 5px
}

#services li p {
	color: #CCC;
	font-size: 11px;
	line-height: 16px;
	margin: 0
}

#overview,
#upright-pianos-title,
#grand-pianos-title {
	background-color: rgba(0, 0, 0, 0.50);
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	bottom: 20px;
	border-radius: 5px;
	margin-left: -20px;
	padding: 20px 20px 25px 20px;
	position: absolute;
	max-width: 555px
}

.no-rgba #overview,
.no-rgba #upright-pianos-title,
.no-rgba #grand-pianos-title {
	background: transparent url(../images/opacity-000-50.png) left top repeat
}

#grand-pianos-title {
	right: 0;
	text-align: right
}

.no-opacity #overview,
.no-opacity #overview,
.no-opacity #upright-pianos-title,
.no-opacity #grand-pianos-title {
	background: transparent url(../images/opacity-000-25.png) left top repeat
}

#overview h1,
#upright-pianos-title h1,
#grand-pianos-title h1 {
	color: #FFF;
	margin: 0 0 20px;
	text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75)
}

#overview p,
#upright-pianos-title p,
#grand-pianos-title p {
	color: #CCC;
	font-size: 24px;
	line-height: 28px;
	margin-bottom: 20px;
	text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75)
}

#overview p:last-child,
#upright-pianos-title p:last-child,
#grand-pianos-title p:last-child {
	margin-bottom: 0
}

#content {
	background: transparent url(../images/content.jpg) left top repeat;
	border: 1px solid #FFF;
	border-left: none;
	border-right: none;
	margin-top: -20px;
	overflow: auto;
	padding: 30px 0
}

#content div.wrapper {
	min-height: 300px;
	overflow: visible
}

#content.with-sidebar {
	background: url(../images/content-sidebar-notch.png) center top no-repeat;
	border: none
}

.no-multiplebgs #content.with-sidebar {
	background: #E2E2E2 url(../images/content-with-sidebar.jpg) center top repeat-y
}

#content.with-sidebar div.wrapper {
	padding-left: 10px;
	width: 970px
}

#content.with-sidebar article {
	float: right;
	width: 680px;
	padding-right: 30px
}

#content.with-sidebar aside {
	float: left;
	width: 230px
}

#instruments header h1,
#case-study header h1,
#events-offers header h1 {
	color: #333;
	border-bottom: 1px solid #CBCECD;
	font-size: 22px;
	margin-bottom: 20px;
	padding-bottom: 10px
}

h2 .title-2 {
	color: #333;
	font-size: 22px;
	margin-bottom: 20px;
	padding-bottom: 10px
}

#instruments header a.button,
#case-study header a.button,
#events-offers header a.button {
	position: absolute;
	right: 10px;
	top: 0
}

#instruments header a.button:active,
#case-study header a.button:active,
#events-offers header a.button:active {
	top: 2px
}

#instruments,
#case-study,
#events-offers {
	float: left;
	padding: 0 10px;
	position: relative;
	width: 95%
}

#instruments {
	margin-right: 20px
}

body.events-offers #events-offers {
	width: inherit
}

#instruments h1 {
	background: transparent url(../images/music-gallery.png) left 5px no-repeat;
	text-indent: -9999px
}

#instruments figure {
	height: 166px;
	margin-bottom: 20px;
	position: relative
}

#instruments a {
	text-decoration: none
}

#instruments img {
	margin: 0
}

#instruments figcaption {
	background-color: rgba(0, 0, 0, 0.5);
	bottom: 3px;
	left: 3px;
	padding: 10px;
	position: absolute;
	width: 414px
}

.no-rgba #instruments figcaption {
	background: transparent url(../images/opacity-000-50.png) left top repeat
}

#instruments figcaption h2 {
	color: #FFF;
	font-size: 22px;
	line-height: 22px;
	margin: 0
}

#instruments figcaption p {
	color: #CCC;
	margin: 0
}

#case-study {
	margin-bottom: 30px
}

#case-study img {
	float: left;
	margin: 0 10px 10px 0
}

#case-study h2 {
	font-size: 22px;
	line-height: 26px
}

#events-offers ul {
	list-style: none;
	margin: 0;
	padding: 0
}

#events-offers li {
	display: block;
	float: left;
	margin: 0 0 30px 20px;
	padding: 0 10px;
	width: 190px
}

#events-offers li:first-child {
	margin-left: 0
}

#events-offers li:nth-of-type(4n+1) {
	clear: left;
	margin-left: 0
}

#events-offers h2 {
	font-size: 22px;
	line-height: 26px
}

#events-offers time {
	border-bottom: 1px dotted #CBCECD;
	color: #999;
	display: block;
	font-size: 11px;
	margin-bottom: 10px;
	padding-bottom: 10px
}

span.category {
	background-color: #BBB;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	color: #FFF;
	display: inline-block;
	font-size: 11px;
	line-height: 11px;
	margin-bottom: 5px;
	padding: 4px 5px 5px
}

#contact-cta {
	background-color: rgba(0, 0, 0, 0.06);
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	clear: both;
	margin-top: 30px;
	overflow: auto;
	padding: 10px 15px 15px 15px
}

.no-rgba #contact-cta {
	background-color: #E0E4E3
}

#contact-summary {
	float: left;
	width: 365px
}

#contact-summary p {
	font-size: 11px;
	margin: 0
}

#contact-options {
	float: right;
	text-align: center;
	width: 275px
}

#contact-options h3 {
	margin-bottom: 13px;
	text-align: center
}

.piano-item {
	border-top: 1px dashed #CCC;
	display: block;
	margin-top: 20px;
	overflow: auto;
	padding-top: 35px
}

.piano-item:first-of-type {
	border-top: none;
	margin-top: 0;
	padding-top: 0
}

.piano-item img {
	margin-left: 2px
}

#contact-us {
	float: left;
	padding: 0 10px;
	width: 440px
}

#contact-us.thank-you {
	text-align: center
}

#contact-us header h1 {
	color: #333;
	border-bottom: 1px solid #CBCECD;
	font-size: 22px;
	padding-bottom: 10px
}

#contact-us img {
	border: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none
}

#contact-us #contact-subject {
	display: none
}

#google-map {
	background-color: #FFF;
	border: 1px solid #CCC;
	float: left;
	margin-left: 20px;
	padding: 9px 9px 4px
}

#site-footer {
	background: #396A7C url(../images/site-footer.png) repeat-x;
	background-position: 0px -7px;
	overflow: auto;
	padding: 20px 0 15px 0
}

#site-footer img {
	background-color: transparent;
	border: 0;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	float: left;
	margin: 4px 6px 0 10px;
	opacity: 0.75
}

#site-footer img:hover {
	opacity: 1
}

#site-footer p {
	color: #FFF;
	float: left;
	font-size: 13px;
	margin: 0 0 0 30px;
	opacity: 0.75;
	width: 580px;
}

a.footer_link{
	color: #FFF;

}

a.footer_link:hover {
	color: #333
}



.classesonline {
	position: absolute;
	display:inline-block;
	width:115px;
	height: 280px;
	border: 10px solid white;
	border-top: none;
	text-align:center;
	right: 200px;
	}
	.cotext-top, .cotext-promo  {
		width: 150%; 
		position: relative;
	display:inline-block;
	font-family:Arial, Helvetica, sans-serif;
	color: #000;
	font-size: 1.5em;
	line-height: 1.4em;
	top: .7em;
    left: -20px;
			}
		.cotext-top span {
			font-size: 1.7em;
			}
		.cotext-promo {
			background-color: transparent;
			background: url(../images/brush.svg);
			width:243px;
			height:165px;
			top: .4em;
			}
			.cotext-promo .price {
				font-size:3.2em;
				letter-spacing: -.15em;
				    font-weight: bold;
					margin-top: .4em;
					margin-right: .04em;
					display: inline-block;
				}
				.cotext-promo .percentage {
					display: inline-block;
    				font-size: 1.5em;
					top: .5em;
					position: absolute;
					}
					.cotext-offprice {
						display: inline-block;
						font-weight: bold;
						top: -.1em;
						position: relative;
						font-size: 1.3em;
						}

						/*FIRST LESSON FREE*/
						.free-lesson .cotext-top  {
							font-size: 2.5rem;
							font-weight: bold;
							display: inline-block;
							line-height: 2.3rem;
							text-align: left;
							letter-spacing: -2px;
							z-index: 1;
								}
								.free-lesson .cotext-top span {
									font-size: 1.5em;
    								display: flex;
								}
								.free-lesson .cotext-top span.sm-text {
									font-size: 1.9rem;
								}

								.free-lesson .cotext-promo {
									background-repeat: no-repeat;
									width: 243px;
									height: 165px;
									top: -2rem;
									padding-top: 3rem;
								}
.classesonline .-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 41px;
  text-align: center;
  text-decoration:none;
      position: relative;
    font-family: Arial, Helvetica, sans-serif;
    top: -5em;
    left: 1em;
}

.classesonline .-btn:hover {
  opacity: .8;
}

.classesonline .-bg {
  background: #000;
}

.classesonline .-txt {
  color: #fff;
}

/*Social Buttons*/
.btnsocial {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}

.btn_social {
  min-width: 110px;
  background-color: transparent;
  padding: .4rem 1rem;
  text-decoration: none;
  color: #FFF;
  display: -webkit-box;
  display: flex;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  margin-right: 10px;
}
.btn_social i {
  color: #FFF;
  font-size: 20px;
  padding-right: 10px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.btn_social span {
  align-self: center;
   color: #FFF;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
  -webkit-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
  opacity: 1;
  
}
.btn_social:hover i {
  -webkit-transform: translateX(45px);
          transform: translateX(45px);
  padding-right: 0;
  color: #fff;
}
.btn_social:hover span {
  opacity: 0;
}
.btn_social:active {

  box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1);
}

.btn-f {
  min-width: 110px;
  background-color: transparent;
  padding: .4rem 1rem;
  text-decoration: none;
  color: #FFF;
  display: -webkit-box;
  display: flex;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.btn-f i {
  color: #FFF;
  font-size: 20px;
  padding-right: 10px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.btn-f span {
  align-self: center;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
  -webkit-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
  opacity: 1;
  color: #fff;
}
.btn-f:hover i {
  -webkit-transform: translateX(45px);
          transform: translateX(45px);
  padding-right: 0;
  color: #fff;
}
.btn-f:hover span {
  opacity: 0;
}


/*RESPONSIVE*/

@media (min-device-width:1024px) and (max-width:989px),
screen and (max-device-width:480px),
(max-device-width:480px) and (orientation:landscape),
(min-device-width:481px) and (orientation:portrait) {
	.wrapper {
		padding: 0 0 0 16px;
		width: 757px
	}
	#site-header {
		background-position: center 100px
	}
	#logo {
		background: url(../images/logo.png) center 10px no-repeat;
		display: block;
		height: 52px;
		left: 0;
		margin: 0 auto;
		padding: 10px 0 20px;
		position: relative;
		text-indent: -9999px;
		top: 0;
		width: 279px
	}
	#logo a {
		display: block;
		height: 52px;
		width: 279px
	}
	#strapline {
		margin-top: 220px
	}
	#video {
		right: 0;
		top: 10px
	}
	#primary-nav div.wrapper {
		height: inherit;
		overflow: inherit;
		padding: 0 1px 0;
		position: relative;
		width: 766px
	}
	#primary-nav li {
		border-left: 1px solid rgba(0, 0, 0, 0.1);
		border-right: 1px solid rgba(255, 255, 255, 0.1);
		float: left;
		text-align: center;
		width: 189px
	}
	#primary-nav li.instruments {
		margin-left: 0
	}
	#primary-nav li a {
		color: #CCC;
		display: block;
		font-size: 22px;
		height: 40px;
		padding: 20px 0;
		text-decoration: none;
		width: 100%;
		background-color: #3B6B7F;
	}
	#secondary-nav ul {
		padding: 0
	}
	#secondary-nav li {
		border-top: none;
		float: left;
		margin: 5px;
		width: 227px
	}
	#secondary-nav li:first-child {
		border-top: none
	}
	#secondary-nav li.current {
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		-o-border-radius: 5px;
		border-radius: 5px
	}
	#services div.wrapper {
		height: inherit;
		min-height: inherit;
		padding: 0 1px 0;
		width: 756px
	}
	#services li {
		border-bottom: 1px solid rgba(0, 0, 0, 0.10);
		border-left: 1px solid rgba(0, 0, 0, 0.10);
		border-right: 1px solid rgba(255, 255, 255, 0.1);
		border-top: 1px solid rgba(255, 255, 255, 0.10);
		width: 375px
	}
	#services li a {
		overflow: auto
	}
	#services li img {
		border: 3px solid #FFF;
		float: left;
		margin: 4px 10px 4px 0
	}
	#services li p {
		font-size: 13px;
		line-height: inherit
	}
	#overview,
	#upright-pianos-title,
	#grand-pianos-title {
		bottom: 50px
	}
	#content,
	#content div.wrapper {
		overflow: hidden
	}
	#content.with-sidebar {
		background: transparent url(../images/content.jpg) left top repeat;
		border: 1px solid #FFF;
		overflow: inherit
	}
	#content.with-sidebar div.wrapper {
		overflow: hidden;
		width: 747px
	}
	#content.with-sidebar article {
		float: none;
		padding-bottom: 30px;
		width: 736px
	}
	#content.with-sidebar aside {
		background: #DDD url(../images/sidebar.jpg) left top repeat;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		-o-border-radius: 5px;
		border-radius: 5px;
		-moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.25);
		-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.25);
		-o-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.25);
		box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.25);
		clear: both;
		padding: 10px 12px;
		width: 711px
	}
	#instruments,
	#case-study,
	#upcoming-events {
		float: left;
		padding: 0 10px;
		width: 95%
	}
	#instruments {
		margin-bottom: 30px
	}
	#events-offers {
		clear: both;
		margin-left: 0;
		width: 722px
	}
	#instruments img {
		width: 335px
	}
	#instruments figure {
		height: 130px
	}
	#instruments figcaption {
		line-height: 16px;
		width: 315px
	}
	#case-study {
		margin-bottom: 30px
	}
	#case-study img {
		float: none
	}
	#events-offers ul {
		list-style: none;
		margin: 0;
		padding: 0
	}
	#events-offers li {
		float: left;
		width: 331px
	}
	#events-offers h2 {
		font-size: 22px;
		line-height: 26px
	}
	#events-offers time {
		border-bottom: 1px dotted #CBCECD;
		color: #999;
		display: block;
		font-size: 11px;
		margin-bottom: 10px;
		padding-bottom: 10px
	}
	.piano-list {
		display: block;
		float: left;
		margin: 0 0 20px 10px;
		width: 340px
	}
	.piano-list ul {
		list-style: none;
		float: left;
		margin: 0;
		padding: 0;
		width: 340px
	}
	.piano-list li {
		border-bottom: 1px dashed #CCC;
		display: block;
		margin-bottom: 15px;
		overflow: auto;
		padding-bottom: 15px
	}
	.piano-list div {
		float: left;
		width: 181px
	}
	#contact-us {
		float: left;
		padding: 0 10px 0 0;
		width: 351px
	}
	#contact-us ul.form-structure {
		border-top: 1px dotted #CCC;
		padding-top: 20px
	}
	#google-map {
		background-color: #FFF;
		border: 1px solid #CCC;
		float: left;
		margin-left: 20px;
		padding: 9px 9px 4px
	}
	#google-map iframe {
		width: 341px
	}
	#site-footer {
		overflow: hidden
	}
	#site-footer p {
		width: 100%;
    text-align: center;
    margin: 0 0 1em;
	}
	.classesonline {
	right: 150px;
	position: relative;
    float: right;
	height:250px;
	}
	.cotext-top{
		    top: .1em;
		}
	.cotext-promo {
			top: -.2em;
		}
		.classesonline .-btn {
			    top: -6em;
			}
			.btnsocial {
				width: 100%;
				}
}
@media (max-width:699px) {
	.classesonline {
	right: 260px;
	position: relative;
    float: right;
	}
	}

@media (min-device-width:1024px) and (max-width:509px),
(max-device-width:480px) and (orientation:portrait) {
	body {
		width: 100%;
		
	}
	.wrapper {
		padding: 0 10px;
		width: 100%
	}
	#site-header {
		background-position: center 290px;
		min-height: 500px
	}
	#site-header div.wrapper {
		padding: 0
	}
	#logo {
		width: 279px
	}
	#video {
		background-size: 100%;
		height: 196px;
		width: 300px;
		top: 10px
	}
	#strapline {
		line-height: 36px;
		margin-top: 210px;
		padding-left: 0;
		font-size: 38px;
		text-align: center;
		text-shadow: 0 3px 5px #000;
		width: 300px
	}
	#strapline span {
		font-size: 24px
	}
	#strapline span {
		margin-left: 0px
	}
	#strapline span:first-child {
		margin-left: 0
	}
	#primary-nav {
		background: none
	}
	#primary-nav div.wrapper {
		height: inherit;
		overflow: inherit;
		padding: 0;
		position: relative;
		width: 100%
	}
	#primary-nav ul {
		border: none
	}
	#primary-nav li {
		background: #333;
		border: none;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		float: none;
		text-align: center;
		width: 100%
	}
	#primary-nav li.instruments {
		margin-left: 0
	}
	primary-nav li a {
		color: #CCC;
		display: block;
		font-size: 22px;
		line-height: 22px;
		height: 30px;
		padding: 12px 0 8px;
		text-decoration: none;
		width: 100%
	}
	#secondary-nav li {
		width: 266px
	}
	#secondary-nav li div {
		float: left;
		width: 162px
	}
	#services div.wrapper {
		height: inherit;
		min-height: inherit;
		padding: 0 1px 0;
		width: 318px
	}
	#services li {
		border-bottom: 1px solid rgba(0, 0, 0, 0.10);
		border-left: 1px solid rgba(0, 0, 0, 0.10);
		border-right: 1px solid rgba(255, 255, 255, 0.1);
		border-top: 1px solid rgba(255, 255, 255, 0.10);
		width: 314px
	}
	#services li a {
		overflow: auto
	}
	#services li img {
		border: 3px solid #FFF;
		float: left;
		margin: 4px 10px 4px 0
	}
	#services li p {
		font-size: 13px;
		line-height: inherit
	}
	#overview,
	#upright-pianos-title,
	#grand-pianos-title {
		bottom: 30px;
		margin: 20px 0;
		padding: 15px 15px 25px 25px
	}
	#overview h1,
	#upright-pianos-title h1,
	#grand-pianos-title h1 {
		font-size: 38px;
		line-height: 42px
	}
	#overview p,
	#upright-pianos-title p,
	#grand-pianos-title p {
		font-size: 18px;
		line-height: 24px
	}
	#content.with-sidebar div.wrapper {
		overflow: hidden;
		padding-right: 10px;
		width: 300px
	}
	#content.with-sidebar article {
		width: 300px
	}
	#content.with-sidebar aside {
		width: 276px
	}
	#instruments header h1,
	#case-study header h1,
	#upcoming-events header h1 {
		color: #333;
		border-bottom: 1px solid #CBCECD;
		font-size: 22px;
		margin-bottom: 20px;
		padding-bottom: 10px
	}
	#instruments,
	#case-study,
	#events-offers {
		float: left;
		padding: 0 10px;
		width: 95%
	}
	#case-study,
	#events-offers {
		margin-left: 0
	}
	#instruments,
	#case-study,
	#events-offers {
		float: left;
		padding: 0 0;
		width: 95%
	}
	#instruments {
		margin-bottom: 30px
	}
	#case-study {
		margin-left: 0
	}
	#events-offers {
		width: 300px
	}
	#instruments img {
		width: 294px
	}
	#instruments figure {
		height: 114px
	}
	#instruments figcaption {
		width: 274px
	}
	#events-offers li {
		margin: 0 0 30px 0;
		width: 280px
	}
	#events-offers li p {
		margin-bottom: 0
	}
	#contact-summary {
		float: none;
		margin-bottom: 20px;
		text-align: center;
		width: 270px
	}
	#contact-options {
		float: right;
		text-align: center;
		width: 270px
	}
	.piano-list {
		display: block;
		float: left;
		margin: 0 0 20px 10px;
		width: 280px
	}
	.piano-list ul {
		list-style: none;
		float: left;
		margin: 0;
		padding: 0;
		width: 280px
	}
	.piano-list li {
		border-bottom: 1px dashed #CCC;
		display: block;
		margin-bottom: 15px;
		overflow: auto;
		padding-bottom: 15px
	}
	.piano-list div {
		float: left;
		width: 280px
	}
	#contact-us {
		margin-bottom: 30px;
		width: 300px
	}
	#contact-us label {
		width: 100%
	}
	#contact-us input,
	#contact-us textarea {
		width: 288px
	}
	#contact-us input[type=submit] {
		margin: 0;
		width: 300px
	}
	#google-map {
		margin-left: 0
	}
	#google-map iframe {
		height: 280px;
		width: 280px
	}
	#site-footer div.wrapper {
		padding: 0;
		width: 300px
	}
	#site-footer img {
		margin: 10px 28px
	}
	#site-footer p {
		margin: 1em 0;
    text-align: center;
    width: 100%;
	}
	.classesonline {
	left: 5px;
    position: relative;
    float: left;
    height: 195px;
	}
	.classesonline.free-lesson {
		float:right;
		margin-right: 3.2rem;
		}
	.cotext-promo {		
		left:-60px;
		background-position: -1em;
    background-repeat: no-repeat;
		}
		.classesonline .-btn {
			width: 120px;
			}
			.cotext-top {
				line-height: 1em;
				color: #FFF;
				}
			.cotext-top span {
    font-size: 1.3em;
    display: block;
	}
	.free-lesson .cotext-top {
		color: #000;
	}
}

@media (max-device-width:480px) and (orientation:landscape) {
	body {
		width: 767px;
	}
}

@media (min-device-width:481px) and (orientation:portrait) {
	body {
		width: 100%;
	}
}