/* Alignment of block elements
 ========================================================================== */
/*
 * Float blocks
 * 1. Prevent content overflow on small devices
 */
.cd-float-left {
  float: left;
}
.cd-float-right {
  float: right;
}
/* 1 */
[class*='cd-float-'] {
  max-width: 100%;
}
/* Alignment of images and objects
 ========================================================================== */
/*
 * Alignment
 */
[class*='cd-align-'] {
  display: block;
  margin-bottom: 20px;
}
.cd-align-left {
  margin-right: 20px;
  float: left;
}
.cd-align-right {
  margin-left: 20px;
  float: right;
}
/* Tablet and bigger */
@media (min-width: 768px) {
  .cd-align-medium-left {
    margin-right: 20px;
    margin-bottom: 20px;
    float: left;
  }
  .cd-align-medium-right {
    margin-left: 20px;
    margin-bottom: 20px;
    float: right;
  }
}
.cd-align-center {
  margin-left: auto;
  margin-right: auto;
}

/* Alignment modifiers
 ========================================================================== */
.cd-text-left {
  text-align: left !important;
}
.cd-text-right {
  text-align: right !important;
}
.cd-text-center {
  text-align: center !important;
}
.cd-text-justify {
  text-align: justify !important;
}
.cd-text-top {
  vertical-align: top !important;
}
.cd-text-middle {
  vertical-align: middle !important;
}
.cd-text-bottom {
  vertical-align: bottom !important;
}
.cd-text-upper {
    text-transform: uppercase;
}

/* Only tablets portrait */
@media (max-width: 959px) {
  .cd-text-center-medium {
    text-align: center !important;
  }
}
/* Phone landscape and smaller */
@media (max-width: 767px) {
  .cd-text-center-small {
    text-align: center !important;
  }
}

/* Clearix
 ========================================================================== */

.cd-clearfix {
  *zoom: 1;
}
.cd-clearfix:before,
.cd-clearfix:after {
  display: table;
  content: "";
  line-height: 0;
}
.cd-clearfix:after {
  clear: both;
}

/* Margin
 ========================================================================== */

.cd-margin {
  margin-bottom: 20px;
  margin-top: 20px;
}
.cd-margin-top {
  margin-top: 20px !important;
}
.cd-margin-bottom {
  margin-bottom: 20px !important;
}
.cd-margin-left {
  margin-left: 20px !important;
}
.cd-margin-right {
  margin-right: 20px !important;
}
/*
 * Larger margins
 */
.cd-margin-large {
  margin-bottom: 40px;
  margin-top: 40px;
}
.cd-margin-large-top {
  margin-top: 40px !important;
}
.cd-margin-large-bottom {
  margin-bottom: 40px !important;
}
.cd-margin-large-left {
  margin-left: 40px !important;
}
.cd-margin-large-right {
  margin-right: 40px !important;
}
/*
 * Smaller margins
 */
.cd-margin-small {
  margin-bottom: 5px;
}
* + .cd-margin-small {
  margin-top: 5px;
}
.cd-margin-small-top {
  margin-top: 5px !important;
}
.cd-margin-small-bottom {
  margin-bottom: 5px !important;
}
.cd-margin-small-left {
  margin-left: 5px !important;
}
.cd-margin-small-right {
  margin-right: 5px !important;
}

/*
 * Remove margins
 */
.cd-margin-remove {
  margin: 0 !important;
}
.cd-margin-top-remove {
  margin-top: 0 !important;
}
.cd-margin-bottom-remove {
  margin-bottom: 0 !important;
}

/* Box Sizing
 ========================================================================== */
.cd-box-sizing {
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
}


/*
 * Fixed widths
 * Different widths for mini sized `input` and `select` elements
 */
input.cd-form-width-mini {
  width: 40px;
}
select.cd-form-width-mini {
  width: 65px;
}
.cd-form-width-small {
  width: 130px;
}
.cd-form-width-medium {
  width: 200px;
}
.cd-form-width-large {
  width: 500px;
}

@media (max-width: 768px) {
  .cd-form-width-large {
    width: 100%;
  }
}


/* Position 
 ========================================================================== */

.cd-position-absolute {
    position: absolute;
}

.cd-position-relative {
    position: relative;
}

.cd-position-static {
    position: static;
}

/*
 * Display
 */
.cd-display-block {
  display: block !important;
}
.cd-display-inline {
  display: inline !important;
}
.cd-display-inline-block {
  display: inline-block !important;
}

/*Buttons */

.cd-button {
    /* 1 */
    display: inline-block;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: middle;
    text-decoration: none;
    text-align: center;
    /* 2 */
    border: none;
    /* 3 */
    line-height: 32px;
    /* 4 */
    min-height: 36px;
    /* 5 */
    /* 6 */
    padding: 0 12px;
    color: #9f9f9f;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #eaeaea;
    background-image: -webkit-linear-gradient(top, #fcfcfc, #fafafa);
    background-image: linear-gradient(to bottom, #fcfcfc, #fafafa);
    box-shadow: inset 0 -1px rgba(0, 0, 0, 0.09);
    font-size: 14px;
    border-radius: 2px;
    text-transform: uppercase;
}

.cd-button:hover,
.cd-button:focus {
  background-color: #fcfcfc;
  color: #c5c5c5;
  /* 2 */
  outline: none;
  /* 3 */
  text-decoration: none;
  border-color: rgba(0, 0, 0, 0.08);
  background-image: none;
  box-shadow: inset 1px 3px 2px rgba(0, 0, 0, 0.025), inset 0 -1px 1px rgba(0, 0, 0, 0.07);
  text-shadow: 1px 1px rgba(255, 255, 255, 0.9);
}
/* Active */
.cd-button:active,
.cd-button.cd-active {
  background-color: #eeeeee;
  color: #c5c5c5;
  border-color: rgba(0, 0, 0, 0.09);
  background-image: none;
  box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.04), inset 0 0 1px rgba(0, 0, 0, 0.1);
  text-shadow: 1px 1px rgba(255, 255, 255, 0.5);
}


/* Color modifiers
 ========================================================================== */
/*
 * Modifier: `cd-button-primary`
 */
.cd-button-primary {
  background-color: #b1bd61;
  color: #ffffff;
    background: rgb(136,191,232); /* Old browsers */
    background: -moz-linear-gradient(top, rgba(136,191,232,1) 0%, rgba(112,176,224,1) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(136,191,232,1)), color-stop(100%,rgba(112,176,224,1))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(136,191,232,1) 0%,rgba(112,176,224,1) 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(136,191,232,1) 0%,rgba(112,176,224,1) 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(136,191,232,1) 0%,rgba(112,176,224,1) 100%); /* IE10+ */
    background: linear-gradient(to bottom, rgba(136,191,232,1) 0%,rgba(112,176,224,1) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#88bfe8', endColorstr='#70b0e0',GradientType=0 ); /* IE6-9 */
    border-color: transparent;
}
/* Hover */
.cd-button-primary:hover,
.cd-button-primary:focus {
    background-color: #70b0e0;
    color: #ffffff;
    border-color: rgba(0, 0, 0, 0.1);
    background-image: none;
    box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.025);
    text-shadow: none;
}
/* Active */
.cd-button-primary:active,
.cd-button-primary.cd-active {
  background-color: #88bfe8;
  color: #ffffff;
  background-image: none;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
  text-shadow: none;
}
/*
 * Modifier: `cd-button-success`
 */
.cd-button-success {
  background-color: #89b356;
    color: #ffffff;
    background: rgb(169,219,128); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(169,219,128,1) 0%, rgba(150,197,111,1) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(169,219,128,1)), color-stop(100%,rgba(150,197,111,1))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top,  rgba(169,219,128,1) 0%,rgba(150,197,111,1) 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top,  rgba(169,219,128,1) 0%,rgba(150,197,111,1) 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top,  rgba(169,219,128,1) 0%,rgba(150,197,111,1) 100%); /* IE10+ */
    background: linear-gradient(to bottom,  rgba(169,219,128,1) 0%,rgba(150,197,111,1) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a9db80', endColorstr='#96c56f',GradientType=0 ); /* IE6-9 */

    border-color: rgba(0, 0, 0, 0.06);
}
/* Hover */
.cd-button-success:hover,
.cd-button-success:focus {
    background-color: #96c56f;
    color: #ffffff;
    background-image: none;
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.2);
    text-shadow: none;
}
/* Active */
.cd-button-success:active,
.cd-button-success.cd-active {
    background-color: #a9db80;
    color: #ffffff;
    background-image: none;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
    text-shadow: none;
}
/*
 * Modifier: `cd-button-danger`
 */
.cd-button-danger {
    background-color: #ef6d38;
    color: #ffffff;
    border-color: rgba(0, 0, 0, 0.06);
    background: rgb(255,168,76); /* Old browsers */
    background: -moz-linear-gradient(top, rgba(255,168,76,1) 0%, rgba(255,123,13,1) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,168,76,1)), color-stop(100%,rgba(255,123,13,1))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(255,168,76,1) 0%,rgba(255,123,13,1) 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(255,168,76,1) 0%,rgba(255,123,13,1) 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(255,168,76,1) 0%,rgba(255,123,13,1) 100%); /* IE10+ */
    background: linear-gradient(to bottom, rgba(255,168,76,1) 0%,rgba(255,123,13,1) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffa84c', endColorstr='#ff7b0d',GradientType=0 ); /* IE6-9 */
}
/* Hover */
.cd-button-danger:hover,
.cd-button-danger:focus {
  background-color: #ff7b0d;
  color: #ffffff;
  background-image: none;
  border-color: rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.2);
  text-shadow: none;
  cursor: pointer
}
/* Active */
.cd-button-danger:active,
.cd-button-danger.cd-active {
  background-color: #ffa84c;
  color: #ffffff;
  background-image: none;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
  text-shadow: none;
}

.cd-button-mini {
  min-height: 20px;
  padding: 0 6px;
  line-height: 20px;
  font-size: 12px;
}
.cd-button-small {
  min-height: 25px;
  padding: 0 10px;
  line-height: 25px;
  font-size: 12px;
}
.cd-button-large {
    font-size: 20px;
    line-height: 50px;
    min-height: 50px;
    padding: 0 20px;
}