//
// Classes
// --------------------------------------------------

//-- Clearfix
.cf {
  @include clearfix;
}

//-- Absolute Center
.absolute-center {
  @include absolute-center;
}

//-- Absolute Bottom
.absolute-bottom {
  position: absolute;
  bottom: 0;
}

//-- Absolute Top
.absolute-top {
  position: absolute;
  top: 0;
}

//-- Absolute Bottom
.absolute-left {
  position: absolute;
  left: 0;
}

//-- Absolute Top
.absolute-right {
  position: absolute;
  right: 0;
}

//-- Relative Container
.relative-container {
  position: relative;
}

//-- Horizontal Center
.horizontal-center {
  @include horizontal-center;
}

@include breakpoint(small only) {
  &.vertical-center-small-only {
    @include vertical-center;
  }

  &.horizontal-center-small-only {
    @include horizontal-center;
  }
}

//-- Vertical Center
.vertical-center {
  @include vertical-center;
}

@include breakpoint(medium) {
  &.vertical-center-medium {
    @include vertical-center;
  }

  &.horizontal-center-medium {
    @include horizontal-center;
  }
}

@include breakpoint(large) {
  &.vertical-center-large {
    @include vertical-center;
  }

  &.horizontal-center-large {
    @include horizontal-center;
  }
}

//-- Fixed
.fixed-top {
  @include position(fixed, 0, null, null, null);
  z-index: $prototype-position-z-index;
}

.fixed-bottom {
  @include position(fixed, null, null, 0, null);
  z-index: $prototype-position-z-index;
}

@include breakpoint(medium) {
  .fixed-top-medium {
    @include position(fixed, 0, null, null, null);
    z-index: $prototype-position-z-index;
  }

  .fixed-bottom-medium {
    @include position(fixed, null, null, 0, null);
    z-index: $prototype-position-z-index;
  }
}

//-- Min height 50, 65, 75, 85, 100 viewport.
@include -zf-each-breakpoint {

  @each $-height in (25, 50, 65, 75, 85, 100) {
    .#{$-zf-size}-min-height-#{$-height} {
      min-height: #{$-height}vh;
    }
  }
}

//Fit Align
.fit-center {
  @include style-fit-center;
}

//No Margin bottom
.no-margin {
  margin-bottom: 0 !important;
}

//No Padding Bottom
.no-padding {
  padding-bottom: 0 !important;
}

//List
ul,
ol {
  &.list-circle {
    list-style-type: circle;
  }

  &.list-disc {
    list-style-type: disc;
  }

  &.list-square {
    list-style-type: square;
  }

  &.list-decimal {
    list-style-type: decimal;
  }

  &.list-roman {
    list-style-type: upper-roman;
  }

  &.list-alpha {
    list-style-type: upper-alpha;
  }

  //Position
  &.list-inside {
    list-style-position: inside;
  }

  &.list-outside {
    list-style-position: outside;
  }

  //Default
  &.list-default {
    list-style: initial;
  }

  //None
  &.list-none {
    list-style: none;
  }
}

.text-align-middle {
  vertical-align: middle;
}

.text-align-bottom {
  vertical-align: bottom;
}

.text-align-top {
  vertical-align: top;
}
