/*------------------------------------------------------------------
[Table of contents]

1. Default + reset

2. Header / #header
3. Navigation / #navbar
4. Footer / #footer
5. Content / #content

6. Components
  6.01. intro
  6.02. loader
  6.03. forms
  6.04. list-horizontal-links
  6.05. separator
  6.06. button
  6.07. slider-intro
  6.08. player
  6.09. separator-icon
  6.10. featured-artist
  6.11. ico-links
  6.12. social
  6.13. list-posts
  6.14. quote
  6.15. discography
  6.16. tweets
  6.17. last-media
  6.18. upcomming-events
  6.19. disc-tracklist
  6.20. tourdates
  6.21. upcomming-events-list
  6.22. paginationposts
  6.23. shop
  6.24. time-circles
  6.25. blog
  6.26. keyframes
-------------------------------------------------------------------*/

/*------------------------------------------------------------------
[1. Default + reset]
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  outline: none;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
  opacity: 1;
  transition: opacity 1500ms ease; /* adjust speed if you want */
}
/* While loading, keep page invisible */
.is-loading body {
  opacity: 0;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  body { transition: none; }
  .is-loading body { opacity: 1; } /* don’t hide content if animations are off */
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after {
  content: '';
  content: none;
}
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
.navbar-default {
  background-color: #151518;
  border: none;
}
.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li.active > a,
.navbar-default .navbar-nav > li.active > a:hover,
.navbar-default .navbar-nav > li.active > a:focus,
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #151518;
  background-color: transparent;
}
.navbar {
  margin-bottom: 0;
}
.btn {
  border: 2px solid transparent;
  border-radius: 0px;
}
.thumbnail {
  display: block;
  padding: 0;
  margin: 0;
  line-height: auto;
  border: none;
  border-radius: 0px;
  -webkit-transition: none;
  transition: none;
}
#swipebox-close {
  background-image: url("../images/icons.svg") !important;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
/* Provides vertical center */
@media (min-width: 768px) {
  .vcenter {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
  }
}
.voffset-40 {
  margin-bottom: -40px !important;
}
.voffset-30 {
  margin-bottom: -30px !important;
}
.voffset-20 {
  margin-bottom: -20px !important;
}
.voffset-10 {
  margin-bottom: -10px !important;
}
.voffset0 {
  margin-bottom: 0px !important;
}
.voffset10 {
  margin-bottom: 10px !important;
}
.voffset20 {
  margin-bottom: 20px !important;
}
.voffset30 {
  margin-bottom: 30px !important;
}
.voffset40 {
  margin-bottom: 40px !important;
}
.voffset50 {
  margin-bottom: 50px !important;
}
.voffset60 {
  margin-bottom: 60px !important;
}
.voffset70 {
  margin-bottom: 70px !important;
}
.voffset80 {
  margin-bottom: 80px !important;
}
.voffset90 {
  margin-bottom: 90px !important;
}
.voffset100 {
  margin-bottom: 100px !important;
}
.voffset110 {
  margin-bottom: 110px !important;
}
.voffset120 {
  margin-bottom: 120px !important;
}
.voffset130 {
  margin-bottom: 130px !important;
}
.voffset140 {
  margin-bottom: 140px !important;
}
.voffset150 {
  margin-bottom: 150px !important;
}
.voffset160 {
  margin-bottom: 160px !important;
}
.voffset170 {
  margin-bottom: 170px !important;
}
.voffset180 {
  margin-bottom: 180px !important;
}
.voffset190 {
  margin-bottom: 190px !important;
}
.voffset200 {
  margin-bottom: 200px !important;
}
.voffset210 {
  margin-bottom: 210px !important;
}
.voffset220 {
  margin-bottom: 220px !important;
}
.voffset230 {
  margin-bottom: 230px !important;
}
.voffset240 {
  margin-bottom: 240px !important;
}
.voffset250 {
  margin-bottom: 250px !important;
}
.voffset260 {
  margin-bottom: 260px !important;
}
.voffset270 {
  margin-bottom: 270px !important;
}
.voffset280 {
  margin-bottom: 280px !important;
}
.voffset290 {
  margin-bottom: 290px !important;
}
.voffset300 {
  margin-bottom: 300px !important;
}
.voffset310 {
  margin-bottom: 310px !important;
}
.voffset320 {
  margin-bottom: 320px !important;
}
.voffset330 {
  margin-bottom: 330px !important;
}
.voffset340 {
  margin-bottom: 340px !important;
}
.voffset350 {
  margin-bottom: 350px !important;
}
.voffset360 {
  margin-bottom: 360px !important;
}
.voffset370 {
  margin-bottom: 370px !important;
}
.voffset380 {
  margin-bottom: 380px !important;
}
.voffset390 {
  margin-bottom: 390px !important;
}
.voffset400 {
  margin-bottom: 400px !important;
}
.voffset410 {
  margin-bottom: 410px !important;
}
.voffset420 {
  margin-bottom: 420px !important;
}
.voffset430 {
  margin-bottom: 430px !important;
}
.voffset440 {
  margin-bottom: 440px !important;
}
.voffset450 {
  margin-bottom: 450px !important;
}
.voffset460 {
  margin-bottom: 460px !important;
}
.voffset470 {
  margin-bottom: 470px !important;
}
.voffset480 {
  margin-bottom: 480px !important;
}
.voffset490 {
  margin-bottom: 490px !important;
}
.voffset500 {
  margin-bottom: 500px !important;
}
.fz12 {
  font-size: 12px !important;
}
.fz13 {
  font-size: 13px !important;
}
.fz14 {
  font-size: 14px !important;
}
.fz15 {
  font-size: 15px !important;
}
.fz16 {
  font-size: 16px !important;
}
.fz17 {
  font-size: 17px !important;
}
.fz18 {
  font-size: 18px !important;
}
.fz19 {
  font-size: 19px !important;
}
.fz20 {
  font-size: 20px !important;
}
.fz21 {
  font-size: 21px !important;
}
.fz22 {
  font-size: 22px !important;
}
.fz23 {
  font-size: 23px !important;
}
.fz24 {
  font-size: 24px !important;
}
.fz25 {
  font-size: 25px !important;
}
.fz26 {
  font-size: 26px !important;
}
.fz27 {
  font-size: 27px !important;
}
.fz28 {
  font-size: 28px !important;
}
.fz29 {
  font-size: 29px !important;
}
.fz30 {
  font-size: 30px !important;
}
.fz31 {
  font-size: 31px !important;
}
.fz32 {
  font-size: 32px !important;
}
.fz33 {
  font-size: 33px !important;
}
.fz34 {
  font-size: 34px !important;
}
.fz35 {
  font-size: 35px !important;
}
.fz36 {
  font-size: 36px !important;
}
.fz37 {
  font-size: 37px !important;
}
.fz38 {
  font-size: 38px !important;
}
.fz39 {
  font-size: 39px !important;
}
.fz40 {
  font-size: 40px !important;
}
.fz41 {
  font-size: 41px !important;
}
.fz42 {
  font-size: 42px !important;
}
.fz43 {
  font-size: 43px !important;
}
.fz44 {
  font-size: 44px !important;
}
.fz45 {
  font-size: 45px !important;
}
.fz46 {
  font-size: 46px !important;
}
.fz47 {
  font-size: 47px !important;
}
.fz48 {
  font-size: 48px !important;
}
.fz49 {
  font-size: 49px !important;
}
.fz50 {
  font-size: 50px !important;
}
.fz51 {
  font-size: 51px !important;
}
.fz52 {
  font-size: 52px !important;
}
.fz53 {
  font-size: 53px !important;
}
.fz54 {
  font-size: 54px !important;
}
.fz55 {
  font-size: 55px !important;
}
.fz56 {
  font-size: 56px !important;
}
.fz57 {
  font-size: 57px !important;
}
.fz58 {
  font-size: 58px !important;
}
.fz59 {
  font-size: 59px !important;
}
.fz60 {
  font-size: 60px !important;
}
.fz61 {
  font-size: 61px !important;
}
.fz62 {
  font-size: 62px !important;
}
.fz63 {
  font-size: 63px !important;
}
.fz64 {
  font-size: 64px !important;
}
.fz65 {
  font-size: 65px !important;
}
.fz66 {
  font-size: 66px !important;
}
.fz67 {
  font-size: 67px !important;
}
.fz68 {
  font-size: 68px !important;
}
.fz69 {
  font-size: 69px !important;
}
.fz70 {
  font-size: 70px !important;
}
.fz71 {
  font-size: 71px !important;
}
.fz72 {
  font-size: 72px !important;
}
.fz73 {
  font-size: 73px !important;
}
.fz74 {
  font-size: 74px !important;
}
.fz75 {
  font-size: 75px !important;
}
.fz76 {
  font-size: 76px !important;
}
.fz77 {
  font-size: 77px !important;
}
.fz78 {
  font-size: 78px !important;
}
.fz79 {
  font-size: 79px !important;
}
.fz80 {
  font-size: 80px !important;
}
.fz81 {
  font-size: 81px !important;
}
.fz82 {
  font-size: 82px !important;
}
.fz83 {
  font-size: 83px !important;
}
.fz84 {
  font-size: 84px !important;
}
.fz85 {
  font-size: 85px !important;
}
.fz86 {
  font-size: 86px !important;
}
.fz87 {
  font-size: 87px !important;
}
.fz88 {
  font-size: 88px !important;
}
.fz89 {
  font-size: 89px !important;
}
.fz90 {
  font-size: 90px !important;
}
/* Provides center alignment */
.text-center {
  text-align: center;
}
/* Fix scrolling */
.is-scroll-disabled {
  overflow: hidden;
}
/* Clear floats */
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
.invertcolor {
  background-color: #000000;
}
.invertcolor,
.invertcolor a {
  color: #ffffff;
}
html,
body {
  font-family: 'Roboto', sans-serif;
  font-size: 18px;
  line-height: 24px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  height: 100%;
  color: #151518;
}
body {
  scrollbar-face-color: #ffffff;
  scrollbar-track-color: #000000;
}
.inverse-color {
  background-color: #0a0a0a;
}
.pattern {
  background-image: url('../images/demo/pattern.jpg');
  background-repeat: repeat;
  background-position: center center;
}
.form-group {
  margin-bottom: 30px;
}
input:focus,
button:focus {
  outline: none;
}
img {
  max-width: 100%;
  height: auto;
}
button {
  cursor: pointer;
  border: none;
  background-color: transparent;
}
strong {
  font-weight: 700;
}
input,
textarea {
  background-color: transparent;
  border: none;
  border-bottom: 2px solid;
  font-size: 14px;
  width: 100%;
  height: 40px;
}
textarea {
  height: 130px;
}
.pretitle {
  font-family: "Cinzel", serif;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0;
  color: #000000;
  text-align: center;
  font-size: 15px;
  line-height: 15px;
}
@media (min-width: 768px) {
  .pretitle {
    font-size: 18px;
    line-height: 18px;
  }
}
.inverse-color .pretitle {
  color: #ffffff;
}
.title {
  font-family: "Cinzel", serif;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 8.5px;
  color: #ca9e2a;
  font-size: 30px;
  line-height: 30px;
}

@media (min-width: 768px) {
  .title {
    font-size: 40px;
    line-height: 40px;
  }
}
.title.invert {
  color: #ffffff;
}
.title.big {
  font-size: 96px;
  line-height: 80px;
  margin-top: 16px;
  letter-spacing: 9.5px;
}
.title.small {
  font-family: "Cinzel", serif;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: normal;
  text-align: left;
  color: #ca9f2b;
}
.title.post {
  font-family: "Cinzel", serif;
  font-size: 25px;
  font-weight: 300;
  line-height: 30px;
  letter-spacing: 4.3px;
  text-transform: uppercase;
  text-align: left;
  color: #be1212;
  margin: 20px 0;
}
.title.post-detail {
  font-family: "Cinzel", serif;
  font-size: 34px;
  font-weight: 300;
  line-height: 50px;
  letter-spacing: 7.7px;
  text-transform: uppercase;
  text-align: left;
  color: #be1212;
  margin: 25px 0 15px;
}
.col-contact .title.small {
  font-family: 'Roboto', sans-serif;
  font-weight: 800;
  color: #ffffff;
}
.subtitle {
  font-style: italic;
  font-size: 16px;
  color: #000000;
  letter-spacing: 4.8px;
  text-align: center;
  line-height: 30px;
}
.subtitle.small {
  font-size: 13px;
  font-weight: 300;
}
p {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
}
p i {
  font-style: italic;
}
p b,
p strong {
  font-weight: 700;
}
.inverse-color p {
  color: #ffffff;
}
p.quote-post {
  font-style: italic;
  color: #ca9e2a;
  line-height: 33px !important;
  font-size: 18px;
  margin: 57px 40px 65px;
  border-left: 3px solid #D6D6D6;
  padding: 10px 0 10px 20px;
}
.flickity-page-dots .dot {
  background-color: transparent;
  margin: 0 5px;
  width: 10px;
  height: 10px;
}
.flickity-page-dots .dot.is-selected {
  background-color: transparent;
}
.no-gutter > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}
.overlay {
  background: transparent url("../images/overlay-01.png");
  opacity: 0.5;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 3;
  top: 0;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/*------------------------------------------------------------------
[2. Grid / #grid]
*/
/**
 * Bootstrap No-Gutter Grid
 */
.row-no-gutter {
  margin-right: 0;
  margin-left: 0;
}
.row-no-gutter [class^="col-"],
.row-no-gutter [class*=" col-"] {
  padding-right: 0;
  padding-left: 0;
}
.container-small {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
.full-width .container {
  width: 100%;
  max-width: 100%;
  padding: 0px;
}
.full-width .container .row {
  margin-left: 0px;
  margin-right: 0px;
}
.full-width .container [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}
.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  width: 100%;
}
@media (min-width: 1600px) {
  .section.discography .container {
    width: 100%;
    padding: 0 58px;
    max-width: 1800px;
  }
}
.section.discography .row {
  margin-left: 0px;
  margin-right: 0px;
}
.section.discography .row .col-md-12 {
  padding-left: 0;
  padding-right: 0;
}
.upcomming-events {
  padding: 0 12px;
}
.upcomming-events .container {
  margin: 0 auto;
  max-width: 1500px;
  width: auto;
}
.upcomming-events [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}
@media (min-width: 1600px) {
  .section.biography .container {
    width: 1550px;
  }
}
@media (min-width: 1600px) {
  .section.player-album .container {
    width: 1500px;
  }
}
@media (min-width: 1600px) {
  .section.blog .container {
    width: 1420px;
  }
}
@media (min-width: 1600px) {
  .section.blog.single-post .container {
    width: 1310px;
  }
  .section.blog.single-post .post-details {
    max-width: 910px;
  }
}
.last-media .container {
  position: relative;
  margin: 0px auto;
  overflow: hidden;
  max-width: 800px;
  width: auto;
  padding: 0;
}
@media (min-width: 1200px) {
  .last-media .container {
    max-width: 1200px;
  }
}
@media (min-width: 1600px) {
  .last-media .container {
    max-width: 1480px;
  }
}
@media (min-width: 1600px) {
  .section.contact .container {
    width: 1030px;
  }
}
@media (min-width: 1600px) {
  body.page-shop .container {
    width: 1519px;
  }
  body.page-shop .container [class^="col-"],
  body.page-shop .container [class*=" col-"] {
    padding: 0 19px;
  }
}
@media (min-width: 1600px) {
  .section.featured-artists .container {
    width: 1575px;
  }
  .section.featured-artists .container .row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .section.featured-artists .container .row .col-md-3 {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.section.featured-artists .container .col-md-12 {
  padding-left: 0;
  padding-right: 0;
}
.col-contact {
  margin-top: 20px;
}
@media (min-width: 768px) {
  .col-contact {
    padding-left: 20px;
  }
}
@media (min-width: 992px) {
  .col-contact {
    padding-left: 50px;
  }
}
@media (max-width: 991px) {
  .comingsoon.intro {
    height: 800px;
  }
}
@media (max-width: 991px) {
  .comingsoon .slides-container img {
    max-width: none !important;
    height: 100% !important;
    width: auto !important;
  }
}
/*------------------------------------------------------------------
[3. Header / #header]
*/
header {
  width: 100%;
  top: 0;
  z-index: 5;
  background-color: #0a0a0a;
}
@media (min-width: 992px) {
  header {
    position: absolute;
    top: 0;
    background-color: transparent;
  }
}
@media (min-width: 1600px) {
  header {
    top: 0;
  }
}
header.overflow {
  top: -100px;
  left: 0px;
  background-color: #0a0a0a !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.11);
  transition: all 0.3s ease-in;
  -webkit-font-smoothing: antialiased;
}
header.overflow .navbar-default .navbar-nav {
  margin: 0;
}
header.overflow .navbar {
  min-height: 42px;
}
@media (min-width: 992px) {
  header.overflow .navbar {
    padding: 20px 0;
  }
}
header.overflow .navbar-brand {
  height: auto;
  padding: 7px 18px 0;
}
@media (min-width: 1200px) {
  header.overflow .navbar-brand {
    padding: 8px 55px 0;
  }
}
header.overflow.fixed {
  top: 0px;
  position: fixed;
  z-index: 99999;
}
@media (max-width: 767px) {
  header .navbar-brand {
    max-width: calc(100% - 60px);
    max-height: 52px;
    padding: 9px 15px 0;
  }
}
@media (min-width: 768px) {
  header .navbar-brand {
    padding: 9 15px;
    height: auto;
  }
}
@media (min-width: 992px) {
  header .navbar-brand {
    padding: 20px 22px 22px 22px;
  }
}
@media (min-width: 1200px) {
  header .navbar-brand {
    padding: 20px 22px 22px 55px;
  }
}
header .navbar-brand img {
  max-height: 100%;
}
@media (min-width: 1600px) {
  header .navbar-collapse {
    margin-left: 725px;
  }
}

/*------------------------------------------------------------------
[3. Navigation / #navbar]
-------------------------------------------------------------------*/
/* =========================
   Centered, collapsible nav
   Namespace: .site-nav
   ========================= */

/* Base + container */
.site-nav, .site-nav * { box-sizing: border-box; }
.site-nav { position: sticky; top: 0; z-index: 1000; background: #0a0a0a; }
.site-nav__bar { max-width: 1200px; margin: 0 auto; padding: 8px 16px; position: relative; }

/* Accessible hidden text utility */
.site-nav__sr {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); border: 0;
}

/* =========================
   Toggle (burger) — right side, always visible
   ========================= */
.site-nav__toggle {
  appearance: none; background: transparent; border: 0; cursor: pointer;
  width: 44px; height: 44px; border-radius: 6px;
  display: grid; place-items: center;

  /* keep it visible/clickable above menu on mobile */
  position: fixed; right: 12px; top: 12px;
  z-index: 2001;
}

/* Burger icon (3 lines) — ALWAYS visible, white */
.site-nav__burger,
.site-nav__burger::before,
.site-nav__burger::after {
  content: ""; display: block; width: 24px; height: 2px;
  background: #fff; /* white lines */
  transition: transform .25s ease, opacity .25s ease;
}
.site-nav__burger::before { transform: translateY(-7px); }
.site-nav__burger::after  { transform: translateY(7px); }

/* (No 'X' animation, no hiding when open) */

/* =========================
   Menu list
   ========================= */

/* Mobile-first: right-aligned panel, width fits content under burger */
.site-nav__menu {
  list-style: none; 
  margin: 0;
  display: none; 
  flex-direction: column; 
  gap: 8px; 
  text-align: right;

  background: rgba(10,10,10,0.95);
  border-radius: 10px;
  padding: 56px 16px 12px;        /* space for burger inside the box */

  position: fixed; 
  top: 8px; 
  right: 0px; 
  left: auto;
  width: max-content;             /* only as wide as needed */
  max-height: calc(100vh - 24px);
  overflow-y: auto; -webkit-overflow-scrolling: touch;

  z-index: 2000; /* below toggle */
}
.site-nav__menu.is-open { display: flex; }

.site-nav__menu li { margin: 0; }
.site-nav__menu a {
  position: relative;
  display: inline-block;
  padding: 10px 14px;
  color: #fff; text-decoration: none;
  font-size: 20px; line-height: 1.2;
  text-transform: lowercase;
  transition: color .25s ease;
}

/* Underline animation (NO dot) — global (works on mobile & desktop) */
.site-nav__menu a::after {
  content: "";
  position: absolute;
  left: 50%; bottom: 0;
  height: 2px; width: 0;
  background: #ca9e2a;
  transition: width .3s ease, left .3s ease;
}
.site-nav__menu a:hover,
.site-nav__menu a.is-active { color: #ca9e2a; }
.site-nav__menu a:hover::after,
.site-nav__menu a.is-active::after { width: 100%; left: 0; }

/* =========================
   Desktop layout (≥ 992px)
   ========================= */
@media (min-width: 992px) {
  /* Hide burger, show inline centered menu */
  .site-nav__toggle { display: none; position: static; }
  .site-nav__bar { padding: 10px 16px 6px; }

  .site-nav__menu {
    position: static;
    display: flex !important; /* always visible on desktop */
    background: transparent; 
    border-radius: 0; 
    padding: 0; 
    gap: 0;
    max-height: none; overflow: visible;

    flex-direction: row; justify-content: center; align-items: center;
    width: auto; text-align: center;
  }

  .site-nav__menu li { margin: 0 6px; }
  .site-nav__menu a { font-size: 24px; padding: 10px 12px; }
}

/* Wider spacing on very large screens */
@media (min-width: 1600px) {
  .site-nav__menu li { margin: 0 16px; }
}

/* Optional: compact text on small laptops */
@media (min-width: 992px) and (max-width: 1200px) {
  .site-nav__menu a { font-size: 20px; }
}

/*------------------------------------------------------------------
[4. Footer / #footer]
*/
footer {
  background-color: #ca9e2a;
  color: #ffffff;
  text-transform: uppercase;
  padding: 35px 45px;
  position: relative;
  overflow: hidden;
}
footer p.copy {
  float: left;
  font-size: 13px;
  letter-spacing: -0.5px;
}
footer ul.menu-footer {
  float: right;
}
footer ul.menu-footer li {
  display: inline-block;
  font-size: 13px;
  letter-spacing: -0.5px;
}
footer ul.menu-footer li:not(:last-child):after {
  content: ".";
  margin: 0 1px 0 7px;
}
footer ul.menu-footer li,
footer ul.menu-footer li a {
  color: #ffffff;
}
/*------------------------------------------------------------------
[6. Components]
*/
/*------------------------------------------------------------------
[6.01. intro]
*/
.intro {
  background-color: #151518;
  overflow: hidden;
}

.intro-image {
  position: relative;
  max-height: 1024px;        /* limit height */
  overflow: hidden;
}

.intro-image img {
  width: 100%;
  height: auto;
  display: block;
  animation: zoomIn 20s ease-in-out infinite alternate;
}

/* subtle fade at bottom */
.intro-image::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0; right: 0;
  height: 80px;
  background: linear-gradient(to bottom, rgba(21,21,24,0) 0%, rgba(21,21,24,1) 100%);
  pointer-events: none;
}

@keyframes zoomIn {
  from { transform: scale(1); }
  to   { transform: scale(1.05); }
}
/*------------------------------------------------------------------
[6.02. loader]
*/
#mask {
  background-color: #000;
  height: 100%;
  position: fixed;
  width: 100%;
  z-index: 100000;
}
.loader {
  position: absolute;
  width: 96px;
  height: 41px;
  margin: -20px 0 0 -48px;
  top: 50%;
  left: 50%;
}
.cssload-container *,
.cssload-container *:before,
.cssload-container *:after {
  box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
.cssload-container {
  margin: auto;
  width: 96px;
  height: 41px;
}
.cssload-container > div {
  float: left;
  background: #ca9e2a;
  height: 100%;
  width: 7px;
  margin-right: 1px;
  display: inline-block;
}
.cssload-container .cssload-shaft1 {
  animation-delay: 0.06s;
  -o-animation-delay: 0.06s;
  -ms-animation-delay: 0.06s;
  -webkit-animation-delay: 0.06s;
  -moz-animation-delay: 0.06s;
}
.cssload-container .cssload-shaft2 {
  animation-delay: 0.12s;
  -o-animation-delay: 0.12s;
  -ms-animation-delay: 0.12s;
  -webkit-animation-delay: 0.12s;
  -moz-animation-delay: 0.12s;
}
.cssload-container .cssload-shaft3 {
  animation-delay: 0.17s;
  -o-animation-delay: 0.17s;
  -ms-animation-delay: 0.17s;
  -webkit-animation-delay: 0.17s;
  -moz-animation-delay: 0.17s;
}
.cssload-container .cssload-shaft4 {
  animation-delay: 0.23s;
  -o-animation-delay: 0.23s;
  -ms-animation-delay: 0.23s;
  -webkit-animation-delay: 0.23s;
  -moz-animation-delay: 0.23s;
}
.cssload-container .cssload-shaft5 {
  animation-delay: 0.29s;
  -o-animation-delay: 0.29s;
  -ms-animation-delay: 0.29s;
  -webkit-animation-delay: 0.29s;
  -moz-animation-delay: 0.29s;
}
.cssload-container .cssload-shaft6 {
  animation-delay: 0.35s;
  -o-animation-delay: 0.35s;
  -ms-animation-delay: 0.35s;
  -webkit-animation-delay: 0.35s;
  -moz-animation-delay: 0.35s;
}
.cssload-container .cssload-shaft7 {
  animation-delay: 0.4s;
  -o-animation-delay: 0.4s;
  -ms-animation-delay: 0.4s;
  -webkit-animation-delay: 0.4s;
  -moz-animation-delay: 0.4s;
}
.cssload-container .cssload-shaft8 {
  animation-delay: 0.46s;
  -o-animation-delay: 0.46s;
  -ms-animation-delay: 0.46s;
  -webkit-animation-delay: 0.46s;
  -moz-animation-delay: 0.46s;
}
.cssload-container .cssload-shaft9 {
  animation-delay: 0.52s;
  -o-animation-delay: 0.52s;
  -ms-animation-delay: 0.52s;
  -webkit-animation-delay: 0.52s;
  -moz-animation-delay: 0.52s;
}
.cssload-container .cssload-shaft10 {
  animation-delay: 0.58s;
  -o-animation-delay: 0.58s;
  -ms-animation-delay: 0.58s;
  -webkit-animation-delay: 0.58s;
  -moz-animation-delay: 0.58s;
}
.cssload-container {
  height: 55px;
}
.cssload-container > div {
  position: relative;
  bottom: 0;
  margin-top: 48px;
  height: 7px;
  animation: cssload-wave 1.73s infinite ease-in-out;
  -o-animation: cssload-wave 1.73s infinite ease-in-out;
  -ms-animation: cssload-wave 1.73s infinite ease-in-out;
  -webkit-animation: cssload-wave 1.73s infinite ease-in-out;
  -moz-animation: cssload-wave 1.73s infinite ease-in-out;
}
.cssload-container .shaft1 {
  animation-delay: -1.73s;
  -o-animation-delay: -1.73s;
  -ms-animation-delay: -1.73s;
  -webkit-animation-delay: -1.73s;
  -moz-animation-delay: -1.73s;
}
.cssload-container .shaft2 {
  animation-delay: -1.61s;
  -o-animation-delay: -1.61s;
  -ms-animation-delay: -1.61s;
  -webkit-animation-delay: -1.61s;
  -moz-animation-delay: -1.61s;
}
.cssload-container .shaft3 {
  animation-delay: -1.5s;
  -o-animation-delay: -1.5s;
  -ms-animation-delay: -1.5s;
  -webkit-animation-delay: -1.5s;
  -moz-animation-delay: -1.5s;
}
.cssload-container .shaft4 {
  animation-delay: -1.38s;
  -o-animation-delay: -1.38s;
  -ms-animation-delay: -1.38s;
  -webkit-animation-delay: -1.38s;
  -moz-animation-delay: -1.38s;
}
.cssload-container .shaft5 {
  animation-delay: -1.27s;
  -o-animation-delay: -1.27s;
  -ms-animation-delay: -1.27s;
  -webkit-animation-delay: -1.27s;
  -moz-animation-delay: -1.27s;
}
.cssload-container .shaft6 {
  animation-delay: -1.15s;
  -o-animation-delay: -1.15s;
  -ms-animation-delay: -1.15s;
  -webkit-animation-delay: -1.15s;
  -moz-animation-delay: -1.15s;
}
.cssload-container .shaft7 {
  animation-delay: -1.04s;
  -o-animation-delay: -1.04s;
  -ms-animation-delay: -1.04s;
  -webkit-animation-delay: -1.04s;
  -moz-animation-delay: -1.04s;
}
.cssload-container .shaft8 {
  animation-delay: -0.92s;
  -o-animation-delay: -0.92s;
  -ms-animation-delay: -0.92s;
  -webkit-animation-delay: -0.92s;
  -moz-animation-delay: -0.92s;
}
.cssload-container .shaft9 {
  animation-delay: -0.81s;
  -o-animation-delay: -0.81s;
  -ms-animation-delay: -0.81s;
  -webkit-animation-delay: -0.81s;
  -moz-animation-delay: -0.81s;
}
.cssload-container .shaft10 {
  animation-delay: -0.69s;
  -o-animation-delay: -0.69s;
  -ms-animation-delay: -0.69s;
  -webkit-animation-delay: -0.69s;
  -moz-animation-delay: -0.69s;
}
.cssload-container .shaft11 {
  animation-delay: -0.58s;
  -o-animation-delay: -0.58s;
  -ms-animation-delay: -0.58s;
  -webkit-animation-delay: -0.58s;
  -moz-animation-delay: -0.58s;
}
@keyframes cssload-wave {
  50% {
    height: 100%;
    margin-top: 0;
    background: #765c18;
  }
}
@-o-keyframes cssload-wave {
  50% {
    height: 100%;
    margin-top: 0;
    background: #765c18;
  }
}
@-ms-keyframes cssload-wave {
  50% {
    height: 100%;
    margin-top: 0;
    background: #765c18;
  }
}
@-webkit-keyframes cssload-wave {
  50% {
    height: 100%;
    margin-top: 0;
    background: #765c18;
  }
}
@-moz-keyframes cssload-wave {
  50% {
    height: 100%;
    margin-top: 0;
    background: #765c18;
  }
}
/*------------------------------------------------------------------
[6.03. forms]
*/
.section.contact {
  background-size: cover;
  background-position: center center;
}
form.contact-form {
  position: relative;
}
form.contact-form label {
  color: #ffffff !important;
}
form.contact-form input,
form.contact-form textarea {
  color: #ffffff;
  border-color: rgba(222, 222, 222, 0.2);
}
form.contact-form input[type=submit],
form.contact-form textarea[type=submit] {
  margin-top: 20px;
}
form.newsletter-form {
  max-width: 612px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
form.newsletter-form input {
  color: #ffffff;
  display: inline-block;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 3.2px;
}
form.newsletter-form input::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #ffffff;
}
form.newsletter-form input::-moz-placeholder {
  /* Firefox 19+ */
  color: #ffffff;
}
form.newsletter-form input:-ms-input-placeholder {
  /* IE 10+ */
  color: #ffffff;
}
form.newsletter-form input:-moz-placeholder {
  /* Firefox 18- */
  color: #ffffff;
}
form.newsletter-form input[type=submit] {
  color: #ffffff;
}
form.newsletter-form .form-group {
  margin-bottom: 30px;
  width: 450px;
  float: left;
}
@media (max-width: 767px) {
  form.newsletter-form .form-group {
    width: 100%;
    padding: 0 10px;
  }
}
/*------------------------------------------------------------------
[6.04. list-horizontal-links]
*/
.list-horizontal-links {
  margin-top: 26px;
  font-style: italic;
  font-size: 16px;
  color: #000000;
  letter-spacing: 3.7px;
  line-height: 40px;
  text-align: center;
}
.list-horizontal-links li {
  display: inline-block;
}
.list-horizontal-links li a {
  color: #000000;
  position: relative;
}
.list-horizontal-links li a:after {
  content: "";
  display: block;
  width: 25px;
  height: 1px;
  border-bottom: 2px solid #000000;
  margin: 0 12px 3px;
  position: absolute;
  left: calc(50% - 25px);
  bottom: -13px;
  border-color: transparent;
  left: calc(50% - 12px);
  -webkit-transition: width .3s ease 0s,left .3s ease 0s;
  -o-transition: width .3s ease 0s,left .3s ease 0s;
  transition: width .3s ease 0s,left .3s ease 0s;
  width: 0;
}
.list-horizontal-links li a:hover,
.list-horizontal-links li a:focus {
  text-decoration: none;
}
.list-horizontal-links li a:hover:after,
.list-horizontal-links li a:focus:after {
  width: 25px;
  border-color: #000000;
  left: calc(50% - 25px);
}
.list-horizontal-links li:not(:last-child):after {
  content: "/";
  margin: 0 10px 0 15px;
}
/*------------------------------------------------------------------
[6.05. separator]
*/
.separator {
  height: 2px;
  width: 25px;
  background-color: #000000;
  margin: 30px auto 20px;
}
/*------------------------------------------------------------------
[6.06. button]
*/
.btn {
  font-family: 'Roboto', sans-serif;
  color: #000000;
  padding: 16px 55px;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 14px;
  line-height: 14px;
  -webkit-transition: background-color 0.2s ease-out;
  -moz-transition: background-color 0.2s ease-out;
  -o-transition: background-color 0.2s ease-out;
  transition: background-color 0.2s ease-out;
}
.btn.rounded {
  background-color: #ca9e2a;
  color: #ffffff;
  border: none;
  height: 41px;
  font-style: normal;
  width: auto;
  padding: 13px 54px 10px 54px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: normal;
  border-radius: 20px;
}
.btn.rounded:hover {
  background-color: #b2b9bc;
}
.btn.rounded.unactive {
  background-color: #B7B7B7;
  color: #7D7D7D;
  cursor: default;
}
.btn.rounded.unactive i {
  color: #5A5A5A;
}
.btn.border {
  border: 2px solid;
  background: transparent;
  padding-top: 12px !important;
}
.btn.border:hover {
  background-color: #b2b9bc;
  border-color: #b2b9bc;
}
.btn.icon {
  padding: 13px 35px 10px 35px;
}
input.btn.rounded {
  padding-top: 11px;
}
.btn-default {
  color: #000000;
  background-color: transparent;
  border-color: #000000;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active {
  color: #000000;
  background-color: transparent;
  border-color: #000000;
}
.btn-invert {
  color: #ffffff;
  background-color: transparent;
  border-color: #ffffff;
}
.btn-invert:hover,
.btn-invert:focus,
.btn-invert:active,
.btn-invert.active {
  color: #ffffff;
  background-color: #ca9e2a;
  border-color: #ca9e2a;
}
.close-btn {
  background-image: url('../images/close-ajax.png');
  width: 38px;
  height: 38px;
  background-repeat: no-repeat;
  background-position: center;
}
.fancybox-prev span,
.fancybox-next span,
.fancybox-close {
  background-image: none;
}
.fancybox-close {
  width: 40px;
  height: 51px;
  -ms-transform: rotate(45deg);
  /* IE 9 */
  -webkit-transform: rotate(45deg);
  /* Chrome, Safari, Opera */
  transform: rotate(45deg);
  padding: 0 25px;
  top: -60px;
  right: -60px;
}
.fancybox-close:before {
  content: "";
  background: #ffffff;
  height: 50px;
  position: relative;
  width: 1px;
  display: block;
}
.fancybox-close:after {
  content: "";
  background: #ffffff;
  height: 1px;
  left: 0;
  position: absolute;
  top: 25px;
  width: 50px;
}
.fancybox-prev span:before,
.fancybox-next span:before {
  content: "";
  background: #ffffff;
  height: 30px;
  position: relative;
  width: 1px;
  display: block;
}
.fancybox-prev span:after,
.fancybox-next span:after {
  content: "";
  background: #ffffff;
  height: 1px;
  left: 0;
  position: absolute;
  top: 29px;
  width: 30px;
}
.fancybox-prev span {
  -ms-transform: rotate(45deg);
  /* IE 9 */
  -webkit-transform: rotate(45deg);
  /* Chrome, Safari, Opera */
  transform: rotate(45deg);
}
.fancybox-next span {
  -ms-transform: rotate(-132deg);
  /* IE 9 */
  -webkit-transform: rotate(-132deg);
  /* Chrome, Safari, Opera */
  transform: rotate(-132deg);
}
/*------------------------------------------------------------------
[6.07. slider-intro]
*/
.slider-intro {
  height: 100%;
}
.slider-intro .flickity-viewport {
  height: 100% !important;
}
.slider-intro .gallery-cell {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.slider-intro .gallery-cell > div {
  width: 100%;
  text-align: center;
  margin-top: 100px;
}
@media (min-width: 768px) {
  .slider-intro .gallery-cell > div {
    margin-top: 0px;
  }
}
.slider-intro .flickity-page-dots {
  bottom: 19px;
  z-index: 1;
}
.slider-intro .flickity-page-dots .dot {
  background-color: transparent;
  border: 1px solid #fff;
  width: 12px;
  height: 12px;
  margin: 0px 5px;
  opacity: 0.50;
}
.slider-intro .flickity-page-dots .dot:hover,
.slider-intro .flickity-page-dots .dot.is-selected {
  opacity: 1;
}
.slider-intro.dots-right .flickity-page-dots {
  text-align: right;
  padding-right: 15px;
}
.slider-intro #slides {
  height: 100% !important;
}
.grid .gallery {
  height: 700px;
}
/*------------------------------------------------------------------
[6.08. player]
*/
.player {
  position: relative;
}
.player.horizontal {
  background-color: #151518;
  overflow: hidden;
}
.intro .player.horizontal {
  background-color: transparent;
}
@media (min-width: 768px) {
  .player.horizontal {
    height: 100px;
  }
}
.player.horizontal .container {
  background-color: #151518;
  margin: 0 auto;
  max-width: 1010px;
  height: 100%;
  position: relative;
  padding: 0;
}
@media (min-width: 768px) {
  .player.horizontal .container {
    padding-left: 15px;
    padding-right: 15px;
    border-left: 1px solid #333;
    border-right: 1px solid #333;
  }
}
.player.horizontal .info-album-player {
  display: inline-block;
  padding: 10px 10px 10px 3px;
  border-right: 1px solid #333;
  text-align: center;
  float: left;
}
@media (min-width: 768px) {
  .player.horizontal .info-album-player {
    width: 235px;
    text-align: left;
  }
}
.player.horizontal .info-album-player .album-cover {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: relative;
  width: 80px;
  height: 80px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .player.horizontal .info-album-player .album-cover {
    float: left;
    margin-right: 11px;
  }
}
.player.horizontal .info-album-player .album-title {
  color: #ffffff;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 14px;
  margin-bottom: 5px;
  font-size: 14px;
  margin-top: 10px;
}
@media (min-width: 768px) {
  .player.horizontal .info-album-player .album-title {
    margin-top: 26px;
  }
}
.player.horizontal .info-album-player .artist-name {
  color: #cccccc;
  font-size: 12px;
  line-height: 12px;
}
.player.horizontal .player-content {
  position: relative;
}
@media (min-width: 768px) {
  .player.horizontal .player-content {
    width: calc(100% - 235px);
    float: left;
  }
}
.player.horizontal .audiojs {
  width: auto;
  display: inline-block;
  background: none;
  box-shadow: none;
  overflow: visible;
  margin-left: 62px;
  position: relative;
  top: 46px;
  font-family: 'Roboto', sans-serif;
}
@media (min-width: 768px) {
  .player.horizontal .audiojs {
    width: calc(100% - 62px);
  }
}
.player.horizontal .audiojs .play-pause {
  border: none;
  width: 64px;
  height: 64px;
  background: #ca9e2a;
  border-radius: 50%;
  position: relative;
  top: -28px;
  z-index: 1;
}
.player.horizontal .audiojs .play-pause p {
  width: auto;
  height: 55px;
}
.player.horizontal .audiojs .play-pause .play {
  background: url('../images/players-intro.png') 19px 18px no-repeat;
}
.player.horizontal .audiojs .play-pause .pause {
  background: url('../images/players-intro.png') 16px -41px no-repeat;
}
.player.horizontal .audiojs .play-pause .loading {
  background: url('../images/players-intro.png') 16px -219px no-repeat;
}
.player.horizontal .audiojs .scrubber,
.player.horizontal .audiojs .loaded,
.player.horizontal .audiojs .progress {
  border: 0;
  background-image: none;
  box-shadow: none;
  border-radius: 10px;
  height: 4px;
}
.player.horizontal .audiojs .scrubber {
  background-color: #2A2A2A;
  margin-left: 62px;
  margin-right: 0;
  width: calc(100% - 200px);
}
.player.horizontal .audiojs .loaded {
  background-color: #353535;
}
.player.horizontal .audiojs .progress {
  background-color: #ca9e2a;
}
.player.horizontal .audiojs .time {
  bottom: -50px;
  width: 100%;
  position: absolute;
  text-shadow: none;
  border: none;
  height: auto;
  line-height: normal;
  margin: 0;
  padding: 0;
  font-size: 12px;
}
@media (min-width: 768px) {
  .player.horizontal .audiojs .time {
    right: 75px;
    top: -13px;
    width: auto;
    bottom: auto;
  }
}
.player.horizontal .audiojs .error-message {
  margin-left: 62px;
  height: auto;
  line-height: normal;
}
.player.horizontal .nextprev {
  position: relative;
  overflow: hidden;
  width: 152px;
  height: 27px;
  top: -7px;
  left: 17px;
}
@media (max-width: 767px) {
  .player.horizontal .nextprev {
    top: -19px;
  }
}
.player.horizontal .nextprev .next {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  text-align: left;
  direction: ltr;
  width: 40px;
  height: 27px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center -114px;
  background-image: url("../images/players-intro.png");
  background-size: contain;
  right: 0;
}
.player.horizontal .nextprev .prev {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  text-align: left;
  direction: ltr;
  width: 40px;
  height: 27px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center -173px;
  background-image: url("../images/players-intro.png");
  background-size: contain;
  left: 0 ;
}
.player.horizontal .nextprev .next,
.player.horizontal .nextprev .prev {
  position: absolute;
  top: 0;
  background-size: auto;
  display: inline-block;
  cursor: pointer;
}
.player.horizontal .playlist {
  position: relative;
  top: 59px;
  left: 13px;
  font-size: 12px;
  line-height: normal;
}
@media (max-width: 767px) {
  .player.horizontal .playlist {
    text-align: left;
  }
}
@media (min-width: 768px) {
  .player.horizontal .playlist {
    position: absolute;
    top: 33px;
    left: 186px;
  }
}
.player.horizontal .playlist li {
  display: none;
}
.player.horizontal .playlist li.playing {
  display: block;
}
.player.horizontal .playlist a {
  color: #ffffff;
  text-transform: uppercase;
}
.player.horizontal .btnloop {
  cursor: pointer;
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  text-align: left;
  direction: ltr;
  width: 25px;
  height: 25px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center -234px;
  background-image: url("../images/players-intro.png");
  background-size: contain;
  background-size: auto;
  position: absolute;
  top: 37px;
  right: 37px;
  display: none;
}
@media (min-width: 768px) {
  .player.horizontal .btnloop {
    display: block;
  }
}
.player.horizontal .btnloop.active {
  background-position: center -349px;
}
/*------------------------------------------------------------------
[6.09. separator-icon]
*/
.separator-icon {
  text-align: center;
  font-size: 28px;
  color: #A8A8A8;
  margin: 0 auto;
  position: relative;
}
.separator-icon i {
  border: 2px solid rgba(222, 222, 222, 0.8);
  height: 55px;
  width: 55px;
  padding-top: 14px;
  border-radius: 50%;
  position: relative;
}
.separator-icon i.fa-ticket:before {
  top: -2px;
  position: relative;
}
.separator-icon i.fa-music:before {
  top: -6px;
  left: -1px;
  font-size: 20px;
  position: relative;
}
.separator-icon i.fa-picture-o:before {
  top: -3px;
  font-size: 24px;
  position: relative;
}
.separator-icon:after,
.separator-icon:before {
  content: "";
  height: 2px;
  background-color: rgba(222, 222, 222, 0.8);
  width: 100px;
  display: block;
  margin: 0 auto;
  position: absolute;
  top: 26px;
}
.separator-icon:after {
  left: calc(50% + 28px);
}
.separator-icon:before {
  right: calc(50% + 27px);
}
.inverse-color .separator-icon i {
  border-color: rgba(222, 222, 222, 0.2);
}
.inverse-color .separator-icon:after,
.inverse-color .separator-icon:before {
  background-color: rgba(222, 222, 222, 0.2);
}
/*------------------------------------------------------------------
[6.09. separator-icon]
*/
.separator-icon {
  text-align: center;
  position: relative;
  margin: 40px auto;
}

.separator-icon i {
  font-size: 28px;
  color: #ca9e2a;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 50%;
  padding: 14px;
  position: relative;
  z-index: 1;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
}

.separator-icon i:hover {
  background: rgba(202, 158, 42, 0.2);
  box-shadow: 0 0 15px rgba(202, 158, 42, 0.6);
}

.separator-icon::before,
.separator-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 100px;
  height: 2px;
  background: linear-gradient(to right, transparent, rgba(222, 222, 222, 0.6), transparent);
}

.separator-icon::before {
  left: calc(50% - 130px);
}

.separator-icon::after {
  right: calc(50% - 130px);
}
/*------------------------------------------------------------------
[6.10. featured-artist]
*/
.featured-artists .gallery-cell {
  padding-left: 30px;
  padding-right: 30px;
  height: 380px;
}

.featured-artists p.artist {
  font-family: "Cinzel", serif;
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 2.6px;
  line-height: 25px;
}

.featured-artists p.instrument {
  font-family: "Cinzel", serif;
  font-size: 20px;
  color: #ca9e2a;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 2.6px;
  line-height: 25px;
}

@media (min-width: 768px) {
  .featured-artists .gallery-cell {
    height: 450px;
  }
}
@media (min-width: 992px) {
  .featured-artists .gallery-cell {
    height: 360px;
  }
}
@media (min-width: 1600px) {
  .featured-artists .gallery-cell {
    height: 500px;
  }
}
.featured-artists .flickity-page-dots {
  bottom: -60px;
}
.featured-artist {
  position: relative;
  padding: 7px 0;
  overflow: hidden;
}
@media (min-width: 768px) {
  .featured-artist {
    padding: 15px 0;
  }
}
@media (min-width: 992px) {
  .featured-artist {
    padding: 0;
    max-width: 340px;
  }
}
.featured-artists img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.55) !important; /* force apply */
  position: relative; /* ensure shadow rendering */
  z-index: 1;         /* bring above parent backgrounds */
}

.featured-artist .rollover {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(202, 158, 42, 0.9);
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -ms-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.featured-artist .rollover .social {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  z-index: 1;
}
.featured-artist .rollover .social a {
  color: #fff;
  background-color: #000;
  display: block;
  width: 50px;
  height: 50px;
  text-align: center;
  padding: 15px 0 0 0;
  margin: 0;
  font-size: 100%;
  border: 0;
  -webkit-transition: color 0.2s ease-out;
  -moz-transition: color 0.2s ease-out;
  -o-transition: color 0.2s ease-out;
  transition: color 0.2s ease-out;
}
.featured-artist .rollover .social a:hover {
  color: #ca9e2a;
}
.featured-artist .rollover .social li {
  display: block;
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  -webkit-transform: translate3d(200%, 0, 0);
  transform: translate3d(200%, 0, 0);
}
.featured-artist .rollover .social li:not(:last-child) a {
  border-bottom: 1px solid #353535;
}
.featured-artist .rollover .text {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding: 35px 27px;
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}
.featured-artist .rollover .title-artist {
  font-family: "Cinzel", serif;
  color: #fff;
  font-size: 41px;
  text-transform: uppercase;
  max-width: 100px;
  line-height: 36px;
  margin-bottom: 14px;
  opacity: 0;
  -webkit-transition: opacity 0.35s;
  transition: opacity 0.35s;
  -webkit-backface-visibility: hidden;
}
.featured-artist .rollover p {
  color: #fff;
  font-size: 16px;
  line-height: 25px;
}
.featured-artist:hover .rollover {
  opacity: 1;
}
.featured-artist:hover .rollover .social li {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.featured-artist:hover .rollover .social li:first-child {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.featured-artist:hover .rollover .social li:nth-child(2) {
  -webkit-transition-delay: 0.15s;
  transition-delay: 0.15s;
}
.featured-artist:hover .rollover .social li:nth-child(3) {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.featured-artist:hover .rollover .text {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.featured-artist:hover .rollover .text .title-artist {
  opacity: 1;
}

/* Modern card style for featured-artists */
.featured-artists {
  background: rgba(20, 20, 20, 0.85);
  border-radius: 16px;
  overflow: hidden;
  text-align: center;
  padding: 16px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.featured-artists:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
  border-color: rgba(255, 255, 255, 0.15);
}

/* Image styling */
.featured-artists img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  transition: transform 0.4s ease;
}

.featured-artists:hover img {
  transform: scale(1.05);
}

/* Title, price, code styling */
.featured-artists .artist {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  margin: 8px 0 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.featured-artists .instrument {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  margin-top: 4px;
}

/* Social/cart button styling */
.featured-artists .social-links {
  margin-top: 10px;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
}

.featured-artists .social-links li {
  margin: 0 4px;
}

.featured-artists .social-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  font-size: 20px;
  color: #fff;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  transition: all 0.25s ease;
}

.featured-artists .social-links a:hover {
  background: #ca9e2a;
  color: #fff;
}
/*------------------------------------------------------------------
[6.11. ico-links]
*/
ul.contact {
  margin: 26px 0 56px 7px;
}
ul.contact i {
  color: #ca9e2a;
  width: 30px;
}
ul.contact i.fa-mobile {
  font-size: 26px;
  position: relative;
  top: 4px;
}
ul.contact li {
  margin: 15px 0;
  color: #ffffff;
}
/*------------------------------------------------------------------
[6.12. social]
*/
.social-links {
  margin-top: 40px;
}
.social-links li {
  display: inline-block;
}
.social-links a {
  color: #ffffff;
  border: 1px solid rgba(222, 222, 222, 0.2);
  font-size: 26px;
  display: block;
  margin: 0 3px;
  text-align: center;
  width: 48px;
  padding: 10px 0;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
@media (min-width: 1200px) {
  .social-links a {
    width: 60px;
    padding: 16px 0;
  }
}
.social-links a:hover {
  background-color: #ca9e2a;
  border-color: #ca9e2a;
}
/*------------------------------------------------------------------
[6.13. list-posts]
*/
.photo-post {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
  height: 200px;
}
@media (min-width: 768px) {
  .photo-post {
    height: 465px;
  }
}
@media (min-width: 992px) {
  .photo-post {
    width: calc(100% - 40px);
    height: 377px;
  }
}
p.date {
  text-align: center;
  position: absolute;
  top: 0;
  left: 15px;
  background-color: #ca9e2a;
  padding: 19px 19px 11px 19px;
}
p.date span {
  display: block;
  color: #ffffff;
}
p.date span.day {
  font-size: 35px;
  font-weight: 900;
}
p.date span.month {
  text-transform: uppercase;
  font-size: 17px;
}
.post-item {
  position: relative;
  margin-bottom: 50px;
}
.list-posts {
  padding-bottom: 110px;
}
.list-posts p {
  line-height: 30px;
  color: #8b8b8b;
}
.list-posts .btn {
  margin-top: 20px;
}
@media (min-width: 1200px) {
  .list-posts .btn {
    margin-top: 50px;
  }
}
.list-posts .title.small span {
  color: #8b8b8b;
}
.content-lastnew {
  margin-top: 25px;
  max-width: 780px;
  margin: 0 15px 100px;
}
.content-lastnew iframe {
  max-width: 100%;
}
.content-lastnew:before {
  content: "";
  display: block;
  height: 50px;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.close-new {
  display: none;
}
.news-window .close-new,
.open .close-new {
  display: inline-block;
}
.news-window .close-new {
  position: absolute;
  right: 0;
}
.open-new {
  display: inline-block;
}
.open .open-new {
  display: none;
}
/*------------------------------------------------------------------
[6.14. quote]
*/
.biography {
  background-size: cover;
  background-position: center center;
}
.biography img {
  margin: 0 auto;
  display: block;
}
.biography .description {
  width: 100%;
  padding: 20px 10px 0;
}
@media (min-width: 768px) {
  .biography .description {
    float: right;
    width: 50%;
    padding-left: 20px;
  }
}
@media (min-width: 1200px) {
  .biography .description {
    float: none;
    width: auto;
    padding: 0;
  }
}
.biography .description p {
  line-height: 30px;
}
.biography .description p:not(:last-child) {
  margin-bottom: 30px;
}
.quote {
  border: 10px solid #ca9e2a;
  position: relative;
  margin: 0;
  width: 100%;
  padding: 20px;
  float: none;
  font-family: "Cinzel", serif;
}
@media (min-width: 768px) {
  .quote {
    padding: 36px 20px 30px 60px;
    float: left;
    width: 50%;
  }
}
@media (min-width: 1200px) {
  .quote {
    max-width: 380px;
    margin-left: -20px;
    width: auto;
    left: -60px;
  }
}
.quote p {
  font-size: 24px;
  letter-spacing: 5px;
  line-height: 32px;
}
.quote p.author {
  font-size: 19px;
  color: #be1212;
  letter-spacing: normal;
  margin-top: 20px;
}
.quote p.author:before {
  content: "";
  width: 12px;
  height: 1px;
  background-color: #be1212;
  display: inline-block;
  margin: 0 2px;
  position: relative;
  top: -6px;
}
/*------------------------------------------------------------------
[6.15. discography]
*/
@media (min-width: 1600px) {
  .carousel-discography {
    height: 600px;
  }
}
.carousel-discography .gallery-cell {
  padding: 13px 13px 80px 13px;
  height: 500px;
}
@media (min-width: 1200px) {
  .carousel-discography .gallery-cell {
    height: 550px;
  }
}
@media (min-width: 1600px) {
  .carousel-discography .gallery-cell {
    width: 25%;
    height: 600px;
  }
}
.carousel-discography .gallery-cell .cover .rollover {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(202, 158, 42, 0.9);
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -ms-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.carousel-discography .gallery-cell .cover .rollover i {
  color: #ca9e2a;
  position: absolute;
  background-color: #ffffff;
  text-align: center;
  padding-top: 21px;
  border-radius: 50%;
  width: 65px;
  height: 65px;
  font-size: 26px;
  left: 50%;
  top: 100%;
  margin-left: -32px;
  margin-top: -32px;
  opacity: 0;
  transform: translateY(-50%);
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
.carousel-discography .gallery-cell .cover .rollover p {
  position: absolute;
  color: #ffffff;
  text-transform: uppercase;
  display: block;
  text-align: center;
  width: 100%;
  top: 100%;
  margin-top: 48px;
  font-size: 16px;
  font-weight: 500;
  opacity: 0;
  transform: translateY(-50%);
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
.carousel-discography .gallery-cell .cover:hover {
  cursor: pointer;
}
.carousel-discography .gallery-cell .cover:hover .rollover {
  opacity: 1;
}
.carousel-discography .gallery-cell .cover:hover .rollover p,
.carousel-discography .gallery-cell .cover:hover .rollover i {
  opacity: 1;
}
.carousel-discography .gallery-cell .cover:hover .rollover p {
  top: 53%;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.carousel-discography .gallery-cell .cover:hover .rollover i {
  top: 58%;
}
.info-album .cover {
  margin-bottom: 30px;
  position: relative;
}
.info-album .cover img {
  display: block;
}
.info-album p {
  text-align: center;
  font-size: 20px;
  line-height: 30px;
}
.info-album p.album,
.info-album p.year {
  font-family: "Cinzel", serif;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 2.6px;
  line-height: 25px;
}
.info-album p.year {
  font-weight: 400;
  color: #ca9e2a;
  padding-bottom: 5px;
}
.info-album p.album-list {
  color: #000000;
}
.info-album p.description {
  color: #8b8b8b;
}
.info-album .buyalbum {
  margin: 30px 0;
}
.info-album .links {
  text-align: center;
  font-size: 14px;
  font-weight: 800;
  line-height: 15px;
  text-transform: uppercase;
}
.info-album .links,
.info-album .links a {
  color: #8b8b8b;
}
.info-album .links li {
  display: inline-block;
  margin: 0 3px;
}
.info-album .links li:not(:last-child):after {
  content: "|";
  margin-left: 6px;
}

.album-gallery {
  display: grid;
  grid-template-columns: 1fr; /* First row has one full-width column */
  justify-items: center;
  gap: 20px; /* Space between rows */
}

.album-gallery .row-1 {
  width: 100%;
  display: flex;
  justify-content: center; /* Center the first album */
}

.album-gallery .row-2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
  width: 100%;
}

/*------------------------------------------------------------------
[6.16. tweets]
*/
section.twitterfeed {
  padding-top: 90px;
  padding-bottom: 110px;
  background-size: cover !important;
}
@media (min-width: 1200px) {
  section.twitterfeed {
    padding-top: 144px;
    padding-bottom: 140px;
  }
}
section.twitterfeed i.fa {
  text-align: center;
  display: block;
  color: #ffffff;
  font-size: 55px;
  margin-bottom: 10px;
}
ul.slider-twitter li {
  text-align: center;
  width: 100%;
  overflow: hidden;
}
ul.slider-twitter .user a [data-scribe$="avatar"] {
  display: none;
}
ul.slider-twitter .user a [data-scribe$="name"] {
  display: none;
}
ul.slider-twitter .user a [data-scribe$="screen_name"] {
  display: block;
  text-transform: uppercase;
  color: #b2b9bc;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.6px;
}
ul.slider-twitter .user a [data-scribe$="verified_badge"] {
  display: none;
}
ul.slider-twitter p.tweet {
  font-family: 'Roboto', sans-serif;
  padding: 0 20px;
  margin: 34px auto 45px;
  font-size: 27px;
  font-weight: 300;
  letter-spacing: -0.4px;
  max-width: 600px;
  line-height: 40px;
}
ul.slider-twitter p.tweet a {
  font-style: italic;
  color: #ffffff;
}
ul.slider-twitter p.timePosted {
  text-transform: uppercase;
}
ul.slider-twitter p.timePosted a {
  color: #ffffff;
}
ul.slider-twitter .flickity-page-dots {
  bottom: -15px;
}
ul.slider-twitter .flickity-page-dots .dot {
  width: 6px;
  height: 6px;
  background-color: #565656;
}
ul.slider-twitter .flickity-page-dots .dot.is-selected {
  width: 10px;
  height: 10px;
  background-color: #ca9e2a;
  position: relative;
  top: 2px;
}
/*------------------------------------------------------------------
[6.17. last-media]
*/
.last-media {
  border-top: 2px solid #b2b9bc;
  padding: 0 24px;
}
.last-media .filters {
  margin: 0 auto;
  text-align: center;
}
.last-media .filters li {
  display: inline-block;
  color: #ffffff;
  text-transform: uppercase;
  border-bottom: 2px solid transparent;
  font-weight: 500;
  font-size: 12px;
  line-height: 10px;
  padding: 5px 0px;
  margin: 0;
}
@media (min-width: 768px) {
  .last-media .filters li {
    margin: 0 10px;
    font-weight: 400;
    font-size: 15px;
    line-height: 25px;
    padding: 5px 15px;
  }
}
.last-media .filters li:hover {
  border-color: #b2b9bc;
  cursor: pointer;
}
.last-media .filters li.is-checked {
  border-color: #ca9e2a;
  cursor: default;
}
.last-media .thumbnails {
  margin: 0px auto;
  overflow: hidden;
  max-width: 800px;
}
@media (min-width: 1200px) {
  .last-media .thumbnails {
    max-width: 1200px;
  }
}
@media (min-width: 1600px) {
  .last-media .thumbnails {
    max-width: 1480px;
  }
}
.last-media .thumbnails .thumbnail {
  width: 100%;
  position: absolute;
  display: block;
  overflow: hidden;
  background-color: #0a0a0a;
}
.last-media .thumbnails .thumbnail img {
  width: 100%;
}
.last-media .thumbnails .thumbnail .rollover {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(202, 158, 42, 0.9);
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -ms-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.last-media .thumbnails .thumbnail .rollover i {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  text-align: left;
  direction: ltr;
  width: 80px;
  height: 80px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: bottom center;
  background-image: url("../images/play-plus.png");
  background-size: contain;
  background-size: auto;
  position: absolute;
  text-align: center;
  left: 50%;
  margin-left: -40px;
  top: 100%;
  opacity: 0;
  transform: translateY(-50%);
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
.last-media .thumbnails .thumbnail .rollover i.video {
  background-position: top center;
}
@media (min-width: 768px) {
  .last-media .thumbnails .thumbnail {
    width: 50%;
  }
  .last-media .thumbnails .thumbnail.small {
    width: 25%;
  }
}
.last-media .thumbnails .thumbnail:hover .rollover {
  opacity: 1;
}
.last-media .thumbnails .thumbnail:hover .rollover i {
  opacity: 1;
}
.last-media .thumbnails .thumbnail:hover .rollover i {
  top: 50%;
}
.last-media .loadmore {
  text-align: center;
}
.last-media #more-items {
  display: none;
}
/*------------------------------------------------------------------
[6.18. upcomming-events]
*/
.upcomming-events {
  padding: 0 12px;
}
.upcomming-events .upevent {
  text-align: center;
  color: #ffffff;
  margin-bottom: 12px;
}
@media (min-width: 768px) {
  .upcomming-events .upevent {
    padding: 0px 12px 24px;
    width: 50%;
    margin-bottom: 0;
  }
}
@media (min-width: 1200px) {
  .upcomming-events .upevent {
    width: 33.333%;
  }
}
.upcomming-events .upevent img {
  width: 100%;
}
.upcomming-events .upevent .contain {
  position: relative;
  overflow: hidden;
  background-color: #0a0a0a;
}
.upcomming-events .upevent .bg-image {
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: -webkit-transform 0.35s;
  transition: opacity 0.25s, transform 0.35s;
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}
.upcomming-events .upevent .content {
  margin: 10px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  padding: 20px 20px 15px;
  position: relative;
  transition: border-color 0.25s ease-in-out;
}
@media (min-width: 768px) {
  .upcomming-events .upevent .content {
    padding: 20px 50px 15px;
  }
}
.upcomming-events .upevent:hover .content {
  border-width: 3px;
  border-color: #ffffff;
  padding: 18px 48px 13px;
}
.upcomming-events .upevent:hover .bg-image {
  opacity: 0.8;
  -webkit-transform: scale3d(1.05, 1.05, 1);
  transform: scale3d(1.05, 1.05, 1);
}
.upcomming-events .upevent .date {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 20px;
  line-height: normal;
}
.upcomming-events .upevent .date span {
  font-size: 15px;
}
.upcomming-events .upevent .separator {
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 600;
  position: relative;
  margin: 18px auto 9px;
  width: auto;
  height: auto;
  background: transparent;
}
.upcomming-events .upevent .separator span {
  position: relative;
}
.upcomming-events .upevent .separator span:after,
.upcomming-events .upevent .separator span:before {
  content: "";
  height: 2px;
  background-color: #ffffff;
  width: 50px;
  display: block;
  margin: 0 auto;
  position: absolute;
  top: 9px;
}
.upcomming-events .upevent .separator span:after {
  right: -60px;
}
.upcomming-events .upevent .separator span:before {
  left: -60px;
}
.upcomming-events .upevent .title {
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 300;
  margin-bottom: 15px;
  letter-spacing: 0;
  font-size: 44px;
  line-height: 43px;
}
@media (min-width: 992px) {
  .upcomming-events .upevent .title {
    font-size: 60px;
    line-height: 55px;
  }
}
.upcomming-events .upevent p {
  line-height: 27px;
}
.upcomming-events .upevent .buttons {
  margin: 30px 0;
}
.upcomming-events .upevent .buttons .btn {
  padding: 13px 35px 10px 35px;
  margin: 10px 0;
}
.upcomming-events .upevent .posted {
  text-transform: uppercase;
  font-size: 14px;
}
.upcomming-events .upevent .posted span {
  color: #aeaeae;
}
/*------------------------------------------------------------------
[6.19. disc-tracklist]
*/
.player-album {
  background-color: #ECEBEB;
}
.player-album.inverse-color {
  background-color: #211E1E;
}
.player-album.inverse-color .disc-tracklist li:not(.playing-track) .track-info p.track-title {
  color: #ca9e2a;
}
.player-album.inverse-color .disc-tracklist li:not(.playing) a:hover {
  background-color: #3D3D3D;
}
.player-album.inverse-color .disc-tracklist li:not(.playing) a:hover .track-info {
  border-color: #3D3D3D;
}
.player-album.inverse-color .disc-tracklist li:not(.playing) a:after {
  background: url("../images/player-inverse.png") 1px -1px no-repeat;
}
.player-album.inverse-color .disc-tracklist li.playing .track-info p.track-title {
  color: #363636;
}
.player-album.inverse-color .disc-tracklist li .track-info p.track-album {
  color: #EBDEDE;
}
.player-album.inverse-color .disc-tracklist li .track-info {
  border-bottom: 1px solid rgba(207, 207, 207, 0.25);
}
.player-album.inverse-color .info-album p.album-list {
  color: #EBDEDE;
}
.player-album.inverse-color .disc-tracklist .audiojs {
  background-color: #414141;
}
.player-album.inverse-color .disc-tracklist .audiojs .play {
  background: url("../images/play-inverse.png") 5px 5px no-repeat;
}
.player-album .info-album {
  width: 100%;
}
@media (min-width: 1600px) {
  .player-album .info-album {
    width: 420px;
  }
}
.player-album .container {
  position: relative;
}
.player-album .close-btn {
  position: absolute;
  right: 37px;
  cursor: pointer;
  top: 18px;
}
.disc-tracklist {
  overflow: hidden;
  position: relative;
}
.disc-tracklist ol.playlist0 {
  margin-bottom: 80px;
}
.disc-tracklist li {
  min-height: 90px;
  cursor: pointer;
  position: relative;
}
.disc-tracklist li a {
  padding-left: 90px;
  text-decoration: none;
  display: block;
}
.disc-tracklist li a:after {
  content: "";
  display: block;
  position: absolute;
  width: 40px;
  height: 40px;
  top: 24px;
  right: 12px;
  background: url("../images/players-album.png") 1px -80px no-repeat;
}
.disc-tracklist li a:hover {
  background-color: #ca9e2a;
  background-color: #D9D9D9;
}
.disc-tracklist li a:hover .track-info {
  border-color: #ca9e2a;
  border-color: #D9D9D9;
}
.disc-tracklist li.playing a {
  background-color: #ca9e2a;
}
.disc-tracklist li.playing a:after {
  background-position: 1px -2px;
  right: auto;
  left: 22px;
}
.disc-tracklist li.playing a .track-info {
  border-color: #ca9e2a;
}
.disc-tracklist li.playing a .track-album,
.disc-tracklist li.playing a .track-title {
  color: #ffffff;
}
.disc-tracklist li.playing.pause a:after {
  background-position: 1px -80px;
}
.disc-tracklist li .play-btns {
  display: none;
  position: absolute;
  top: 50px;
}
.disc-tracklist li .play-btns button {
  border: 1px solid;
  width: 50px;
  height: 50px;
}
.disc-tracklist li .play-btns button.btn-play {
  background: url("../images/players-album.png") 1px -80px no-repeat;
}
.disc-tracklist li .play-btns button.btn-pause {
  background: url("../images/players-album.png") 0 0 no-repeat;
}
.disc-tracklist li .track-info {
  border-bottom: 1px solid #CFCFCF;
  padding: 15px 0 14px;
  z-index: 1;
  position: relative;
}
.disc-tracklist li .track-info p {
  max-width: 230px;
  line-height: 30px;
  color: #000000;
}
.disc-tracklist li .track-info .track-title {
  font-weight: 700;
}
.disc-tracklist li .track-info .track-album {
  color: #8b8b8b;
}
.disc-tracklist li .audiojs .scrubber,
.disc-tracklist li .audiojs .time,
.disc-tracklist li .audiojs .error-message {
  display: none;
}
.disc-tracklist li .audiojs.playing {
  background-color: #ca9e2a;
}
.disc-tracklist li .audiojs.playing .scrubber,
.disc-tracklist li .audiojs.playing .time,
.disc-tracklist li .audiojs.playing .error-message {
  display: block;
}
.disc-tracklist li.playing-track {
  background-color: #ca9e2a;
}
.disc-tracklist li.playing-track p,
.disc-tracklist li.playing-track p.track-album {
  color: #ffffff;
}
.disc-tracklist li.playing-track .audiojs {
  display: block;
}
.disc-tracklist .audiojs {
  display: none;
  position: absolute;
  top: 0;
  overflow: visible;
  background-image: none;
  background-color: #ca9e2a;
  background-color: #B4B2B2;
  box-shadow: none;
  width: 100%;
  font-family: 'Roboto', sans-serif;
  left: 0;
  height: 89px;
}
.disc-tracklist .audiojs .play-pause {
  display: none;
  border: none;
  width: 42px;
  padding: 0;
  margin: 20px;
}
.disc-tracklist .audiojs .scrubber,
.disc-tracklist .audiojs .loaded,
.disc-tracklist .audiojs .progress {
  border: 0;
  background-image: none;
  box-shadow: none;
  border-radius: 10px;
  height: 4px;
}
.disc-tracklist .audiojs .scrubber {
  background-color: rgba(255, 255, 255, 0.4);
  position: absolute;
  height: 4px;
  top: 33px;
  left: 75px;
  width: 595px;
  width: calc(100% - 135px);
  z-index: 9999;
  width: calc(100% - 110px);
  left: 40px;
}
.disc-tracklist .audiojs p {
  width: 100%;
}
.disc-tracklist .audiojs .loaded {
  background-color: rgba(255, 255, 255, 0.4);
}
.disc-tracklist .audiojs .progress {
  background-color: #ffffff;
}
.disc-tracklist .audiojs .time {
  position: absolute;
  text-shadow: none;
  border: none;
  height: auto;
  line-height: normal;
  margin: 0;
  padding: 0;
  top: 20px;
  right: 50px;
}
.disc-tracklist .audiojs .play {
  background: url("../images/players-album.png") 1px -80px no-repeat;
}
.disc-tracklist .audiojs .pause {
  background: url("../images/players-album.png") 0 0 no-repeat;
}
.disc-tracklist .audiojs .loading {
  background: url("../images/players-album.png") 1px -180px no-repeat;
}
.disc-tracklist .audiojs .volumen {
  background: url("../images/players-album.png") 1px -262px no-repeat;
}
/*------------------------------------------------------------------
[6.20. tourdates]
*/
.tourdates .image-tour {
  width: 100%;
  background-size: cover;
  background-position: center center;
  display: block;
  height: 250px;
}
@media (min-width: 768px) {
  .tourdates .image-tour {
    height: 500px;
  }
}
@media (min-width: 1200px) {
  .tourdates .image-tour {
    height: 790px;
  }
}
.tour-info {
  height: 400px;
  padding: 0;
  margin-bottom: 90px;
}
@media (min-width: 768px) {
  .tour-info {
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
    height: 500px;
  }
}
@media (min-width: 1200px) {
  .tour-info {
    height: 790px;
  }
}
.tour-info .flickity-viewport {
  height: 100% !important;
}
.tour-info .carousel-dates {
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .tour-info .carousel-dates {
    height: calc(100% - 100px);
  }
}
.tour-info .gallery-cell {
  background-position: center center;
  background-size: cover;
  width: 100%;
  height: 100%;
}
.tour-info .vcenter {
  width: 100%;
  padding: 20px 15%;
}
@media (min-width: 768px) {
  .tour-info .vcenter {
    padding: 0 15%;
  }
}
@media (min-width: 1600px) {
  .tour-info .vcenter {
    padding: 0 23%;
  }
}
.tour-info p {
  text-align: center;
  color: #ffffff;
}
.tour-info p.name-tour {
  font-family: "Cinzel", serif;
  text-transform: uppercase;
  font-weight: 300;
  font-size: 43px;
  line-height: 40px;
  letter-spacing: 2px;
}
@media (min-width: 992px) {
  .tour-info p.name-tour {
    font-size: 60px;
    line-height: 52px;
    letter-spacing: 6px;
  }
}
@media (min-width: 1600px) {
  .tour-info p.name-tour {
    font-size: 90px;
    line-height: 80px;
    letter-spacing: 15px;
  }
}
.tour-info p.separator {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 15px;
  margin: 5px auto;
  background: transparent;
  width: auto;
  height: auto;
  position: relative;
}
@media (min-width: 992px) {
  .tour-info p.separator {
    margin: 14px auto;
  }
}
@media (min-width: 1600px) {
  .tour-info p.separator {
    margin: 14px auto 28px;
  }
}
.tour-info p.separator:after,
.tour-info p.separator:before {
  content: "";
  height: 2px;
  background-color: #ffffff;
  width: 25%;
  display: block;
  margin: 0 auto;
  position: absolute;
  top: 10px;
}
.tour-info p.separator:after {
  left: calc(50% + 28px);
}
.tour-info p.separator:before {
  right: calc(50% + 27px);
}
.tour-info p.subtitle-tour {
  font-family: "Cinzel", serif;
  color: #be1212;
  text-transform: uppercase;
  font-weight: 500;
  margin-bottom: 12px;
  font-size: 17px;
  line-height: 22px;
}
@media (min-width: 768px) {
  .tour-info p.subtitle-tour {
    font-size: 20px;
    line-height: 28px;
  }
}
.tour-info p.buy {
  margin-top: 10px;
}
@media (min-width: 1200px) {
  .tour-info p.buy {
    margin-top: 30px;
  }
}
.tour-info .dates-tour {
  position: absolute;
  bottom: -100px;
  left: 0;
  background-color: #161616;
  width: 100%;
}
@media (min-width: 768px) {
  .tour-info .dates-tour {
    bottom: -12px;
  }
}
.tour-info .dates-tour li {
  display: inline-block;
  float: left;
  color: #555555;
  height: 90px;
  text-align: center;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  padding-top: 12px;
  border-left: 2px solid rgba(0, 0, 0, 0.25);
  cursor: pointer;
  width: 33%;
  -webkit-transition: color 0.2s ease-out;
  -moz-transition: color 0.2s ease-out;
  -o-transition: color 0.2s ease-out;
  transition: color 0.2s ease-out;
}
@media (min-width: 768px) {
  .tour-info .dates-tour li {
    padding-top: 16px;
    height: 110px;
    font-size: 16px;
  }
}
@media (min-width: 1200px) {
  .tour-info .dates-tour li {
    width: 200px;
  }
}
.tour-info .dates-tour li:hover {
  color: #ca9e2a;
}
.tour-info .dates-tour li.active {
  background-color: #ca9e2a;
  color: #ffffff;
  border: none;
  position: relative;
  top: -12px;
  padding-top: 24px;
  height: 105px;
  cursor: default;
}
@media (min-width: 768px) {
  .tour-info .dates-tour li.active {
    height: 122px;
    padding-top: 28px;
  }
}
.tour-info .dates-tour li.active:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-bottom: 13px solid #ca9e2a;
  position: absolute;
  top: -12px;
  left: 50%;
  margin-left: -14px;
}
.tour-info .dates-tour li.active:hover {
  color: #ffffff;
}
.tour-info .dates-tour li span {
  display: block;
  font-weight: 400;
  font-size: 50px;
  line-height: 50px;
}
@media (min-width: 768px) {
  .tour-info .dates-tour li span {
    font-size: 70px;
    line-height: 60px;
  }
}
/*------------------------------------------------------------------
[6.21. upcomming-events-list]
*/
.upcomming-events-list {
  background-position: center bottom;
  background-repeat: repeat-x;
}
.upcomming-events-list li {
  padding: 17px 0;
}
.upcomming-events-list li:not(:last-child) {
  border-bottom: 1px solid rgba(43, 43, 43, 0.9);
}
.upcomming-events-list li > div {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  max-width: 990px;
}
@media (min-width: 1200px) {
  .upcomming-events-list li > div {
    max-width: 1020px;
  }
}
@media (min-width: 1600px) {
  .upcomming-events-list li > div {
    max-width: 1400px;
  }
}
@media (min-width: 768px) {
  .upcomming-events-list li p {
    float: left;
  }
}
.upcomming-events-list li p span {
  display: block;
  color: #ca9e2a;
  font-family: 'Roboto', sans-serif;
}
.upcomming-events-list li .date-event {
  text-align: center;
  font-size: 40px;
  font-weight: 800;
  line-height: 29px;
  padding: 26px 15px 16px;
}
@media (min-width: 768px) {
  .upcomming-events-list li .date-event {
    border-left: 2px solid #be1212;
    max-width: 134px;
    float: left;
  }
}
@media (min-width: 1600px) {
  .upcomming-events-list li .date-event {
    padding: 26px 30px 16px;
  }
}
.upcomming-events-list li .date-event span {
  font-family: 'Roboto', sans-serif;
  color: #ffffff;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 4px;
}
.upcomming-events-list li .name {
  color: #afafaf;
  font-size: 15px;
  line-height: 22px;
  padding: 16px 35px;
  text-align: center;
}
@media (min-width: 768px) {
  .upcomming-events-list li .name {
    max-width: 360px;
    text-align: left;
  }
}
@media (min-width: 1600px) {
  .upcomming-events-list li .name {
    max-width: 505px;
    width: 505px;
    padding: 16px 65px;
  }
}
.upcomming-events-list li .name span {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 5px;
}
.upcomming-events-list li .venue {
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
  padding: 19px 35px 28px 35px;
  text-align: center;
  text-align: left;
}
@media (min-width: 768px) {
  .upcomming-events-list li .venue {
    border-left: 1px solid rgba(43, 43, 43, 0.9);
    border-right: 1px solid rgba(43, 43, 43, 0.9);
    max-width: 312px;
  }
}
@media (min-width: 1200px) {
  .upcomming-events-list li .venue {
    min-width: 280px;
  }
}
@media (min-width: 1600px) {
  .upcomming-events-list li .venue {
    width: 312px;
    padding: 19px 35px 28px 54px;
  }
}
.upcomming-events-list li .venue span {
  text-transform: none;
  font-size: 18px;
  margin-top: 5px;
}
.upcomming-events-list li .price {
  text-align: center;
  padding: 19px 20px;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
}
@media (min-width: 768px) {
  .upcomming-events-list li .price {
    max-width: 130px;
  }
}
@media (min-width: 1600px) {
  .upcomming-events-list li .price {
    width: 130px;
  }
}
.upcomming-events-list li .price span {
  font-size: 28px;
  margin-top: 8px;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
}
.upcomming-events-list li .buy {
  text-align: center;
}
@media (min-width: 768px) {
  .upcomming-events-list li .buy {
    text-align: left;
  }
}
.upcomming-events-list li .btn {
  margin: 29px 20px 29px 10px;
  padding: 13px 20px 10px;
}
@media (min-width: 1600px) {
  .upcomming-events-list li .btn {
    padding: 13px 35px 10px 35px;
    margin: 29px 65px;
  }
}
.upcomming-events-list li.more {
  display: none;
}
.upcomming-events-list-title {
  font-family: "Cinzel", serif;
  text-transform: uppercase;
  text-align: center;
  color: #ffffff;
  padding: 58px 0 42px;
  font-size: 26px;
  line-height: normal;
}
.view-all-events {
  text-align: center;
  padding: 57px 0 80px;
}
/*------------------------------------------------------------------
[6.22. paginationposts]
*/
.paginationposts .row {
  border-top: 2px solid #e1e1e1;
}
.paginationposts nav {
  text-align: center;
  padding: 20px 0;
}
.paginationposts .pagination {
  font-family: 'Roboto', sans-serif;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 400;
}
.paginationposts .pagination > li > a,
.paginationposts .pagination > li > span {
  background-color: #E1E1E1;
  border: none;
  color: #151518;
  padding: 10px 16px;
  margin: 0 5px;
  -webkit-transition: background-color 0.2s ease-out;
  -moz-transition: background-color 0.2s ease-out;
  -o-transition: background-color 0.2s ease-out;
  transition: background-color 0.2s ease-out;
}
.paginationposts .pagination > li:hover > a,
.paginationposts .pagination > li.active > a,
.paginationposts .pagination > li:hover > span,
.paginationposts .pagination > li.active > span {
  background-color: #ca9e2a;
  color: #ffffff;
}
.paginationposts .pagination > li:first-child > a,
.paginationposts .pagination > li:first-child > span,
.paginationposts .pagination > li:last-child > a,
.paginationposts .pagination > li:last-child > span {
  border-radius: 0;
  padding: 10px 23px;
}
.paginationposts.inverse-color .row {
  border-color: #555555;
}
.paginationposts.inverse-color .pagination > li > a,
.paginationposts.inverse-color .pagination > li > span {
  background-color: #555555;
  color: #ffffff;
}
.paginationposts.inverse-color .pagination > li:hover > a,
.paginationposts.inverse-color .pagination > li.active > a,
.paginationposts.inverse-color .pagination > li:hover > span,
.paginationposts.inverse-color .pagination > li.active > span {
  background-color: #ca9e2a;
}
/*------------------------------------------------------------------
[6.23. shop]
*/
.ecommercebar .container .row {
  margin: 0 4px;
  background-color: #F2F2F2;
}
.ecommercebar p {
  font-weight: 300;
  padding: 10px 0 6px;
  font-size: 11px;
  letter-spacing: 0.2px;
}
.ecommercebar p i {
  margin-right: 27px;
  margin-left: 2px;
}
.ecommercebar .menu-ecommerce {
  font-weight: 300;
  padding: 0;
  font-size: 11px;
  letter-spacing: 0.2px;
  text-align: right;
  text-transform: uppercase;
  padding-right: 6px;
}
.ecommercebar .menu-ecommerce a {
  color: #000000;
  padding: 10px 0 6px;
  display: inline-block;
}
.ecommercebar .menu-ecommerce i {
  margin-right: 3px;
  font-size: 16px;
}
.ecommercebar .menu-ecommerce .cart {
  margin-left: 27px;
  position: relative;
  display: inline-block;
  padding: 10px 0 6px;
}
.ecommercebar .menu-ecommerce .space {
  margin: 0 6px;
}
.ecommercebar .cart-big {
  position: absolute;
  top: 40px;
  background-color: #EBEBEB;
  right: -24px;
  width: 295px;
  z-index: 1;
  border: 1px solid #E1E1E1;
  border-radius: 2px;
  -webkit-box-shadow: 1px 2px 5px -1px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 1px 2px 5px -1px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 2px 5px -1px rgba(0, 0, 0, 0.2);
}
.ecommercebar .cart-big .pull-left {
  margin-right: 11px;
  padding: 0;
}
.ecommercebar .cart-big .list-cart-products li {
  padding: 20px;
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid #E1E1E1;
  -webkit-transition: background-color 0.2s ease-out;
  -moz-transition: background-color 0.2s ease-out;
  -o-transition: background-color 0.2s ease-out;
  transition: background-color 0.2s ease-out;
}
.ecommercebar .cart-big .list-cart-products li .close {
  position: absolute;
  background-color: #777777;
  color: #ffffff;
  opacity: 0.7;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  top: 20px;
  right: 20px;
  background-image: url('../images/close-cart.png');
  background-position: center center;
  background-repeat: no-repeat;
}
.ecommercebar .cart-big .list-cart-products li .close:hover {
  opacity: 1;
}
.ecommercebar .cart-big .list-cart-products li img {
  display: block;
}
.ecommercebar .cart-big .list-cart-products li .title-post p {
  font-size: 13px;
  color: #777777;
  text-align: left;
  margin: 3px 0;
  padding: 0;
  line-height: normal;
  letter-spacing: 0px;
}
.ecommercebar .cart-big .list-cart-products li .title-post .title {
  font-weight: 700;
  color: #000000;
  text-transform: none;
}
.ecommercebar .cart-big .list-cart-products li:hover {
  background-color: #ffffff;
}
.ecommercebar .cart-big .total {
  padding: 23px 25px 23px 20px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  color: #B5B5B5;
}
.ecommercebar .cart-big .total .price {
  font-size: 14px;
  color: #777777;
  float: right;
}
.ecommercebar .cart-big .acctions {
  padding: 20px;
}
.ecommercebar .cart-big .acctions .btn {
  width: 100%;
  background-color: red;
  color: #ffffff;
  background-color: #ca9e2a;
  font-size: 12px;
}
.ecommercebar .cart-big .acctions .btn.checkout {
  background-color: #000000;
  margin-top: 10px;
}
.ecommercebar .cart-big .acctions .btn:hover {
  background-color: #b2b9bc;
}
.ecommercebar .cart .cart-big {
  display: none;
}
.ecommercebar .cart:hover .cart-big {
  display: block;
}
.featured-shop {
  padding-bottom: 28px;
}
@media (max-width: 400px) {
  .page-shop .col-xs-6 {
    width: 100%;
  }
}
.shopbanners {
  margin-top: 25px;
  margin-bottom: 7px;
}
@media (min-width: 992px) {
  .shopbanners .content-banner {
    float: left;
  }
}
@media (min-width: 992px) {
  .shopbanners .content-banner:not(:last-child) {
    margin-right: 3%;
  }
}
@media (min-width: 1600px) {
  .shopbanners .content-banner:not(:last-child) {
    margin-right: 39px;
  }
}
@media (min-width: 992px) {
  .shopbanners .content-banner.big {
    width: 44%;
  }
}
@media (min-width: 1600px) {
  .shopbanners .content-banner.big {
    width: 43.3%;
  }
  .shopbanners .content-banner.big .banner {
    max-width: 640px;
    padding: 50px;
  }
  .shopbanners .content-banner.big .banner p,
  .shopbanners .content-banner.big .banner h2,
  .shopbanners .content-banner.big .banner h3 {
    max-width: 57%;
  }
}
@media (min-width: 992px) {
  .shopbanners .content-banner.small {
    width: 25%;
  }
}
@media (min-width: 1600px) {
  .shopbanners .content-banner.small {
    width: 25.7%;
  }
  .shopbanners .content-banner.small .banner {
    max-width: 380px;
  }
}
.shopbanners .banner {
  margin: 0 auto;
  height: 300px;
  margin-bottom: 40px;
  background-color: gray;
  background-size: contain;
  background-position: center center;
  color: #ffffff;
  padding: 12px 35px 30px;
  position: relative;
  background-size: cover;
}
.shopbanners .banner.bigheight {
  height: 640px;
}
.shopbanners .banner.text-bottom .text {
  position: absolute;
  bottom: 36px;
  width: 100%;
  left: 0;
  padding: 0 36px;
}
.shopbanners .banner h2 {
  text-transform: uppercase;
  font-weight: 300;
  margin: 20px 0;
  font-size: 28px;
  line-height: 29px;
}
.shopbanners .banner h2.title-banner {
  letter-spacing: 6.5px;
}
.shopbanners .banner h3 {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 3px;
}
.shopbanners .banner p {
  line-height: 28px;
  margin-top: 24px;
}
.shop-item {
  margin: 16px 0 62px;
}
.shop-item .cover {
  position: relative;
}
.shop-item .cover img {
  display: block;
  margin: 0 auto;
}
.shop-item .cover .rollover {
  position: absolute;
  text-align: center;
  opacity: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -ms-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.shop-item .cover .rollover p {
  position: absolute;
  -webkit-transform: translateY(-50%);
  top: 100%;
  width: 100%;
  opacity: 0;
  transform: translateY(-50%);
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
.shop-item .cover:hover .rollover {
  opacity: 1;
}
.shop-item .cover:hover .rollover p {
  opacity: 1;
  top: 50%;
}
.shop-item .cover[data-label]:before {
  content: attr(data-label);
  position: absolute;
  font-family: "Cinzel", serif;
  background: #ca9e2a;
  color: #ffffff;
  text-transform: uppercase;
  top: 8px;
  left: -6px;
  line-height: 33px;
  font-size: 13px;
  padding: 0 15px;
  font-weight: 600;
  letter-spacing: 4px;
  z-index: 1;
}
.shop-item .info .rating {
  font-size: 14px;
  margin: 23px 0 17px;
  color: #ca9e2a;
  display: inline-block;
}
.shop-item .info .rating i {
  margin-right: 2px;
}
.shop-item .info .price {
  display: inline-block;
  float: right;
  margin: 23px 5px 16px;
  font-weight: 500;
  letter-spacing: 1px;
  font-size: 20px;
  color: #ca9e2a;
}
.shop-item .info .price .old-price {
  color: #9F9F9F;
  text-decoration: line-through;
  font-size: 17px;
  margin-right: 1px;
}
.shop-item .info .album,
.shop-item .info .artist {
  font-family: "Cinzel", serif;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 4.25px;
}
.shop-item .info .artist {
  font-weight: 400;
  color: #ca9e2a;
  padding-bottom: 5px;
}
/*------------------------------------------------------------------
[6.24. time-circles]
*/
#DateCountdown {
  width: 600px;
  margin: 40px auto 50px;
}
@media (max-width: 767px) {
  #DateCountdown {
    width: 100%;
  }
}
/*------------------------------------------------------------------
[6.25. blog]
*/
.post-details {
  margin-top: 52px;
  margin-bottom: 125px;
}
.post-details .featured-image {
  margin-bottom: 38px;
}
.post-details p {
  line-height: 36px;
}
.post-details .title.small span.gray {
  color: #999999;
}
.post-details .title.small span.right {
  float: right;
}
.post-details .post-author .title.small,
.post-details .post-comments .title.small,
.post-details .post-reply .title.small {
  color: #000000;
  letter-spacing: 3.5px;
}
.post-details .post-author .media {
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  margin-top: 22px;
  padding: 31px 18px 35px;
}
.post-details .post-author .media > .pull-left {
  margin-right: 23px;
}
.post-details .post-author .media-body {
  font-weight: 300;
  font-size: 14px;
  line-height: 28px;
  color: #666666;
}
.post-details .post-author .media-heading {
  font-weight: 700;
  font-size: 18px;
}
.post-details .post-comments .media {
  margin-top: 38px;
}
.post-details .post-comments .media > .pull-left {
  margin-right: 12px;
  background-color: #ca9e2a;
}
.post-details .post-comments .media-heading {
  font-weight: 700;
  font-size: 16px;
  line-height: 16px;
  margin-bottom: 15px;
  color: #000000;
}
.post-details .post-comments .media-heading small {
  font-size: 12px;
  display: block;
  margin-top: 6px;
  color: #CECECE;
}
.post-details .post-comments .media-body {
  font-size: 16px;
  line-height: 30px;
  color: #666666;
  font-weight: 300;
}
.post-details .post-comments .media-body .reply {
  font-size: 14px;
  display: block;
  color: #ca9e2a;
  font-weight: 700;
}
.post-details .post-reply form {
  margin-top: 30px;
}
.post-details .post-reply form input,
.post-details .post-reply form textarea {
  box-shadow: none;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 3px;
  margin-bottom: 18px;
}
.post-details .post-reply form input:not([type=submit]) {
  width: 223px;
  margin-right: 48px;
  height: 50px;
  display: inline-block;
}
.post-details .post-reply form textarea {
  padding: 16px 12px;
}
.sidebar {
  margin-top: 52px;
}
.sidebar .title.small {
  color: #000000;
  letter-spacing: 3.5px;
}
.sidebar .title.small i {
  font-size: 21px;
  position: relative;
  top: 3px;
  left: 4px;
  color: #ca9e2a;
}
.sidebar .search {
  width: 100%;
  position: relative;
  margin-top: 28px;
  margin-bottom: 46px;
  max-width: 272px;
}
.sidebar .search input {
  box-shadow: none;
  height: 50px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 2.3px;
}
.sidebar .search .input-group-btn {
  position: absolute;
  top: 11px;
  right: 31px;
  font-size: 17px;
}
.sidebar .search .input-group-btn i {
  color: #ca9e2a;
}
.sidebar .social {
  margin-top: 27px;
  margin-bottom: 40px;
  position: relative;
  overflow: hidden;
}
.sidebar .social li {
  float: left;
}
.sidebar .social li.facebook i {
  background-color: #3655A6;
}
.sidebar .social li.twitter i {
  background-color: #00C0FF;
}
.sidebar .social li.google i {
  background-color: #D93838;
}
.sidebar .social li.instagram i {
  background-color: #203F69;
}
.sidebar .social li.linkedin i {
  background-color: #113777;
}
.sidebar .social li.pinterest i {
  background-color: #EC1717;
}
.sidebar .social li.flickr i {
  background-color: #EF2559;
}
.sidebar .social li.tumblr i {
  background-color: #1C3C6E;
}
.sidebar .social li.dribbble i {
  background-color: #E24090;
}
.sidebar .social li.youtube i {
  background-color: #DE1E1E;
}
.sidebar .social i {
  width: 48px;
  height: 48px;
  display: inline-block;
  background-color: #ccc;
  text-align: center;
  padding-top: 15px;
  margin-bottom: 10px;
  margin-right: 7px;
  border-radius: 2px;
  font-size: 21px;
  color: #ffffff;
}
.sidebar .advertisment {
  height: 250px;
  border: 2px solid #F3F3F3;
  position: relative;
  text-align: center;
}
.sidebar .advertisment p {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: #B3B3B3;
  line-height: 20px;
  letter-spacing: 2.2px;
}
.sidebar .advertisment .vcenter {
  width: 100%;
}
.sidebar .instagram-feed {
  padding-top: 30px;
  padding-bottom: 40px;
}
.sidebar .instagram-feed li {
  display: inline-block;
  margin: 0 3px 1px 0;
}
.sidebar .instagram-feed li img {
  display: block;
}
.sidebar .menu-sidebar {
  position: relative;
  overflow: hidden;
  margin-top: 27px;
}
.sidebar .menu-sidebar li {
  float: left;
  width: 50%;
  background-color: #E1E1E1;
  color: #464646;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  padding: 10px 0;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.sidebar .menu-sidebar li.active {
  background-color: #ca9e2a;
  color: #ffffff;
}
.sidebar .last-tweets,
.sidebar .last-comments,
.sidebar .last-posts-sidebar {
  margin-top: 28px;
  margin-bottom: 37px;
}
.sidebar .last-tweets li,
.sidebar .last-comments li,
.sidebar .last-posts-sidebar li {
  position: relative;
  overflow: hidden;
  padding-bottom: 14px;
  margin-top: 20px;
}
.sidebar .last-tweets li:not(:last-child),
.sidebar .last-comments li:not(:last-child),
.sidebar .last-posts-sidebar li:not(:last-child) {
  border-bottom: 1px solid #eeeeee;
}
.sidebar .last-tweets .pull-left,
.sidebar .last-comments .pull-left,
.sidebar .last-posts-sidebar .pull-left {
  margin-right: 15px;
}
.sidebar .last-tweets .title-post p,
.sidebar .last-comments .title-post p,
.sidebar .last-posts-sidebar .title-post p {
  font-size: 15px;
  line-height: 22px;
}
.sidebar .last-tweets .date,
.sidebar .last-comments .date,
.sidebar .last-posts-sidebar .date {
  font-size: 13px;
  color: #ca9e2a;
  margin-top: 4px;
}
.sidebar .last-comments {
  margin-top: 15px;
}
.sidebar .last-tweets .title-post p {
  font-weight: 700;
}
.sidebar .list-tags {
  margin-top: 28px;
  margin-bottom: 40px;
}
.sidebar .list-tags li {
  display: inline-block;
  margin-right: -1px;
  margin-bottom: 11px;
}
.sidebar .list-tags li a {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 25px;
  border: 2px solid #F3F3F3;
  color: #000000;
  padding: 0 14px;
  letter-spacing: 0.4px;
  display: block;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.sidebar .list-tags li a:hover {
  color: #ffffff;
  background-color: #ca9e2a;
  border-color: #ca9e2a;
  text-decoration: none;
}
.sidebar .last-tweets li,
.sidebar .last-comments li {
  padding-bottom: 18px;
}
.sidebar .last-tweets .header-comment,
.sidebar .last-comments .header-comment {
  position: relative;
  overflow: hidden;
}
.sidebar .last-tweets .header-comment .pull-left,
.sidebar .last-comments .header-comment .pull-left {
  margin-right: 11px;
}
.sidebar .last-tweets .header-comment .date,
.sidebar .last-comments .header-comment .date {
  margin-top: 8px;
}
.sidebar .last-tweets .comment,
.sidebar .last-comments .comment {
  margin-top: 10px;
}
.sidebar .last-tweets .comment p,
.sidebar .last-comments .comment p {
  font-size: 14px;
  color: #667777;
  font-style: italic;
  line-height: 20px;
  font-family: georgia;
  line-height: 22px;
}
.sidebar .last-tweets .tweet,
.sidebar .last-comments .tweet {
  margin-top: 10px;
}
.sidebar .last-tweets .tweet p,
.sidebar .last-comments .tweet p {
  font-size: 15px;
  line-height: 22px;
}
.sidebar .last-tweets .tweet p a,
.sidebar .last-comments .tweet p a {
  color: #ca9e2a;
  text-decoration: none;
}
.inverse-color .sidebar .title.small {
  color: #F8F8F8;
}
.inverse-color .sidebar .list-tags li a {
  color: #F3F3F3;
}
.inverse-color .sidebar .last-tweets li:not(:last-child),
.inverse-color .sidebar .last-comments li:not(:last-child),
.inverse-color .sidebar .last-posts-sidebar li:not(:last-child) {
  border-bottom-color: rgba(238, 238, 238, 0.25);
}
.inverse-color hr {
  border-color: rgba(238, 238, 238, 0.25);
}
.inverse-color .post-details .post-author .media {
  border-color: rgba(238, 238, 238, 0.25);
}
.inverse-color .post-details .post-comments .media-body,
.inverse-color .post-details .post-author .media-body {
  color: #E8E8E8;
}
.inverse-color .post-details .post-comments .media-heading {
  color: #F8F8F8;
}
.inverse-color .post-details .post-author .title.small,
.inverse-color .post-details .post-comments .title.small,
.inverse-color .post-details .post-reply .title.small {
  color: #F8F8F8;
}
.inverse-color .form-control {
  background: #191919;
  color: #DCDCDC;
}
/*------------------------------------------------------------------
[6.26. keyframes]
*/
@-webkit-keyframes moveUp {
  100% {
    -webkit-transform: translateY(0);
    opacity: 1;
  }
}
@keyframes moveUp {
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}


.browsehappy {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}
@media (max-width: 400px) {
  body {
    overflow-x: hidden;
  }
}

/*------------------------------------------------------------------
[7 background images]
*/
.section.discography {
  background-image: url('../images/demo/bg-discography.jpg');
}
.section.biography {
  background-image: url('../images/demo/bg-discography.jpg');
}
.section.upcomming-events-list {
  background-image: url('../images/demo/bg-discography.jpg');
}
.section.contact {
  background-image: url('../images/demo/bg-discography.jpg');
}
.footer {
  background-image: url('../images/demo/bg-discography.jpg');
}

.gap {
  margin: 0 30px;
}

.hidden {
    display: none
}

.spotify-embed-center {
  max-width: 500px;   /* limits the player width on large screens */
  margin: 0 auto;     /* centers it horizontally */
}

/* ===========================
   Events — centered on mobile
   =========================== */

/* Wrapper */
.events-wrap {
  max-width: 760px;        /* narrow center column */
  margin: 0 auto;
  padding: 0 16px;
  text-align: left;        /* headings stay left unless you change them */
  background-image: url('../images/demo/bg-discography.jpg'); /* optional */
}

/* List grid */
.events-modern {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

/* Card */
.event {
  --bg: rgba(16,16,18,0.85);
  --border: rgba(255,255,255,0.08);
  --accent: #ca9e2a;

  display: grid;
  grid-template-columns: 1fr; /* stacked on mobile by default */
  gap: 10px;

  border: 1px solid var(--border);
  background: var(--bg);
  border-radius: 12px;
  padding: 12px;

  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.event:hover {
  transform: translateY(-1px);
  border-color: rgba(255,255,255,0.14);
  box-shadow: 0 6px 24px rgba(0,0,0,.35);
}

/* Layout for md+ (desktop/tablet) */
@media (min-width: 768px) {
  .event {
    grid-template-columns: 96px 1fr 150px;
    align-items: center;
    padding: 14px 16px;
  }
}

/* Date block */
.event__date {
  display: grid;
  grid-auto-flow: row;
  justify-items: center;
  text-transform: uppercase;
  border-left: 3px solid var(--accent);
  padding-left: 10px;
}
.event__day   { font-size: 34px; line-height: 1; font-weight: 800; color: var(--accent); }
.event__month { font-size: 11px; letter-spacing: 2px; color: #fff; opacity: .9; margin-top: 3px; }
.event__year  { font-size: 11px; color: #aaa; margin-top: 2px; }

/* Body */
.event__body   { color: #afafaf; }
.event__title  { margin: 0 0 4px 0; font-size: 18px; color: #fff; text-transform: none; }
.event__meta   { font-size: 14px; opacity: .9; }
.event__support{ font-size: 14px; margin-top: 6px; color: #ddd; }

/* Actions (match your social-links look/hover) */
.event__actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-start;   /* desktop default */
}
@media (min-width: 768px) {
  .event__actions { justify-content: flex-end; }
}

.event__actions a.btn-ghost {
  color: #ffffff;
  border: 1px solid rgba(222, 222, 222, 0.2);
  font-size: 20px;
  display: block;
  text-align: center;
  width: 48px;
  padding: 10px 0;
  transition: all 0.2s ease-out;
  border-radius: 10px;
}
@media (min-width: 1200px) {
  .event__actions a.btn-ghost { width: 60px; padding: 16px 0; }
}
.event__actions a.btn-ghost:hover {
  background-color: #ca9e2a;
  border-color: #ca9e2a;
}

/* Badges stay compact */
.event__actions .badge {
  width: auto;
  padding: 4px 8px;
  font-size: 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.2);
}

/* Generic ghost baseline */
.btn-ghost {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 8px 12px; border-radius: 10px;
  border: 1px solid var(--border); background: transparent; color: #fff;
  text-decoration: none; font-size: 14px;
  transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
}
.btn-ghost:hover { border-color: rgba(255,255,255,0.18); background: rgba(255,255,255,0.05); transform: translateY(-1px); }

/* Chips */
.badge { display: inline-block; padding: 4px 8px; border-radius: 999px; font-size: 11px; letter-spacing: .5px; text-transform: uppercase; border: 1px solid var(--border); }
.badge--planned { color: #fff; border-color: rgba(255,255,255,.16); }
.badge--canceled { color: #fff; background: #be1212; border-color: #be1212; }

/* Archive */
.events-archive { margin-top: 14px; text-align: center; }
.events-archive > summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 48px;
  padding: 10px 0;
  font-size: 20px;
  color: #ffffff;
  border: 1px solid rgba(222, 222, 222, 0.2);
  border-radius: 10px;
  transition: all 0.2s ease-out;
}
@media (min-width: 1200px) {
  .events-archive > summary { width: 60px; padding: 16px 0; }
}
.events-archive > summary:hover { background-color: #ca9e2a; border-color: #ca9e2a; }
.events-archive > summary::-webkit-details-marker { display: none; }
.events-archive[open] > summary { background: rgba(255,255,255,.04); }

/* Keep archive list text left by default */
.events-archive ul { text-align: left; margin-top: 20px; }

/* Icon alignment nicety */
.event__meta i, .btn-ghost i { width: 16px; text-align: center; }

/* ===========================
   MOBILE COMPACT CENTERING
   =========================== */
@media (max-width: 767px) {
  /* Center each card and cap width so they don’t span edge-to-edge */
  .events-modern {
    justify-items: center;
  }
  .event {
    width: 100%;
    max-width: 700px;   /* keeps a nice centered card look on phones/phablets */
    text-align: center; /* center fallback */
  }

  /* Center just the event text/content */
  .event__body {
    text-align: center;
  }

  /* Center actions under the text */
  .event__actions {
    justify-content: center;
  }
}

/* Wrapper (kept narrow & centered) */
.members-section .members-wrap {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 16px;
  background-image: url('../images/demo/bg-discography.jpg');
}

/* Grid */
.members-section .members-grid {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr 1fr; /* 2-col on mobile/tablet */
}
@media (min-width: 900px) {
  .members-section .members-grid {
    grid-template-columns: repeat(4, 1fr); /* 4-col on desktop */
  }
}

/* Card */
.members-section .member-card {
  --card-bg: rgba(16,16,18,0.85);
  --card-bd: rgba(255,255,255,0.08);
  --accent: #ca9e2a;

  background: var(--card-bg);
  border: 1px solid var(--card-bd);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  max-width: 340px; /* bigger card */
  margin: 0 auto; /* center card in column */
}
.members-section .member-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0,0,0,.45);
  border-color: rgba(255,255,255,0.15);
}

/* Photo area */
.members-section .member-media {
  position: relative;
  aspect-ratio: 3 / 4; /* slightly taller portrait crop */
  overflow: hidden;
}
.members-section .member-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.02);
  transition: transform .5s ease;
  border-radius: 18px; /* softer edges */
}
.members-section .member-card:hover .member-media img {
  transform: scale(1.08);
}

/* Subtle bottom gradient + role pill */
.members-section .member-media::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 55%);
}
.members-section .member-role {
  position: absolute;
  left: 12px;
  bottom: 12px;
  background: rgba(0, 0, 0, 0.65);
  border: 1px solid rgba(255,255,255,.15);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  font-family: 'Roboto', sans-serif;
  letter-spacing: .4px;
  backdrop-filter: blur(4px);
}

/* Text area */
.members-section .member-body {
  padding: 12px;
  text-align: center;
}
.members-section .member-name {
  margin: 0 0 10px;
  color: #fff;
  font-size: 18px;
  letter-spacing: .5px;
  text-transform: uppercase;
  position: relative;
}
.members-section .member-name::after {
  content: "";
  display: block;
  height: 2px;
  width: 36px;
  margin: 8px auto 0;
  background: linear-gradient(90deg, transparent, #ca9e2a, transparent);
  border-radius: 2px;
}

/* Social buttons (local; won’t affect your global .social-links) */
.members-section .member-social {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin: 12px 0 2px;
  padding: 0;
  list-style: none;
}
.members-section .member-social a {
  color: #ffffff;
  border: 1px solid rgba(222,222,222,0.2);
  font-size: 22px;
  display: block;
  text-align: center;
  width: 48px;
  padding: 10px 0;
  transition: all 0.2s ease-out;
  border-radius: 10px;
}
@media (min-width: 1200px) {
  .members-section .member-social a {
    width: 60px;
    padding: 16px 0;
  }
}
.members-section .member-social a:hover {
  background-color: #ca9e2a;
  border-color: #ca9e2a;
  color: #ffffff;
}

/* ===========================
   BIO — Modern Section (scoped)
   =========================== */
.bio-section .bio-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 16px 40px;
}

/* Header */
.bio-section .bio-header { text-align: center; position: relative; margin: 60px auto 30px; }
.bio-section .bio-line { display:block; width:100%; height:2px; background:linear-gradient(90deg,transparent,#ca9e2a,transparent); margin-bottom:20px; }
.bio-section .bio-icon { display:inline-flex; align-items:center; justify-content:center; background:rgba(255,255,255,0.05); color:#ca9e2a; font-size:26px; width:56px; height:56px; border:2px solid #ca9e2a; border-radius:50%; margin:-48px auto 14px; position:relative; z-index:1; }
.bio-section .bio-pretitle { font-size:14px; letter-spacing:2px; text-transform:uppercase; color:#ccc; margin:0 0 6px; }
.bio-section .bio-title { font-size:32px; text-transform:uppercase; color:#fff; display:inline-block; position:relative; padding-bottom:12px; }
.bio-section .bio-title::after { content:""; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:140%; height:3px; background:linear-gradient(90deg,transparent,#ca9e2a,transparent); border-radius:2px; }

/* Blocks (image + text) */
.bio-section .bio-block {
  --card-bg: rgba(16,16,18,0.85);
  --card-bd: rgba(255,255,255,0.08);
  display:grid; gap:18px;
  grid-template-columns: 1fr;
  padding: 16px;
  margin: 16px 0;
  border:1px solid var(--card-bd);
  background: var(--card-bg);
  border-radius: 16px;
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
@media (min-width: 900px) {
  .bio-section .bio-block { grid-template-columns: 5fr 7fr; align-items: center; }
  .bio-section .bio-block--flip { grid-template-columns: 7fr 5fr; }
  .bio-section .bio-block--flip .bio-media { order: 2; }
  .bio-section .bio-block--flip .bio-text  { order: 1; }
}

/* Media */
.bio-section .bio-media {
  position: relative; overflow: hidden; border-radius: 14px;
}
.bio-section .bio-media::after {
  content:""; position:absolute; inset:0;
  background: linear-gradient(to top, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 45%);
  pointer-events:none;
}
.bio-section .bio-media img {
  width:100%; height:100%; object-fit: cover; display:block;
  transform: scale(1.02);
  transition: transform .5s ease;
  aspect-ratio: 16 / 10;
}
.bio-section .bio-block:hover .bio-media img { transform: scale(1.06); }

/* Text */
.bio-section .bio-text { color:#d0d0d0; }
.bio-section .bio-quote {
  margin:0 0 12px 0; padding:10px 14px;
  border-left: 3px solid #ca9e2a; color:#fff; font-style: italic;
  background: rgba(255,255,255,0.03); border-radius: 10px;
}
.bio-section .bio-copy { font-family: 'Roboto', sans-serif; }
.bio-section .bio-copy p {
  margin: 0 0 10px 0; line-height: 1.65; text-align: justify;
}

/* Optional: dropcap on the first paragraph per block */
.bio-section .bio-copy p:first-child::first-letter {
  font-family: 'Cinzel', serif;
  font-size: 2.2em;
  line-height: 0.9;
  padding-right: 6px;
  color: #ca9e2a;
}

/* Read more (details) */
.bio-section .bio-more { margin: 18px 0 0; text-align: center; }
.bio-section .bio-more > summary {
  list-style: none; cursor: pointer; user-select: none;
  display: inline-flex; align-items: center; justify-content: center;
  width: 48px; height: 48px; border-radius: 10px;
  border:1px solid rgba(222,222,222,0.2);
  transition: all .2s ease-out; color:#fff;
}
.bio-section .bio-more > summary .pill { display:inline-flex; align-items:center; justify-content:center; width:100%; height:100%; }
.bio-section .bio-more > summary:hover { background:#ca9e2a; border-color:#ca9e2a; color:#111; }
.bio-section .bio-more > summary::-webkit-details-marker { display:none; }
.bio-section .bio-more[open] > summary { background: rgba(255,255,255,.06); }

.bio-section .bio-more__inner {
  margin-top: 16px; padding:16px;
  border:1px solid rgba(255,255,255,0.08);
  background: rgba(16,16,18,0.85);
  border-radius: 14px;
  text-align: left;
}
.bio-section .bio-more__inner p {
  font-family: 'Roboto', sans-serif; line-height: 1.65; margin: 0 0 10px 0;
}

/* ========== DISCOGRAPHY GRID (no slider) ========== */
.albums-section .albums-wrap{
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 16px;
  background-image: url('../images/demo/bg-discography.jpg');
}

/* Grid */
.albums-section .albums-grid{
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr 1fr; /* 2-col mobile/tablet */
}
@media (min-width: 900px){
  .albums-section .albums-grid{ grid-template-columns: repeat(4,1fr); } /* 4-col desktop */
}

/* Card */
.albums-section .album-card{
  --card-bg: rgba(16,16,18,0.85);
  --card-bd: rgba(255,255,255,0.08);
  background: var(--card-bg);
  border: 1px solid var(--card-bd);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  max-width: 340px;
  margin: 0 auto;
  cursor: pointer;
}
.albums-section .album-card:focus{ outline: 3px solid #5ab0ff; outline-offset: 2px; }
.albums-section .album-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0,0,0,.45);
  border-color: rgba(255,255,255,0.15);
}

/* Cover */
.albums-section .album-media{
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}
.albums-section .album-media img{
  width: 100%; height: 100%; object-fit: cover; display: block;
  transform: scale(1.02);
  transition: transform .5s ease, filter .5s ease;
  border-radius: 18px;
}
.albums-section .album-card:hover .album-media img{ transform: scale(1.08); }

/* Year pill */
.albums-section .album-year-pill{
  position: absolute; right: 12px; bottom: 12px;
  background: rgba(0,0,0,.65);
  border: 1px solid rgba(255,255,255,.15);
  color: #fff; padding: 6px 10px; border-radius: 10px;
  font-weight: 700; letter-spacing: .3px;
  backdrop-filter: blur(4px);
}

/* Body */
.albums-section .album-body{
  padding: 12px; text-align: center;
}
.albums-section .album-title{
  margin: 0 0 8px; color: #fff; font-size: 18px; letter-spacing: .5px; text-transform: uppercase;
  position: relative;
}
.albums-section .album-title::after{
  content:""; display:block; height:2px; width:36px; margin:8px auto 0;
  background: linear-gradient(90deg, transparent, #ca9e2a, transparent); border-radius:2px;
}
.albums-section .album-sub{ margin: 0; color: #ddd; opacity: .85; }

/* Local social row */
.albums-section .album-social{
  display:flex; justify-content:center; gap:6px; margin:12px 0 2px; padding:0; list-style:none;
}
.albums-section .album-social a{
  color:#ffffff; border:1px solid rgba(222,222,222,0.2);
  font-size:20px; display:block; text-align:center; width:48px; padding:10px 0;
  transition: all .2s ease-out; border-radius:10px;
}
@media (min-width: 1200px){
  .albums-section .album-social a{ width:60px; padding:16px 0; }
}
.albums-section .album-social a:hover{
  background-color:#ca9e2a; border-color:#ca9e2a; color:#ffffff;
}

/* ========== FANCY ALBUM MODAL ========== */
.album-modal{ position:fixed; inset:0; z-index:9999; display:none; }
.album-modal[aria-hidden="false"]{ display:block; }

/* Backdrop with subtle blur */
.album-modal__backdrop{
  position:absolute; inset:0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(4px);
}

/* Dialog */
.album-modal__dialog{
  position:relative; max-width: 980px; margin: 6vh auto;
  background: rgba(20,20,24,.92);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px; color: #fff;
  box-shadow: 0 25px 80px rgba(0,0,0,.55);
  overflow: hidden;
}

/* Close */
.album-modal__close {
  position:absolute;
  top:10px;
  right:12px;
  z-index: 10; /* ensure it’s above all content */
  width:40px;
  height:40px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.04);
  color:#fff;
  font-size: 22px;
  line-height: 1;
  cursor:pointer;
  transition: transform .15s ease, background .15s ease;
}
.album-modal__close:hover{ transform: scale(1.04); background: rgba(255,255,255,.08); }

/* Header */
.album-modal__header{
  padding: 18px 60px 14px 18px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
}
.album-modal__title{
  margin: 6px 0 4px; font-size: 24px; letter-spacing: .3px; text-transform: uppercase;
}
.album-modal__subtitle{ margin: 0; opacity: .75; }
.album-badge{
  display:inline-block; padding: 6px 10px; margin-bottom: 6px;
  border-radius: 10px; font-weight: 700; letter-spacing: .4px;
  background: rgba(0,0,0,.35); border: 1px solid rgba(255,255,255,.12);
}

/* Body two-column */
.album-modal__content{
  display: grid; grid-template-columns: 360px 1fr; gap: 20px; align-items: start;
  padding: 16px;
}
@media (max-width: 860px){
  .album-modal__content{ grid-template-columns: 1fr; }
}

/* Cover */
.album-modal__cover{
  border-radius: 14px; overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  background: #111;
}
.album-modal__cover img{ width:100%; height:auto; display:block; }

/* Tracklist */
.album-tracks{
  margin: 0; padding: 0; list-style: none;
  counter-reset: track;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px; overflow: hidden;
  background: rgba(255,255,255,.02);
}
.album-tracks li{
  display:flex; gap:12px; justify-content: space-between; align-items: center;
  padding: 10px 14px; border-bottom: 1px dashed rgba(255,255,255,.08);
}
.album-tracks li:last-child{ border-bottom: none; }
.album-track-title{
  display:flex; align-items: center; gap:10px; min-width: 0;
  font-weight: 600; letter-spacing: .2px;
}
.album-track-title::before{
  counter-increment: track; content: counter(track, decimal-leading-zero) ".";
  opacity:.6; font-variant-numeric: tabular-nums;
}
.album-track-time{ opacity:.65; font-variant-numeric: tabular-nums; }

/* Meta row (chips) */
.album-meta-row{
  display:flex; flex-wrap: wrap; gap: 8px; margin: 12px 2px 2px;
}
.album-meta-row .chip{
  padding: 6px 10px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04); font-size: 13px; opacity: .9;
}

/* Platforms */
.album-platforms{
  display:flex; flex-wrap: wrap; gap: 10px; margin-top: 12px;
}
.album-platforms a{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 12px; border-radius: 12px; text-decoration:none;
  background:#fff; color:#111; font-weight:700;
  transition: transform .15s ease, box-shadow .15s ease, opacity .2s;
}
.album-platforms a:hover{ transform: translateY(-1px); box-shadow: 0 8px 28px rgba(0,0,0,.25); }
.album-platforms a i{ font-size: 1.1rem; }

/* Motion preferences */
@media (prefers-reduced-motion: reduce){
  .albums-section .album-card,
  .albums-section .album-media img,
  .album-modal__dialog{ transition:none!important; animation:none!important; }
}

/* === Mobile 2-up grid & no overlap === */
@media (max-width: 560px){
  /* 2 columns that actually fit */
  .albums-section .albums-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px;
  }

  /* Let cards shrink to their column (remove fixed max-width & centering) */
  .albums-section .album-card{
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
  }

  /* Square covers so heights are consistent */
  .albums-section .album-media{
    aspect-ratio: 1 / 1 !important;
  }

  /* Text wraps instead of spilling */
  .albums-section .album-body,
  .albums-section .album-title,
  .albums-section .album-sub{
    min-width: 0;
    word-break: break-word;
  }

  /* Tighter typography + buttons so two cards fit cleanly */
  .albums-section .album-title{ font-size: 15px; }
  .albums-section .album-sub{ font-size: 13px; }
  .albums-section .album-social a{
    width: 40px; padding: 8px 0; font-size: 18px;
  }

  /* Year pill stays inside the image bounds */
  .albums-section .album-year-pill{ right: 8px; bottom: 8px; }
}

/* Safety: prevent any weird collapsing that looks like overlap */
.albums-section .album-media img{ display:block; }
.albums-section .album-card *{ box-sizing: border-box; }

/* === Modal scrolling fix === */
#albumModal .album-modal__dialog{
  max-height: 92vh;              /* fit viewport */
  display: flex;
  flex-direction: column;
  overflow: hidden;              /* clip outer, scroll inner */
}

#albumModal .album-modal__content{
  flex: 1 1 auto;                /* take remaining height */
  min-height: 0;                 /* allow children to shrink */
  overflow: auto;                /* enable scrolling here */
  -webkit-overflow-scrolling: touch;
}

#albumModal .album-modal__details{
  min-height: 0;                 /* important for nested scroll */
}

#albumModal .album-tracks{
  margin: 0;                     /* avoid extra push */
}

@media (min-width: 860px){
  #albumModal .album-modal__cover{
    position: sticky;
    top: 16px;
    align-self: start;
  }
  #albumModal .album-modal__details{
    overflow: auto;
    max-height: calc(92vh - 110px); /* tweak if you show header */
    -webkit-overflow-scrolling: touch;
  }
}

/* === Prevent cover/links from overlapping the track list === */

/* Make the grid solid and align to the top */
#albumModal .album-modal__content{
  display: grid;
  grid-template-columns: 360px 1fr;   /* left: cover, right: tracks */
  gap: 20px;
  align-items: start;                  /* don't stretch/overlap */
  min-height: 0;                       /* allow inner scrolls */
}

/* Left column behaves like a normal block with image + links stacked */
#albumModal .album-modal__cover{
  position: static !important;         /* kill any sticky from earlier */
  overflow: visible;                   /* let links sit below image */
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
#albumModal .album-modal__cover img{
  display: block;
  width: 100%;
  height: auto;
}

/* Links under the cover are regular flow content */
#albumModal .album-platforms{
  margin-top: 4px;
  flex-wrap: wrap;
  justify-content: center;
}

/* Right column (tracks) scrolls within its own area */
#albumModal .album-modal__details{
  min-width: 0;
  min-height: 0;
  overflow: auto;                      /* scrolls here instead of under cover */
  -webkit-overflow-scrolling: touch;
}

/* Track list spacing */
#albumModal .album-tracks{ margin: 0; }

/* Mobile: stack columns; no independent scroll to avoid overlap */
@media (max-width: 700px){
  #albumModal .album-modal__content{
    grid-template-columns: 1fr;
    gap: 14px;
  }
  #albumModal .album-modal__details{
    overflow: visible;                  /* let page/modal scroll instead */
  }
}

/* --- Make member cards clearly clickable --- */
.members-section .member-card { cursor: pointer; }

/* --- MEMBER MODAL (full styles) --- */
.member-modal[aria-hidden="true"] { display: none; }
.member-modal{
  position: fixed; inset: 0;
  display: flex; justify-content: center; align-items: center;
  background: rgba(0,0,0,0.65);
  z-index: 2000;
}

/* Layering so taps/clicks go to the right element */
.member-modal__backdrop { z-index: 1; }
.member-modal__dialog   { z-index: 2; position: relative; }
.member-modal__close    { z-index: 3; pointer-events: auto; }

/* Dialog container */
.member-modal__dialog{
  background: rgba(20,20,24,.95);
  color: #fff;
  width: min(940px, 94vw);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  box-shadow: 0 24px 70px rgba(0,0,0,.6);
  overflow: hidden;
  max-height: 92vh;                 /* keep within viewport */
  display: flex; flex-direction: column;
}

/* Close button */
.member-modal__close{
  position: absolute; top: 10px; right: 12px;
  width: 40px; height: 40px; border-radius: 10px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.06);
  color: #fff; font-size: 22px; line-height: 1;
  cursor: pointer;
  transition: transform .15s ease, background .15s ease, border-color .15s;
}
.member-modal__close:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.25);
}

/* Content layout */
.member-modal__content{
  display: grid; gap: 18px;
  grid-template-columns: 360px 1fr;
  padding: 16px;
  align-items: start;
  overflow: auto;                   /* scroll inner if needed */
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 800px){
  .member-modal__content{ grid-template-columns: 1fr; }
}

/* Photo */
.member-modal__photo{
  border-radius: 12px; overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  background: #111;
}
.member-modal__photo img{ display:block; width:100%; height:auto; }

/* Info */
.member-modal__info{ padding: 4px 6px; }
.member-modal__info h3{
  margin: 0 0 4px; font-size: 24px; letter-spacing: .5px; text-transform: uppercase;
}
.member-modal__role{
  margin: 0 0 12px; color: #ca9e2a; font-weight: 700;
}
/* Justify the description text */
.member-modal__desc{
  margin: 0 0 12px;
  opacity: .9; line-height: 1.55;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
}

/* Socials */
.member-modal__social{
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px;
}
.member-modal__social a{
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: 10px;
  border: 1px solid rgba(255,255,255,.2);
  color: #fff; text-decoration: none; font-size: 20px;
  background: rgba(255,255,255,.06);
  transition: transform .15s ease, background .15s ease, border-color .15s;
}
.member-modal__social a:hover{
  transform: translateY(-1px);
  background: #ca9e2a; border-color: #ca9e2a; color: #111;
}

/* Mobile: pin the close button to the viewport so it’s always visible */
@media (max-width: 800px){
  .member-modal__close{
    position: fixed !important; /* instead of absolute inside dialog */
    top: calc(env(safe-area-inset-top, 0px) + 10px);
    right: 12px;
    width: 44px; height: 44px; font-size: 24px; border-radius: 12px;
  }
}
@media (prefers-reduced-motion: reduce){
  .member-modal__close{ transition: none; }
}

/* =========================================
   MEMBER CARDS (small additions)
========================================= */
.members-section .member-card { cursor: pointer; }

/* =========================================
   MEMBER MODAL — FULL STYLES
========================================= */

/* Optional: declare your header height so the mobile X can avoid it */
:root { --header-height: 56px; } /* change to your actual mobile header size */

/* Show/Hide + stacking */
.member-modal[aria-hidden="true"] { display: none; }
.member-modal{
  position: fixed; inset: 0;
  display: flex; justify-content: center; align-items: center;
  background: rgba(0,0,0,0.65);
  z-index: 9999; /* above your header/hamburger */
}
.member-modal__backdrop { z-index: 1; }
.member-modal__dialog   { z-index: 2; position: relative; }
.member-modal__close    { z-index: 3; pointer-events: auto; }

/* Dialog container */
.member-modal__dialog{
  background: rgba(20,20,24,.95);
  color: #fff;
  width: min(940px, 94vw);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  box-shadow: 0 24px 70px rgba(0,0,0,.6);
  overflow: hidden;
  max-height: 92vh;                 /* keep within viewport */
  display: flex; flex-direction: column;
}

/* Content layout — solid 2-col grid, no overlap */
.member-modal__content{
  display: grid !important;
  grid-template-columns: minmax(0, 360px) minmax(0, 1fr) !important; /* photo | info */
  gap: 18px !important;
  align-items: start !important;
  padding: 16px;
  overflow: hidden;                 /* children won’t spill over each other */
  -webkit-overflow-scrolling: touch;
}
.member-modal__photo,
.member-modal__info{ min-width: 0; }  /* allow shrinking */

/* Photo column */
.member-modal__photo{
  position: static !important;      /* ensure normal flow */
  overflow: visible !important;
  align-self: start;
  border-radius: 12px; 
  border: 1px solid rgba(255,255,255,.08);
  background: #111;
}
.member-modal__photo img{
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  float: none;
}

/* Info/text column — scrolls if tall */
.member-modal__info{
  padding: 4px 6px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  max-height: calc(92vh - 120px);   /* room for padding/close; tweak if needed */
  word-break: break-word;
}
.member-modal__info h3{
  margin: 0 0 4px; font-size: 24px; letter-spacing: .5px; text-transform: uppercase;
}
.member-modal__role{
  margin: 0 0 12px; color: #ca9e2a; font-weight: 700;
}
.member-modal__desc{
  margin: 0 0 12px; opacity: .9; line-height: 1.55;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
}

/* Socials */
.member-modal__social{
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px;
}
.member-modal__social a{
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: 10px;
  border: 1px solid rgba(255,255,255,.2);
  color: #fff; text-decoration: none; font-size: 20px;
  background: rgba(255,255,255,.06);
  transition: transform .15s ease, background .15s ease, border-color .15s;
}
.member-modal__social a:hover{
  transform: translateY(-1px);
  background: #ca9e2a; border-color: #ca9e2a; color: #111;
}

/* Close button (desktop default) */
.member-modal__close{
  position: absolute; top: 10px; right: 12px;
  width: 40px; height: 40px; border-radius: 10px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.06);
  color: #fff; font-size: 22px; line-height: 1;
  cursor: pointer;
  transition: transform .15s ease, background .15s ease, border-color .15s;
}
.member-modal__close:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.25);
}

/* Mobile behavior:
   - Pin the X to the viewport (always visible)
   - Offset from header/hamburger area
   - Move it to the LEFT on very small screens to avoid the menu icon */
@media (max-width: 800px){
  .member-modal__content{ 
    grid-template-columns: 1fr !important; 
    gap: 14px;
    overflow: auto;                 /* modal content scrolls as one */
  }
  .member-modal__info{
    max-height: none;               /* let whole modal scroll */
    overflow: visible;
  }

  .member-modal__close{
    position: fixed !important;     /* fixed to viewport */
    top: calc(env(safe-area-inset-top, 0px) + var(--header-height) + 8px);
    right: 12px;
    width: 44px; height: 44px; font-size: 24px; border-radius: 12px;
  }
}

/* If your hamburger is top-right and they visually collide at tiny widths, push the X to the LEFT */
@media (max-width: 480px){
  .member-modal__close{
    right: auto;
    left: 12px;
  }
}

/* Motion prefs */
@media (prefers-reduced-motion: reduce){
  .member-modal__close{ transition: none; }
}

/* Scroll-to-top button */
#scrollToTop {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 48px;
  height: 48px;
  background: #ca9e2a;
  color: #fff;
  border: none;
  border-radius: 50%;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.2s ease;
  z-index: 999;
}

#scrollToTop:hover {
  transform: translateY(-2px);
  background: #e0b843;
}

#scrollToTop.show {
  opacity: 1;
  visibility: visible;
}

.title--gradient{
  background: linear-gradient(90deg,#ff4d4d,#ffd166,#ef476f);
  background-size: 200% 100%;
  -webkit-background-clip:text; background-clip:text;
  color: transparent;
  animation: title-slide 8s linear infinite;
  letter-spacing:.5px
}
@keyframes title-slide{to{background-position:200% 0}}
@media (prefers-reduced-motion: reduce){ .title--gradient{animation:none} }

.title.title--oldenglish{
  font-size: clamp(1.8rem, 4vw + 0.15rem, 4rem);
  -webkit-text-stroke: .02em rgba(0,0,0,.35);
  line-height: 1.0;
  letter-spacing: .01em;
}
