/*  ==========================================================================
    GALLERY
    ========================================================================== */
/*  ==========================================================================
    STORAGE
    ========================================================================== */
/*  ==========================================================================
    VARIABLES
    Collection of all variables

    INFO:
    - try to use variables as much as possible, it makes life easier
    - try to use meaningful prefixes, e.g. "$clr-" for color variables
      or "$fs-" for font-sizes
    ========================================================================== */
/*  ==========================================================================
    CLASS NAMES
    Collection of class-names.
    ========================================================================== */
/*  ==========================================================================
    COLORS
    List all colors concerning your project here

    INFO:
    - use for your colors at least the prefix "$clr-"
    ========================================================================== */
/*  ==========================================================================
    DIMENSIONS
    List of some recurring dimensions.

    INFO:
    - don't delete any unit!
    - do unit changes with care
    - try to use prefixes (f.e. "zi" for "z-index", "hgt" for "height", "wdt" for "width" etc.)
    - if possible try to define the main z-index values here
    - don't put all dimensions in here, only well selected ones (it's not a trashcan!)
    ========================================================================== */
/*  ==========================================================================
    MEDIA QUERIES
    Collection of media queries.
    ========================================================================== */
/*  ==========================================================================
    TIMING

    INFO:
    - use for your colors at least the prefix "$time-"
    ========================================================================== */
/*  ==========================================================================
    TYPOGRAPHY
    Font settings concerning your project.

    INFO:
    - don't delete anything!
    - use changes in here with care
    - try to use prefixes (f.e. "ff" for "font-family", "fs" for "font-size", "fw" for "font-weight" ecc.)
    - don't put all properties in here, only well selected ones (it's not a trashcan!)
    ========================================================================== */
/*  ==========================================================================
    VISTA

    Info:
    - "--vh" for a nicer mobile display (needs "getVh" snippet in the "global.js")
    ========================================================================== */
/*  ==========================================================================
    FUNCIONS
    Collection of all functions
    ========================================================================== */
/*  ==========================================================================
    GENERAL
    Useful global functions
    ========================================================================== */
/*  ==========================================================================
    MIXINS
    Collection of all mixins (mind the ordering!)
    ========================================================================== */
/*  ==========================================================================
    GENERAL
    Useful global helpers

    INFO:
    - no specific naming convention (no prefix) except to not use camelcase if possible!
    - use it with care, its not a trash can!
    - contributions for the kickstarter are welcome!
    ========================================================================== */
/*
 * WRAPPER DIMENSIONS
 * generates wrapper padding & max-width
 */
/*  ==========================================================================
    BUTTONS
    Helpers to edit buttons

    INFO:
    - all mixins should start with "btn" as prefix
    ========================================================================== */
/*  ==========================================================================
    FILTER
    Helpers to create filter

    INFO:
    - all mixins should start with "fltr" as prefix
    ========================================================================== */
/*  ==========================================================================
    FLATPICKR
    ========================================================================== */
/*  ==========================================================================
    FORM
    Helpers to arrange forms

    INFO:
    - all mixins should start with "form" as prefix
    ========================================================================== */
/*  ==========================================================================
    IMAGES
    Collection of all helpers for images

    INFO:
    - all mixins should start with "img" as prefix
    ========================================================================== */
/*  ==========================================================================
    INFO
    ========================================================================== */
/*  ==========================================================================
    LIGHTBOX

    INFO:
    - optimized for the lightgallery js plugin.
    ========================================================================== */
/*  ==========================================================================
    POPUP
    ========================================================================== */
/*  ==========================================================================
    PRODUCT
    ========================================================================== */
/*  ==========================================================================
    SLIDE BOX
    Helper to generate slide boxes

    INFO:
    - adjusted for the "steirer" js utility
    ========================================================================== */
/*  ==========================================================================
    SLIDER
    Helpers to arrange slider parts

    INFO:
    - all mixins should start with "slider" as prefix
    ========================================================================== */
/*  ==========================================================================
    TYPOGRAPHY
    Helpers to arrange type

    INFO:
    - all mixins should start with "typo" as prefix
    ========================================================================== */
/* PROPERTIES
 * --------------------------------------------------------------------------- */
/* TEXT TYPES
 * --------------------------------------------------------------------------- */
/* BLOCKS/WRAPS
 * --------------------------------------------------------------------------- */
/*  ==========================================================================
    VISTA
    Helper to add base style to the vista output.

    INFO:
    - Usage example:
      @include vista(100vh, 75vh, 100vh, 60vh, true);
    ========================================================================== */
/*  ==========================================================================
    KEYFRAMES
    Collection of all keyframes (mind the ordering!)
    ========================================================================== */
/*  ==========================================================================
    IMAGE
    ========================================================================== */
@keyframes img-scale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes img-scale-inverted {
  0% {
    transform: scale(1.1);
  }
  50% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
/*  ==========================================================================
    LOADER
    ========================================================================== */
@keyframes loader-spinning {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes loader-blink {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*  ==========================================================================
    MAIN MENU
    Kudos to "http://pavlyukpetr.github.io/motion-css/"
    ========================================================================== */
@keyframes mm-open-desktop {
  0% {
    opacity: 0.75;
    transform: scale(0.75) translateX(-200vw);
  }
  80% {
    opacity: 0.75;
    transform: scale(0.75) translateX(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes mm-open-tablet {
  0% {
    opacity: 0.75;
    transform: scale(0.75) translateY(200vh);
  }
  80% {
    opacity: 0.75;
    transform: scale(0.75) translateY(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes mm-open-mobile {
  0% {
    opacity: 0;
    transform: rotateX(360deg) scale(0);
  }
  100% {
    opacity: 1;
    transform: rotateX(0deg) scale(1);
  }
}
/*  ==========================================================================
    QUICK REQUEST
    Kudos to "http://pavlyukpetr.github.io/motion-css/"
    ========================================================================== */
@keyframes qr-open {
  0% {
    transform: translateY(1000px);
  }
  25% {
    transform: translateY(50px);
  }
  30%, 55%, 70%, 80%, 90%, 100% {
    transform: translateY(0px);
  }
  45% {
    transform: translateY(25px);
  }
  63% {
    transform: translateY(15px);
  }
  75% {
    transform: translateY(7px);
  }
  85% {
    transform: translateY(4px);
  }
  95% {
    transform: translateY(2px);
  }
}
@keyframes qr-close {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  20% {
    opacity: 0.7;
    transform: scale(0.7) translateY(0px);
  }
  100% {
    opacity: 0.7;
    transform: scale(0.7) translateY(500px);
  }
}
/*  ==========================================================================
    VISTA
    ========================================================================== */
@keyframes vista-scale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes vista-scale-inverted {
  0% {
    transform: scale(1.1);
  }
  50% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
/*  ==========================================================================
    VISTA
    ========================================================================== */
@keyframes makeItRain {
  from {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    opacity: 0;
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
    -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
    opacity: 1;
  }
  to {
    transform: translateY(7em), perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    -webkit-transform: translateY(7em), perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}
/* STYLING
 * --------------------------------------------------------------------------- */
.DNA-module[data-id=gallery] {
  opacity: 1;
  /* for smoother loading, look also here: "packages/bn_package/Build/source/scss/entries/globals/global.scss" */
  position: relative;
  z-index: 5;
  /* RESPONSIVE
   * --------------------------------------------------------------------------- */
}
.DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item {
  color: var(--clr-scheme-primary);
}
.DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item span {
  font-size: 1.6em;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
}
.DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item:hover {
  color: #5C4E46;
}
@media (min-width: 1025px) {
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter {
    background-color: #FFFFFF;
    border: 1px solid #D7D7D7;
    position: relative;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:before, .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:after {
    content: "";
    display: block;
    height: 100%;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 2em;
    z-index: 10;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:before {
    background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0.5) 100%);
    left: 0;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.5) 0%, white 100%);
    right: 0;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap {
    padding: 0 2em;
    position: relative;
    scrollbar-color: rgba(115, 115, 115, 0.25) rgba(215, 215, 215, 0.25);
    text-align: center;
    white-space: nowrap;
    z-index: 5;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap::-webkit-scrollbar-track {
    background-color: rgba(215, 215, 215, 0.15);
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap::-webkit-scrollbar-track:hover {
    background-color: rgba(215, 215, 215, 0.25);
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap::-webkit-scrollbar-thumb {
    background-color: rgba(115, 115, 115, 0.5);
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap::-webkit-scrollbar-thumb:hover {
    background-color: #737373;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item {
    align-items: center;
    cursor: pointer;
    display: inline-flex;
    height: 5em;
    justify-content: center;
    padding: 0 1em;
    white-space: nowrap;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item.JS-tab-panel__tab--act {
    color: #5C4E46;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item:first-child {
    padding-left: 0;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item:last-child {
    padding-right: 0;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item.JS-tab-panel__tab--act {
    pointer-events: none;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__state {
    display: none;
  }
}
@media (min-width: 1367px) {
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:before, .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:after {
    width: 3em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap {
    padding: 0 3em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item {
    height: 5.5em;
    padding: 0 1.5em;
  }
}
@media (min-width: 1601px) {
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:before, .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter:after {
    width: 4em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap {
    padding: 0 4em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item {
    height: 6em;
    padding: 0 2em;
  }
}
@media (max-width: 1024px) {
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter {
    height: 5em;
    position: relative;
    width: 100%;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__wrap {
    background-color: #FFFFFF;
    border: 1px solid #D7D7D7;
    display: flex;
    flex-direction: column;
    left: 0;
    max-height: 65vh;
    overflow-x: hidden;
    overflow-y: auto;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 5;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item {
    align-items: center;
    border-top: 1px solid #D7D7D7;
    cursor: pointer;
    display: none;
    min-height: 5em;
    /* "min-height" so "overflow-y" on parent works correctly */
    order: 2;
    position: relative;
    width: 100%;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item span {
    display: block;
    font-size: 1.5em;
    overflow: hidden;
    padding: 0 2.6666666667em;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item.JS-fake-select__option--act {
    border-top-width: 0;
    display: inline-flex;
    order: 1;
    pointer-events: none;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item.JS-fake-select__option--act .DNA-simple-filter__state {
    display: flex;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__state {
    align-items: center;
    display: none;
    height: 100%;
    justify-content: center;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 4em;
    z-index: 10;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__state .DNA-icon {
    display: none;
    font-size: 1.2em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__state .DNA-icon[data-state=open] {
    display: inline;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter.JS-fake-select--open .DNA-simple-filter__wrap {
    box-shadow: 0 0 0.5em 0 rgba(0, 0, 0, 0.25);
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter.JS-fake-select--open .DNA-simple-filter__item {
    display: inline-flex;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter.JS-fake-select--open .DNA-simple-filter__state .DNA-icon[data-state=open] {
    display: none;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter.JS-fake-select--open .DNA-simple-filter__state .DNA-icon[data-state=close] {
    display: inline;
  }
}
@media (max-width: 767px) {
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__item span {
    font-size: 1.4em;
    padding: 0 2.1428571429em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__state {
    width: 3em;
  }
  .DNA-module[data-id=gallery] .DNA-module__wrap .DNA-simple-filter .DNA-simple-filter__state .DNA-icon {
    font-size: 1em;
  }
}
.DNA-module[data-id=gallery] .DNA-module__tab-panel__tabs, .DNA-module[data-id=gallery] .DNA-module__tab-panel__panels {
  position: relative;
}
.DNA-module[data-id=gallery] .DNA-module__tab-panel__tabs {
  z-index: 10;
}
.DNA-module[data-id=gallery] .DNA-module__tab-panel__panels {
  margin-top: 4em;
  z-index: 5;
}
.DNA-module[data-id=gallery] .DNA-module__tab-panel__panel {
  display: none;
  flex-wrap: wrap;
  margin-left: -2em;
  width: calc(100% + 4em);
}
.DNA-module[data-id=gallery] .DNA-module__tab-panel__panel.JS-tab-panel__panel--act {
  display: flex;
}
.DNA-module[data-id=gallery] .DNA-module__image {
  padding: 0 2em;
  width: 25%;
}
.DNA-module[data-id=gallery] .DNA-module__image > div {
  position: relative;
}
.DNA-module[data-id=gallery] .DNA-module__image > div:before {
  content: "";
  display: block;
  height: 0;
  padding-top: 100%;
}
.DNA-module[data-id=gallery] .DNA-module__image > div > a {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}
.DNA-module[data-id=gallery] .DNA-module__image > div > a img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  image-rendering: -webkit-optimize-contrast;
  will-change: transform;
}
.DNA-module[data-id=gallery] .DNA-module__image.DNA-module__image--hidden {
  display: none;
}
.DNA-module[data-id=gallery] .DNA-module__image.DNA-module__image--hidden + .DNA-module__button-wrap {
  display: block;
}
.DNA-module[data-id=gallery] .DNA-module__button-wrap {
  display: none;
  margin-top: 4em;
  text-align: center;
  width: 100%;
}
@media (min-width: 1025px) {
  .DNA-module[data-id=gallery] .DNA-module__image:nth-child(n+5) {
    margin-top: 4em;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .DNA-module[data-id=gallery] .DNA-module__image:nth-child(n+4) {
    margin-top: 3em;
  }
}
@media (max-width: 1024px) {
  .DNA-module[data-id=gallery] .DNA-module__tab-panel__panels {
    margin-top: 3em;
  }
  .DNA-module[data-id=gallery] .DNA-module__tab-panel__panel {
    margin-left: -1.5em;
    width: calc(100% + 3em);
  }
  .DNA-module[data-id=gallery] .DNA-module__image {
    padding: 0 1.5em;
    width: 33.33%;
  }
  .DNA-module[data-id=gallery] .DNA-module__button-wrap {
    margin-top: 3em;
  }
}
@media (max-width: 767px) {
  .DNA-module[data-id=gallery] .DNA-module__tab-panel__panels {
    margin-top: 2em;
  }
  .DNA-module[data-id=gallery] .DNA-module__tab-panel__panel {
    margin-left: -1em;
    width: calc(100% + 2em);
  }
  .DNA-module[data-id=gallery] .DNA-module__image {
    padding: 0 1em;
    width: 50%;
  }
  .DNA-module[data-id=gallery] .DNA-module__image:nth-child(n+3) {
    margin-top: 2em;
  }
  .DNA-module[data-id=gallery] .DNA-module__button-wrap {
    margin-top: 2em;
  }
}
