* { 
    font-family: 'Open Sans', sans-serif;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing:border-box; 
    outline:none;
}
html {
    overflow-y:scroll;
    /*overflow-x:hidden;*/
}
body {
    /*font-size:14px;*/
    line-height:1.6;
    color:#333333;
}

h1 { margin:0 0 0.83em; font-size:2em; line-height:1.4; font-weight:normal; }
h1.marginBottom0 { margin:0; }

h2 { margin:0 0 0.83em; font-size:1.2em; line-height:normal; font-weight:normal; }
h2 .button-group { float:right; }

h3 { 
    color:rgb(204,102,102); 
    margin:1.4em 0 0.83em;
    font-size:16px;
    font-weight:normal; 
}

h4 {
    font-size:15px;
    padding:0;
    margin:.5em 0 .5em;
}

.title-row { 
/*    border-bottom:1px solid #f1f1f1; 
    margin-bottom:0.83em; */
    margin-bottom:1.83em;
}

a, a:visited { border-bottom:1px dotted #ddd; text-decoration:none; color:inherit; }
a:hover { border-bottom:1px solid #999; text-decoration:none; color:inherit; }

.underline-link { font-weight:bold; }
a .underline-link { border-bottom:1px dotted #999; font-weight:bold; }

.site-world { background:no-repeat top center; }

.site-width { width:980px; padding:0 32px; margin:0 auto; /*height:400px; background:red; background:#ddd;*/ }

body.popout .site-width { width:700px; padding:0 20px; margin:0 auto; /*height:400px; background:red; background:#ddd;*/ }
body.popout .site-main { width:570px; float:left; }
body.popout .site-main { width:570px; float:left; }
body.popout .site-main .site-center { width:570px; padding-right:0px; }

/*.site-left { float:left; width:130px; padding:28px 0 0 0; }
.site-left .logo { width:105px; height:105px; display:block; background:url("../images/thekeyboardtrust-logo.png?v=1") no-repeat center; margin:0; border:none; text-decoration:none; }
.site-left .logo span { display:block; text-indent:-9999px; }*/

.site-main { float:right; width:850px; }

.site-content { }
/*.site-content.site-content-full { background:url("../images/site-band-full-01.gif?v=1") no-repeat; background-position:center -300px; }*/
/*.site-content.site-content-content { background:url("../images/site-band-content-01.gif?v=1") no-repeat; background-position:center -300px; }*/

.site-content.site-content-full.with-top, .site-content.site-content-content.with-top { background-position:top center; }

.site-content .site-center h2 { margin:0; padding:0 0 6px; font-size:12px; color:#AB0634; color:#333; }
.site-content .site-center h2.big { font-size:15px; padding:20px 0 8px; }
/*.site-content .site-center a { color:#4c4c4c; border-bottom-color:#4c4c4c; }*/

.site-top, .height-top { height:270px; }
.site-bottom { min-height:209px; }

.site-center { float:left; width:591px; }
.site-center.site-center-main { /*padding:15px 28px 15px 0; width:563px;*/ padding:15px 0; width:591px; min-height:400px; /*background:rgb(251,241,221);*/ }

.site-content-content .site-center.site-center-main { 
    /*width:576px;*/ 
    width:653px; 
    padding-right:15px; 
}
.site-content-content .site-bottom { width:576px; padding-right:15px; float:left; }

.site-right { float:right; width:240px; }
.site-right p { font-size:12px; /*margin:0; padding:0; padding-bottom:12px;*/ text-align:left; }
.site-right h1 { font-size:12px; color:rgb(204,102,102) /*rgb(171,6,52)*/; padding:0; margin:0; height:28px; }
.site-right h1 span { padding:7px 0 0; display:block; }
.site-right input { width:100%; margin:0 0 15px; /*14*/ }

/*.site-right .topRightSubButtons { position:absolute; top:auto; left:auto; margin:-86px 0 0 0; width:240px; }*/

.site-bottom .site-right { margin:0; border-left:1px solid #fff; }
.site-bottom .site-right .site-right-inner { /*padding:15px 10px 15px 10px;*/ /*padding:15px 10px 15px 10px;*/ padding:8px 10px; }
.site-bottom .site-right h1.top { position:absolute; left:auto; top:auto; margin:-27px 0 0; /*margin:-30px 0 0 0;*/ }
.site-bottom .site-right p { color:rgb(76,76,76); font-size:12px; /*padding:0 0 12px;*/ /*text-align:justify;*/ }
.site-bottom .site-right p:last-child { padding:0; }


p { 
    color:rgb(76,76,76);
    font-size:15px;
    padding:0 0 1em;
    margin:0;
}
.p-padding {
    padding:0 0 1em;
}
p:last-child { padding-bottom:0; }

ul { margin:0; padding:0 0 1em 2em; }

ul li { color:rgb(76,76,76); font-size:15px /*17px*/; margin:0 0 5px; }

body.popout p { font-size:15px; }
body.popout ul li { font-size:15px; }

body.popout ul.popout-twocolumnlist { list-style:none; margin:0 0 17px; padding:0; }
body.popout ul.popout-twocolumnlist li { list-style:none; margin:0; padding:0 20px 10px 0; float:left; width:265px; clear:left; font-size:12px; }
body.popout ul.popout-twocolumnlist li:nth-child(even) { padding-right:0; clear:right; }

/* Site Footer */
footer#site-footer { padding:20px 0; }

footer#site-footer .social { float:right; }
footer#site-footer .social a { float:left; display:block; width:24px; height:24px; background:no-repeat center; margin:0 0 0 15px; }

footer#site-footer .copyright { }
footer#site-footer .copyright p { font-size:11px; color:#999; margin:5px 0; }


/** 
 * Thumbnail
 */
.page-thumbnails {  
}
.page-thumbnails .thumbs { 
    list-style:none;
    margin:0;
    padding:0;
}
.page-thumbnails .thumb { 
    display:block;
    margin:0;
    padding:0;
    list-style:none;
    float:left;
    width:16.667%;
    background:#f1f1f1;
    background:no-repeat center;
    background-size:cover;
    /*border:1px solid #ddd;*/
}
.page-thumbnails .thumb a {
    display:block;
    width:100%;
    height:0;
    padding-bottom: 56.25%;
    /*height:100%;*/
    border:none;
    overflow:hidden;
    position:relative;
}
.page-thumbnails span.overlay {
    position:absolute;
    top:0px;
    right:0px;
    bottom:0px;
    left:0px;
    background:white;
    opacity:0;
   transition: opacity .1s ease-in-out;
/*   -moz-transition: opacity .25s ease-in-out;
   -webkit-transition: opacity .25s ease-in-out;*/
}
.page-thumbnails .thumb a:hover span.overlay {
    opacity:0.9;
}
.page-thumbnails span.overlay span.overlay-inner {
    display:block;
    padding:9px 15px;
}
.page-thumbnails .name {
    display:block;
}
.page-thumbnails .country {
    display:block;
    font-size:12px;
}

.page-thumbnails .thumb a img { 
    width:100%;
}

@media (max-width: 991px){
    .page-thumbnails .thumb {
        width:33.334%;
    }
    .page-thumbnails .thumb:nth-child(4) {
        clear:left;
    }
}



/* On Page Gallery Thumbnails - 4 a row grid */
.page-gallery-thumbs { padding:28px 0 0; }
.page-gallery-thumbs ul.thumbs { list-style:none; margin:0; padding:0; float:left; }
.page-gallery-thumbs ul.thumbs li.thumb { list-style:none; float:left; width:144px; height:102px; margin:0 0 5px 5px; padding:0; /*background:#f1f1f1;*/ }
.page-gallery-thumbs ul.thumbs li.thumb:first-child { margin-left:0; }


.page-gallery-thumbs .img-overlay { opacity:0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; position:absolute; top:auto; left:auto; background:rgba(0,0,0,.5); display:block; 
    transition:opacity .5s ease-in-out;
    -webkit-transition:opacity .5s ease-in-out;
    -moz-transition:opacity .5s ease-in-out;
    -ms-transition:opacity .5s ease-in-out;
    -o-transition:opacity .5s ease-in-out;
}
.page-gallery-thumbs .img-overlay span { color:#fff; display:block; padding:10px; font-size:11px; }
.page-gallery-thumbs span.see .img-overlay:hover { opacity:1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.page-gallery-thumbs ul.thumbs li.thumb span { position:absolute; top:auto; left:auto; }
.page-gallery-thumbs ul.thumbs li.thumb span a { border:none; display:block; }

.page-gallery-thumbs ul.thumbs li.thumb span img { opacity:0; display:block; 
    transition:opacity 1s ease-in-out, box-shadow .2s ease-in-out;
    -webkit-transition:opacity 1s ease-in-out, box-shadow .2s ease-in-out;
    -moz-transition:opacity 1s ease-in-out, box-shadow .2s ease-in-out;
    -ms-transition:opacity 1s ease-in-out, box-shadow .2s ease-in-out;
    -o-transition:opacity 1s ease-in-out, box-shadow .2s ease-in-out;
}
.page-gallery-thumbs ul.thumbs li.thumb span.see img { opacity:1; }
.page-gallery-thumbs ul.thumbs li.thumb span a:hover img { 
    box-shadow:0 0 2px rgba(102, 102, 102, 1); 
    -webkit-box-shadow:0 0 5px rgba(102, 102, 102, 1); 
    -moz-box-shadow:0 0 5px rgba(102, 102, 102, 1); 
    -ms-box-shadow:0 0 5px rgba(102, 102, 102, 1); 
    -moz-box-shadow:0 0 5px rgba(102, 102, 102, 1);
}

.page-gallery-thumbs .page-gallery-image { float:left; width:293px; height:209px; margin:0 5px 5px 0; /*background:#f1f1f1;*/ }
.page-gallery-thumbs .page-gallery-image span img { opacity:0; display:block; 
    transition:opacity 1s ease-in-out, box-shadow .5s ease-in-out;
    -webkit-transition:opacity 1s ease-in-out, box-shadow .5s ease-in-out;
    -moz-transition:opacity 1s ease-in-out, box-shadow .5s ease-in-out;
    -ms-transition:opacity 1s ease-in-out, box-shadow .5s ease-in-out;
    -o-transition:opacity 1s ease-in-out, box-shadow .5s ease-in-out;
}
.page-gallery-thumbs .page-gallery-image span.see img { opacity:1; }

.page-gallery-thumbs .caption { padding:5px 0 0; font-size:12px; }

/* Faded Gallery */
.page-gallery-thumbs.faded-thumbs ul.thumbs { opacity:.8; display:block; 
    transition:opacity .5s ease-in-out;
    -webkit-transition:opacity .5s ease-in-out;
    -moz-transition:opacity .5s ease-in-out;
    -ms-transition:opacity .5s ease-in-out;
    -o-transition:opacity .5s ease-in-out;
}

.page-gallery-thumbs.faded-thumbs:hover ul.thumbs { opacity:1; }


/* Inputs */
/*input, textarea, select { padding:6px; border:1px solid #999; font-size:11px; 
box-shadow: inset 0 0 8px rgba(0,0,0, 0.25); 
-webkit-box-shadow: inset 0 0 8px rgba(0,0,0, 0.25); 
-moz-box-shadow: inset 0 0 8px rgba(0,0,0, 0.25); 
-ms-box-shadow: inset 0 0 8px rgba(0,0,0, 0.25); 
-moz-box-shadow: inset 0 0 8px rgba(0,0,0, 0.25);
}*/
/*input:focus { outline: none; }*/

@font-face {
    font-family: 'AkzidenzGroteskBQMedium';
    src: url('akzidenzgrotesk-medium-webfont.eot');
    src: url('akzidenzgrotesk-medium-webfont.eot?#iefix') format('embedded-opentype'),
         url('akzidenzgrotesk-medium-webfont.woff') format('woff'),
         url('akzidenzgrotesk-medium-webfont.ttf') format('truetype'),
         url('akzidenzgrotesk-medium-webfont.svg#AkzidenzGroteskBQMedium') format('svg');
    font-weight: normal;
    font-style: normal;
}

/*
 * Colours
 */
.tc-red { color:rgb(204,102,102); /*rgb(171,6,53)*/ }
.tc-redfaded { color:rgb(217,163,163); }
.tc-red-70 { color:rgb(204,102,102); }
.tc-grey { color:rgb(109,110,113); }

/*
 * Specific Items
 */
/* Scroller */
.scroller { position:relative; overflow:hidden; height:auto; overflow:auto; }
.scroller .scroller-inner { overflow:hidden; overflow-y:scroll; /*width:120%;*/ }

.scroller .scrollholder { display:block; position:absolute; width:7px; z-index:5; right:4px; top:6px; bottom:6px; }
.scroller .scrollhandle { height:200px; background-color:#000; /*background-color:rgba(0,0,0,0);*/ opacity:0; -webkit-border-radius:7px; width:7px; right:2px; z-index:5; position:absolute; cursor:pointer; -webkit-transition:opacity .5s ease-in-out; }
.scroller.set .scrollhandle { /*background-color:rgba(0,0,0,.1);*/ opacity:.1; }
.scroller.mouseover .scrollhandle { /*background-color:rgba(0,0,0,.6);*/ opacity:.6; }
.scroller.scroll-off .scrollhandle { /*background-color:rgba(0,0,0,0);*/ opacity:0; }

/* Sidebar */
.rightsidebar-styled ul { list-style:none; margin:0; padding:0; }
.rightsidebar-styled ul li { display:block; margin:0; padding:0; font-size:12px; color:rgb(112,111,111); }
.rightsidebar-styled ul li .country { font-size:11px; }

.rightsidebar-styled ul li.allLink.title span { color:rgb(0,0,0); display:block; padding:8px 10px; }

.rightsidebar-styled ul li.allLink a { text-decoration:none; color:rgb(112,111,111); display:block; padding:8px 10px; text-decoration:none; border:none; }
.rightsidebar-styled ul li.allLink .areplace { color:rgb(112,111,111); display:block; padding:8px 10px; text-decoration:none; border:none; }

/*.rightsidebar-styled .scroller.scroll-on ul li.allLink .areplace { padding-right:18px; }*/

/*.rightsidebar-styled ul li.allLink.active { background:#f1f1f1; }*/
.rightsidebar-styled ul li.allLink.active a { color:rgb(204,102,102); }
.rightsidebar-styled ul li.allLink a:hover { color:rgb(204,102,102); }

.rightsidebar-styled.topright { height:209px; }
.rightsidebar-styled.topright .scroller-inner { height:209px; }

.rightsidebar-styled ul li.allContent { display:block; padding:8px 10px 8px 10px; text-decoration:none; border:none; }


.background-f1f1f1 { background:#f1f1f1; }

/*
.rightsidebar-styled ul { list-style:none; margin:0; padding:10px; }

.rightsidebar-styled ul li { display:block; margin:0; padding:0 0 4px; font-size:12px; }
.rightsidebar-styled ul li:last-child { padding-bottom:0; }

.rightsidebar-styled ul li span { color:rgb(109,110,113); }
.rightsidebar-styled ul li .redbold { color:rgb(171,6,52); font-weight:bold; }
.rightsidebar-styled ul li .bold { color:rgb(109,110,113); font-weight:bold; text-decoration:none; }

.rightsidebar-styled ul li a { text-decoration:none; color:rgb(109,110,113); border-bottom-color:#999; }
.rightsidebar-styled ul li.active a { color:rgb(171,6,52); }
 
.rightsidebar-styled .scroller-inner { height:209px; }
*/

table { /*margin:0 0 22px;*/ margin:0 0 15px; border-collapse:collapse; }
table:last-child { margin-bottom:0; }
table tr td { padding:0 0 5px 0; color:rgb(76,76,76); font-size:15px /*17px*/; }
table tr td.label { padding-right:20px; color:#666; }

table.standard-table { /*margin:0 0 22px;*/ margin:0 0 22px; }
table.standard-table:last-child { margin-bottom:0; }
table.standard-table tr td { padding:0 0 5px 0; color:rgb(76,76,76); font-size:15px /*17px*/; }
table.standard-table tr td.label { padding-right:20px; color:#666; }



/* Event List - Sidebar */
.events-right-001 ul li .country { font-size:11px; }

/* Artists List - Sidebar */
/*
.resizer-artists-right-001 { margin:0 0 0 0; }
.resizer-artists-right-001 ul { list-style:none; margin:0; padding:0; }
.resizer-artists-right-001 ul li { display:block; margin:0; padding:0; font-size:12px; }
.resizer-artists-right-001 ul li .country { font-size:11px; }

.resizer-artists-right-001 ul li a { text-decoration:none; color:rgb(109,110,113); display:block; padding:8px 10px 8px 10px; text-decoration:none; border:none; }
.resizer-artists-right-001 ul li.active { background:#f1f1f1; }
.resizer-artists-right-001 ul li.active a { color:rgb(171,6,52); }
*/
#filterArtistTreenoMatchFound { font-size:12px; color:rgb(109,110,113); padding:4px 0; }

/* Download - Sidebar */
.download-document a { display:block; padding:10px; margin:0; text-decoration:none; background:url("../images/file_extension_pdf.png?v=1") no-repeat 10px 14px; color:rgb(76,76,76); border:none; }
.download-document a:hover { background-color:#f1f1f1; }
.download-document a:hover .what { text-decoration:underline; }
.download-document .inner { width:180px; float:right; font-size:12px; }
.download-document .download { font-size:18px; /*color:rgb(171,6,52);*/ }


table.blank, table.blank tr, table.blank tr td { border:none; padding:0; margin:0; }


a.sub-button { font-size:11px; border-radius:3px; padding:3px 6px; display:block; float:left; text-align:center; margin:1px 0 0 10px; border:none; color:#999; background:#f1f1f1; text-transform:uppercase; }
a.sub-button:hover { color:#AB0634; background:#f1f1f1; }

/*.height-100 { height:100px; overflow:hidden; }*/
.height-100 { max-height:600px; }

/* Wordpress Images */
.aligncenter { margin:0 0 10px 0; }
.alignright { float:right; margin:0 0 15px 15px; }
.alignleft { float:left; margin:0 15px 15px 0; }
.alignnone { margin:0 0 15px; }

.wp-caption { background:#333; }
.wp-caption a, .wp-caption img { display:block; }
.wp-caption p.wp-caption-text { font-size:10px; padding:5px; color:#f1f1f1; }

.wp-caption.alignnone img,
img.alignnone { width:100%; height:auto; display:block; }
img.alignnone { margin:0; }

.mainImageText { position:absolute; top:auto; left:auto; width:591px; text-align:right; margin:247px 0 0 0; font-size:12px; color:rgb(171,6,53);  }
.mainImageText a { color:#999; text-decoration:none; border-bottom:1px dotted #999; color:rgb(171,6,53); }
.mainImageText a:hover { color:rgb(171,6,53); }



/* Individual Concert Calendar */
.individualConcertCalendar {  }
.individualConcertCalendar table { border:none; padding:0; margin:0; width:100%; }

.individualConcertCalendar table thead tr td,
.individualConcertCalendar table tr.header td { border-bottom:0px solid #ddd; font-weight:bold; font-size:10px; }

.individualConcertCalendar table td.yearHeader { padding-top:20px; }
.individualConcertCalendar table td.yearHeader h2 { font-size:15px; padding-bottom:0; }

.individualConcertCalendar table tr { border:none; padding:0; margin:0; }
.individualConcertCalendar table tr.border-bottom td { border-bottom:0px solid #ddd; }
.individualConcertCalendar table tr:last-child td { border:none; }
/*.individualConcertCalendar table tr:last-child td { padding-bottom:0; }*/
.individualConcertCalendar table tr td { border:none; padding:8px; margin:0; font-size:13px; color:#4C4C4C; }
.individualConcertCalendar table tr td:first-child { padding-left:0px; }
.individualConcertCalendar table tr td:last-child { padding-right:0px; }

.individualConcertCalendar table tr td.date { width:90px; padding-left:0; color:rgb(204,102,102); }
.individualConcertCalendar table tr td.venue { }
.individualConcertCalendar table tr td.artist { width:180px; padding-right:0; }

/*.individualConcertCalendar table tr td.date-month { width:10px; padding-right:0; color:rgb(204,102,102); }*/
/*.individualConcertCalendar table tr td.date-year { width:54px; padding-left:0; color:rgb(204,102,102); }*/


.individualConcertCalendar table tr.past-event td.date,
.individualConcertCalendar table tr.past-event td.date-month,
.individualConcertCalendar table tr.past-event td.date-year { color:#999; }

/*.individualConcertCalendar table tr td:first-child { padding-left:0; }
.individualConcertCalendar table tr td:last-child { padding-right:0; }*/

/*.individualConcertCalendar table tbody tr:nth-child(odd) td { background-color:#fff; }*/
/*.individualConcertCalendar table tbody tr:nth-child(odd) td { background-color:#fff; }*/

/**
 * Clearfix and friends
 */
.clearfix:before, .clearfix:after,
.row:before, .row:after { content: " "; display: table; }
.clearfix:after,
.row:after { clear:both; }

.r { clear:both; height:0px; font-size:0; margin:0; padding:0; overflow:hidden; }

/**
 * Dividing line
 */
hr.hr { clear:both; border:0; height:1px; position:relative; margin:2em 0; }
hr.hr:before, hr.hr:after { content:''; position:absolute; width:100%; }
hr.hr:before { top:-0.25em; height:0.5em; }
hr.hr, hr.hr:before { background:radial-gradient(ellipse at center, rgba(221,221,221,.5) 0%, rgba(221,221,221,0) 75%); }
hr.hr:after { content:''; height:0.5em; top:1px; }
hr.hr:after { background:#fff; }

/**
 * Forms
 */
input, input[type="search"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing:border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.radio, .checkbox {
    position: relative;
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
}
.radio label, .checkbox label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: 400;
    cursor: pointer;
}
.radio input[type=radio], .checkbox input[type=checkbox] {
    position: absolute;
    margin-top: 4px \9;
    margin-left: -20px;
}

.button,
a.button,
button,
input,
textarea { 
    padding:6px 12px;
    border-radius:3px; 
    border:1px solid #ddd; 
    box-shadow:0 1px 1px rgba(0, 0, 0, 0.075) inset;
}

.button {
    display:inline;
    cursor:pointer;
}
.button:hover, button:hover {
    box-shadow:inset 0px -1px 2px 2px rgba(0,0,0,0.1);
}
a.button:active, button:active {
    box-shadow:
        inset 0px -10px 35px 2px rgba(0,0,0,0.2),
        inset 0px -1px 2px 2px rgba(0,0,0,0.1);
/*-moz-box-shadow: inset 0px -10px 35px 2px rgba(0,0,0,0.3);
box-shadow: inset 0px -15px 35px 2px rgba(0,0,0,0.3);*/
}

.button.button-top { border-radius:3px 3px 0 0; }
.button.button-bottom { border-radius:0 0 3px 3px; }
.button.button-left { border-radius:3px 0 0 3px; }
.button.button-right { border-radius:0 3px 3px 0; }
.button.button-center { border-radius:0; }

.button.disabled,
.button.disabled:hover,
.button.disabled:active { 
    background:#ddd; 
    cursor:default;
    box-shadow:none;
}

.button-group { }
.button-group .button { 
    border-radius:0;
    margin-right:1px; 
}
.button-group .button:first-child { 
    border-top-left-radius:3px;
    border-bottom-left-radius:3px;
}
.button-group .button:last-child { 
    border-top-right-radius:3px;
    border-bottom-right-radius:3px;
    margin-right:0; 
}

.menu-button { 
    overflow:visible;
    position:relative; 
}
.menu-button .button-menu {
    display:none;
    z-index:2;
    background:#65A7C6;
    position:absolute;
    top:auto;
    margin-top:5px;
    right:0;
    min-width:100px;
    border-radius:3px;
}
.menu-button.over .button-menu {
    display:block;
}
.menu-button .button-menu a.button {
    display:block;
    padding:5px 10px;
    white-space:nowrap;
    border:none;
    border-bottom:1px solid #fff;
    margin:0;
    /*background:transparent;*/
    /*border-radius:0 !important;*/
}
.menu-button .button-menu a:first-child {
    border-radius:0;
    border-top-left-radius:3px;
    border-top-right-radius:3px;
}
.menu-button .button-menu a:last-child {
    border-bottom:none;
    margin-bottom:-2px;
    border-radius:0;
    border-bottom-left-radius:3px;
    border-bottom-right-radius:3px;
}

.button-group-vertical .button { 
    display:block;
    float:none;
    margin-bottom:1px;
    border-radius:0;
}
.button-group-vertical a.button:first-child {
    border-top-left-radius:3px;
    border-top-right-radius:3px;
}
.button-group-vertical a.button:last-child {
    margin-bottom:0;
    border-bottom-left-radius:3px;
    border-bottom-right-radius:3px;
}


/*.menu-button .button-menu a:hover {
    box-shadow:inset 0px -1px 2px 2px rgba(0,0,0,0.1);
}
.menu-button .button-menu a:active {
    box-shadow:
        inset 0px -10px 35px 2px rgba(0,0,0,0.2),
        inset 0px -1px 2px 2px rgba(0,0,0,0.1);
}*/

h2 .button,
h2 a.button {
    font-size: .75em;
    top: -.15em;
    position: relative;
}

textarea { 
    resize:vertical;
}

.button,
a.button,
button,
input[type=button],
input[type=submit] {
    /*padding:7px 13px;*/
    padding:3px 13px 4px;
    box-shadow:none;
    background:#65A7C6;
    border:none;
    color:#fff;
    
    font-size:15px;
}

.button.button-alt,
button.button-alt,
input[type=button].button-alt,
input[type=submit].button-alt {
    background-color:#f9a646;
}

label { font-weight:700; }
.form-field { margin:0 0 15px 0; }
.form-field.required label:after { content:'*'; color:red; }



/* Columns */
.row { 
    margin-left:0;
    margin-right:0;
}
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12{
    padding-left:0;
    padding-right:0;
    margin:0;
}
/**(min-width: 641px), */
@media (min-width: 768px), (min-width:992px){
    .row { 
        margin-left:-15px;
        margin-right:-15px;
    }
    .col-md-1,
    .col-md-2,
    .col-md-3,
    .col-md-4,
    .col-md-5,
    .col-md-6,
    .col-md-7,
    .col-md-8,
    .col-md-9,
    .col-md-10,
    .col-md-11,
    .col-md-12 {
        float:left;
        padding-left:15px;
        padding-right:15px;
        background:transparent;
    }
    .col-md-12{width:100%}
    .col-md-11{width:91.66666667%}
    .col-md-10{width:83.33333333%}
    .col-md-9{width:75%}
    .col-md-8{width:66.66666667%}
    .col-md-7{width:58.33333333%}
    .col-md-6{width:50%}
    .col-md-5{width:41.66666667%}
    .col-md-4{width:33.33333333%}
    .col-md-3{width:25%}
    .col-md-2{width:16.66666667%}
    .col-md-1{width:8.33333333%}
}

@media only screen and (max-width:640px) {
    
    .row.phone-three-cols .col-md-1,
    .row.phone-three-cols .col-md-2,
    .row.phone-three-cols .col-md-3,
    .row.phone-three-cols .col-md-4,
    .row.phone-three-cols .col-md-5,
    .row.phone-three-cols .col-md-6,
    .row.phone-three-cols .col-md-7,
    .row.phone-three-cols .col-md-8,
    .row.phone-three-cols .col-md-9,
    .row.phone-three-cols .col-md-10,
    .row.phone-three-cols .col-md-11,
    .row.phone-three-cols .col-md-12 {
        float:left;
        padding-left:15px;
        padding-right:15px;
        background:transparent;
    }
    .row.phone-three-cols .col-md-12{width:33.33333333%}
    .row.phone-three-cols .col-md-11{width:33.33333333%}
    .row.phone-three-cols .col-md-10{width:33.33333333%}
    .row.phone-three-cols .col-md-9{width:33.33333333%}
    .row.phone-three-cols .col-md-8{width:33.33333333%}
    .row.phone-three-cols .col-md-7{width:33.33333333%}
    .row.phone-three-cols .col-md-6{width:33.33333333%}
    .row.phone-three-cols .col-md-5{width:33.33333333%}
    .row.phone-three-cols .col-md-4{width:33.33333333%}
    .row.phone-three-cols .col-md-3{width:33.33333333%}
    .row.phone-three-cols .col-md-2{width:33.33333333%}
    .row.phone-three-cols .col-md-1{width:33.33333333%}
    
    .container { width:auto; }
}



/**
 * Container
 */
.container { 
    margin:0 auto;
    padding:0 2em;
    overflow:visible;
}

.container { width:980px; margin:0 auto; }
.site-main { width:916px; }

@media (min-width: 768px) {
    .container {
        max-width: 750px;
    }
}
@media (min-width: 992px) {
    .container {
        max-width: 970px;
    }
}

body.body-mobile-device .container {
    overflow:hidden;
}





header#site-header.site-header-block {
    transition:background-color 0.3s ease;
}


@media (min-width: 768px) {
    
header#site-header.site-header-float {
    position:fixed;
    top:0;
    width:100%;
    background:rgba(250,250,250,.9);
    z-index:999;
}
header#site-header.site-header-float ul li a {
   padding:25px 25px;
}
header#site-header.site-header-float .logo {
    display:none;
    /*
    background: url(../images/thekeyboardtrust-header.png) no-repeat center left;
    width:250px;
    height:18px;
    bottom:27px;
    margin-left:25px;
    */
}
header#site-header.site-header-float .logo img {
    display:none;
}

}

header#site-header .navbar-nav-toggle { display:none; }


.site-background-header {
    position:absolute; 
    z-index:-1;
    height:500px;
    width:100%;
    
    background-position:bottom center;
    background-repeat:no-repeat;
    background-size:cover;
    background-image:url(../images/header-backgrounds/sitebackground-001.jpg);
}

.site-header-push { 
    height:255px;
}

header#site-header { 
    padding:0;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
    /*background-image:url(../images/header-backgrounds/piano_keys.jpg);*/
    /*border-bottom:1px solid #fafafa;*/
    margin:0 0 30px;
    
    transition:background-color 0.5s ease;
}

header#site-header ul { 
    list-style:none;
    margin:0;
    padding:0;
}
header#site-header ul li { 
    list-style:none;
    float:left;
    margin:0; 
}
header#site-header ul li a { 
    display:block;
    /*text-transform:uppercase;*/
    text-decoration:none;
    border:none;
    font-size:1em;
    color:#333;
    /*color:rgb(171,6,53);*/ 
    margin-bottom:1px;
    padding:150px 25px 50px;
    font-weight:600;
}



header#site-header ul li a:hover,
header#site-header ul li.active a:hover { 
    color:rgb(204,102,102);
    /*border-bottom:1px solid rgb(204,102,102);*/
    /*margin-bottom:0;*/
}
/*header#site-header ul li.separator { font-size:10px; color:rgb(204,102,102); }*/
header#site-header ul li.active a { 
    color:rgb(204,102,102);
/*    border-bottom:1px solid #fff;
    margin-bottom:0;*/
    /*background:rgba(255,255,255,.2);*/
}

nav#site-nav {
    float:right;
    padding:0;
}

header#site-header h1 {
/*    display:block;
    width:355px;
    height:26px;
    margin:0 0 2px;
    background:url("../images/thekeyboardtrust-header.png") no-repeat center;*/
    display:none;
}
header#site-header h1 a {
    text-decoration:none;
    border:none;
    display:block;
    font-size:25px;
    text-indent:-9999px; 
}
/*header#site-header h2 { font-weight:normal; text-transform:uppercase; font-size:18px; color:rgb(171,6,52); margin:0; }*/

header#site-header .logo {
    display:block;
    float:left;
    width:120px;
    height:120px;
    position:absolute;
    bottom:1em;
    border:none;
    text-decoration:none;
    margin-left:25px;
}

header#site-header .logo img {
    display:block;
    width:120px;
    height:120px;
}


/**
 * Footer
 */
.footer {
    border-top:1px solid #ddd;
    margin-top:70px;
    padding-top:70px;
    padding-bottom:70px;
    opacity:0.5;
    
    transition:all .5s ease-in-out;
    -o-transition:all .5s ease-in-out;
    -moz-transition:all .5s ease-in-out;
    -webkit-transition:all .5s ease-in-out;
    -ms-transition:all .5s ease-in-out;
}
.footer:hover { opacity:1 }

.footer h2 {
    color:#333;
}
.footer ul {
    margin:0 0 1em;
    padding:0;
    list-style:none;
}
.footer ul li {
    margin:0;
    /*padding:0;*/
    /*display:inline;*/
    padding:0 0 5px;
}
.footer ul li a {
    text-decoration:none;
    font-size:1em;
    /*color:#333;*/
}

.social-links span {
    display:block; 
    padding:0 0 5px;
}
.social-links-horizontal span {
    float:left;
    padding:0 1em 0 0;
}
.social-links span i { 
    width:18px; 
}
.social-links span:last-child {
    padding-bottom:0;
}


.footer ul li a:hover {
    /*text-decoration:underline;*/
}
.footer .up-to-date {
    float:right;
    margin:0 0 2em;
}

/*@media only screen and (max-width:640px) {
    .footer .modules,
    .footer .features {
        float:left;
        width:50%;
    }
    .footer .modules {
        padding-left:15px;
    }
    .footer .features {
        padding-right:15px;
    }
    .footer .up-to-date {
        clear:both;
        float:none;
    }
}*/

/*header#site-header { }
header#site-header h1 { background:url("../images/thekeyboardtrust-header.png") no-repeat center; width:353px; height:25px; margin:0 0 2px; }*/

/*...*/



table.table-invisible { margin:0; }
table.table-invisible tr td { margin:0; padding:0; }

/** */

.event-single {  }
.event-single .get-tickets {  
    font-size:.75em;
    margin:0 0 0 1em;
    top:-.15em;
    position:relative;
    background-color:#f9a646;
}

table.event-artists {}

table.event-artists tr { border-top:0px solid #ddd }
table.event-artists tr td { padding:0 0 1.4em 0; vertical-align:top; }
table.event-artists tr:first-child { border-top:none; }
/*table.event-artists tr:first-child td { padding-top:0; }*/

table.event-artists tr td.profile-photo { width:50px; padding-right:1.5em; }
table.event-artists tr td.profile-photo span { display:block; width:50px; height:50px; background:#f1f1f1; border-radius:50%; overflow:hidden; }
table.event-artists tr td.profile-photo span img { width:100%; height:100%; display:block; }
table.event-artists tr td.info { padding-top:.7em; }
table.event-artists tr td.info.has-additional-info { padding-top:.1em; }
/*table.event-artists tr td.info div { padding:11px 0 0; }
table.event-artists tr td.info.has-additional-info div { padding:1px 0 0; }*/
table.event-artists tr td.info .name-link { font-weight:700 }



/* Contact Details */ 

/*.contact-details { width:100%; }
.contact-details i { width:20px; }
.contact-details a { word-wrap:break-word }*/


/**
 * Event listing page
 */
.events-list h3 {
    margin-bottom:0
}
.events-list.events-list-compact h3 {
    margin-bottom:.7em
}
.event-list { 
    padding:1.4em 0;
    border-bottom:1px solid #f1f1f1;
}
.events-list-compact .event-list { 
    float:left;
    width:50%;
    border-bottom:0;
    padding: .7em 0;
}
.events-list .event-list:last-child { 
    border-bottom:0;
}
.events-list-compact .event-list.event-list-odd .event-list-inner { 
    padding-right:.7em; 
}
.events-list-compact .event-list.event-list-even .event-list-inner { 
    padding-left:.7em; 
}
.events-list-compact .event-splitter { 
    clear:both;
    border-bottom:1px solid #f1f1f1;
}

/** Event List: Title, Location, and Date */
.event-list h1 { 
    font-size:16px; 
    font-weight:600; 
    margin-bottom:0.8em;
    margin-top:2px;
}
.event-list h2 { 
    font-size:0.8em; 
    font-weight:normal;
    margin-bottom:0;
}
.events-list-compact .event-list h2 { 
    padding-bottom:0
}
.event-list .datetime-box {
    display:block;
    width:3.5em;
    padding:.2em 0;
    background:#f1f1f1;
    line-height:100%;
    text-align:center;
    border-radius:3px;
    text-transform:uppercase;
    margin:0 1em 0 0;
}

.event-list .datetime-box .month {
    display:block;
    font-size:.75em;
}
.event-list .datetime-box .day {
    display:block;
    font-size:1.2em;
    font-weight:600;
}
.event-list .datetime-box .year {
    display:block;
    font-size:.75em;
}
/** Event List: Buttons */
.event-list .buttons { 
    opacity:.5;
    margin:0 0 0 1em;
    float:right;
}
.events-list-compact .buttons {
    display:none;
}
.event-list:hover .buttons { 
    opacity:1;
}
.event-list .buttons .button { 
    margin:0px 0 1px 1px; 
    font-size:.8em; 
    width:130px;
    display:block; 
}
.event-list .buttons .button.more-info i { 
    width:16px; 
    margin-left:4px; 
}
.event-list .buttons .button.get-tickets { 
    background-color:#f9a646; 
}
.event-list .buttons .button.get-tickets i { 
    width:20px; 
}
/** Event List: Artists */
.event-list .artists { 
}
.events-list-compact .artists { 
    display:none; 
}
.event-list .artists .artist { 
    float:left; 
    margin:.63em 25px 0 0;
    position:relative;
    min-height:30px;
}
.event-list .artists .artist .profile-photo { 
    /*float:left;*/
    /*display:inline-block;*/
    position:absolute;
    top:0;
    left:0;
    
    width:30px; 
    height:30px; 
    margin-right:0.5em; 
    border-radius:50%;
    overflow:hidden; 
    box-shadow:0 0 1px 0 #ddd;
}
.event-list .artists .artist .profile-photo a,
.event-list .artists .artist .profile-photo img { 
    border:none;
    text-decoration:none;
    display:block;
    width:100%;
    height:100%;
}
.event-list .artists .artist .info { 
    /*float:left;*/ 
    /*display:inline-block;*/
    /*white-space:nowrap;*/
/*    top:-10px;
    position:relative;*/
    
    padding:4px; 
    font-size:.8em;
    padding-left:40px;
}
.event-list .artists .artist .info .name-link { font-weight:600; }

/** 
 * Single event page
 */


.sidebar { }
.sidebar-next-to-header { padding-top:16px; }
.sidebar-block-wrapper.sidebar-block-background-001 {
    background-image:url(../images/sidebar/sidebar-001.jpg)
}
.sidebar-block-wrapper.sidebar-block-background-002 {
    background-image:url(../images/sidebar/sidebar-002.jpg)
}

.sidebar-block-wrapper { 
    border-radius:5px;
    background-size:cover;
    position:relative;
}

.sidebar-block { 
    padding:0 1.4em;
    border-radius:3px; 
    position:relative;
}

.sidebar-block-wrapper {
    background-color:#ddd;
}
.sidebar-block-wrapper .sidebar-block {
    padding-top:1.4em;
    padding-bottom:1.4em;
}

/*.sidebar-block-wrapper .sidebar-block,*/
.sidebar-block-wrapper .sidebar-block { 
    background-color:rgba(255,255,255,0.9);
}
    
.sidebar-block h4 {
    font-weight:normal;
    padding:0;
    margin:0;
}
.sidebar-block h3 {
    margin-top:0; 
}
.sidebar-block .thumbnail { 
    display:block; 
    width:75px; 
    height:75px; 
    background:#f1f1f1; 
    border-radius:3px; 
    float:right; 
    margin:0 0 1.5em 1.5em; 
    overflow:hidden;
}
.sidebar-block table.contact-details { 
    width:100%; 
}
.sidebar-block table.contact-details tr td {
    vertical-align:top;
    padding:0 0 .5em; 
}
.sidebar-block table.contact-details tr:last-child td { 
    padding:0;
}
.sidebar-block table.contact-details tr td:first-child { 
    width:20px;
    padding-right:10px;
    text-align:center;
}
.sidebar-block table.contact-details tr td div { 
    word-wrap:break-word; 
    width:220px; 
}

.overlay-link { 
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    opacity:0;
    z-index:2;
}

.sidebar-linklist {}
.sidebar-linklist .item { 
    position:relative;
    padding:0 0 .5em;
    margin:0 0 .5em;
    border-bottom:1px solid #f1f1f1;
    cursor:pointer;
}
.sidebar-linklist .item:last-child { 
    border-bottom:none;
    margin-bottom:0;
    padding:0;
}
.sidebar-linklist .item .overlay-link { 
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    opacity:0;
    z-index:2;
}

.sidebar-linklist .item:hover h4 { 
    color:#65A7C6;
}
.sidebar-linklist .item h4 { 
    margin:0;
    padding:0;
}
.sidebar-linklist .item .date { 
    color:#999;
}


.event-review h1 { font-size:14px; font-weight:bold; }
.event-review p:last-child { padding-bottom:1em; }

blockquote {
    margin:1em 2em 2em;
}
.event-review blockquote:before {
    position:absolute;
    font-family:FontAwesome;
    color:#ddd;
    font-size:20px;
    top:-5px;
    left:-25px;
    content:'\f075';
}

.event-review blockquote {
    position:relative;
    margin:0 0 0 30px;
    border-left:0px solid #ddd;
    padding:0 0 0 10px;
}

.opacity-fade-0-5 {
    transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
}
.opacity-fade-0-2 {
    transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
}

/** Partners */

.partners-frontcopy {
    float: right; 
    width: 450px; 
    padding-right: 15px; 
    text-align: justify;
}

.partners-frontimage {
    width:374px;
    height:170px;
}

/** HAMBURGER MENU!!!! */

.c-hamburger {
  display: block;
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
/*  width: 96px;
  height: 96px;*/
  width: 70px;
  height: 100px;
  font-size: 0;
  text-indent: -9999px;
  appearance: none;
  box-shadow: none;
  border-radius: none;
  border: none;
  cursor: pointer;
  background-color:transparent;
  border:none;
}
.c-hamburger:focus {
  outline: none;
}
.c-hamburger span {
  display: block;
  position: absolute;
  top: 47px;
  left: 18px;
  right: 18px;
  height: 5px;
  background:#333;
}
.c-hamburger span::before,
.c-hamburger span::after {
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 5px;
  background-color:#333;
  content: "";
}
.c-hamburger span::before {
  top: -12px;
}
.c-hamburger span::after {
  bottom: -12px;
}
.c-hamburger--htx span {
  transition: background 0s 0.3s;
  -webkit-transition: background 0s 0.3s;
}
.c-hamburger--htx span::before,
.c-hamburger--htx span::after {
  transition-duration: 0.3s, 0.3s;
  transition-delay: 0.3s, 0s;
  -webkit-transition-duration: 0.3s, 0.3s;
  -webkit-transition-delay: 0.3s, 0s;
}
.c-hamburger--htx span::before {
  transition-property: top, transform;
  -webkit-transition-property: top, transform;
}
.c-hamburger--htx span::after {
  transition-property: bottom, transform;
  -webkit-transition-property: bottom, transform;
}
/* active state, i.e. menu open */
.c-hamburger--htx.is-active span {
  background: none;
}
.c-hamburger--htx.is-active span::before {
  top: 0;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.c-hamburger--htx.is-active span::after {
  bottom: 0;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.c-hamburger--htx.is-active span::before,
.c-hamburger--htx.is-active span::after {
  transition-delay: 0s, 0.3s;
  -webkit-transition-delay: 0s, 0.3s;
}



/**
 * NEWS
 */
.news-list.news-list-with-hero {
    position:relative;
    margin-top:-116px; /* bring list up to h1 */ 
}
.news-list-item {  
    padding:0 0 2em;
    position:relative;
}
.news-list-item h3 {
    margin:0 0 .5em;
    color:inherit;
    font-weight:600;
}
.news-list-item .overlay-link {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    opacity:0;
    z-index:1;
}

.news-list-item .profile-photo {  
    border-radius:50%;
    overflow:hidden;
    width:25px;
    height:25px;
    margin:0 .1em -.5em 0;
    position:relative;
    display:inline-block;
}
.news-list-item .profile-photo a {
    border:none;
}
.news-list-item .profile-photo img {
    border-radius:50%;
    width:100%;
    height:100%;
}

/** IMAGE */
.list-item-image,
.news-list-item-image { 
    background:#f1f1f1;
}
.list-item-image .list-item-image-inner,
.news-list-item-image .news-list-item-imageinner { 
    display:block;
    border:none;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position:relative;
}
.list-item-image img,
.news-list-item-image img {
    width:100%;
    /*height:100%;*/
    position:absolute;
    display:block;
}

/** TEXT */
.news-list-summary {
    margin-bottom:.5em;
}
.news-list-detail { 
    color:#999;
}

/** DETAIL */

/** MAIN NEWS ITEMS */
.news-list-item-main { 
    /*border-bottom:1px solid #f1f1f1;*/
    border-bottom:1px solid #fafafa;
    margin-bottom:2em;
}
.news-list-item-main h3 { 
    font-size: 2em;
    line-height: 1.4;
    font-weight: normal;
}
.news-list-item-main .news-list-item-image { 
    float:right;
    width:60%;
    margin-left:20px;
}

/** COLUMNS */

.news-list-columnitems {
    display:table;
    padding-bottom:2em;
    margin:0 -1em 2em;
    border-bottom:1px solid #f1f1f1;
}
.news-list-item-column {
    position:relative;
    display:table-cell;
    /*width:33.333%;*/
    width:33.3%;
    padding:0 1em;
    border-right:1px solid #f1f1f1;
}

.news-list-item:hover h3 {
    color:#65A7C6;
}

.news-list-item-column .news-list-item-image {
    margin:0 0 1em;
}

.news-list-columnitems .news-list-item-column:first-child {
    /*padding-left:0*/
}
.news-list-columnitems .news-list-item-column:last-child {
    /*padding-right:0;*/
    border-right:none;
}

/*.news-list-item.news-list-item-column .overlay-link {
    left:1em;
    right:1em;
}
.news-list-item.news-list-item-column:first-child .overlay-link {
    left:0em;
}
.news-list-item.news-list-item-column:last-child .overlay-link {
    right:0em;
}*/

/**
 * NEWS ITEM
 */

.news-item {}
.news-item .written-by { color:#999; font-size:13px; }
.is-review,
.news-list-item .is-review,
.news-item .is-review {
    border:1px solid #f9a646;
    color:#f9a646;
    font-size:12px;
    padding:0 2px;
    position:relative;
    top:-1px;
    border-radius:4px;
}