*{
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

:root{
    /**
    *COLORS
    **/

    /*blue*/
    --color-blue: #4fc0e8;
    --color-blue-hover: #3aadd9;
    --color-blue-lower: #66d4f1;

    /*yellow*/
    --color-yellow: #fdcd56;
    --color-yellow-hover: #f5b945;
    --color-yellow-lower: #fbd277;

    /*red*/
    --color-red: #eb5463;
    --color-red-hover: #d94452;
    --color-red-lower: #f76c82;

    /*green*/
    --color-green: #46ceac;
    --color-green-hover: #35ba9b;
    --color-green-lower: #61ddbc;

    /*gradients*/
    --gradient-green: linear-gradient(to right, #61ddbc 0%, #35ba9b 50%, #61ddbc 100%);
    --gradient-blue: linear-gradient(to right, #66d4f1 0%, #3aadd9 50%, #66d4f1 100%);
    --gradient-yellow: linear-gradient(to right, #fbd277 0%, #f5b945 50%, #fbd277 100%);
    --gradient-red: linear-gradient(to right, #f76c82 0%, #d94452 50%, #f76c82 100%);

    /**
    * FONTS
    **/
    --font-min: 0.8em;
    --font-small: 0.875em;
    --font-normal: 1em;
    --font-medium: 1.2em;
    --font-large: 1.4em;
    --font-max: 2em;

    /**
    *WEIGHT
    **/
    --weight-light: 300;
    --weight-normal: 400;
    --weight-strong: 600;
    --weight-bold: 700;
    --weight-black: 900;

    /**
    * RADIUS
     */
    --radius-normal: 5px;
    --radius-medium: 10px;
    --radius-large: 20px;
    --radius-round: 50%;

    /**
    * Z-INDEX
     */
    --index-back: -1;
    --index-fold: 2;
    --index-menu: 3;
    --index-cart: 4;
    --index-modal: 5;

}

a{
    text-decoration: none;
}

img{
    display: block;
    max-width: 100%;
}

img a{
    border: none;
}

embed,
video,
iframe,
iframe[style]{
    max-width: 100%;
    height: auto;
}

ul{
    list-style: none;
}

.ajax_load {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 5;
}

.ajax_load_box {
    margin: auto;
    text-align: center;
    color: #ffffff;
    font-weight: var(--weight-bold);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.ajax_load_box_circle {
    border: 5px solid #e3e3e3;
    border-top: 5px solid var(--color-green-hover);
    border-radius: 50%;
    margin: auto;
    width: 80px;
    height: 80px;

    -webkit-animation: spin 1.2s linear infinite;
    -o-animation: spin 1.2s linear infinite;
    animation: spin 1.2s linear infinite;
}

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

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

/*
CONTAINERS
*/
.container{
    max-width: 1200px;
    margin: 0 auto;
}

.embed-container{
    position: relative;
    max-width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    background: var(--color-blue);
}

.embed-container embed,
.embed-container video,
.embed-container iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*
BOXSTYLES
*/
.radius{
    --radius: 4px;
    -webkit-border-radius: var(--radius);
    -moz-border-radius: var(--radius);
    border-radius: var(--radius);
}

.rounded{
    --radius: 50%;
    -webkit-border-radius: var(--radius);
    -moz-border-radius: var(--radius);
    border-radius: var(--radius);
}

.transition{
    --seconds: 0.2s;
    -webkit-transition-duration:  var(--seconds);
    -moz-transition-duration:  var(--seconds);
    -ms-transition-duration:  var(--seconds);
    -o-transition-duration:  var(--seconds);
    transition-duration:  var(--seconds);
    cursor: pointer;
}

/*
TRIGGER
*/
.trigger{
    color: #fff;
    font-size: 0.875em;
    background: #888;
    text-shadow: 1px 1px rgba(0,0,0,0.3);
    padding: 12px;
    border: 1px solid #666;

    margin-bottom: 12px;
}

.trigger-succes{
    background: var(--color-green);
    border-color: var(--color-green-hover);
}

.trigger-succes-out{
    color: var(--color-green);
    border-color: var(--color-green);
    background: none;
    text-shadow: none;
}

.trigger-info{
    background: var(--color-blue);
    border-color: var(--color-blue-hover);
}

.trigger-info-out{
    color: var(--color-blue);
    border-color: var(--color-blue);
    background: none;
    text-shadow: none;
}

.trigger-alert{
    background: var(--color-yellow);
    border-color: var(--color-yellow-hover);
}

.trigger-alert-out{
    color: var(--color-yellow);
    border-color: var(--color-yellow);
    background: none;
    text-shadow: none;
}

.trigger-error{
    background: var(--color-red);
    border-color: var(--color-red-hover);
}

.trigger-error-out{
    color: var(--color-red);
    border-color: var(--color-red);
    background: none;
    text-shadow: none;
}

/*
BUTTON
*/
.btn{
    display: inline-block;
    padding: 10px 20px;
    background: #888;
    cursor: pointer;

    font-size: 1em;
    font-weight: normal;
    color: #fff;
    text-shadow: 1px 1px rgba(0,0,0,0.3);
}

.btn:hover{
    color: #fff;
    text-decoration: none;
    background: #666;
}

.btn-small{
    font-size: 0.875em;
}

.btn-big{
    font-size: 1.275em;
}

.btn-green{
    background: var(--color-green);
}

.btn-green:hover{
    background: var(--color-green-hover);
}

.btn-green-out{
    color: var(--color-green);
    border: 1px solid var(--color-green);
    background: none;
    text-shadow: none;
}

.btn-green-out:hover{
    color: var(--color-green-hover);
    border: 1px solid var(--color-green-hover);
    background: none;
    text-shadow: none;
}

.btn-blue{
    background: var(--color-blue);
}

.btn-blue:hover{
    background: var(--color-blue-hover);
}

.btn-blue-out{
    color: var(--color-blue);
    border: 1px solid var(--color-blue);
    background: none;
    text-shadow: none;
}

.btn-blue-out:hover{
    color: var(--color-blue-hover);
    border: 1px solid var(--color-blue-hover);
    background: none;
    text-shadow: none;
}

.btn-yellow{
    background: var(--color-yellow);
}

.btn-yellow:hover{
    background: var(--color-yellow-hover);
}

.btn-yellow-out{
    color: var(--color-yellow);
    border: 1px solid var(--color-yellow);
    background: none;
    text-shadow: none;
}

.btn-yellow-out:hover{
    color: var(--color-yellow-hover);
    border: 1px solid var(--color-yellow-hover);
    background: none;
    text-shadow: none;
}

.btn-red{
    background: var(--color-red);
}

.btn-red:hover{
    background: var(--color-red-hover);
}

.btn-red-out{
    color: var(--color-red);
    border: 1px solid var(--color-red);
    background: none;
    text-shadow: none;
}

.btn-red-out:hover{
    color: var(--color-red-hover);
    border: 1px solid var(--color-red-hover);
    background: none;
    text-shadow: none;
}

/*
* DISPLAY
*/

/*flex*/
.ds-flex{
    display: flex;
    flex-wrap: wrap;
}

.ds-flex .flex-1{
    flex-basis: 100%;
    margin: 15px;
}

.ds-flex .flex-2{
    flex-basis: calc(50% - 40px);
    margin: 20px;
}

.ds-flex .flex-3{
    flex-basis: calc(33.33% - 30px);
    margin: 15px;
}

.ds-flex .flex-4{
    flex-basis: calc(25% - 20px);
    margin: 10px;
}

/*block*/

.ds-block{
    display: block;
}

.ds-inblock{
    display: inline-block;
}

.ds-inline{
    display: inline;
}

.ds-none{
    display: none !important;
}

/**
* GRADIENT CLASS
 */
.gradient{
    background-size:200% auto ;
}

.gradient-green{
    background-image: var(--gradient-green);
}

.gradient-blue{
    background-image: var(--gradient-blue);
}

.gradient-yellow{
    background-image: var(--gradient-yellow);
}

.gradient-red{
    background-image: var(--gradient-red);
}

/*SLIDE*/
.j_slide{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.j_slide_item{
    display: none;
    flex-basis: 100%;
}

.j_slide_item img {
    width: 100%;
}

.j_slide_item:first-child{
    display: block;
}

.j_slide_nav{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    margin-bottom: 10px;
    text-align: center;
}

.j_slide_nav span{
    display: inline-block;
    background: rgba(0,0,0,0.4);
    width: 15px;
    height: 15px;
    margin: 0 5px;
    cursor: pointer;
}

.j_slide_nav span:hover,
.j_slide_nav span.active{
    background: var(--color-green-lower);
}

/*TABS*/
.j_tabs_nav.active{
    background: var(--color-green);
}

.j_tabs_item{
    display: none;
}

.j_tabs_item:first-child{
    display: block;
}

/*Message*/
/*MESSAGES*/
.message {
    color: #ffffff;
    font-size: var(--font-normal);
    font-weight: var(--weight-strong);
    text-align: center;

    display: block;
    width: 100%;
    padding: 10px;
    border: 2px solid #cccccc;

    -webkit-border-radius: var(--radius-normal);
    -moz-border-radius: var(--radius-normal);
    border-radius: var(--radius-normal);
}

.ajax_response {
    margin: 25px 0;
}

.message.success {
    --color: var(--color-green);
    color: #333333;
    border-color: var(--color);
    background: var(--color);
}

.message.info {
    --color: var(--color-blue);
    color: #333333;
    border-color: var(--color);
    background: var(--color);
}

.message.warning {
    --color: var(--color-yellow);
    color: #333333;
    border-color: var(--color);
    background: var(--color);
}

.message.error {
    --color: var(--color-red);
    color: #333333;
    border-color: var(--color);
    background: var(--color);
}

@media (max-width: 32em) {
    .ds-flex .flex-2{
        flex-basis: 100%;
    }
}