/** --------------------------------------------------

[TABLE OF CONTENTS]

- Grid
- Base
- Typography
- Links
- Misc
- Fade
- Loading
- Wrapper
- Home
- Contact
- sections

-------------------------------------------------- **/

@import url('https://fonts.googleapis.com/css2?family=Cardo:ital,wght@0,400;0,700;1,400&display=swap');


/** Grid
-------------------------------------------------- **/
.container {
  width: 960px;
  margin: 0 auto;
  position: relative;
}

.column {
  float: left;
  position: relative;
  padding: 0 25px;
}

.column.col-1 {
  width: 8.333%;
}

.column.col-2 {
  width: 16.666%;
}

.column.col-3 {
  width: 24.999000000000002%;
}

.column.col-4 {
  width: 33.332%;
}

.column.col-5 {
  width: 41.665%;
}

.column.col-6 {
  width: 49.998000000000005%;
}

.column.col-7 {
  width: 58.331%;
}

.column.col-8 {
  width: 66.664%;
}

.column.col-9 {
  width: 74.997%;
}

.column.col-10 {
  width: 83.33%;
}

.column.col-11 {
  width: 91.663%;
}

.column.col-12 {
  width: 99.99600000000001%;
}

.column.offset-by-1 {
  margin-left: 8.333%;
}

.column.offset-by-2 {
  margin-left: 16.666%;
}

.column.offset-by-3 {
  margin-left: 24.999000000000002%;
}

.column.offset-by-4 {
  margin-left: 33.332%;
}

.column.offset-by-5 {
  margin-left: 41.665%;
}

.column.offset-by-6 {
  margin-left: 49.998000000000005%;
}

.column.offset-by-7 {
  margin-left: 58.331%;
}

.column.offset-by-8 {
  margin-left: 66.664%;
}

.column.offset-by-9 {
  margin-left: 74.997%;
}

.column.offset-by-10 {
  margin-left: 83.33%;
}

.column.offset-by-11 {
  margin-left: 91.663%;
}

.container::after,
.row::after,
.clearfix::after {
  content: '';
  display: block;
  clear: both;
}

/** Base
-------------------------------------------------- **/
body {
    font-family: 'Cardo';
    font-size: 18px;
    color: #000;
    line-height: 1.6;
    background: #ffffff;
    overflow: hidden;
}

/** Typography
-------------------------------------------------- **/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Cardo';
  font-weight: 400;
  color: #111111;
}

h1:not(:last-child),
h2:not(:last-child),
h3:not(:last-child),
h4:not(:last-child),
h5:not(:last-child),
h6:not(:last-child) {
  margin-bottom: 25px;
}

h1 {
  font-size: 36px;
  line-height: 46px;
}

h2 {
  font-size: 32px;
  line-height: 42px;
}

h3 {
  font-size: 28px;
  line-height: 38px;
}

h4 {
  font-size: 22px;
  line-height: 32px;
}

h5 {
  font-size: 20px;
  line-height: 30px;
}

h6 {
  font-size: 18px;
  line-height: 28px;
}

p:not(:last-child) {
  margin-bottom: 25px;
}

a { color: #d3415d; }

.light-content h1,
.light-content h2,
.light-content h3,
.light-content h4,
.light-content h5,
.light-content h6 {
  color: #ffffff;
}

.light-content p {
  color: #aaa;
}

ul {
    list-style-type: disc;
}

ol {
    list-style-type: decimal;
}

li {
    margin-bottom: 20px;
}


/** Links
-------------------------------------------------- **/
a.link {
  position: relative;
}

a.link::before {
  content: '';
  width: 0;
  height: 0.5px;
  position: absolute;
  bottom: 2px;
  left: 0;
  background: #111111;
  transition: all 0.5s ease;
}

a.link:hover::before {
  width: 100%;
}

.light-content a {
  color: #aaa;
}

.light-content a:hover {
  color: #fff;
  transition: all 0.6s ease;
}

.light-content a.link::before {
  background: #ffffff;
}

/** Misc
-------------------------------------------------- **/
.float-left {
  float: left;
}

.float-right {
  float: right;
}

hr {
  display: block;
  height: 50px;
}

/** Fade
-------------------------------------------------- **/
#fade {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  background: #ffffff;
  transition: all 1s ease;
}

#fade.hide {
  opacity: 0;
  visibility: hidden;
}

/** Loading
-------------------------------------------------- **/
#loader {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  background: rgba(17, 17, 17, 0.7);
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease;
}

#loader.visible {
  opacity: 1;
  visibility: visible;
}

#loader .loading {
  width: 50px;
  height: 50px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  border-radius: 50%;
  border: 5px solid #919191;
  border-top: 5px solid #ffffff;
  animation: loader 0.7s infinite linear;
}

@-webkit-keyframes loader {
  100% {
    -webkit-transform: rotate(360deg);
  }

}

@keyframes loader {
  100% {
    transform: rotate(360deg);
  }

}

/** Wrapper
-------------------------------------------------- **/
#wrapper,
#wrapper #pages {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#wrapper {
  overflow: hidden;
}

/** Home
-------------------------------------------------- **/
.showcase {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  transition: transform 1s cubic-bezier(0.6, 0, 0.3, 1);
}

.showcase.contact-open {
  transform: translate3d(100%, 0, 0);
}

.showcase.section-open {
  transform: translate3d(-50%, 0, 0);
}

.showcase .sidebar {
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  background: url(../img/bg.jpg) center center no-repeat;
}

.showcase .sidebar.controls {
  left: 0;
}

.showcase .sidebar.previews {
  right: 0;
}

.sidebar.controls .main-title {
  font-family: 'Cardo';
  font-size: 48px;
  color: #111111;
  text-align: center;
  margin-top: 80px;
  text-transform: lowercase;
}

.sidebar.controls .main-title img {
	max-height: 180px;
    padding-bottom: 20px !important;
}

.sidebar.controls a.contact-link {
  font-family: 'Cardo';
  position: absolute;
  bottom: 70px;
  font-size: 13px;
  font-weight: 400;
  color: #000;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 240px;
  text-align: center;
  letter-spacing: 0.5px;
  border: 0.5px solid #222;
  padding: 12px 10px;
    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}

.sidebar.controls a.contact-link:hover {
  color: #fff;
  border: 0.5px solid #222;
  background: #222;
}

}

.sidebar.controls .controls-sections-list {
  position: absolute;
  top: 100px;
  right: 0;
  bottom: 100px;
  left: 0;
}

.sidebar.controls .controls-sections-list .sections-list {
  width: 100%;
  text-align: center;
  padding: 0 100px;
  position: absolute;
  top: 52%;
  transform: translatey(-50%);
}

.sidebar.controls .controls-sections-list .sections-list li:not(:last-child) {
  margin-bottom: 10px;
}

.sidebar.controls .controls-sections-list .sections-list li {
    list-style-type: none;
}

.sidebar.controls .controls-sections-list .sections-list li a {
  font-family: 'Montserrat';
  font-size: 14px;
  color: #111111;
  font-weight: 300;
  text-transform: uppercase;
}

.sidebar.previews .preview {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease;
}

.sidebar.previews .preview.active {
  opacity: 1;
  visibility: visible;
}

.sidebar.previews .close-section {
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  left: 100px;
  z-index: 10;
  margin-top: -30px;
  border-radius: 50%;
  background: #e2285c;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: scale(0.8);
  transition: all 0.5s ease;
}

.sidebar.previews .close-section.show {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

.sidebar.previews .close-section:hover {
  width: 70px;
  height: 70px;
  margin: -35px 0 0 -5px;
}

.sidebar.previews .close-section span {
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -8px;
  transition: all 0.3s ease;
  overflow: hidden;
}

.sidebar.previews .close-section span::before,
.sidebar.previews .close-section span::after {
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  background: #ffffff;
}

.sidebar.previews .close-section span::before {
  top: 50%;
  margin-top: -1px;
  transform: rotate(45deg);
}

.sidebar.previews .close-section span::after {
  bottom: 50%;
  margin-bottom: -1px;
  transform: rotate(-45deg);
}

/** Contact
-------------------------------------------------- **/
#contact {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: -100%;
  z-index: 1;
  background: #111111;
  transition: left 1s cubic-bezier(0.6, 0, 0.3, 1);
}

#contact.open {
  left: 0;
}

#contact #contact-content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  overflow-y: scroll;
}

#contact .contact-content-inner {
  padding: 200px 0;
}

#contact .contact-close {
  position: absolute;
  top: 50px;
  right: 100px;
  z-index: 1;
  font-size: 14px;
  font-weight: 600;
  color: #ffffff;
  cursor: pointer;
  transition: all 0.3s ease;
}

#contact .contact-close:hover {
  opacity: 0.7;
}

.copyright {
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:0.5px;
}

.copyright a{
    color: #aaa;
}

.copyright a:hover {
    color: #fff;
    transition: all 0.3s ease;
}

/** sections
-------------------------------------------------- **/
#section {
  width: 50%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 1;
  transition: left 1s cubic-bezier(0.6, 0, 0.3, 1);
  background: url(../img/pattern-bg.jpg) bottom right no-repeat;
}

#section.open {
  left: 50%;
}

#section #section-content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  overflow-y: scroll;
}

#section .section-content-inner {
  padding: 160px 80px;
    height: 100%;
    /*background: #fff;*/
}

#section .section-content-inner .row {
    height: calc(100% - 85px);
}

#section .section-content-inner .row:not(:last-child) {
  margin-bottom: 50px;
}

#section .section-header {
  margin-bottom: 50px;
}

#section .section-header .section-title {
  font-family: 'Cardo';
  font-size: 80px;
  color: #111111;
}

#section .section-header .section-cat {
    font-family: 'Cardo';
    font-size: 18px;
    font-style: italic;
    font-weight: 400;
    color: #a89675;
    padding-left: 5px;
    letter-spacing: 2px;
}

.companions img {
    width: 95%;
}

.companions p {
    font-size: 12px;
    color: #222;
    text-align: center;
    padding: 6px 5px 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/** media
-------------------- **/

/* ----------- Non-Retina Screens ----------- */
@media screen 
  and (min-device-width: 1200px) 
  and (max-device-width: 1600px) 
  and (-webkit-min-device-pixel-ratio: 1) { 
      
    .sidebar.controls .main-title { margin-top: 40px; }
      
      .sidebar.controls .controls-sections-list .sections-list { top: 58%; }
      
    .sidebar.controls .controls-sections-list .sections-list li:not(:last-child) {
      margin-bottom: 4px;
    }
      
      .banners { margin:-20px auto 0; }
      
}

/* ----------- Retina Screens ----------- */
@media screen 
  and (min-device-width: 1200px) 
  and (max-device-width: 1600px) 
  and (-webkit-min-device-pixel-ratio: 2)
  and (min-resolution: 192dpi) { 
      
      .sidebar.controls .main-title { margin-top: 60px; }
      
      .sidebar.controls .controls-sections-list .sections-list { top: 58%; }
      
      .sidebar.controls .controls-sections-list .sections-list li:not(:last-child) {
      margin-bottom: 4px;
    }
      
      .banners { margin:-20px auto 0; }
      
}

@media (max-width:1024px) {

    .sidebar.controls .main-title {
        margin-top: 60px;
    }

  .container {
    width: 80%;
  }

  .showcase.section-open {
    transform: translate3d(-60%, 0, 0);
  }

  .showcase .sidebar.controls {
    width: 60%;
  }

  .showcase .sidebar.previews {
    width: 40%;
  }

  .showcase .sidebar.previews .close-section {
    left: 50px;
  }

  #section {
    width: 60%;
  }

  #section.open {
    left: 40%;
  }

}

@media (max-width:768px) {
  .column {
    width: 100% !important;
    padding: 0;
    margin-bottom: 50px;
  }

  .column:last-child {
    margin-bottom: 0;
  }

  .showcase {
    z-index: 100;
  }

  .showcase.section-open {
    transform: translate3d(-100%, 0, 0);
  }

  .showcase .sidebar.controls {
    width: 100%;
  }

  .showcase .sidebar.previews {
    width: 0;
  }

  .showcase .sidebar.previews .preview {
    display: none;
  }

  .showcase .sidebar.previews .close-section {
    top: auto;
    bottom: 50px;
    left: 50px;
    z-index: 100;
    margin-top: 0;
  }

  .showcase .sidebar.previews .close-section:hover {
    margin: -5px;
  }

  #section {
    width: 100%;
  }

  #section.open {
    left: 0;
  }

  #contact .contact-close {
    font-size: 16px;
    right: 5%;
    top: -50px;
  }

}

@media (max-width:480px) {

  body {
    font-size: 16px;
    line-height: 22px;
  }

  #section .section-header .section-title {
    margin-bottom: 5px;
  }

  .showcase .sidebar.controls .controls-sections-list {
    top: 80px;
    right: 0;
    bottom: 80px;
    left: 80px;
  }

  .showcase .sidebar.controls .controls-sections-list .sections-list {
    text-align: center;
    padding: 50px 25px 0;
  }

  .showcase .sidebar.controls .controls-sections-list .sections-list li a {
    font-size: 18px;
  }

  .showcase .sidebar.previews .close-section {
    width: 40px;
    height: 40px;
    top: auto;
    bottom: 50px;
    left: 25px;
    z-index: 100;
    margin-top: 0;
  }

  .showcase .sidebar.previews .close-section:hover {
    width: 50px;
    height: 50px;
    margin: -5px;
  }

  .showcase .sidebar.previews .close-section span {
    width: 12px;
    height: 12px;
    margin: -6px 0 0 -6px;
  }

  #contact .contact-content-inner {
    padding: 100px 0;
  }

  #section .section-content-inner {
    padding: 100px 10%;
  }

  p:not(:last-child) {
    margin-bottom: 18px;
  }

}


/* custom */
.vip img {
  -webkit-filter: blur(2px) grayscale(1) !important;
  filter: blur(2px) grayscale(1) !important;
}

.clear { clear:both;}

div, p, span, button, a, textarea, input, select { outline: none;}


.albumcontainer {
	margin-top: 20px;
}

.albumbox {
  margin: 10px auto;
  left:0px;
  right: 0px;
}

.albumbox img {
  margin: 0 0.1% 1% 0% !important;
  width: 48%;
  padding: 0;
  /*float: left;*/
  border: 1px solid #eee;
    /*border-radius: 10px;*/
}

.albumbox img:hover{
  opacity: .8;
  -webkit-transition: all .2s ease;
  -moz-transition: all .2s ease;
  -o-transition: all .2s ease;
  transition: all .2s ease;
}

.albumbox li {
  padding: 0;
  margin: 0;
  list-style-type: none;
}



.album {
  display: inline-block;
    min-width: 100px;
    max-width: 150px;
  width: 23%;
    text-align: center;
  padding: 0 15px 30px 0;
  float: left;
}

.album img {
    max-width: 100%;
    border: 2px solid #ff5b7a;
    /*border-radius: 10px;*/
}
.album a { color: #121212; text-decoration: none;}
.album a span{ text-transform: uppercase; font-size: 11px; font-family: 'Source Sans Pro';}
.album a:hover span { color: #ff5b7a;}


#banners {
    bottom: 50px;
    text-align: center;
    margin: -20px auto 0px;
    width: 100%;
    /*position: absolute;*/
}

a.contact-link2 {
  font-family: 'Cardo';
  /*position: absolute;*/
  bottom: 70px;
  font-size: 12px;
  font-weight: 300;
  color: #fff;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 200px;
  text-align: center;
  letter-spacing: 0.5px;
  border: 0.5px solid #666;
  padding: 10px 50px;
    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}

a.contact-link2:hover {
  color: #000;
  border: 0.5px solid #fff;
  background: #fff;
}