/* Helpers */
/*
 * helpers.css
 * Version: 2.0 (2019)
 * by Stephan Schlegel
 * provides useful classes for common purposes
 */
.nowrap {
  white-space: nowrap;
}

.noscroll {
  overflow: hidden;
}

.no-opacity, .invisible {
  opacity: 0;
}

.hidden {
  display: none;
}

main,
.hyp,
.hyphens {
  /* hyphens only in main body section */
  -o-hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

.full-width {
  width: 100%;
  min-width: 100%;
  height: auto;
}

.safe-space,
.box-space {
  /* useful for colored boxes to maintain space without changing textmargin */
  max-width: calc(100% - 30px);
  margin-left: auto;
  margin-right: auto;
}

.table {
  display: table;
}

.table-row {
  display: table-row;
}

.table-cell {
  display: table-cell;
}

.box-shadow-remove {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
}

/*** spaces ***/
.np, .no-padding {
  padding: 0 !important;
}

.npb, .no-padding-bottom {
  padding-bottom: 0 !important;
}

.npr, .no-padding-right {
  padding-right: 0 !important;
}

.npt, .no-padding-top {
  padding-top: 0 !important;
}

.npl, .no-padding-left {
  padding-left: 0 !important;
}

.nm, .no-margin {
  margin: 0 !important;
}

.nmt, .no-margin-top {
  margin-top: 0 !important;
}

.nmr, .no-margin-right {
  margin-right: 0 !important;
}

.nmb, .no-margin-bottom {
  margin-bottom: 0 !important;
}

.nml, .no-margin-left {
  margin-left: 0 !important;
}

/* no gutter grid for bootstrap and some others */
.container.no-gutter,
.no-gutter {
  padding-right: 0;
  padding-left: 0;
}

.container.no-gutter row {
  margin: 0;
}

.container.no-gutter row > div,
.container.no-gutter .col {
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

/* display & visibility */
.no-opacity {
  opacity: 0;
}

.invisible {
  visibility: hidden;
}

.hidden, .hide {
  display: none !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.show, .display-block, .db {
  display: block !important;
}

.show-flex, .display-flex, .df {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.affix, .fix {
  position: fixed;
}

/* stretch to the limite (vertical - horicontal *
 * parent needs pos relative or absolute to work
 * in some cases you need to add bottom: 0
 */
.stretch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/* content-display */
a:active, a:focus {
  outline: none;
}

.nowrap, .no-wrap {
  white-space: nowrap;
}

.text-left, .align-left, .tl {
  text-align: left;
}

.text-right, .align-right, .tr {
  text-align: right;
}

.text-center, .align-center, .tc {
  text-align: center;
}

.text-justify, .align-justify, .tj {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
}

.text-lowercase, .lowercase {
  text-transform: lowercase;
}

.text-uppercase, .uppercase {
  text-transform: uppercase;
}

.text-capitalize, .text-capitals {
  text-transform: capitalize;
}

.text-small, .ts, .small {
  font-size: 75%;
}

.scroller, .scroll {
  overflow-y: auto;
}

.cover-container {
  position: absolute;
  overflow: hidden;
  width: 400px;
  height: 200px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.fill-height-or-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.fill-height-or-more > div,
.fill-height-or-more > ul {
  /*
   flex-grow: 1;
   flex-shrink: 1;
   flex-basis: auto;
  */
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/* careful ie not supporting object-fit */
.object-fit_fill {
  -o-object-fit: fill;
     object-fit: fill;
}

.object-fit_contain {
  -o-object-fit: contain;
     object-fit: contain;
}

.object-fit_cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.object-fit_none {
  -o-object-fit: none;
     object-fit: none;
}

.object-fit_scale-down {
  -o-object-fit: scale-down;
     object-fit: scale-down;
}

/* Navigation Helpers */
.nav ul, ul.nav {
  list-style-type: none;
  list-style-position: inside;
  padding-left: 0;
  margin: 0;
}

.nav-v ul ul, ul.nav-v ul {
  padding-left: 1.5em;
}

.nav li {
  line-height: inherit;
}

.nav-v li {
  padding-right: 0.25em;
}

.nav-h li {
  display: inline-block;
  padding: 0 0.25em;
}

.nav-h li:nth-child(1) {
  padding-left: 0;
}

/* Text Flow Helpers */
.autocol {
  -webkit-column-width: 300px;
     -moz-column-width: 300px;
          column-width: 300px;
}

.autocol p:nth-child(1) {
  margin-top: 0;
}

.flex-col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.flex-col-middle {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.flex-col-start,
.flex-col-top {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.flex-col-bottom,
.flex-col-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.flex-col-stretch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.flex-col-left {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.flex-col-right {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.flex-col-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
/*# sourceMappingURL=helpers.css.map */