.button {

    width: auto;

    &.inline {
        display: inline;
        &:hover {
            display: inline;
        }
    }

    @include tablet-landscape-and-below {
        display: block;
        width: 100%;
    }

}

.button-download {
    border-bottom: 1px solid currentColor;
    font-size: 1rem;
    padding-bottom: 10px;
    transition: color 0.3s ease;

    .button-download-icon {
        display: inline-block;
        height: 24px;
        vertical-align: middle;
        transition: transform 0.5s ease;
        width: 24px;

        svg {
            display: block;
            height: 100%;
            width: 100%;
        }
    }
    .button-download-label {
        @include transform(transformZ(0));

        display: inline-block;
        font-size: inherit;
        margin-left: 5px;
        transition: margin 0.3s ease;
        vertical-align: middle;
    }

    &:hover {
        .button-download-icon {
            @include transform(rotateY(-360deg));
        }
        .button-download-label {
            margin-left: 15px;
        }
    }
}

.button-geolocation {
    padding-left: 20px !important;
    padding-right: 20px !important;

    .button-geolocation-icon {
        display: inline-block;
        vertical-align: middle;
        transition: transform 0.5s ease;
        height: 22px;
        width: 15px;
        svg {
            display: block;
            height: 100%;
            width: 100%;
            transition: transform 0.5s ease;
            fill: $color-golden;
        }
    }
    &:hover {
        svg {
            fill: white;
        }
    }
}

.button-geolocation-reverse {
    .button-geolocation-icon {
        display: inline-block;
        vertical-align: middle;
        transition: transform 0.5s ease;
        height: 22px;
        width: 15px;
        svg {
            display: block;
            height: 100%;
            width: 100%;
            transition: transform 0.5s ease;
            fill: white;
        }
    }
    /*&:hover
    {
    	svg {
    		fill: $color-golden;
    	}
    }*/
}

.button-red {

    @include transition (all 0.3s);
    @include button($color-white, $color-red, $color-transparent, 1rem, 20px, 50px);
    &:hover {
        @include button($color-white, darken($color-red, 10%), $color-transparent, 1rem, 20px, 50px);
    }
}

.button-golden {
    @include transition (all 0.3s);
    @include button($color-white, $color-golden, $color-golden, 1rem, 20px, 50px);
    &:hover {
        @include button($color-white, darken($color-golden, 10), $color-golden, 1rem, 20px, 50px);
    }
}

.button-golden-outline {
    @include transition (all 0.3s);
    @include button($color-golden, $color-transparent, $color-golden, 1rem, 20px, 50px);
    &:hover {
        @include button($color-golden, darken($color-transparent, 3), $color-golden, 1rem, 20px, 50px);
    }
}

.button-white {
    @include transition (all 0.3s);
    @include button($color-golden, $color-white, $color-white, 1rem, 20px, 80px);
    &:hover {
        @include button($color-white, $color-golden, $color-golden, 1rem, 20px, 80px);
    }
}

.button-deco {
    @include transition (all 0.3s);
    @include button($color-golden, $color-white, $color-golden, 1rem, 20px, 50px);

    &:before {
        @include transition (all 0.3s);
        content: "";
        position: absolute;
        background-image: url("../img/svg/star.svg");
        width: 10px;
        height: 10px;
        margin-left: -18px;
        margin-top: 3px;
    }

    &:after {
        @include transition (all 0.3s);
        content: "";
        position: absolute;
        background-image: url("../img/svg/star.svg");
        width: 10px;
        height: 10px;
        margin-left: 10px;
        margin-top: 3px;
    }

    &:hover {

        &:before {
            content: "";
            position: absolute;
            background-image: url("../img/svg/star.svg");
            width: 10px;
            height: 10px;
            margin-left: -23px;
            margin-top: 3px;
        }

        &:after {
            content: "";
            position: absolute;
            background-image: url("../img/svg/star.svg");
            width: 10px;
            height: 10px;
            margin-left: 15px;
            margin-top: 3px;
        }

    }
}

.button-outline {

    @include transition (all 0.3s);
    @include button($color-white, $color-transparent, $color-white, 0.8rem, 20px, 50px);
    &:hover {
        @include button($color-grey-darker, $color-white, $color-white, 0.8rem, 20px, 50px);
    }

}

.button-outline-small {

    @include transition (all 0.3s);
    @include button($color-white, $color-transparent, $color-white, 0.95rem, 20px, 20px);
    &:hover {
        @include button($color-grey-darker, $color-white, $color-white, 0.95rem, 20px, 20px);
    }

}

.button-outline-transparent {

    @include transition (all 0.3s);
    @include button($color-white, $color-transparent, $color-white, 0.9rem, 10px, 50px);
    &:hover {
        @include button($color-grey-darker, $color-white, $color-white, 0.9rem, 10px, 50px);
    }

}

.button-golden-outline {

    @include transition (all 0.3s);
    @include button($color-golden, transparent, $color-golden, 1rem, 20px, 50px);
    &:hover {
        @include button($color-white, $color-golden, $color-golden, 1rem, 20px, 50px);
    }

}

.button-golden-outline-small {

    @include transition (all 0.3s);
    @include button($color-golden, $color-white, $color-golden, 0.85rem, 15px, 30px);
    &:hover {
        @include button($color-white, $color-golden, $color-golden, 0.85rem, 15px, 30px);
    }

}

.button-golden-actu {

    @include transition (all 0.3s);
    @include button($color-grey-light, $color-transparent, $color-golden, 1rem, 10px, 50px);
    &:hover {
        @include button($color-white, $color-golden, $color-golden, 1rem, 10px, 50px);
    }

}

.button-golden-geolocation {

    position: relative;
    width: 100%;
    @include transition (all 0.3s);
    @include button($color-white, $color-golden, $color-golden, 1rem, 15px, 50px);
    &:hover {
        @include button($color-white, darken($color-golden, 3), $color-golden, 1rem, 15px, 50px);
    }

    &:after {
        content: '';
        position: absolute;
        top: 13px;
        right: 15px;
        width: 21px;
        height: 21px;
        background: url('../img/svg/icon-gps.svg');
        background-size: 100%;
    }

    &.waiting {

        &:after {
            content: '';
            position: absolute;
            top: 16px;
            right: 15px;
            width: 16px;
            height: 16px;
            background: url('../img/skin/loader-geoloc.gif');
            background-size: 100%;
        }

    }

}

.button-locator {

    position: relative;

    @include transition (all 0.3s);
    @include button($color-black, $color-transparent, $color-black, 1rem, 20px, 50px);
    &:hover {
        @include button($color-white, $color-black, $color-black, 1rem, 20px, 50px);
    }

    &:before {
        content: '';
        position: absolute;
        left: 50%;
        margin-left: -7px;
        top: -30px;
        width: 14px;
        height: 21px;
        background: url('../img/svg/icon-geolocation.svg');
        background-size: 100%;
    }

}

.button-clear-locator {

    @include transition (all 0.3s);
    @include button($color-grey-light, $color-transparent, $color-transparent, 0.75rem, 20px, 0px);
    @include text-left;
    &:hover {
        @include button($color-black, $color-transparent, $color-transparent, 0.75rem, 20px, 0px);
        @include text-left;
    }

    &:before {

        position: relative;
        display: inline-block;
        content: '';
        background-image: url("../img/svg/close-black.svg");
        width: 10px;
        height: 10px;
        margin-top: 0;
        margin-right: 5px;

    }

}

.button-push {
    left: 50%;
    min-width: 320px;
    position: absolute;
    margin-left: -160px;
    bottom: 7%;
}

.video-control {

    display: block;
    color: $color-white;
    width: 116px;
    height: 116px;
    background: url('../img/svg/icon-play.svg') no-repeat;
    line-height: 280px;
    opacity: 0.8;
    @include transform (scale(1));

    &.play {

        background: url('../img/svg/icon-pause.svg') no-repeat;
        text-indent: -99999px;

    }

    &.hide {
        display: none;
    }

    &:hover {
        opacity: 1;
        color: $color-golden;
    }

    @include mobile-landscape-and-below {

        width: 58px;
        height: 58px;
        text-indent: -99999px;

    }

}