/*
  Table of Content
==================================================

  01. Normalize
  02. Common
  03. Fontello
  04. Carousel
  05. Popup
  06. Header
  07. Footer
  08. Info
  09. Map
  10. Section
  11. Form
  12. Banner
  13. Instrument
  14. Staff
  15. Article
  16. Band
  17. Media
  18. Cta
  19. Testimonial
  20. Statistic
  21. Partner
  22. Gallery
  23. Line
*/

/**
--------------------------------------------------
  Normalize
--------------------------------------------------
**/
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
footer,
header,
nav,
section,
figcaption,
figure,
main,
details,
menu {
  display: block;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

abbr[title] {
  border-bottom: none;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: inherit;
  font-weight: bolder;
}

pre,
code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

audio,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

svg:not(:root) {
  overflow: hidden;
}

canvas {
  display: inline-block;
}

template {
  display: none;
}

[hidden] {
  display: none;
}


/**
--------------------------------------------------
  Common
--------------------------------------------------
**/
html {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
  color: #333745;
}

*,
*:after,
*:before {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

a,
button,
input,
textarea {
  outline: 0;
  -webkit-transition-property: background-color, border-color, color;
  -o-transition-property: background-color, border-color, color;
  transition-property: background-color, border-color, color;
  -webkit-transition-duration: 0.25s;
  -o-transition-duration: 0.25s;
  transition-duration: 0.25s;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

a {
  text-decoration: none;
}

button,
input,
textarea {
  font-family: inherit;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

button {
  cursor: pointer;
}

textarea {
  resize: none;
}

img {
  vertical-align: top;
}

.container {
  position: relative;
  max-width: 1060px;
  margin-right: auto;
  margin-left: auto;
}

/* mobile */
@media (max-width: 767px) {
  .master {
    padding-top: 60px;
  }
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .master {
    padding-top: 100px;
  }
  .container {
    padding-right: 30px;
    padding-left: 30px;
  }
}


/**
--------------------------------------------------
  Fontello
--------------------------------------------------
**/
@font-face {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  src: url("../font/fontello.eot?10841982");
  src: url("../font/fontello.eot?10841982#iefix") format("embedded-opentype"), url("../font/fontello.woff2?10841982") format("woff2"), url("../font/fontello.woff?10841982") format("woff"), url("../font/fontello.ttf?10841982") format("truetype"), url("../font/fontello.svg?10841982#fontello") format("svg");
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
  display: inline-block;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
}

.icon-bar:before {
  content: '\e800';
}

.icon-location:before {
  content: '\e801';
}

.icon-clock:before {
  content: '\e802';
}

.icon-up:before {
  content: '\e803';
}

.icon-down:before {
  content: '\e804';
}

.icon-close:before {
  content: '\e805';
}

.icon-link:before {
  content: '\e806';
}

.icon-search:before {
  content: '\e807';
}

.icon-play:before {
  content: '\e808';
}

.icon-twitter:before {
  content: '\f309';
}

.icon-facebook:before {
  content: '\f30c';
}

.icon-gplus:before {
  content: '\f30f';
}

.icon-mi-1:before {
  content: '\e8fa';
}

.icon-mi-2:before {
  content: '\e8fb';
}

.icon-mi-3:before {
  content: '\e8f2';
}

.icon-mi-4:before {
  content: '\e8f3';
}

.icon-mi-5:before {
  content: '\e8f4';
}

.icon-mi-6:before {
  content: '\e8f5';
}

.icon-mi-7:before {
  content: '\e8f6';
}

.icon-mi-8:before {
  content: '\e8f7';
}


/**
--------------------------------------------------
  Carousel
--------------------------------------------------
**/
.owl-stage-outer, .owl-stage, .owl-carousel, .owl-item {
  position: relative;
}

.owl-wrapper, .owl-stage, .owl-item {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.owl-wrapper, .owl-stage-outer, .owl-item {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.owl-stage-outer {
  overflow: hidden;
}

.owl-stage {
  -ms-touch-action: pan-Y;
}

.owl-stage:after {
  display: table;
  clear: both;
  content: "";
}

.owl-carousel, .owl-item {
  -webkit-tap-highlight-color: transparent;
}

.owl-carousel {
  z-index: 1;
  display: none;
}

.owl-item {
  min-height: 1px;
  float: left;
  -webkit-touch-callout: none;
}

.owl-nav.disabled, .owl-dots.disabled {
  display: none;
}

.owl-prev, .owl-next, .owl-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-prev, .owl-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  width: 20px;
  height: 20px;
  overflow: hidden;
  text-align: left;
  text-indent: -9999px;
  border-style: solid;
  border-width: 3px;
  -webkit-transition: border-color 0.25s ease-out;
  -o-transition: border-color 0.25s ease-out;
  transition: border-color 0.25s ease-out;
}

.owl-prev:hover, .owl-next:hover {
  border-color: #59c6bc;
}

.owl-prev.disabled, .owl-next.disabled {
  cursor: default;
}

.owl-prev {
  left: 0;
  border-width: 0 0 3px 3px;
}

.owl-next {
  right: 0;
  border-width: 3px 3px 0 0;
}

.owl-carousel.owl-loaded, .owl-carousel.owl-loading {
  display: block;
}

.owl-carousel.owl-loading, .owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.owl-height {
  -webkit-transition: height 0.25s ease-out;
  -o-transition: height 0.25s ease-out;
  transition: height 0.25s ease-out;
}


/**
--------------------------------------------------
  Popup
--------------------------------------------------
**/
.mfp-bg,
.mfp-wrap,
.mfp-container {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mfp-bg,
.mfp-wrap {
  position: fixed;
}

.mfp-bg {
  z-index: 1042;
  overflow: hidden;
  background-color: #000;
  opacity: 0.75;
}

.mfp-wrap {
  z-index: 1043;
  outline: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mfp-container {
  position: absolute;
  text-align: center;
}

.mfp-container:before {
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  pointer-events: none;
  content: "";
}

.mfp-content {
  position: relative;
  z-index: 1045;
  display: inline-block;
  width: 100%;
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
  vertical-align: middle;
  text-align: left;
  background-color: #000;
  -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.75);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.75);
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-close,
.mfp-preloader {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1044;
  width: 30px;
  height: 30px;
  font-size: 24px;
  background-color: #59c6bc;
  color: #fff;
}

.mfp-close:hover {
  background-color: #fff;
  color: #59c6bc;
}

.mfp-figure {
  text-align: center;
}

.mfp-figure figure {
  margin: 0;
  padding: 0;
}

.mfp-figure figcaption {
  display: none;
}

.mfp-figure img {
  display: block;
  max-width: 100%;
  height: auto;
}

.mfp-iframe-scaler {
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  border: 0;
}


/**
--------------------------------------------------
  Header
--------------------------------------------------
**/
.header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 10;
  font-size: 14px;
  line-height: 1.4286;
  background-color: #59c6bc;
  -webkit-box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.25);
  box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.25);
  color: #fff;
}

.header-title {
  display: none;
}

.header-logo img {
  width: auto;
}

.header-nav--button {
  position: absolute;
  top: 0;
  left: 15px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  font-size: 30px;
  line-height: 1;
  background-color: #59c6bc;
  color: #fff;
}

.header-nav--list {
  font-weight: 600;
}

.header-nav--list ul,
.header-nav--list li {
  margin: 0;
  padding: 0;
}

.header-nav--list ul {
  list-style: none;
}

.header-nav--list a {
  display: block;
  padding: 10px 15px;
}

.header-nav--list > ul > li > a {
  text-transform: uppercase;
}

.header-nav--list > ul > li > ul:before {
  position: absolute;
  top: -5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 0;
  height: 0;
  pointer-events: none;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0 5px 5px 5px;
}

.header-nav--list > ul > li > ul li {
  border-top: rgba(89, 198, 188, 0.25) solid 1px;
}

.header-nav--list > ul > li > ul li:first-child {
  border-top: 0;
}

/* mobile */
@media (max-width: 767px) {
  .header {
    padding: 15px 0;
    text-align: center;
  }
  .header-logo img {
    height: 30px;
  }
  .header-nav--button .icon {
    -webkit-transition: opacity 0.25s ease-out;
    -o-transition: opacity 0.25s ease-out;
    transition: opacity 0.25s ease-out;
  }
  .header-nav--button .icon-bar {
    opacity: 1;
  }
  .header-nav--button .icon-close {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    opacity: 0;
  }
  .header-nav--list {
    max-height: 0;
    margin: 0 -15px;
    padding: 0 15px;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-transition-property: max-height, margin-top;
    -o-transition-property: max-height, margin-top;
    transition-property: max-height, margin-top;
    -webkit-transition-duration: 0.35s;
    -o-transition-duration: 0.35s;
    transition-duration: 0.35s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
  }
  .header-nav--list > ul > li > ul {
    position: relative;
    background-color: rgba(255, 255, 255, 0.25);
  }
  .header-nav--list > ul > li > ul:before {
    border-bottom-color: rgba(255, 255, 255, 0.25);
  }
  .header-nav--list a {
    color: #fff;
  }
  .header-nav--list a:hover, .header-nav--list a.active {
    color: #fff568;
  }
  .header-nav.active .header-nav--button .icon-bar {
    opacity: 0;
  }
  .header-nav.active .header-nav--button .icon-close {
    opacity: 1;
  }
  .header-nav.active .header-nav--list {
    max-height: 75vh;
    margin-top: 15px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .header {
    padding: 25px 0;
  }
  .header-logo img {
    height: 50px;
  }
  .header-nav {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .header-nav--button {
    display: none;
  }
  .header-nav--list > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .header-nav--list > ul > li {
    position: relative;
  }
  .header-nav--list > ul > li:hover > ul {
    opacity: 1;
    visibility: visible;
  }
  .header-nav--list > ul > li > ul {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 200px;
    text-align: center;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    -webkit-transition-property: opacity, visibility;
    -o-transition-property: opacity, visibility;
    transition-property: opacity, visibility;
    -webkit-transition-duration: 0.25s;
    -o-transition-duration: 0.25s;
    transition-duration: 0.25s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
  }
  .header-nav--list > ul > li > ul:before {
    border-bottom-color: #fff;
  }
  .header-nav--list > ul > li > a {
    color: #fff;
  }
  .header-nav--list > ul > li > a:hover, .header-nav--list > ul > li > a.active {
    color: #fff568;
  }
  .header-nav--list > ul > li > ul > li > a {
    color: #59c6bc;
  }
  .header-nav--list > ul > li > ul > li > a:hover, .header-nav--list > ul > li > ul > li > a.active {
    color: #333745;
  }
}


/**
--------------------------------------------------
  Footer
--------------------------------------------------
**/
.footer {
  background-color: #59c6bc;
  color: rgba(255, 255, 255, 0.6);
}

.footer a {
  color: #fff;
}

.footer a:hover {
  color: #fff568;
}

.footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer-social a {
  display: block;
  padding: 5px 10px;
}

.footer-copyright {
  padding: 5px 0;
  font-size: 13px;
  line-height: 1.5;
}

/* mobile */
@media (max-width: 767px) {
  .footer {
    padding: 15px 0;
    text-align: center;
  }
  .footer-social {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .footer {
    padding: 30px 0;
  }
  .footer-social {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}


/**
--------------------------------------------------
  Info
--------------------------------------------------
**/
.info {
  background-color: #f7f7f7;
}

.info-section--title {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.25;
}

.info-section--body {
  position: relative;
  margin-top: 20px;
  padding-left: 40px;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(51, 55, 69, 0.8);
}

.info-section--body .icon {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 24px;
  line-height: 1;
  color: #59c6bc;
}

.info-address address {
  font-style: normal;
}

.info-address strong {
  font-weight: 700;
}

.info-twitter--content a {
  color: #000;
}

.info-twitter--content a:hover {
  color: rgba(51, 55, 69, 0.6);
}

.info-twitter--content strong {
  font-weight: 700;
}

.info-twitter--user a {
  color: rgba(51, 55, 69, 0.6);
}

.info-twitter--user a:hover {
  color: #000;
}

.info-plan ul,
.info-plan li {
  margin: 0;
  padding: 0;
}

.info-plan ul {
  list-style: none;
}

/* mobile */
@media (max-width: 767px) {
  .info {
    padding: 15px 0;
  }
  .info-section {
    padding: 15px 0;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .info {
    padding: 60px 0;
  }
  .info-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: -25px;
    margin-left: -25px;
  }
  .info-section {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-width: 30%;
    padding-right: 25px;
    padding-left: 25px;
  }
}


/**
--------------------------------------------------
  Map
--------------------------------------------------
**/
.map {
  position: relative;
  overflow: hidden;
  background-color: #fff;
}

.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* mobile */
@media (max-width: 767px) {
  .map {
    height: 200px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .map {
    height: 360px;
  }
}


/**
--------------------------------------------------
  Section
--------------------------------------------------
**/
.section-header {
  text-align: center;
}

.section-title {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-weight: 400;
}

.section-meta {
  margin-top: 10px;
  font-size: 14px;
  font-style: italic;
  line-height: 1.4286;
  text-transform: lowercase;
  color: #59c6bc;
}

.section.white {
  background-color: #fff;
}

.section.gray {
  background-color: #333745;
}

.section.thin-gray {
  background-color: #f7f7f7;
}

/* mobile */
@media (max-width: 767px) {
  .section {
    padding: 40px 0;
  }
  .section-title {
    font-size: 30px;
    line-height: 1.2;
  }
  .section-body {
    margin-top: 30px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .section {
    padding: 80px 0;
  }
  .section-title {
    font-size: 36px;
    line-height: 1.25;
  }
  .section-body {
    margin-top: 60px;
  }
}


/**
--------------------------------------------------
  Form
--------------------------------------------------
**/
.form {
  margin-right: auto;
  margin-left: auto;
}

.form-input {
  margin-bottom: 30px;
}

.form-input label {
  display: none;
}

.form-input input,
.form-input textarea {
  width: 100%;
  padding: 5px 0;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  background-color: #fff;
  border-bottom: rgba(51, 55, 69, 0.35) solid 1px;
}

.form-input input:hover,
.form-input textarea:hover {
  border-bottom-color: #fff568;
}

.form-input input:focus,
.form-input textarea:focus {
  border-bottom-color: #ef5729;
}

.form-button {
  text-align: center;
}

.form-button button {
  padding: 15px 60px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  background-color: #59c6bc;
  border-radius: 2em;
  color: #fff;
}

.form-button button:hover {
  background-color: #fff568;
  color: #333745;
}

/* mobile */
@media (max-width: 767px) {
  .form {
    max-width: 480px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .form {
    max-width: 780px;
  }
  .form-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: -15px;
    margin-left: -15px;
  }
  .form-grid .form-input {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50%;
    padding-right: 15px;
    padding-left: 15px;
  }
}


/**
--------------------------------------------------
  banner
--------------------------------------------------
**/
.banner {
  text-align: center;
  background-color: #333745;
  background-image: url(../img/bg-banner.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}

.banner-title {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-weight: 400;
  line-height: 1;
}

.banner-summary {
  margin-top: 10px;
  line-height: 1.5;
}

.banner-button a {
  display: inline-block;
  padding: 15px 30px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  background-color: #fff568;
  border-radius: 2em;
  color: #333745;
}

.banner-button a:hover {
  background-color: #59c6bc;
  color: #fff;
}

/* mobile */
@media (max-width: 767px) {
  .banner {
    padding: 70px 0;
  }
  .banner-title {
    font-size: 36px;
  }
  .banner-summary {
    display: none;
    font-size: 20px;
  }
  .banner-button {
    margin-top: 20px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .banner {
    padding: 200px 0;
  }
  .banner-title {
    font-size: 72px;
  }
  .banner-summary {
    font-size: 24px;
  }
  .banner-button {
    margin-top: 30px;
  }
}


/**
--------------------------------------------------
  Instrument
--------------------------------------------------
**/
.instrument-item {
  text-align: center;
}

.instrument-image {
  margin-bottom: 30px;
  font-size: 64px;
  line-height: 1;
  color: #59c6bc;
}

.instrument-name {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
}

.instrument-name a {
  color: #333745;
}

.instrument-name a:hover {
  color: #59c6bc;
}

.instrument-summary {
  margin-top: 20px;
  padding: 0 30px;
  font-size: 14px;
  line-height: 1.4286;
  color: rgba(51, 55, 69, 0.75);
}

/* mobile */
@media (max-width: 767px) {
  .instrument {
    max-width: 480px;
    margin-right: auto;
    margin-left: auto;
  }
  .instrument-item {
    margin-top: 30px;
  }
  .instrument-item:first-child {
    margin-top: 0;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .instrument {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: -60px;
  }
  .instrument-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 60px;
  }
}

/* tablet */
@media (min-width: 768px) and (max-width: 1023px) {
  .instrument-item {
    width: 50%;
  }
}

/* desktop */
@media (min-width: 1024px) {
  .instrument-item {
    width: 25%;
  }
}


/**
--------------------------------------------------
  Staff
--------------------------------------------------
**/
.staff-item {
  text-align: center;
}

.staff-image {
  margin-bottom: 20px;
}

.staff-image img {
  width: 230px;
  height: auto;
  background-color: #f7f7f7;
  border-radius: 50%;
}

.staff-name {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.25;
}

.staff-name a {
  color: #333745;
}

.staff-name a:hover {
  color: #59c6bc;
}

.staff-meta {
  margin-top: 5px;
  font-size: 14px;
  line-height: 1.4286;
  text-transform: lowercase;
  color: rgba(51, 55, 69, 0.75);
}

.staff-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 10px;
}

.staff-social a {
  display: block;
  padding: 5px 10px;
  color: #59c6bc;
}

.staff-social a:hover {
  color: #000;
}

/* mobile */
@media (max-width: 767px) {
  .staff {
    max-width: 480px;
    margin-right: auto;
    margin-left: auto;
  }
  .staff-item {
    margin-top: 30px;
  }
  .staff-item:first-child {
    margin-top: 0;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .staff {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: -60px;
  }
  .staff-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.3333%;
    margin-top: 60px;
  }
}


/**
--------------------------------------------------
  Article
--------------------------------------------------
**/
.article-item--image {
  position: relative;
}

.article-item--image:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  content: "";
  background-color: #59c6bc;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
}

.article-item--image img {
  width: 100%;
  height: auto;
}

.article-item--image a {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, 200%);
  -ms-transform: translate(-50%, 200%);
  transform: translate(-50%, 200%);
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 48px;
  height: 48px;
  font-size: 20px;
  background-color: #59c6bc;
  border-radius: 50%;
  color: #fff;
  -webkit-transition-property: opacity, background-color, color, -webkit-transform;
  transition-property: opacity, background-color, color, -webkit-transform;
  -o-transition-property: transform, opacity, background-color, color;
  transition-property: transform, opacity, background-color, color;
  transition-property: transform, opacity, background-color, color, -webkit-transform;
}

.article-item--image a:hover {
  background-color: #fff;
  color: #59c6bc;
}

.article-item--image:hover:after {
  opacity: 0.25;
}

.article-item--image:hover a {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 1;
}

.article-item--title {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
}

.article-item--title a {
  color: #333745;
}

.article-item--title a:hover {
  color: #59c6bc;
}

.article-item--summary {
  margin-top: 15px;
  font-size: 14px;
  line-height: 1.4286;
  color: rgba(51, 55, 69, 0.75);
}

.article-detail {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}

.article-detail--image img {
  width: 100%;
  height: auto;
}

.article-detail--body {
  margin-top: 30px;
  font-size: 14px;
  line-height: 1.4286;
  color: rgba(51, 55, 69, 0.75);
}

.article-detail--body h1,
.article-detail--body h2,
.article-detail--body h3,
.article-detail--body h4,
.article-detail--body p,
.article-detail--body ul,
.article-detail--body ol,
.article-detail--body li {
  margin: 0;
  padding: 0;
}

.article-detail--body h1,
.article-detail--body h2,
.article-detail--body h3,
.article-detail--body h4,
.article-detail--body p,
.article-detail--body ul,
.article-detail--body ol {
  margin-top: 20px;
}

.article-detail--body h1:first-child,
.article-detail--body h2:first-child,
.article-detail--body h3:first-child,
.article-detail--body h4:first-child,
.article-detail--body p:first-child,
.article-detail--body ul:first-child,
.article-detail--body ol:first-child {
  margin-top: 0;
}

.article-detail--body h1,
.article-detail--body h2,
.article-detail--body h3,
.article-detail--body h4 {
  font-family: "Lora", serif;
  font-weight: 400;
  line-height: 1.25;
  color: #333745;
}

.article-detail--body h1 {
  font-size: 24px;
}

.article-detail--body h2 {
  font-size: 20px;
}

.article-detail--body h3,
.article-detail--body h4 {
  font-size: 18px;
}

.article-detail--body ul,
.article-detail--body ol {
  margin-left: 30px;
}

.article-detail--body a {
  text-decoration: underline;
  color: #59c6bc;
}

.article-detail--body a:hover {
  color: #000;
}

/* mobile */
@media (max-width: 767px) {
  .article-list {
    max-width: 480px;
    margin-right: auto;
    margin-left: auto;
  }
  .article-item {
    margin-top: 30px;
  }
  .article-item:first-child {
    margin-top: 0;
  }
  .article-item--image {
    margin-bottom: 20px;
  }
  .article-item--summary {
    margin-top: 10px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .article-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: -60px;
  }
  .article-list.x2 {
    margin-right: -25px;
    margin-left: -25px;
  }
  .article-list.x3 {
    margin-right: -15px;
    margin-left: -15px;
  }
  .article-list.x2 .article-item {
    width: 50%;
    padding: 0 25px;
  }
  .article-list.x3 .article-item {
    width: 33.3333%;
    padding: 0 15px;
  }
  .article-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 60px;
  }
  .article-item--image {
    margin-bottom: 30px;
  }
  .article-item--summary {
    margin-top: 15px;
  }
}


/**
--------------------------------------------------
  Band
--------------------------------------------------
**/
.band-item {
  text-align: center;
}

.band-image {
  position: relative;
  width: 140px;
  height: 140px;
  overflow: hidden;
  margin-right: auto;
  margin-bottom: 20px;
  margin-left: auto;
  background-color: #f7f7f7;
  border-radius: 50%;
}

.band-image:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  content: "";
  background-color: #59c6bc;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
}

.band-image img {
  width: 100%;
  height: auto;
}

.band-image a {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, 200%);
  -ms-transform: translate(-50%, 200%);
  transform: translate(-50%, 200%);
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #59c6bc;
  border-radius: 50%;
  color: #fff;
  -webkit-transition-property: opacity, background-color, color, -webkit-transform;
  transition-property: opacity, background-color, color, -webkit-transform;
  -o-transition-property: transform, opacity, background-color, color;
  transition-property: transform, opacity, background-color, color;
  transition-property: transform, opacity, background-color, color, -webkit-transform;
}

.band-image a:hover {
  background-color: #fff;
  color: #59c6bc;
}

.band-image:hover:after {
  opacity: 0.25;
}

.band-image:hover a {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 1;
}

.band-name {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
}

.band-name a {
  color: #333745;
}

.band-name a:hover {
  color: #59c6bc;
}

.band-summary {
  margin-top: 15px;
  font-size: 14px;
  line-height: 1.4286;
  color: rgba(51, 55, 69, 0.75);
}

/* mobile */
@media (max-width: 767px) {
  .band {
    max-width: 480px;
    margin-right: auto;
    margin-left: auto;
  }
  .band-item {
    margin-top: 30px;
  }
  .band-item:first-child {
    margin-top: 0;
  }
  .band-image a {
    width: 32px;
    height: 32px;
    font-size: 15px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .band {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: -60px;
  }
  .band-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 60px;
    padding: 0 30px;
  }
  .band-image a {
    width: 48px;
    height: 48px;
    font-size: 20px;
  }
}

/* tablet */
@media (min-width: 768px) and (max-width: 1023px) {
  .band-item {
    width: 50%;
  }
}

/* desktop */
@media (min-width: 1024px) {
  .band-item {
    width: 25%;
  }
}


/**
--------------------------------------------------
  Media
--------------------------------------------------
**/
.media {
  position: relative;
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}

.media:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  content: "";
  background-color: #000;
  opacity: 0.5;
}

.media img {
  width: 100%;
  height: auto;
}

.media a {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  color: #fff;
}

.media a:hover {
  background-color: rgba(89, 198, 188, 0.75);
}

/* mobile */
@media (max-width: 767px) {
  .media a {
    width: 48px;
    height: 48px;
    font-size: 20px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .media a {
    width: 80px;
    height: 80px;
    font-size: 40px;
  }
}


/**
--------------------------------------------------
  CTA
--------------------------------------------------
**/
.cta {
  text-align: center;
  background-color: #333745;
  background-image: url(../img/bg-cta.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}

.cta-title {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-weight: 400;
}

.cta-summary {
  max-width: 560px;
  margin-top: 20px;
  margin-right: auto;
  margin-left: auto;
  line-height: 1.5;
}

.cta-button {
  margin-top: 30px;
  text-align: center;
}

.cta-button a {
  display: inline-block;
  padding: 15px 30px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  background-color: #fff568;
  border-radius: 2em;
  color: #333745;
}

.cta-button a:hover {
  background-color: #59c6bc;
  color: #fff;
}

/* mobile */
@media (max-width: 767px) {
  .cta {
    padding: 50px 0;
  }
  .cta-title {
    font-size: 30px;
    line-height: 1.2;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .cta {
    padding: 100px 0;
  }
  .cta-title {
    font-size: 36px;
    line-height: 1.25;
  }
}


/**
--------------------------------------------------
  Testimonial
--------------------------------------------------
**/
.testimonial {
  text-align: center;
  background-color: #333745;
  background-image: url(../img/bg-testimonial.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}

.testimonial-item {
  max-width: 640px;
  margin: 0 auto;
  padding: 0 30px;
  text-align: center;
}

.testimonial-image img {
  width: 100px;
  height: auto;
  background-color: #f7f7f7;
  border-radius: 50%;
}

.testimonial-body {
  margin-top: 20px;
  line-height: 1.5;
}

.testimonial-meta {
  margin-top: 30px;
  font-size: 15px;
  line-height: 1.2;
  color: #59c6bc;
}

/* mobile */
@media (max-width: 767px) {
  .testimonial {
    padding: 50px 0;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .testimonial {
    padding: 100px 0;
  }
}


/**
--------------------------------------------------
  Statistic
--------------------------------------------------
**/
.statistic {
  text-align: center;
  background-color: #333745;
  background-image: url(../img/bg-statistic.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}

.statistic-title {
  margin: 0;
  padding: 0;
  font-family: "Lora", serif;
  font-weight: 400;
}

.statistic-summary {
  max-width: 560px;
  margin-top: 20px;
  margin-right: auto;
  margin-left: auto;
  line-height: 1.5;
}

.statistic-item {
  font-family: "Lora", serif;
  line-height: 1;
  text-align: center;
}

.statistic-item strong {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 160px;
  height: 160px;
  margin: 0 auto;
  font-size: 1.5em;
  font-weight: 400;
  border: rgba(255, 255, 255, 0.25) solid 2px;
  border-radius: 50%;
}

.statistic-item strong:after {
  position: absolute;
  top: 20px;
  right: 20px;
  bottom: 20px;
  left: 20px;
  pointer-event: none;
  content: "";
  background-color: rgba(255, 255, 255, 0.15);
  border: rgba(255, 255, 255, 0.25) solid 2px;
  border-radius: 50%;
}

.statistic-item span {
  display: block;
  margin-top: 15px;
}

/* mobile */
@media (max-width: 767px) {
  .statistic {
    padding: 50px 0;
  }
  .statistic-title {
    font-size: 30px;
    line-height: 1.2;
  }
  .statistic-item {
    margin-top: 30px;
    font-size: 24px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .statistic {
    padding: 100px 0;
  }
  .statistic-title {
    font-size: 36px;
    line-height: 1.25;
  }
  .statistic-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: 60px;
  }
  .statistic-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
    font-size: 30px;
  }
}


/**
--------------------------------------------------
  Partner
--------------------------------------------------
**/
.partner {
  padding: 20px 0;
  background-color: #59c6bc;
}

.partner-item {
  text-align: center;
}

.partner-item img {
  max-width: 100%;
  height: auto;
}


/**
--------------------------------------------------
  Gallery
--------------------------------------------------
**/
.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.gallery-item {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 20%;
}

.gallery-item:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  content: "";
  background-color: #000;
  opacity: 0.5;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
}

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

.gallery-item a {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -200%);
  -ms-transform: translate(-50%, -200%);
  transform: translate(-50%, -200%);
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #59c6bc;
  border-radius: 50%;
  color: #fff;
  -webkit-transition-property: opacity, background-color, color, -webkit-transform;
  transition-property: opacity, background-color, color, -webkit-transform;
  -o-transition-property: transform, opacity, background-color, color;
  transition-property: transform, opacity, background-color, color;
  transition-property: transform, opacity, background-color, color, -webkit-transform;
}

.gallery-item a:hover {
  background-color: #fff;
  color: #59c6bc;
}

.gallery-item:hover:after {
  opacity: 0;
}

.gallery-item:hover a {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 1;
}

/* mobile */
@media (max-width: 767px) {
  .gallery-item a {
    width: 32px;
    height: 32px;
    font-size: 15px;
  }
}

/* tablet - desktop */
@media (min-width: 768px) {
  .gallery-item a {
    width: 48px;
    height: 48px;
    font-size: 20px;
  }
}


/**
--------------------------------------------------
  Line
--------------------------------------------------
**/
.line {
  max-width: 1000px;
  width: 90.625%;
  height: 1px;
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0.25);
}
