/* 
 * 1. Google Font
 */
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,700);
/* 
 * 2.0 Global Style
 */
html {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
}

body {
  color: #4e4e4e;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
  position: relative;
  -webkit-font-smoothing: antialiased;
}

a {
  color: #000;
}
a:focus {
  outline: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}

p {
  margin: 0 0 30px;
}

ul li {
  font-weight: 700;
  margin-bottom: 10px;
}

.custom-list-icon, .list-arrow-right {
  list-style-type: none;
  padding: 0;
}
.custom-list-icon li, .list-arrow-right li {
  position: relative;
  padding-left: 20px;
}
.custom-list-icon li::before, .list-arrow-right li::before {
  position: absolute;
  left: 0;
  color: #4e4e4e;
  font-family: "Ionicons";
}

.social-block {
  list-style-type: none;
  padding: 0;
}
.social-block li {
  display: inline-block;
}
.social-block li a {
  display: inline-block;
  height: 32px;
  width: 32px;
  color: #4e4e4e;
}
.social-block li a i {
  font-size: 1.5em;
}
.social-block li a:hover, .social-block li a:focus {
  color: #000;
}

.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus {
  outline: none;
}

.btn {
  border: 0;
  border-radius: 0;
  padding: 6px 28px;
  text-transform: uppercase;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: -webkit-transform;
          transition-property: transform;
}
.btn:hover {
  -webkit-transform: scale(0.9);
      -ms-transform: scale(0.9);
          transform: scale(0.9);
}

.form-control {
  border-radius: 0;
  box-shadow: none;
  height: 48px;
  padding: 10px 12px;
  font-size: 16px;
  line-height: 1.6;
}
.form-control:focus {
  box-shadow: none;
  border-color: #ccc;
  background-color: #f8f8f8;
}

.valign-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.section {
  padding: 70px 0;
}

.section-title {
  color: #313131;
  letter-spacing: 1px;
  margin: 0 0 20px;
  text-transform: uppercase;
  text-align: center;
}

/* 
 * 3.0 Helper Class
 */
/* 
 * 3.1 Helper Class: font-weight
 */
.font-300 {
  font-weight: 300;
}

.font-400 {
  font-weight: 400;
}

.font-700 {
  font-weight: 700;
}

/* 
 * 3.2 Helper Class: margin
 */
.mt0 {
  margin-top: 0;
}

.mb0 {
  margin-bottom: 0;
}

.mt20 {
  margin-top: 20px;
}

/* 
 * 3.3 Helper Class: list
 */
.list-arrow-right li::before {
  content: "\f3d3";
}

/* 
 * 3.4 Helper Class: button
 */
.btn-white {
  color: #000;
  background-color: #fff;
}
.btn-white:hover, .btn-white:focus {
  color: #000;
  background-color: #fff;
}

.btn-black {
  color: #fff;
  background-color: #000;
}
.btn-black:hover, .btn-black:focus {
  color: #fff;
  background-color: #000;
}

/* 
 * 3.5 Helper Class: background
 */
.bg-image, .bg-image-1, .bg-image-2 {
  position: relative;
}
.bg-image::before, .bg-image-1::before, .bg-image-2::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.bg-image-1 {
  background: url(../img/casino-main-hall.jpg) no-repeat center center/cover;
}
.bg-image-1::before {
  background-color: rgba(0, 0, 0, 0.7);
}

.bg-image-2 {
  background: url(../img/premium-events.jpg) no-repeat center bottom/cover;
}
.bg-image-2::before {
  background-color: rgba(0, 0, 0, 0.7);
}

@media (min-width: 768px) {
  .section {
    padding: 90px 0;
  }

  .section-title {
    color: #313131;
    letter-spacing: 1px;
    margin: 0 0 60px;
    text-transform: uppercase;
    text-align: left;
  }
}
/* 
 * 4.0 Navigation
 */
.navbar-custom {
  border: 0;
  margin: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #000;
  -webkit-transition: all 0.2s linear 0s;
          transition: all 0.2s linear 0s;
}
.navbar-custom .navbar-nav li {
  margin: 0;
}
.navbar-custom .navbar-nav > li > a {
  color: #fff;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 400;
  border-bottom: 1px solid transparent;
}
.navbar-custom .navbar-nav > li > a:focus, .navbar-custom .navbar-nav > li > a:hover {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.5);
}
.navbar-custom .navbar-nav > .active > a {
  border-color: rgba(255, 255, 255, 0.5);
}

.navbar-toggle {
  border: 0;
  border-radius: 0;
  margin-top: 2px;
}
.navbar-toggle .icon-bar {
  background-color: #fff;
}

.navbar-solid {
  background-color: #000 !important;
  padding: 0 !important;
  -webkit-transition: all 0.2s linear 0s;
          transition: all 0.2s linear 0s;
}

.site-branding {
  float: left;
  margin-top: 0;
  margin-left: 10px;
}
.site-branding .logo {
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  margin-right: 5px;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.site-branding .logo:focus, .site-branding .logo:hover {
  text-decoration: none;
}

/* 
 * 5.0 Site Header
 */
.site-header {
  width: 100%;
  height: 100%;
  min-height: 100vh;
  position: relative;
  text-align: center;
  background: url(../img/solvarexon-hero.jpg) no-repeat center center/cover;
  display: table;
}
.site-header::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
}
.site-header .intro {
  color: #fff;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
  z-index: 1;
  padding: 0 15px;
  display: table-cell;
  vertical-align: middle;
  height: 100vh;
}
.site-header .intro h2 {
  margin-top: 0px;
  font-size: 25px;
  font-weight: 300;
}
.site-header .intro h1 {
  margin-top: 0px;
  font-size: 30px;
}
.site-header .intro p {
  font-size: 20px;
  margin-bottom: 10px;
  font-weight: 300;
}

@media (min-width: 768px) {
  .navbar-custom {
    background-color: transparent;
    padding-top: 30px;
  }

  .site-branding {
    margin-top: 6px;
    margin-left: 0;
  }
}
/* 
 * 6.0 Section
 */
/* 
 * 6.1 Section: About 
 */
.about .section-title {
  margin: 0 0 25px;
}
.about figure {
  margin-bottom: 25px;
}

/* 
 * 6.2 Section: Facts
 */
.facts i {
  color: #fff;
  font-size: 3em;
}
.facts h3 {
  color: #fff;
  text-align: center;
  font-weight: 400;
}

/* 
 * 6.3 Section: Feature cards
 */
.speaker {
  text-align: center;
  color: #313131;
  text-transform: uppercase;
  margin: 25px 0;
}
.speaker h4 {
  margin-top: 15px;
  margin-bottom: 5px;
}
.speaker p {
  margin-bottom: 5px;
}
.speaker img:hover {
  opacity: .7;
}

/* 
 * 6.4 Section: Contact form
 */
/* 
 * 6.5 Section: Contribution
 */
.contribution {
  text-align: center;
  color: #fff;
}

/* 
 * 6.6 Section: Highlight boxes
 */
.schedule-box {
  position: relative;
  background-color: #000;
  color: #fff;
  text-align: center;
  padding: 50px 0;
  margin: 25px 0 0;
}
.schedule-box::before {
  content: '';
  position: absolute;
  top: 5px;
  right: 5px;
  bottom: 5px;
  left: 5px;
  border: 1px solid #fff;
}

/* 
 * 6.7 Section: Supporting band
 */
.partner {
  background-color: #f8f8f8;
}
.partner .partner-box {
  display: block;
  opacity: 0.3;
  height: 150px;
  width: 150px;
  margin: 25px auto;
  -webkit-transition: 0.5s all linear;
          transition: 0.5s all linear;
}
.partner .partner-box:hover {
  opacity: 1;
}
.partner .partner-box-1 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-2 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-3 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-4 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-5 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-6 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-7 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}
.partner .partner-box-8 {
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.18), rgba(201, 164, 74, 0.18));
}

/* 
 * 6.8 Section: FAQ
 */
.faq .panel-heading {
  cursor: pointer;
}
.faq .faq-toggle.collapsed::before {
  font-family: "Ionicons";
  content: "\f218";
  -webkit-transition: 0.5s linear ease-out;
          transition: 0.5s linear ease-out;
  position: absolute;
  left: 15px;
}
.faq .faq-toggle::before {
  position: absolute;
  left: 15px;
  font-family: "Ionicons";
  content: "\f209";
}
.faq .panel-group .panel + .panel {
  margin-top: 15px;
}
.faq .panel-default > .panel-heading {
  color: #FFF;
  background-color: #000000;
  border-color: #000;
  border-radius: 0;
  padding: 0;
}
.faq .panel-default > .panel-heading a {
  position: relative;
  display: block;
  text-decoration: none;
  padding: 15px 15px 15px 35px;
}

/* 
 * 6.9 Section: photos
 */
.grid {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.grid::after {
  content: '';
  display: block;
  clear: both;
}

.grid-item {
  float: left;
  overflow: hidden;
  padding: 3px;
  margin: 0;
  width: 100%;
}

@media (min-width: 768px) {
  .grid-item-sm-6 {
    width: 50%;
  }

  .grid-item-sm-3 {
    width: 25%;
  }

  .section-title {
    margin: 0 0 30px;
  }

  figure {
    margin-bottom: 0;
  }
}
@media (min-width: 992px) {
  .schedule-box {
    margin: 0;
  }

  .grid-item-md-6 {
    width: 50%;
  }

  .grid-item-md-3 {
    width: 25%;
  }
}
/* 
 * 7.0 Site-footer
 */
.site-footer {
  background-color: #000;
  color: #fff;
  text-align: center;
  padding: 30px 0;
}
.site-footer .site-info {
  font-weight: 400;
  margin-bottom: 10px;
}
.site-footer .site-info a {
  color: #fff;
}
.site-footer .social-block li a {
  color: #fff;
}
.site-footer .social-block li a:hover, .site-footer .social-block li a:focus {
  opacity: 0.8;
}


/*
 * 8.0 Solvarexon adaptation
 */
:root {
  --solv-obsidian: #060807;
  --solv-emerald: #0c6b4d;
  --solv-gold: #c9a44a;
  --solv-bronze: #9a6a2f;
  --solv-midnight: #07162c;
  --solv-ivory: #f6ead2;
  --solv-mist: #e8ddc8;
}

html,
body {
  background: var(--solv-obsidian);
}

body {
  color: #d6ccb9;
  font-weight: 300;
}

a,
a:hover,
a:focus {
  color: var(--solv-gold);
}

p {
  line-height: 1.8;
}

.section {
  background: #0a100f;
}

.section:nth-of-type(even) {
  background: #f6f0e4;
  color: #2c2b27;
}

.section-title {
  color: var(--solv-gold);
  letter-spacing: 1px;
}

.navbar-custom {
  background-color: rgba(6, 8, 7, 0.94);
  border-bottom: 1px solid rgba(201, 164, 74, 0.25);
}

@media (min-width: 768px) {
  .navbar-custom {
    background-color: rgba(6, 8, 7, 0.32);
  }
}

.navbar-solid,
.navbar-custom.navbar-solid {
  background-color: rgba(6, 8, 7, 0.96) !important;
}

.site-branding .logo {
  color: var(--solv-ivory);
  font-size: 15px;
  letter-spacing: 4px;
}

.site-branding .logo span {
  color: var(--solv-gold);
  border: 1px solid rgba(201, 164, 74, 0.7);
  padding: 2px 5px;
  margin-left: 6px;
  letter-spacing: 0;
}

.navbar-custom .navbar-nav > li > a {
  color: var(--solv-ivory);
  font-size: 10px;
  padding-left: 8px;
  padding-right: 8px;
}

.navbar-custom .navbar-nav > li > a:focus,
.navbar-custom .navbar-nav > li > a:hover,
.navbar-custom .navbar-nav > .active > a {
  color: var(--solv-gold);
  border-color: var(--solv-gold);
}

.site-header {
  min-height: 88vh;
  height: 88vh;
  background: url(../img/solvarexon-hero.jpg) no-repeat center center/cover;
}

.site-header::before {
  background: linear-gradient(90deg, rgba(6, 8, 7, 0.7), rgba(7, 22, 44, 0.62), rgba(6, 8, 7, 0.35));
}

.site-header .intro {
  height: 88vh;
  color: var(--solv-ivory);
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.55);
}

.site-header .intro h1 {
  color: #fff7df;
  font-size: 46px;
  letter-spacing: 8px;
}

.site-header .intro h2 {
  color: var(--solv-gold);
  letter-spacing: 3px;
}

.site-header .intro p {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  text-transform: none;
}

.page-header-solvarexon {
  min-height: 390px;
  padding: 160px 0 80px;
  margin: 0;
  color: var(--solv-ivory);
  background: linear-gradient(rgba(6, 8, 7, 0.72), rgba(7, 22, 44, 0.76)), url(../img/solvarexon-hero.jpg) no-repeat center center/cover;
  border: 0;
  text-align: center;
}

.page-header-solvarexon h1 {
  margin: 0 0 15px;
  text-transform: uppercase;
  letter-spacing: 6px;
}

.page-header-solvarexon p {
  max-width: 760px;
  margin: 0 auto;
  font-size: 19px;
}

.btn-white,
.btn-black {
  border: 1px solid var(--solv-gold);
  letter-spacing: 1px;
}

.btn-white {
  color: #10100d;
  background: var(--solv-ivory);
}

.btn-black {
  color: var(--solv-ivory);
  background: #09110f;
}

.about figure img,
.feature-card img {
  width: 100%;
  object-fit: cover;
}

.about figure img {
  min-height: 320px;
}

.feature-card {
  background: #091411;
  color: #e8ddc8;
  min-height: 470px;
  padding-bottom: 24px;
  border: 1px solid rgba(201, 164, 74, 0.25);
  text-transform: none;
}

.feature-card h4 {
  color: var(--solv-gold);
  padding: 0 18px;
  text-transform: uppercase;
}

.feature-card p {
  padding: 0 22px;
  margin-bottom: 0;
}

.feature-card img {
  height: 230px;
}

.bg-image-1,
.bg-image-2 {
  background-position: center center;
}

.bg-image-1::before,
.bg-image-2::before {
  background-color: rgba(6, 8, 7, 0.76);
}

.facts i,
.facts h3 {
  color: var(--solv-ivory);
}

.facts i {
  color: var(--solv-gold);
}

.schedule-box {
  background: linear-gradient(135deg, #07110f, #0b2118 55%, #07162c);
  border: 1px solid rgba(201, 164, 74, 0.35);
  min-height: 250px;
  padding: 44px 25px;
}

.schedule-box::before {
  border-color: rgba(201, 164, 74, 0.75);
}

.schedule-box .time {
  color: var(--solv-gold);
  text-transform: uppercase;
  letter-spacing: 2px;
}

.schedule-box h3 {
  color: var(--solv-ivory);
}

.partner,
.testimonials,
.private-salons {
  background: #f5edde;
  color: #27231c;
}

.testimonial-box {
  background: #fffaf0;
  border-left: 4px solid var(--solv-gold);
  padding: 28px;
  margin-bottom: 20px;
  min-height: 230px;
}

.testimonial-box strong {
  color: #0c4e3b;
}

.contribution {
  color: var(--solv-ivory);
}

.responsible {
  background: #07162c;
  color: var(--solv-ivory);
}

.age-notice {
  width: 120px;
  height: 120px;
  border: 2px solid var(--solv-gold);
  border-radius: 50%;
  color: var(--solv-gold);
  font-size: 38px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
}

.location {
  background: #f6f0e4;
  color: #2c2b27;
}

.map-placeholder {
  min-height: 360px;
  border: 1px solid rgba(154, 106, 47, 0.45);
  background: linear-gradient(135deg, rgba(12, 107, 77, 0.92), rgba(7, 22, 44, 0.96)), url(../img/casino-main-hall.jpg) no-repeat center center/cover;
  color: var(--solv-ivory);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 30px;
  font-weight: 700;
  letter-spacing: 1px;
}

.registration {
  background: #091411;
  color: var(--solv-ivory);
}

.form-control {
  background: #fffaf0;
  border: 1px solid rgba(201, 164, 74, 0.45);
  color: #171511;
}

.message-control {
  height: 152px;
  resize: vertical;
}

.legal-page {
  background: #f6f0e4;
  color: #27231c;
}

.legal-page h3 {
  color: #0c4e3b;
  margin-top: 34px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.legal-page h3:first-child {
  margin-top: 0;
}

.faq {
  background: #0a100f;
  color: var(--solv-ivory);
}

.faq .panel {
  background: transparent;
  border-color: rgba(201, 164, 74, 0.35);
}

.faq .panel-default > .panel-heading {
  background: #0c4e3b;
  border-color: #0c4e3b;
}

.faq .panel-body {
  background: #f6f0e4;
  color: #27231c;
}

.site-footer {
  background: #040605;
  color: var(--solv-ivory);
  text-align: left;
  border-top: 1px solid rgba(201, 164, 74, 0.32);
}

.site-footer h4 {
  color: var(--solv-gold);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.site-footer a {
  color: var(--solv-ivory);
}

.responsible-footer,
.site-footer .site-info {
  text-align: center;
}

.responsible-footer {
  color: #d6ccb9;
  border-top: 1px solid rgba(201, 164, 74, 0.22);
  padding-top: 20px;
  margin-top: 18px;
}

.cookie-banner {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 2000;
  max-width: 420px;
  background: rgba(6, 8, 7, 0.96);
  color: var(--solv-ivory);
  border: 1px solid var(--solv-gold);
  padding: 18px;
  display: none;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.cookie-banner p {
  margin: 0 0 12px;
}

.small-note {
  color: #6a5740;
  font-weight: 400;
}

@media (min-width: 1200px) {
  .navbar-custom .navbar-nav > li > a {
    font-size: 11px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 991px) {
  .feature-card {
    min-height: 0;
  }
}

@media (max-width: 767px) {
  .site-header,
  .site-header .intro {
    height: 90vh;
    min-height: 90vh;
  }

  .site-header .intro h1 {
    font-size: 34px;
    letter-spacing: 4px;
  }

  .site-header .intro h2,
  .site-header .intro p {
    font-size: 17px;
  }

  .page-header-solvarexon {
    min-height: 330px;
    padding-top: 130px;
  }

  .page-header-solvarexon h1 {
    font-size: 30px;
    letter-spacing: 3px;
  }

  .navbar-custom .navbar-nav > li > a {
    font-size: 12px;
    padding-left: 15px;
  }

  .site-footer {
    text-align: center;
  }

  .cookie-banner {
    right: 12px;
    left: 12px;
    bottom: 12px;
    max-width: none;
  }
}
