/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */


/* cursor */

.bw-cursor-auto {
    cursor: auto;
}

.bw-cursor-default {
    cursor: default;
}

.bw-cursor-none {
    cursor: none;
}

.bw-cursor-pointer {
    cursor: pointer;
}

.bw-cursor-not-Allowed {
    cursor: not-Allowed;
}

.bw-cursor-wait {
    cursor: wait;
}

.bw-cursor-progress {
    cursor: progress;
}

.bw-cursor-help {
    cursor: help;
}

.bw-cursor-context-menu {
    cursor: context-menu;
}

.bw-cursor-cell {
    cursor: cell;
}

.bw-cursor-crosshair {
    cursor: crosshair;
}

.bw-cursor-text {
    cursor: text;
}

.bw-cursor-wetical-text {
    cursor: wetical-text;
}

.bw-cursor-grab {
    cursor: grab;
}

.bw-cursor-grabbing {
    cursor: grabbing;
}

.bw-cursor-alias {
    cursor: alias;
}

.bw-cursor-copy {
    cursor: copy;
}

.bw-cursor-move {
    cursor: move;
}

.bw-cursor-zoom-in {
    cursor: zoom-in;
}

.bw-cursor-zoom-out {
    cursor: zoom-out;
}

.bw-cursor-col-resize {
    cursor: col-resize;
}

.bw-cursor-row-resize {
    cursor: row-resize;
}

.bw-cursor-nesw-resize {
    cursor: nesw-resize;
}

.bw-cursor-newse-resize {
    cursor: newse-resize;
}

.bw-cursor-ew-resize {
    cursor: ew-resize;
}

.bw-cursor-ns-resize {
    cursor: ns-resize;
}

.bw-cursor-n-resize {
    cursor: n-resize;
}

.bw-cursor-w-resize {
    cursor: w-resize;
}

.bw-cursor-s-resize {
    cursor: s-resize;
}

.bw-cursor-e-resize {
    cursor: e-resize;
}

.bw-cursor-nw-resize {
    cursor: nw-resize;
}

.bw-cursor-ne-resize {
    cursor: ne-resize;
}

.bw-cursor-sw-resize {
    cursor: sw-resize;
}

.bw-cursor-se-resize {
    cursor: se-resize;
}


/* Blur Class */
.bw-blur > .elementor-widget-wrap {
    backdrop-filter: blur(12px) !important;
}

/* extra margin */
.no-margin {
    margin-bottom: 0 !important;
}


/* Black Image */
.bw-image img {
    transition: all 0.17s ease;
}

/* Black Alignment */

.bw-left {
    text-align: left;
}

.bw-center {
    text-align: center;
}

.bw-right {
    text-align: right;
}


/**
 * Black Title
 */

.bw-title-box {
    transition: all .23s ease;
    -webkit-transition: all .23s ease;
    -moz-transition: all .23s ease;
    -ms-transition: all .23s ease;
    -o-transition: all .23s ease;
}

.bw-title-box.left {
    text-align: left;
}

.bw-title-box.center {
    text-align: center;
}

.bw-title-box.right {
    text-align: right;
}

.bw-title-box .shape {
    width: 60px;
}


/* Type 1 */

.bw-title-box.bw-t-1 {
    position: relative;
    padding-top: 14px;
}

.bw-title-box.bw-t-1:before {
    content: '';
    position: absolute;
    width: 44px;
    height: 2px;
    background: #000;
    top: 0;
    right: calc(50% - 22px);
}

.bw-title-box.bw-t-1.left:before {
    left: 0;
}

.bw-title-box.bw-t-1.center:before {
    left: calc(50% - 22px);
}

.bw-title-box.bw-t-1.right:before {
    right: 0;
}

.bw-title-box.bw-t-1 .bw-title div {
    font-size: 14px;
    color: #a9a9a9;
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.4;
    padding-bottom: 12px;
}

.bw-title-box.bw-t-1 .bw-subtitle div {
    font-size: 32px;
    color: #000;
    letter-spacing: -1px;
    line-height: 1;
    font-weight: 700;
}


/* Type 2 */

.bw-title-box.bw-t-2 {
    position: relative;
    padding-bottom: 24px;
}

.bw-title-box.bw-t-2:before {
    content: '';
    position: absolute;
    width: 44px;
    height: 2px;
    background: #000;
    bottom: 0;
    right: calc(50% - 22px);
}

.bw-title-box.bw-t-2.left:before {
    left: 0;
}

.bw-title-box.bw-t-2.center:before {
    left: calc(50% - 22px);
}

.bw-title-box.bw-t-2.right:before {
    right: 0;
}

.bw-title-box.bw-t-2 .bw-title div {
    font-size: 14px;
    color: #a9a9a9;
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.4;
    padding-bottom: 12px;
}

.bw-title-box.bw-t-2 .bw-subtitle div {
    font-size: 32px;
    color: #000;
    letter-spacing: -1px;
    line-height: 1;
    font-weight: 700;
}


/* Type 3 */

.bw-title-box.bw-t-3 {
    position: relative;
    z-index: 2;
    padding: 0 22px 24px 22px;
}

.bw-title-box.bw-t-3:before {
    content: '';
    position: absolute;
    width: 144px;
    height: 40px;
    background: rgba(0, 0, 0, 0.04);
    bottom: 0;
    right: calc(50% - 72px);
    z-index: -1;
}

.bw-title-box.bw-t-3.left:before {
    left: 0;
}

.bw-title-box.bw-t-3.center:before {
    left: calc(50% - 72px);
}

.bw-title-box.bw-t-3.right:before {
    right: 0;
}

.bw-title-box.bw-t-3 .bw-title div {
    font-size: 12px;
    color: #a9a9a9;
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.4;
    padding-bottom: 7px;
}

.bw-title-box.bw-t-3 .bw-subtitle div {
    font-size: 32px;
    color: #000;
    letter-spacing: -1px;
    line-height: 1.1;
    font-weight: 900;
}


/* Type 4 */

.bw-title-box.bw-t-4 {
    position: relative;
    z-index: 2;
    padding: 0 22px 40px 22px;
}

.bw-title-box.bw-t-4:before {
    content: '';
    position: absolute;
    width: 64px;
    height: 64px;
    background: rgba(0, 0, 0, 0.03);
    bottom: 0;
    right: calc(50% - 32px);
    z-index: -1;
}

.bw-title-box.bw-t-4.left:before {
    left: 0;
}

.bw-title-box.bw-t-4.center:before {
    left: calc(50% - 32px);
}

.bw-title-box.bw-t-4.right:before {
    right: 0;
}

.bw-title-box.bw-t-4 .bw-title div {
    font-size: 12px;
    color: #a9a9a9;
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.4;
    padding-bottom: 7px;
}

.bw-title-box.bw-t-4 .bw-subtitle div {
    font-size: 32px;
    color: #000;
    letter-spacing: -1px;
    line-height: 1.1;
    font-weight: 900;
}


/* Type 5 */

.bw-title-box.bw-t-5 {
    z-index: 2;
}

.bw-title-box.bw-t-5 .bw-title div:before {
    content: '';
    position: absolute;
    height: 4px;
    background: rgb(0, 0, 0);
    top: calc(50% - 2px);
    z-index: -1;
    overflow: hidden;
    border-radius: 32px;
    -webkit-border-radius: 32px;
    -moz-border-radius: 32px;
    -ms-border-radius: 32px;
    -o-border-radius: 32px;
}

.bw-title-box.bw-t-5.left .bw-title div:before {
    left: 0;
    width: 32px;
}

.bw-title-box.bw-t-5.right .bw-title div:before {
    right: 0;
    width: 32px;
}

.bw-title-box.bw-t-5 .bw-subtitle div {
    font-size: 22px;
    color: #000;
    line-height: 1.1;
    font-weight: 700;
}

.bw-title-box.bw-t-5 .bw-title div {
    font-size: 22px;
    color: #000;
    line-height: 1.1;
    font-weight: 700;
    padding: 0 44px;
    position: relative;
}


/* Type 6 */

.bw-title-box.bw-t-6 {
    position: relative;
    z-index: 2;
    padding: 0 22px 40px 22px;
}

.bw-title-box.bw-t-6:before {
    content: '';
    position: absolute;
    width: 64px;
    height: 64px;
    background: rgba(0, 0, 0, 0.03);
    bottom: 0;
    right: calc(50% - 32px);
    z-index: -1;
}

.bw-title-box.bw-t-6:after {
    content: '';
    position: absolute;
    width: 94px;
    height: 1px;
    background: #000;
    bottom: 20px;
    right: calc(50% - 47px);
    z-index: -1;
}

.bw-title-box.bw-t-6.left:before {
    left: 0;
}

.bw-title-box.bw-t-6.center:before {
    left: calc(50% - 32px);
}

.bw-title-box.bw-t-6.right:before {
    right: 0;
}

.bw-title-box.bw-t-6.left:after {
    left: -15px;
}

.bw-title-box.bw-t-6.center:after {
    left: calc(50% - 47px);
}

.bw-title-box.bw-t-6.right:after {
    right: -15px;
}

.bw-title-box.bw-t-6 .bw-title div {
    font-size: 12px;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.4;
    padding-bottom: 7px;
}

.bw-title-box.bw-t-6 .bw-subtitle div {
    font-size: 32px;
    color: #000;
    letter-spacing: -1px;
    line-height: 1.1;
    font-weight: 900;
}


/* Type 7 */

.bw-title-box.bw-t-7 {
    position: relative;
    z-index: 2;
}

.bw-title-box.bw-t-7:before {
    content: '';
    position: absolute;
    height: 5px;
    background: #000;
    top: 5px;
    z-index: -1;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.bw-title-box.bw-t-7:after {
    content: '';
    position: absolute;
    height: 1px;
    background: #000;
    top: 7px;
    z-index: -1;
}

.bw-title-box.bw-t-7.left:before {
    left: 0;
    width: 5px;
}

.bw-title-box.bw-t-7.right:before {
    right: 0;
    width: 5px;
}

.bw-title-box.bw-t-7.left:after {
    left: 8px;
    width: 24px;
}

.bw-title-box.bw-t-7.right:after {
    right: 8px;
    width: 24px;
}

.bw-title-box.bw-t-7 .bw-title div {
    font-size: 12px;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.2;
    padding: 0 36px 7px;
}

.bw-title-box.bw-t-7 .bw-subtitle div {
    font-size: 32px;
    color: #000;
    letter-spacing: -1px;
    line-height: 1.1;
    font-weight: 900;
}


/* Type 8 */

.bw-title-box.bw-t-8 {
    position: relative;
}

.bw-title-box.bw-t-8 .bw-title div::first-letter {
    font-size: 20px;
    font-weight: 900;
}

.bw-title-box.bw-t-8 .bw-title div {
    font-size: 12px;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 3px;
    line-height: 1.2;
    padding: 0 33px 0;
    font-style: italic;
    font-weight: 900;
}

.bw-title-box.bw-t-8 .bw-subtitle div::first-letter {
    font-size: 32px;
    font-weight: 900;
}

.bw-title-box.bw-t-8 .bw-subtitle div {
    font-size: 22px;
    color: #000;
    letter-spacing: -0.05em;
    line-height: 1.1;
    font-weight: 700;
    font-style: italic;
}


/* Custom Class - Dark */

.bw-dark .bw-title-box.bw-t-1:before,
.bw-dark .bw-title-box.bw-t-6:after,
.bw-dark .bw-title-box.bw-t-2:before {
    background: #fff;
}


/**
 * Black Button
 */

.bw-button-box {
    display: inline-block;
    position: relative;
}

.bw-button-box .bw-btn {
    transition: all 0.3s cubic-bezier(1, 0.65, 0, 0.89) !important;
    -webkit-transition: all 0.3s cubic-bezier(1, 0.65, 0, 0.89) !important;
    -moz-transition: all 0.3s cubic-bezier(1, 0.65, 0, 0.89) !important;
    -ms-transition: all 0.3s cubic-bezier(1, 0.65, 0, 0.89) !important;
    -o-transition: all 0.3s cubic-bezier(1, 0.65, 0, 0.89) !important;
}


/* Minimal*/

.bw-button-box.minimal .bw-btn {
    display: inline-block;
    position: relative;
    border: 2px solid #000;
    color: #000;
    display: inline-block;
    font-family: inherit;
    font-size: 14px;
    letter-spacing: 2px;
    padding: 12px 32px;
    background: #fff;
    line-height: 1.6;
    text-transform: capitalize;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    transition: all .17s ease;
    -webkit-transition: all .17s ease;
    -moz-transition: all .17s ease;
    -o-transition: all .17s ease;
}

.bw-button-box.minimal:hover .bw-btn {
    color: #fff;
    background: #000;
}


/* Modern > Type1 */

.bw-button-box.modern.m-1 {
    overflow: hidden;
}

.bw-button-box.modern.m-1 .bw-btn {
    display: block;
    position: relative;
    background: #000;
    border: 0;
    padding: 14px 42px;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    font-weight: 400;
    font-family: inherit;
    font-size: 18px;
    color: #fff;
    letter-spacing: 0.2em;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
    text-decoration: unset;
    top: 0;
    overflow: hidden;
    -o-transition: all 0.2s ease;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
}

.bw-button-box.modern.m-1 .bw-btn:hover {
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
    top: 0;
    color: #fff;
}

.bw-button-box.modern.m-1 .bw-btn:after {
    content: '';
    position: absolute;
    top: 0;
    left: -200%;
    width: 0;
    height: 100%;
    background-image: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.3), transparent);
    transform: skewX(-20deg);
    -webkit-transform: skewX(-20deg);
    -moz-transform: skewX(-20deg);
    -ms-transform: skewX(-20deg);
    -o-transform: skewX(-20deg);
}

.bw-button-box.modern.m-1 .bw-btn:hover:after {
    width: 200%;
    animation: shine 1.6s ease;
    -webkit-animation: shine 1.6s ease;
}

.bw-button-box.modern.m-1 .bw-btn:active {
    transform: translateY(1px);
    -webkit-transform: translateY(1px);
    -moz-transform: translateY(1px);
    -ms-transform: translateY(1px);
    -o-transform: translateY(1px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

@-moz-keyframes shine {
    100% {
        left: 200%;
    }
}

@-webkit-keyframes shine {
    100% {
        left: 200%;
    }
}

@-o-keyframes shine {
    100% {
        left: 200%;
    }
}

@keyframes shine {
    100% {
        left: 200%;
    }
}


/* Modern > Type2 */

.bw-button-box.modern.m-2 .bw-btn {
    float: left;
    /*display: block;
    */
    padding: 24px 44px;
    vertical-align: middle;
    position: relative;
    z-index: 1;
    line-height: 1;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    background: #fff;
    color: #000;
    overflow: hidden;
    border: 4px solid #000;
    text-transform: uppercase;
    text-decoration: unset;
    font-size: 18px;
    letter-spacing: 2px;
    font-weight: 700;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    transition: color 0.3s;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
}

.bw-button-box.modern.m-2 .bw-btn::before,
.bw-button-box.modern.m-2 .bw-btn::after {
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    bottom: 100%;
    left: 0;
    z-index: -1;
    transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
    -webkit-transition: transform 0.3s;
    -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}

.bw-button-box.modern.m-2 .bw-btn::before {
    background: #444;
}

.bw-button-box.modern.m-2 .bw-btn::after {
    background: #000;
}

.bw-button-box.modern.m-2 .bw-btn:hover {
    color: #fff;
    border: 4px solid #000;
}

.bw-button-box.modern.m-2 .bw-btn:hover::before,
.bw-button-box.modern.m-2 .bw-btn:hover::after {
    transform: translate3d(0, 100%, 0);
    -webkit-transform: translate3d(0, 100%, 0);
    -moz-transform: translate3d(0, 100%, 0);
    -ms-transform: translate3d(0, 100%, 0);
    -o-transform: translate3d(0, 100%, 0);
}

.bw-button-box.modern.m-2 .bw-btn:hover::after {
    transition-delay: 0.175s;
    -webkit-transition-delay: 0.175s;
}


/* Modern > Type3 */

.bw-button-box.modern.m-3 .bw-btn {
    position: relative;
    z-index: 9;
    display: inline-block;
    padding: 24px 44px;
    background-color: #000;
    border: none;
    box-shadow: none;
    cursor: pointer;
    line-height: 1.6;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-transform: capitalize;
    letter-spacing: 1px;
    transition-property: all;
    transition-duration: 0.37s;
    overflow: hidden;
}

.bw-button-box.modern.m-3 .bw-btn:before,
.bw-button-box.modern.m-3 .bw-btn:after {
    content: '';
    display: inline-block;
    position: absolute;
    transition-property: inherit;
    transition-duration: inherit;
    transition-timing-function: inherit;
    z-index: -2;
}

.bw-button-box.modern.m-3 .bw-btn:before,
.bw-button-box.modern.m-3 .bw-btn:after {
    width: 0;
    height: 100%;
    top: 0;
    left: 100%;
    background-color: #333;
}

.bw-button-box.modern.m-3 .bw-btn:before {
    z-index: -1;
    background-color: #666;
}

.bw-button-box.modern.m-3 .bw-btn:after {
    transition-delay: 0.2s;
}

.bw-button-box.modern.m-3 .bw-btn:hover:before,
.bw-button-box.modern.m-3 .bw-btn:hover:after {
    width: 100%;
    left: 0;
    transition-property: width;
}

.bw-button-box.modern.m-3 .bw-btn:hover:before {
    transition-delay: 0.2s;
}

.bw-button-box.modern.m-3 .bw-btn:hover:after {
    transition-delay: 0s;
}


/* Modern > Type4 */

.bw-button-box.modern.m-4 {
    position: relative;
}

.bw-button-box.modern.m-4 .btn-wrapper {
    background: #222;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: none;
    border-radius: 4px;
    min-width: 200px;
    box-shadow: 0 10px 60px -24px #000;
    cursor: pointer;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    outline: none;
    position: relative;
    z-index: 2;
    transform: perspective(250px) scale3d(1, 1, 1);
    -webkit-transform: perspective(250px) scale3d(1, 1, 1);
    -moz-transform: perspective(250px) scale3d(1, 1, 1);
    -ms-transform: perspective(250px) scale3d(1, 1, 1);
    -o-transform: perspective(250px) scale3d(1, 1, 1);
    transition: all 1s cubic-bezier(0.03, 0.98, 0.52, 0.99);
    -webkit-transition: all 1s cubic-bezier(0.03, 0.98, 0.52, 0.99);
    -moz-transition: all 1s cubic-bezier(0.03, 0.98, 0.52, 0.99);
    -ms-transition: all 1s cubic-bezier(0.03, 0.98, 0.52, 0.99);
    -o-transition: all 1s cubic-bezier(0.03, 0.98, 0.52, 0.99);
    will-change: transform, box-shadow, background;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.bw-button-box.modern.m-4 .btn-wrapper:hover {
    background: #000;
    box-shadow: 0 8px 65px -14px #000;
}

.bw-button-box.modern.m-4 .btn-wrapper:active {
    background: #000;
    box-shadow: 0 10px 60px -14px #000;
    transform: perspective(250px) scale3d(1, 1, 1) translateY(5%) !important;
    -webkit-transform: perspective(250px) scale3d(1, 1, 1) translateY(5%) !important;
    -moz-transform: perspective(250px) scale3d(1, 1, 1) translateY(5%) !important;
    -ms-transform: perspective(250px) scale3d(1, 1, 1) translateY(5%) !important;
    -o-transform: perspective(250px) scale3d(1, 1, 1) translateY(5%) !important;
}

.bw-button-box.modern.m-4 .btn-wrapper .bw-btn-m-4 {
    color: #F8FAFF;
    font-family: initial;
    font-style: normal;
    font-weight: normal;
    letter-spacing: 2px;
    font-size: 18px;
    line-height: 68px;
    text-transform: uppercase;
    padding: 0 34px;
    display: block;
}

.bw-button-box.modern.m-4 .shape {
    position: absolute;
    width: 10px;
    height: 10px;
    z-index: -1;
    animation: explode .8s reverse forwards ease-in;
    -webkit-animation: explode .8s reverse forwards ease-in;
}

@-webkit-keyframes explode {
    from {
        opacity: 0;
    }
    to {
        top: 50%;
        left: 50%;
        opacity: 1;
    }
}

@keyframes explode {
    from {
        opacity: 0;
    }
    to {
        top: 50%;
        left: 50%;
        opacity: 1;
    }
}


/* Modern > Type5 */
.bw-button-box.modern.m-5 {
    min-height: 56px;
}

.bw-button-box.modern.m-5 .bw-btn {
    display: block;
    position: relative;
    padding: 14px 18px 17px 22px;
    text-align: center;
    color: #000;
    transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -webkit-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -moz-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -ms-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -o-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
}

.bw-button-box.modern.m-5 .bw-btn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    border-radius: 28px;
    background: rgba(192, 192, 192, 0.3);
    width: 56px;
    height: 56px;
    transition: all 0.37s cubic-bezier(1, 0.35, 0, 0.65);
    -webkit-transition: all 0.37s cubic-bezier(1, 0.35, 0, 0.65);
    -moz-transition: all 0.37s cubic-bezier(1, 0.35, 0, 0.65);
    -ms-transition: all 0.37s cubic-bezier(1, 0.35, 0, 0.65);
    -o-transition: all 0.37s cubic-bezier(1, 0.35, 0, 0.65);
}

.bw-button-box.modern.m-5 .bw-btn span {
    position: relative;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 0.25em;
    line-height: 32px;
    text-transform: uppercase;
    vertical-align: middle;
    transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -webkit-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -moz-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -ms-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -o-transition: all 1.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
}

.bw-button-box.modern.m-5 .bw-btn:hover span {
    color: #fff;
}

.bw-button-box.modern.m-5 .bw-btn:hover:before {
    width: 100%;
    background: #000;
}


/* Noise > Type1 */

.bw-button-box.noise.n-1 {
    font-size: 18px;
    position: relative;
    width: 200px;
    height: 60px;
    /* left: 0; */
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-user-select: none;
    cursor: pointer;
    background: #fff;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div {
    position: absolute;
    text-align: center;
    width: 100%;
    height: 60px;
    line-height: 40px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div:nth-child(1) {
    color: #000000;
    background-color: #ffffff;
    padding: 10px;
    transition: all 0.1s ease;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -ms-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div:nth-child(2) {
    overflow: hidden;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div:nth-child(2) div {
    position: absolute;
    text-align: center;
    width: 100%;
    height: 60px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: 10px;
    border: #000000 hidden 1px;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div:nth-child(2) div:nth-child(1) {
    color: rgba(241, 0, 0, 0.8);
    opacity: 0;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAGCAYAAAAL+1RLAAAAF0lEQVQIW2NkwAIYgWKS6OIgQQxAoUoAE4AAUnD/0ugAAAAASUVORK5CYII=) repeat;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div:nth-child(2) div:nth-child(2) {
    color: rgba(120, 200, 120, 0.8);
    opacity: 0;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAGCAYAAAAL+1RLAAAAF0lEQVQIW2NkwAIYgWKS6OIgQQxAoUoAE4AAUnD/0ugAAAAASUVORK5CYII=) repeat;
}

.bw-button-box.noise.n-1 .bw-btn-n-1 div:nth-child(2) div:nth-child(3) {
    color: rgba(0, 168, 255, 0.8);
    opacity: 0;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAGCAYAAAAL+1RLAAAAF0lEQVQIW2NkwAIYgWKS6OIgQQxAoUoAE4AAUnD/0ugAAAAASUVORK5CYII=) repeat;
}

.bw-button-box.noise.n-1 .bw-btn-n-1:hover div:nth-child(1) {
    color: #ffffff;
    background-color: #000000;
    transition: background-color 0.3s ease 0.2s;
    -webkit-transition: background-color 0.3s ease 0.2s;
    -moz-transition: background-color 0.3s ease 0.2s;
    -ms-transition: background-color 0.3s ease 0.2s;
    -o-transition: background-color 0.3s ease 0.2s;
    transition: color 0s ease;
    -webkit-transition: color 0s ease;
    -moz-transition: color 0s ease;
    -ms-transition: color 0s ease;
    -o-transition: color 0s ease;
}

.bw-button-box.noise.n-1 .bw-btn-n-1:hover div:nth-child(2) div:nth-child(1) {
    animation: n-red 0.25s linear;
    -webkit-animation: n-red 0.25s linear;
    -moz-animation: n-red 0.25s linear;
}

.bw-button-box.noise.n-1 .bw-btn-n-1:hover div:nth-child(2) div:nth-child(2) {
    animation: n-green 0.25s linear;
    -webkit-animation: n-green 0.25s linear;
    -moz-animation: n-green 0.25s linear;
}

.bw-button-box.noise.n-1 .bw-btn-n-1:hover div:nth-child(2) div:nth-child(3) {
    animation: n-blue 0.25s linear;
    -webkit-animation: n-blue 0.25s linear;
    -moz-animation: n-blue 0.25s linear;
}

@keyframes n-red {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        -webkit-transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
    }
    75% {
        opacity: 1;
        -webkit-transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
    }
}

@-webkit-keyframes n-red {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        -webkit-transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
    }
    75% {
        opacity: 1;
        -webkit-transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
    }
}

@-moz-keyframes n-red {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
        -webkit-transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
        -moz-transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
        -ms-transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
        -o-transform: scale(1.8, 1.6) translate(-10px, 3px) skewX(30deg);
    }
    50% {
        opacity: 1;
        transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
        -webkit-transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
        -moz-transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
        -ms-transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
        -o-transform: scale(1.5, 1.2) translate(20px, 6px) skewX(5deg);
    }
    75% {
        opacity: 1;
        transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
        -webkit-transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
        -moz-transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
        -ms-transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
        -o-transform: scale(0.9, 1.8) translate(-16px, -1px) skewX(-20deg);
    }
}

@keyframes n-green {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        -webkit-transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
    }
    75% {
        opacity: 1;
        -webkit-transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
    }
}

@-webkit-keyframes n-green {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        -webkit-transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
    }
    75% {
        opacity: 1;
        -webkit-transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
    }
}

@-moz-keyframes n-green {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
        -webkit-transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
        -moz-transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
        -ms-transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
        -o-transform: scale(1.3, 1.5) translate(3px, 6px) skewX(25deg);
    }
    50% {
        opacity: 1;
        transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
        -webkit-transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
        -moz-transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
        -ms-transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
        -o-transform: scale(1.6, 1.1) translate(-16px, -5px) skewX(-15deg);
    }
    75% {
        opacity: 1;
        transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
        -webkit-transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
        -moz-transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
        -ms-transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
        -o-transform: scale(1, 1.8) translate(18px, 4px) skewX(15deg);
    }
}

@keyframes n-blue {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        -webkit-transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
    }
    75% {
        opacity: 1;
        -webkit-transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
    }
}

@-webkit-keyframes n-blue {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        -webkit-transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
    }
    75% {
        opacity: 1;
        -webkit-transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
    }
}

@-moz-keyframes n-blue {
    from,
    to {
        opacity: 0;
    }
    25% {
        opacity: 1;
        transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
        -webkit-transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
        -moz-transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
        -ms-transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
        -o-transform: scale(1.2, 1.4) translate(-10px, -3px) skewX(-25deg);
    }
    50% {
        opacity: 1;
        transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
        -webkit-transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
        -moz-transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
        -ms-transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
        -o-transform: scale(1.9, 1.1) translate(16px, 3px) skewX(5deg);
    }
    75% {
        opacity: 1;
        transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
        -webkit-transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
        -moz-transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
        -ms-transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
        -o-transform: scale(1.3, 2) translate(-30px, -3px) skewX(20deg);
    }
}


/* Noise > Type2 */

.bw-button-box.noise.n-2 {
    font-size: 18px;
    position: relative;
    width: 200px;
    height: 60px;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-user-select: none;
    cursor: pointer;
    overflow: hidden;
    border: 2px solid #000;
    background: #fff;
    margin: 0;
}

.bw-button-box.noise.n-2 div {
    line-height: 57px;
    position: absolute;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    width: 200px;
    height: 60px;
}

.bw-button-box.noise.n-2 div:nth-child(1) {
    background-color: #ffffff;
    top: 0;
    left: 0px;
}

.bw-button-box.noise.n-2 div:nth-child(2) {
    color: #000000;
    left: -100px;
    top: 0;
    width: 400px;
    height: 60px;
}

.bw-button-box.noise.n-2:hover div:nth-child(1) {
    animation: b12_3d_glitch_bg 0.3s linear;
    -webkit-animation: b12_3d_glitch_bg 0.3s linear;
    -moz-animation: b12_3d_glitch_bg 0.3s linear;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
}

.bw-button-box.noise.n-2:hover div:nth-child(2) {
    color: #000000;
    animation: b12_3d_glitch 0.3s linear;
    -webkit-animation: b12_3d_glitch 0.3s linear;
    -moz-animation: b12_3d_glitch 0.3s linear;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAGCAYAAAAL+1RLAAAAF0lEQVQIW2NkwAIYgWKS6OIgQQxAoUoAE4AAUnD/0ugAAAAASUVORK5CYII=) repeat;
}

@keyframes b12_3d_glitch_bg {
    49.00% {
        background-color: #ffffff;
    }
    50.00% {
        background-color: #000000;
    }
    to {
        background-color: #000000;
    }
}

@-webkit-keyframes b12_3d_glitch_bg {
    49.00% {
        background-color: #ffffff;
    }
    50.00% {
        background-color: #000000;
    }
    to {
        background-color: #000000;
    }
}

@-moz-keyframes b12_3d_glitch_bg {
    49.00% {
        background-color: #ffffff;
    }
    50.00% {
        background-color: #000000;
    }
    to {
        background-color: #000000;
    }
}

@keyframes b12_3d_glitch {
    from {
        color: #000000;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
    25.00% {
        color: #000000;
        transform: skewX(80deg);
        -webkit-transform: skewX(80deg);
        -moz-transform: skewX(80deg);
        -ms-transform: skewX(80deg);
        -o-transform: skewX(80deg);
    }
    75.00% {
        color: #ffffff;
        transform: skewX(-20deg);
        -webkit-transform: skewX(-20deg);
        -moz-transform: skewX(-20deg);
        -ms-transform: skewX(-20deg);
        -o-transform: skewX(-20deg);
    }
    90.00% {
        color: #ffffff;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
    to {
        color: #ffffff;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
}

@-webkit-keyframes b12_3d_glitch {
    from {
        color: #000000;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
    25.00% {
        color: #000000;
        transform: skewX(80deg);
        -webkit-transform: skewX(80deg);
        -moz-transform: skewX(80deg);
        -ms-transform: skewX(80deg);
        -o-transform: skewX(80deg);
    }
    75.00% {
        color: #ffffff;
        transform: skewX(-20deg);
        -webkit-transform: skewX(-20deg);
        -moz-transform: skewX(-20deg);
        -ms-transform: skewX(-20deg);
        -o-transform: skewX(-20deg);
    }
    90.00% {
        color: #ffffff;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
    to {
        color: #ffffff;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
}

@-moz-keyframes b12_3d_glitch {
    from {
        color: #000000;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
    25.00% {
        color: #000000;
        transform: skewX(80deg);
        -webkit-transform: skewX(80deg);
        -moz-transform: skewX(80deg);
        -ms-transform: skewX(80deg);
        -o-transform: skewX(80deg);
    }
    75.00% {
        color: #ffffff;
        transform: skewX(-20deg);
        -webkit-transform: skewX(-20deg);
        -moz-transform: skewX(-20deg);
        -ms-transform: skewX(-20deg);
        -o-transform: skewX(-20deg);
    }
    90.00% {
        color: #ffffff;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
    to {
        color: #ffffff;
        transform: skewX(0deg);
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
    }
}


/* Noise > Type3 */

.bw-button-box.noise.n-3 .bw-btn-n-3 {
    overflow: hidden;
    color: #151515;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 2.4;
    transition: unset !important;
    -webkit-transition: unset !important;
    -moz-transition: unset !important;
    -ms-transition: unset !important;
    -o-transition: unset !important;
}

.bw-button-box.noise.n-3 .bw-btn-n-3:hover {
    animation: glitch 3s steps(100) infinite;
    -webkit-animation: glitch 3s steps(100) infinite;
}

@keyframes glitch {
    0% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    1% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    2% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    3% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    4% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    5% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    6% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    7% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    8% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    9% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    10% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    11% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    12% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    13% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    14% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    15% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    16% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    17% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    18% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    19% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    20% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    21% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    22% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    23% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    24% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    25% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    26% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    27% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    28% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    29% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    30% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    31% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    32% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    33% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    34% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    35% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    36% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    37% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    38% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    39% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    40% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    41% {
        text-shadow: 45px 0 0 #0c33f5, -45px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    42% {
        text-shadow: 0 0 0 #0c33f5, 0 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    43% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    44% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    45% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    46% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    47% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    48% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    49% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    50% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    51% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    52% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    53% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    54% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    55% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    56% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    57% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    58% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    59% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    60% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    61% {
        text-shadow: 30px 0 0 red, -30px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    62% {
        text-shadow: 0 0 0 red, 0 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    63% {
        text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    64% {
        text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    65% {
        text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    66% {
        text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    67% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    68% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    69% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    70% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    71% {
        text-shadow: 50px 0 0 red, -50px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    72% {
        text-shadow: 0 0 0 red, 0 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    73% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    74% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    75% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    76% {
        text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    77% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    78% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    79% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    80% {
        text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    81% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    82% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    83% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    84% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    85% {
        text-shadow: 1px 0 0 red, -1px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    86% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    87% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0.5px);
        -webkit-filter: blur(0.5px);
    }
    88% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    89% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    90% {
        text-shadow: -3px 0 0 red, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    91% {
        text-shadow: 60px 0 0 lime, -60px 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    92% {
        text-shadow: 0 0 0 lime, 0 0 0 #0c33f5;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    92% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    93% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    94% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    95% {
        text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    96% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    97% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    98% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    99% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
    100% {
        text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
        filter: blur(0);
        -webkit-filter: blur(0);
    }
}


/* Fancy > Type1 */

.bw-button-box.fancy.f-1 .bw-btn {
    display: inline-block;
    background: #000;
    color: #fff;
    text-transform: uppercase;
    padding: 18px 42px;
    border-radius: 2px;
    box-shadow: 0px 17px 10px -10px rgba(0, 0, 0, 0.4);
    cursor: pointer;
    font-size: 14px;
    line-height: 2;
    letter-spacing: 2px;
    font-weight: 800;
    transform: scale(0.95);
    -webkit-transform: scale(0.95);
    -moz-transform: scale(0.95);
    -ms-transform: scale(0.95);
    -o-transform: scale(0.95);
    transition: all ease-in-out 300ms;
    -webkit-transition: all ease-in-out 300ms;
    -moz-transition: all ease-in-out 300ms;
    -ms-transition: all ease-in-out 300ms;
    -o-transition: all ease-in-out 300ms;
}

.bw-button-box.fancy.f-1 .bw-btn:hover {
    box-shadow: 0px 40px 20px -17px rgba(0, 0, 0, 0.4);
    -webkit-transform: translate(0px, -5px) scale(1);
    transform: translate(0px, -5px) scale(1);
    -moz-transform: translate(0px, -5px) scale(1);
    -ms-transform: translate(0px, -5px) scale(1);
    -o-transform: translate(0px, -5px) scale(1);
}


/* Fancy > Type2 */

.bw-button-box.fancy.f-2 {
    position: relative;
    background: #fff;
    box-shadow: 0 0 40px -10px rgba(0, 0, 0, .3);
    overflow: hidden;
    line-height: 1px;
    padding: 22px 28px;
    cursor: pointer;
}

.bw-button-box.fancy.f-2:hover {
    background: #000;
}

.bw-button-box.fancy.f-2 .bw-btn {
    font-size: 14px;
    color: #000;
    letter-spacing: 1px;
    text-decoration: none;
    font-weight: 900;
    line-height: 20px;
    text-transform: uppercase;
}

.bw-button-box.fancy.f-2:hover .bw-btn {
    color: #fff;
}

.bw-button-box.fancy.f-2 .bw-btn span:nth-child(1) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, #fff, #000);
    animation-delay: 1s;
    animation: animate1 2s linear infinite;
    -webkit-animation: animate1 2s linear infinite;
}

@keyframes animate1 {
    0% {
        transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
    }
}

.bw-button-box.fancy.f-2 .bw-btn span:nth-child(2) {
    position: absolute;
    top: 0;
    right: 0;
    width: 2px;
    height: 100%;
    background: linear-gradient(to bottom, #fff, #000);
    animation: animate2 2s linear infinite;
    -webkit-animation: animate2 2s linear infinite;
}

@keyframes animate2 {
    0% {
        transform: translateY(-100%);
        -webkit-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        -o-transform: translateY(-100%);
    }
    100% {
        transform: translateY(100%);
        -webkit-transform: translateY(100%);
        -moz-transform: translateY(100%);
        -ms-transform: translateY(100%);
        -o-transform: translateY(100%);
    }
}

.bw-button-box.fancy.f-2 .bw-btn span:nth-child(3) {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(to left, #fff, #000);
    animation: animate3 2s linear infinite;
    animation-delay: 1s;
}

@keyframes animate3 {
    0% {
        transform: translateX(100%);
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
    }
}

.bw-button-box.fancy.f-2 .bw-btn span:nth-child(4) {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 2px;
    height: 100%;
    background: linear-gradient(to top, #fff, #000);
    animation: animate4 2s linear infinite;
    -webkit-animation: animate4 2s linear infinite;
}

@keyframes animate4 {
    0% {
        transform: translateY(100%);
        -webkit-transform: translateY(100%);
        -moz-transform: translateY(100%);
        -ms-transform: translateY(100%);
        -o-transform: translateY(100%);
    }
    100% {
        transform: translateY(-100%);
        -webkit-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        -o-transform: translateY(-100%);
    }
}

.bw-button-box.fancy.f-2:hover .bw-btn span:nth-child(4) {
    background: linear-gradient(to top, #000, #777);
}

.bw-button-box.fancy.f-2:hover .bw-btn span:nth-child(3) {
    background: linear-gradient(to left, #000, #777);
}

.bw-button-box.fancy.f-2:hover .bw-btn span:nth-child(2) {
    background: linear-gradient(to bottom, #000, #777);
}

.bw-button-box.fancy.f-2:hover .bw-btn span:nth-child(1) {
    background: linear-gradient(to right, #000, #777);
}


/* Fancy > Type3 */

.bw-button-box.fancy.f-3 .bw-btn {
    margin: 0;
    border: 0;
    font-size: 18px;
    position: relative;
    width: 200px;
    height: 50px;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-user-select: none;
    cursor: default;
    cursor: pointer;
    perspective: 500px;
    -webkit-perspective: 500px;
    -moz-perspective: 500px;
}

.bw-button-box.fancy.f-3 .bw-btn div {
    position: absolute;
    text-align: center;
    width: 100%;
    height: 50px;
    padding: 10px;
    border: #000000 solid 1px;
    pointer-events: none;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.bw-button-box.fancy.f-3 .bw-btn div:nth-child(1) {
    color: #000000;
    background-color: #000000;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transform: rotateX(90deg);
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    -o-transform: rotateX(90deg);
    transform-origin: 50% 50% -25px;
    -webkit-transform-origin: 50% 50% -25px;
    -moz-transform-origin: 50% 50% -25px;
}

.bw-button-box.fancy.f-3 .bw-btn div:nth-child(2) {
    color: #000000;
    background-color: #ffffff;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
    transform-origin: 50% 50% -25px;
    -webkit-transform-origin: 50% 50% -25px;
    -moz-transform-origin: 50% 50% -25px;
}

.bw-button-box.fancy.f-3 .bw-btn:hover div:nth-child(1) {
    color: #ffffff;
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
}

.bw-button-box.fancy.f-3 .bw-btn:hover div:nth-child(2) {
    background-color: #000000;
    transform: rotateX(-90deg);
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
}


/* Fancy > Type4 */

.bw-button-box.fancy.f-4 .bw-btn {
    margin: 0;
    border: 0;
    font-size: 18px;
    position: relative;
    width: 200px;
    height: 50px;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-user-select: none;
    cursor: default;
    cursor: pointer;
    perspective: 500px;
    -webkit-perspective: 500px;
    -moz-perspective: 500px;
}

.bw-button-box.fancy.f-4 .bw-btn {
    perspective: 500px;
    -webkit-perspective: 500px;
    -moz-perspective: 500px;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}

.bw-button-box.fancy.f-4 .bw-btn div {
    position: absolute;
    text-align: center;
    width: 100%;
    height: 50px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    pointer-events: none;
    padding: 10px;
    border: #000000 solid 1px;
}

.bw-button-box.fancy.f-4 .bw-btn div:nth-child(1) {
    color: #000000;
    background-color: #ffffff;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transform: rotateX(0deg) translateZ(0px);
    -webkit-transform: rotateX(0deg) translateZ(0px);
    -moz-transform: rotateX(0deg) translateZ(0px);
    -ms-transform: rotateX(0deg) translateZ(0px);
    -o-transform: rotateX(0deg) translateZ(0px);
    transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
}

.bw-button-box.fancy.f-4 .bw-btn div:nth-child(2) {
    color: #ffffff;
    background-color: #000000;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transform: rotateX(-179.5deg) translateZ(1px);
    -webkit-transform: rotateX(-179.5deg) translateZ(1px);
    -moz-transform: rotateX(-179.5deg) translateZ(1px);
    -ms-transform: rotateX(-179.5deg) translateZ(1px);
    -o-transform: rotateX(-179.5deg) translateZ(1px);
    transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
}

.bw-button-box.fancy.f-4 .bw-btn:hover div:nth-child(1) {
    transform: rotateX(179.5deg);
    -webkit-transform: rotateX(179.5deg);
    -moz-transform: rotateX(179.5deg);
    -ms-transform: rotateX(179.5deg);
    -o-transform: rotateX(179.5deg);
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
}

.bw-button-box.fancy.f-4 .bw-btn:hover div:nth-child(2) {
    transform: rotateX(0deg) rotateY(0deg) translateZ(1px);
    -webkit-transform: rotateX(0deg) rotateY(0deg) translateZ(1px);
    -moz-transform: rotateX(0deg) rotateY(0deg) translateZ(1px);
    -ms-transform: rotateX(0deg) rotateY(0deg) translateZ(1px);
    -o-transform: rotateX(0deg) rotateY(0deg) translateZ(1px);
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
}


/* Fancy > Type5 */

.bw-button-box.fancy.f-5 {
    text-align: center;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
    padding: 24px 28px;
    min-width: 220px;
    line-height: 20px;
}

.bw-button-box.fancy.f-5 .bw-btn {
    color: #000;
    font-size: 16px;
    font-weight: 300;
}

.bw-button-box.fancy.f-5 .bw-btn:hover {
    text-decoration: none;
}

.bw-button-box.fancy.f-5 .bw-btn svg {
    height: 69px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.bw-button-box.fancy.f-5 .bw-btn rect {
    fill: none;
    stroke: #000;
    stroke-width: 2;
    stroke-dasharray: 422, 0;
    transition: all 0.35s linear;
    -webkit-transition: all 0.35s linear;
    -moz-transition: all 0.35s linear;
    -ms-transition: all 0.35s linear;
    -o-transition: all 0.35s linear;
}

.bw-button-box.fancy.f-5 .bw-btn:hover {
    background: rgba(225, 51, 45, 0);
    font-weight: 900;
    letter-spacing: 2px;
}

.bw-button-box.fancy.f-5 .bw-btn:hover rect {
    stroke-width: 12px;
    stroke-dasharray: 45, 380;
    stroke-dashoffset: 48;
    transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
    -moz-transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
    -ms-transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
}


/* Abstract > Type1 */

.bw-button-box.abstract.a-1 .bw-btn {
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 32px 44px 32px 24px;
    background: #000;
    border: none;
    border-radius: 4px;
    font-family: -apple-system, sans-serif;
    font-size: 20px;
    color: #fff;
    letter-spacing: 1px;
    text-align: center;
    line-height: 0;
    font-weight: 300;
    overflow: hidden;
    cursor: pointer;
    will-change: transform;
    transition: all 0.25s ease-out;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
}

.bw-button-box.abstract.a-1 .bw-btn:hover {
    background: #D2D2D2;
    color: #222;
}

.bw-button-box.abstract.a-1 .bw-btn span {
    font-size: 20px;
    position: relative;
    margin-right: 0;
    margin-left: 42px;
    background: #ccc;
    border-radius: 20px;
    padding: 3px;
    animation: ripple 0.8s linear infinite;
    -webkit-animation: ripple 0.8s linear infinite;
    transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

.bw-button-box.abstract.a-1 .bw-btn span svg {
    fill: #fff;
    width: 14px;
    height: 14px;
}

@-webkit-keyframes ripple {
    0% {
        box-shadow: 0 0 0 0 rgba(224, 224, 224, 0), 0 0 0 10px rgba(224, 224, 224, 0.18), 0 0 0 20px rgba(224, 224, 224, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(224, 224, 224, 0.18), 0 0 0 20px rgba(224, 224, 224, 0.18), 0 0 0 30px rgba(224, 224, 224, 0);
    }
}

@keyframes ripple {
    0% {
        box-shadow: 0 0 0 0 rgba(224, 224, 224, 0), 0 0 0 10px rgba(224, 224, 224, 0.18), 0 0 0 20px rgba(224, 224, 224, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(224, 224, 224, 0.18), 0 0 0 20px rgba(224, 224, 224, 0.18), 0 0 0 30px rgba(224, 224, 224, 0);
    }
}

.bw-button-box.abstract.a-1 .bw-btn:hover {
    background: #f1f1f1;
    color: #000;
}

.bw-button-box.abstract.a-1 .bw-btn:hover span svg {
    fill: #000;
}

.bw-button-box.abstract.a-1 .bw-btn:hover span {
    background: #f9f9f9;
    border-radius: 20px;
    padding: 3px;
    animation: rippleHover 0.8s linear infinite;
    -webkit-animation: rippleHover 0.8s linear infinite;
    transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

@-webkit-keyframes rippleHover {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18), 0 0 0 30px rgba(0, 0, 0, 0);
    }
}

@keyframes rippleHover {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18), 0 0 0 30px rgba(0, 0, 0, 0);
    }
}


/* Abstract > Type2 */

.bw-button-box.abstract.a-2 .bw-btn .btx-a1 {
    position: relative;
    padding: 18px 42px;
    text-decoration: none;
    background: #000;
    border-radius: 2px;
    box-shadow: 0 8px 20px -6px rgba(0, 0, 0, 0.25);
    transition: all 0.2s linear;
    min-width: 220px;
    text-align: center;
}

.bw-button-box.abstract.a-2 .bw-btn .btx-a1 {
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bw-button-box.abstract.a-2 .bw-btn .btx-a1:active {
    transform: translateY(1px);
    -webkit-transform: translateY(1px);
    -moz-transform: translateY(1px);
    -ms-transform: translateY(1px);
    -o-transform: translateY(1px);
}


/* Gradient */

.bw-button-box.gradient .bw-btn {
    display: block;
    width: auto;
    font-size: 14px;
    line-height: 2;
    font-weight: 600;
    color: #fff;
    cursor: pointer;
    min-height: 55px;
    text-align: center;
    border: none;
    background-size: 300% 100%;
    padding: 12px 34px;
    border-radius: 50px;
    box-shadow: 0 4px 22px -4px rgba(0, 0, 0, 0.17);
    transition: all .6s ease-in-out;
    -webkit-transition: all .6s ease-in-out;
    -moz-transition: all .6s ease-in-out;
    -ms-transition: all .6s ease-in-out;
    -o-transition: all .6s ease-in-out;
}

.bw-button-box.gradient .bw-btn:hover {
    background-position: 100% 0;
    color: #000;
    box-shadow: 0 4px 22px -4px rgba(0, 0, 0, 0.23);
    transition: all .6s ease-in-out;
    -webkit-transition: all .6s ease-in-out;
    -moz-transition: all .6s ease-in-out;
    -ms-transition: all .6s ease-in-out;
    -o-transition: all .6s ease-in-out;
}

.bw-button-box.gradient .bw-btn:focus {
    outline: none;
}

.bw-button-box.gradient .bw-btn {
    background-image: linear-gradient(to right, #000, #444, #f7f7f7, #f9f9f9);
}


/* Simple */

.bw-button-box.simple {
    padding: 0 4px;
    line-height: 1px;
}

.bw-button-box.simple .bw-btn {
    font-size: 14px;
    color: #222;
    line-height: 10px;
    padding: 3px;
    text-transform: capitalize;
    letter-spacing: 1.3px;
    line-height: 2;
    font-weight: 500;
    display: block;
}

.bw-button-box.simple .bw-btn:before {
    content: '';
    background: #222;
    width: 0px;
    height: 1px;
    top: 50%;
    left: 0;
    position: absolute;
    transition: all .17s cubic-bezier(0.4, 0, 1, 1);
    -webkit-transition: all .17s cubic-bezier(0.4, 0, 1, 1);
    -moz-transition: all .17s cubic-bezier(0.4, 0, 1, 1);
    -ms-transition: all .17s cubic-bezier(0.4, 0, 1, 1);
    -o-transition: all .17s cubic-bezier(0.4, 0, 1, 1);
}

.bw-button-box.simple:hover .bw-btn:before {
    width: 100%;
}


/* Custom */

.bw-button-box.custom .bw-custom-btn.after,
.bw-button-box.custom .bw-custom-btn.before {
    display: flex;
    align-items: center;
}

.bw-button-box.custom .bw-custom-btn.up,
.bw-button-box.custom .bw-custom-btn.down {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.bw-button-box.custom .bw-custom-btn.up span,
.bw-button-box.custom .bw-custom-btn.down span {
    display: block;
}

.bw-custom-btn.before .bw-custom-icon-shape {
    padding: 0 14px 0 0;
}

.bw-custom-btn.after .bw-custom-icon-shape {
    padding: 0 0 0 14px;
}

.bw-custom-btn.down .bw-custom-icon-shape {
    padding: 14px 0 0 0;
}

.bw-custom-btn.up .bw-custom-icon-shape {
    padding: 0 0 14px 0;
}

.bw-button-box .bw-custom-btn .bw-custom-icon-shape,
.bw-button-box .bw-custom-btn .bw-custom-icon-shape svg,
.bw-button-box .bw-custom-btn .bw-custom-icon-shape i {
    transition: all .21s ease-in-out;
    -webkit-transition: all .21s ease-in-out;
    -moz-transition: all .21s ease-in-out;
    -ms-transition: all .21s ease-in-out;
    -o-transition: all .21s ease-in-out;
    vertical-align: middle;
}

.bw-button-box .bw-custom-btn .bw-custom-icon-shape svg {
    height: auto;
}


/* General Alignment */

.bw-button-box.left,
.bw-button-box.right,
.bw-button-box.center {
    display: block;
    width: fit-content;
}

.bw-button-box.center {
    margin: auto;
}

.bw-button-box.right {
    float: right;
}

.bw-button-box.left {
    float: left;
}

.bw-button-box.noise.n-1 .bw-btn.bw-btn-n-1,
.bw-button-box.noise.n-2 .bw-btn.bw-btn-n-2 {
    width: inherit;
}

.bw-button-box.simple,
.bw-button-box.abstract.a-1,
.bw-button-box.fancy.f-5,
.bw-button-box.fancy.f-2 {
    /* display: block; */
    width: fit-content;
}

.bw-button-box.simple.center,
.bw-button-box.abstract.a-1.center,
.bw-button-box.fancy.f-5.center,
.bw-button-box.fancy.f-2.center {
    display: block;
    float: unset;
    width: fit-content;
    margin-right: auto;
    margin-left: 0;
    margin: auto;
}

.bw-button-box.noise.n-1.center,
.bw-button-box.noise.n-2.center {
    display: block;
    float: unset;
    margin-right: auto;
    margin-left: 0;
    margin: auto;
}

.bw-button-box.simple.right,
.bw-button-box.abstract.a-1.right,
.bw-button-box.fancy.f-5.right,
.bw-button-box.fancy.f-2.right {
    /* float: right; */
    display: block;
    float: unset;
    width: fit-content;
    margin-left: auto;
    margin-right: 0;
}

.bw-button-box.noise.n-1.right,
.bw-button-box.noise.n-2.right {
    /* float: right; */
    display: block;
    float: unset;
    margin-left: auto;
    margin-right: 0;
}

.bw-button-box.left {
    display: block;
    float: unset;
    width: fit-content;
    margin-right: auto;
    margin-left: 0;
}

.bw-button-box.right {
    display: block;
    float: unset;
    width: fit-content;
    margin-left: auto;
    margin-right: 0;
}

.bw-button-box.modern.m-2.left,
.bw-button-box.modern.m-2.center,
.bw-button-box.modern.m-2.right {
    display: flex;
}

.bw-button-box.modern.m-2.left {
    justify-content: flex-start;
}

.bw-button-box.modern.m-2.center {
    justify-content: center;
}

.bw-button-box.modern.m-2.right {
    justify-content: flex-end;
}


/**
 * Black Title Animate
 */

.bw-title-animate.left {
    text-align: left;
}

.bw-title-animate.center {
    text-align: center;
    width: fit-content;
    margin: auto;
}

.bw-title-animate.right {
    text-align: right;
}

.bw-title-animate h1,
.bw-title-animate h2,
.bw-title-animate h3,
.bw-title-animate h4,
.bw-title-animate h5,
.bw-title-animate h6,
.bw-title-animate p,
.bw-title-animate span {
    margin: 0;
}

.bw-title-animate .bw-animate-text,
.bw-title-animate .bw-before,
.bw-title-animate .bw-after {
    color: #000;
}


/* Simple - Sunny mornings */

.bw-title-animate .bw-simple-wrap .bw-letter {
    display: inline-block;
}


/* Classic - Signal & Noise */

.bw-title-animate .bw-classic {
    position: relative;
    color: #402d2d;
}

.bw-title-animate .bw-classic .bw-text-wrapper {
    position: relative;
    display: inline-block;
    padding-right: 0.05em;
}

.bw-title-animate .bw-classic .bw-line {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 3px;
    width: 100%;
    background-color: #402d2d;
    transform-origin: 0.5 0;
}

.bw-title-animate .bw-classic .bw-letters {
    display: inline-block;
    opacity: 0;
}


/* Liner - Find Your Element*/

.bw-title-animate .bw-liner .bw-text-wrapper {
    position: relative;
    display: inline-block;
    padding-right: 0.05em;
}

.bw-title-animate .bw-liner .bw-line {
    opacity: 0;
    position: absolute;
    left: 0;
    height: 2px;
    width: 100%;
    background-color: #fff;
    bottom: 0;
    transform-origin: 100% 100%;
}

.bw-title-animate .bw-liner .bw-letter {
    display: inline-block;
}


/* Effective - Ready Set Go! */

.bw-title-animate .bw-effective {
    position: relative;
    min-height: 95px;
}

.bw-title-animate .bw-effective .bw-letters {
    position: absolute;
    margin: auto;
    left: 0;
    top: 0;
    right: auto;
    opacity: 0;
}


/* Typing - Hello Goodbye */

.bw-title-animate .bw-typing .bw-text-wrapper {
    position: relative;
    display: inline-block;
    padding-right: 0.05em;
}

.bw-title-animate .bw-typing .bw-line {
    opacity: 0;
    position: absolute;
    left: 0;
    height: 100%;
    width: 3px;
    background-color: #fff;
    transform-origin: 0 50%;
}

.bw-title-animate .bw-typing .bw-line1 {
    top: 0;
    left: 0;
}

.bw-title-animate .bw-typing .bw-letter {
    display: inline-block;
}


/* Fade From Top / Right / Bottom / Left - Dreams */

.bw-title-animate .bw-fft,
.bw-title-animate .bw-ffr,
.bw-title-animate .bw-ffl,
.bw-title-animate .bw-ffb {
    position: relative;
}

.bw-title-animate .bw-fft .bw-text-wrapper,
.bw-title-animate .bw-ffr .bw-text-wrapper,
.bw-title-animate .bw-ffb .bw-text-wrapper,
.bw-title-animate .bw-ffl .bw-text-wrapper {
    position: relative;
    display: inline-block;
    padding-right: 0.05em;
    overflow: hidden;
}

.bw-title-animate .bw-fft .bw-letter,
.bw-title-animate .bw-ffr .bw-letter,
.bw-title-animate .bw-ffb .bw-letter,
.bw-title-animate .bw-ffl .bw-letter {
    display: inline-block;
    transform-origin: 0 0;
}


/* FadeIn FadeOut - Out Now*/

.bw-title-animate .bw-fout,
.bw-title-animate .bw-fin {
    text-transform: uppercase;
}

.bw-title-animate .bw-fout .bw-word,
.bw-title-animate .bw-fin .bw-word {
    display: inline-block;
}


/* Glitch */

.bw-glitch {
    width: fit-content;
    margin: 0 auto;
    display: -webkit-inline-box !important;
}


/* Glitch One */

.bw-animate-text.bw-glitch {
    display: block;
}

.bw-glitch {
    position: relative;
    margin: 0 auto;
}

.bw-glitch::before,
.bw-glitch::after {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    animation-direction: alternate-reverse;
    overflow: hidden;
    position: absolute;
    top: 0;
    clip: rect(0, 900px, 0, 0);
    content: attr(data-text);
}

.bw-glitch::after {
    -webkit-animation-name: glitch-animation;
    animation-name: glitch-animation;
    -webkit-animation-duration: 4s;
    animation-duration: 4s;
    left: 4px;
    text-shadow: -1px 0 #ffa800;
    background: #f5efe0;
}

.bw-glitch::before {
    -webkit-animation-name: glitch-animation-2;
    animation-name: glitch-animation-2;
    -webkit-animation-duration: 6s;
    animation-duration: 6s;
    left: -4px;
    text-shadow: 1px 0 #00d8ff;
    background: #f5efe0;
}

@-webkit-keyframes glitch-animation {
    0% {
        clip: rect(42px, 9999px, 44px, 0);
    }
    5% {
        clip: rect(12px, 9999px, 59px, 0);
    }
    10% {
        clip: rect(48px, 9999px, 29px, 0);
    }
    15.0% {
        clip: rect(42px, 9999px, 73px, 0);
    }
    20% {
        clip: rect(63px, 9999px, 27px, 0);
    }
    25% {
        clip: rect(34px, 9999px, 55px, 0);
    }
    30.0% {
        clip: rect(86px, 9999px, 73px, 0);
    }
    35% {
        clip: rect(20px, 9999px, 20px, 0);
    }
    40% {
        clip: rect(26px, 9999px, 60px, 0);
    }
    45% {
        clip: rect(25px, 9999px, 66px, 0);
    }
    50% {
        clip: rect(57px, 9999px, 98px, 0);
    }
    55.0% {
        clip: rect(5px, 9999px, 46px, 0);
    }
    60.0% {
        clip: rect(82px, 9999px, 31px, 0);
    }
    65% {
        clip: rect(54px, 9999px, 27px, 0);
    }
    70% {
        clip: rect(28px, 9999px, 99px, 0);
    }
    75% {
        clip: rect(45px, 9999px, 69px, 0);
    }
    80% {
        clip: rect(23px, 9999px, 85px, 0);
    }
    85.0% {
        clip: rect(54px, 9999px, 84px, 0);
    }
    90% {
        clip: rect(45px, 9999px, 47px, 0);
    }
    95% {
        clip: rect(37px, 9999px, 20px, 0);
    }
    100% {
        clip: rect(4px, 9999px, 91px, 0);
    }
}

@keyframes glitch-animation {
    0% {
        clip: rect(42px, 9999px, 44px, 0);
    }
    5% {
        clip: rect(12px, 9999px, 59px, 0);
    }
    10% {
        clip: rect(48px, 9999px, 29px, 0);
    }
    15.0% {
        clip: rect(42px, 9999px, 73px, 0);
    }
    20% {
        clip: rect(63px, 9999px, 27px, 0);
    }
    25% {
        clip: rect(34px, 9999px, 55px, 0);
    }
    30.0% {
        clip: rect(86px, 9999px, 73px, 0);
    }
    35% {
        clip: rect(20px, 9999px, 20px, 0);
    }
    40% {
        clip: rect(26px, 9999px, 60px, 0);
    }
    45% {
        clip: rect(25px, 9999px, 66px, 0);
    }
    50% {
        clip: rect(57px, 9999px, 98px, 0);
    }
    55.0% {
        clip: rect(5px, 9999px, 46px, 0);
    }
    60.0% {
        clip: rect(82px, 9999px, 31px, 0);
    }
    65% {
        clip: rect(54px, 9999px, 27px, 0);
    }
    70% {
        clip: rect(28px, 9999px, 99px, 0);
    }
    75% {
        clip: rect(45px, 9999px, 69px, 0);
    }
    80% {
        clip: rect(23px, 9999px, 85px, 0);
    }
    85.0% {
        clip: rect(54px, 9999px, 84px, 0);
    }
    90% {
        clip: rect(45px, 9999px, 47px, 0);
    }
    95% {
        clip: rect(37px, 9999px, 20px, 0);
    }
    100% {
        clip: rect(4px, 9999px, 91px, 0);
    }
}

@-webkit-keyframes glitch-animation-2 {
    0% {
        clip: rect(65px, 9999px, 100px, 0);
    }
    5% {
        clip: rect(52px, 9999px, 74px, 0);
    }
    10% {
        clip: rect(79px, 9999px, 85px, 0);
    }
    15.0% {
        clip: rect(75px, 9999px, 5px, 0);
    }
    20% {
        clip: rect(67px, 9999px, 61px, 0);
    }
    25% {
        clip: rect(14px, 9999px, 79px, 0);
    }
    30.0% {
        clip: rect(1px, 9999px, 66px, 0);
    }
    35% {
        clip: rect(86px, 9999px, 30px, 0);
    }
    40% {
        clip: rect(23px, 9999px, 98px, 0);
    }
    45% {
        clip: rect(85px, 9999px, 72px, 0);
    }
    50% {
        clip: rect(71px, 9999px, 75px, 0);
    }
    55.0% {
        clip: rect(2px, 9999px, 48px, 0);
    }
    60.0% {
        clip: rect(30px, 9999px, 16px, 0);
    }
    65% {
        clip: rect(59px, 9999px, 50px, 0);
    }
    70% {
        clip: rect(41px, 9999px, 62px, 0);
    }
    75% {
        clip: rect(2px, 9999px, 82px, 0);
    }
    80% {
        clip: rect(47px, 9999px, 73px, 0);
    }
    85.0% {
        clip: rect(3px, 9999px, 27px, 0);
    }
    90% {
        clip: rect(26px, 9999px, 55px, 0);
    }
    95% {
        clip: rect(42px, 9999px, 97px, 0);
    }
    100% {
        clip: rect(38px, 9999px, 49px, 0);
    }
}

@keyframes glitch-animation-2 {
    0% {
        clip: rect(65px, 9999px, 100px, 0);
    }
    5% {
        clip: rect(52px, 9999px, 74px, 0);
    }
    10% {
        clip: rect(79px, 9999px, 85px, 0);
    }
    15.0% {
        clip: rect(75px, 9999px, 5px, 0);
    }
    20% {
        clip: rect(67px, 9999px, 61px, 0);
    }
    25% {
        clip: rect(14px, 9999px, 79px, 0);
    }
    30.0% {
        clip: rect(1px, 9999px, 66px, 0);
    }
    35% {
        clip: rect(86px, 9999px, 30px, 0);
    }
    40% {
        clip: rect(23px, 9999px, 98px, 0);
    }
    45% {
        clip: rect(85px, 9999px, 72px, 0);
    }
    50% {
        clip: rect(71px, 9999px, 75px, 0);
    }
    55.0% {
        clip: rect(2px, 9999px, 48px, 0);
    }
    60.0% {
        clip: rect(30px, 9999px, 16px, 0);
    }
    65% {
        clip: rect(59px, 9999px, 50px, 0);
    }
    70% {
        clip: rect(41px, 9999px, 62px, 0);
    }
    75% {
        clip: rect(2px, 9999px, 82px, 0);
    }
    80% {
        clip: rect(47px, 9999px, 73px, 0);
    }
    85.0% {
        clip: rect(3px, 9999px, 27px, 0);
    }
    90% {
        clip: rect(26px, 9999px, 55px, 0);
    }
    95% {
        clip: rect(42px, 9999px, 97px, 0);
    }
    100% {
        clip: rect(38px, 9999px, 49px, 0);
    }
}


/* Glitch Two */

.bw-glitch-wrapper .bw-animate-text.bw-glitch::before,
.bw-glitch-wrapper .bw-animate-text.bw-glitch::after {
    color: white;
    content: attr(data-text);
    position: absolute;
    width: 100%;
    height: 100%;
    background: #f5efe0;
    overflow: hidden;
    top: 0;
}

.bw-glitch-wrapper .bw-animate-text.bw-glitch::before {
    left: 3px;
    text-shadow: -2px 0 red;
    animation-name: glitch-animation-1;
    animation-duration: 2s;
    animation-timing-function: linear;
    animation-delay: 0s;
    animation-iteration-count: infinite;
    animation-direction: reverse-alternate;
}

.bw-glitch-wrapper .bw-animate-text.bw-glitch::after {
    left: -3px;
    text-shadow: -2px 0 blue;
    animation-name: glitch-animation-2;
    animation-duration: 2s;
    animation-timing-function: linear;
    animation-delay: 0s;
    animation-iteration-count: infinite;
    animation-direction: reverse-alternate;
}

@keyframes glitch-animation-1 {
    0% {
        clip: rect(136px, 350px, 81px, 30px);
    }
    5% {
        clip: rect(115px, 350px, 5px, 30px);
    }
    10% {
        clip: rect(43px, 350px, 134px, 30px);
    }
    15% {
        clip: rect(16px, 350px, 43px, 30px);
    }
    20% {
        clip: rect(34px, 350px, 6px, 30px);
    }
    25% {
        clip: rect(112px, 350px, 76px, 30px);
    }
    30% {
        clip: rect(35px, 350px, 146px, 30px);
    }
    35% {
        clip: rect(38px, 350px, 92px, 30px);
    }
    40% {
        clip: rect(149px, 350px, 4px, 30px);
    }
    45% {
        clip: rect(108px, 350px, 106px, 30px);
    }
    50% {
        clip: rect(1px, 350px, 85px, 30px);
    }
    55% {
        clip: rect(57px, 350px, 3px, 30px);
    }
    60% {
        clip: rect(93px, 350px, 45px, 30px);
    }
    65% {
        clip: rect(131px, 350px, 121px, 30px);
    }
    70% {
        clip: rect(117px, 350px, 102px, 30px);
    }
    75% {
        clip: rect(27px, 350px, 136px, 30px);
    }
    80% {
        clip: rect(16px, 350px, 71px, 30px);
    }
    85% {
        clip: rect(130px, 350px, 8px, 30px);
    }
    90% {
        clip: rect(71px, 350px, 79px, 30px);
    }
    95% {
        clip: rect(137px, 350px, 39px, 30px);
    }
    100% {
        clip: rect(105px, 350px, 12px, 30px);
    }
}

@keyframes glitch-animation-2 {
    0% {
        clip: rect(28px, 350px, 23px, 30px);
    }
    5% {
        clip: rect(106px, 350px, 6px, 30px);
    }
    10% {
        clip: rect(112px, 350px, 109px, 30px);
    }
    15% {
        clip: rect(90px, 350px, 74px, 30px);
    }
    20% {
        clip: rect(138px, 350px, 71px, 30px);
    }
    25% {
        clip: rect(1px, 350px, 31px, 30px);
    }
    30% {
        clip: rect(135px, 350px, 149px, 30px);
    }
    35% {
        clip: rect(85px, 350px, 137px, 30px);
    }
    40% {
        clip: rect(119px, 350px, 32px, 30px);
    }
    45% {
        clip: rect(126px, 350px, 69px, 30px);
    }
    50% {
        clip: rect(135px, 350px, 33px, 30px);
    }
    55% {
        clip: rect(110px, 350px, 128px, 30px);
    }
    60% {
        clip: rect(44px, 350px, 56px, 30px);
    }
    65% {
        clip: rect(69px, 350px, 111px, 30px);
    }
    70% {
        clip: rect(32px, 350px, 11px, 30px);
    }
    75% {
        clip: rect(149px, 350px, 94px, 30px);
    }
    80% {
        clip: rect(129px, 350px, 125px, 30px);
    }
    85% {
        clip: rect(129px, 350px, 83px, 30px);
    }
    90% {
        clip: rect(9px, 350px, 116px, 30px);
    }
    95% {
        clip: rect(111px, 350px, 21px, 30px);
    }
    100% {
        clip: rect(38px, 350px, 20px, 30px);
    }
}


/* Fade From Bottom 2 */

.bw-fade-text {
    overflow: hidden;
}

.bw-fade-text .bw-animate-text {
    position: relative;
}


/**
 * Black Line
 */

.bw-alert-box {
    padding: 12px 14px;
    border-radius: 8px;
    background: rgb(0, 0, 0, 0.07);
    border: 2px solid rgb(0, 0, 0, 1);
    color: #000000;
    font-weight: 600;
}

.bw-alert-box i {
    padding: 0 8px 0 0;
    font-size: 20px;
}

.bw-alert-box.warning {
    background: rgba(255, 242, 45, 0.07);
    border-color: #fff22d;
    color: #efca15;
}

.bw-alert-box.error {
    background: rgb(255, 0, 0, 0.07);
    border-color: #ff0000;
    color: #ff0000;
}

.bw-alert-box.success {
    background: rgba(38, 131, 108, 0.07);
    border-color: #26836c;
    color: #26836c;
}


/**
 * Black Icon
 */

.bw-icon-box {
    display: block;
}

.bw-icon-box .bw-icon-into {
    display: inline-block;
    background: #fff;
    padding: 14px 15px;
    border-radius: 50%;
    box-shadow: 0 12px 38px rgba(0, 0, 0, 0.2);
}

.bw-icon-box .bw-icon-into i {
    font-size: 44px;
    color: #222;
    transition: all .4s cubic-bezier(0.91, 0.53, 0.57, 0.79);
    -webkit-transition: all .4s cubic-bezier(0.91, 0.53, 0.57, 0.79);
    -moz-transition: all .4s cubic-bezier(0.91, 0.53, 0.57, 0.79);
    -ms-transition: all .4s cubic-bezier(0.91, 0.53, 0.57, 0.79);
    -o-transition: all .4s cubic-bezier(0.91, 0.53, 0.57, 0.79);
}


/**
 * Black Video Sequence
 */

.bw-scroll-video {
    position: relative;
    min-height: 100vh;
}

.bw-sencor {
    position: absolute;
    height: 100vh;
    top: 0;
    left: 0;
    right: 0;
}

.bw-sencor--active {
    position: sticky;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
}

.bw-sencor--ended {
    position: absolute;
    bottom: 0;
    top: auto;
}

.bw-video-scroller {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/**
 * Black List
 */

.bw-list .bw-list-item {
    display: block;
    margin-bottom: 4px;
}

.bw-list .bw-list-item i {
    font-size: 14px;
    margin-right: 7px;
}

.bw-list .bw-list-item span {
    font-size: 14px;
    letter-spacing: 0.07px;
    color: #1b1e2f;
    font-weight: 400;
}

.bw-list .bw-list-item:hover span,
.bw-list .bw-list-item:hover i {
    transition: all .27s ease-in-out;
    -webkit-transition: all .27s ease-in-out;
    -moz-transition: all .27s ease-in-out;
    -ms-transition: all .27s ease-in-out;
    -o-transition: all .27s ease-in-out;
}


/**
 * Black Line
 */

.bw-line {
    height: 5px;
    background: #000;
    width: 40%;
}

.bw-line.bw-t-2 {
    background: transparent;
    border-bottom: 2px dotted #000;
}

.bw-load-img {
    position: relative;
    overflow: hidden;
    /* cursor: pointer; */
    min-height: 10px;
}

.bw-image-grow-cover {
    position: absolute;
    z-index: 1;
    display: none;
    width: 100%;
    height: 100%;
    background-color: #222;
}

.bw-image-grow-cover.ltr {
    left: 0;
}

.bw-load-img img {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100%;
    transform: translateX(-64px) scale(1.5);
    -webkit-transform: translateX(-64px) scale(1.5);
    -moz-transform: translateX(-64px) scale(1.5);
    -ms-transform: translateX(-64px) scale(1.5);
    -o-transform: translateX(-64px) scale(1.5);
}

.bw-image-grow-cover {
    display: block;
}


/**
 * Black Image
 */

.bw-image {
    display: block;
}

.bw-image img {
    display: inline-block;
}


/* Black Flip Box A = Left To Right */

.bw-flipbox {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.bw-flipbox .bw-flip-card {
    color: inherit;
    cursor: pointer;
    width: 100%;
    min-height: 400px;
    perspective: 1000px;
    position: relative;
    height: auto;
}

.bw-flipbox .bw-flip-card .bw-front,
.bw-flipbox .bw-flip-card .bw-back {
    background: #000;
    display: flex;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
    justify-content: center;
    align-items: center;
    position: absolute;
    height: 100%;
    width: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    padding: 40px;
    transition: ease-in-out 600ms;
    -webkit-transition: ease-in-out 600ms;
    -moz-transition: ease-in-out 600ms;
    -ms-transition: ease-in-out 600ms;
    -o-transition: ease-in-out 600ms;
    transform-style: preserve-3d;
}

.bw-flipbox .bw-flip-card .bw-front {
    overflow: hidden;
    color: #fff;
}

.bw-flipbox .bw-flip-card .bw-front:before {
    position: absolute;
    display: block;
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #222;
    opacity: .25;
    z-index: -1;
}

.bw-flipbox .bw-flip-card .bw-front,
.bw-flipbox .bw-flip-card .bw-back,
.bw-flipbox .bw-flip-card .bw-front:before {
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

.bw-flipbox .bw-flip-card:hover .bw-front {
    transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
}

.bw-flipbox .bw-flip-card:nth-child(even):hover .bw-front {
    transform: rotateY(-180deg);
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
}

.bw-flipbox .bw-flip-card .bw-back {
    background: #222;
    transform: rotateY(-180deg);
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
}

.bw-flipbox .bw-flip-card:hover .bw-back {
    transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
}

.bw-flipbox .bw-flip-card:nth-child(even) .bw-back {
    transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
}

.bw-flipbox .bw-flip-card .bw-back .bw-button {
    background: linear-gradient(135deg, #333, #555);
    text-decoration: none;
    display: block;
    transition: all .6s ease-in-out;
    -webkit-transition: all .6s ease-in-out;
    -moz-transition: all .6s ease-in-out;
    -ms-transition: all .6s ease-in-out;
    -o-transition: all .6s ease-in-out;
}

.bw-flipbox .bw-flip-card .bw-back .bw-button:hover {
    background: linear-gradient(135deg, #444, #666);
}

.bw-flipbox .bw-flip-card:nth-child(even):hover .bw-back {
    transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
}

.bw-flipbox .bw-flip-card .bw-button {
    cursor: pointer;
    font-weight: bold;
    color: #fff;
    padding: 9px 32px;
    border-radius: 100px;
    font: inherit;
    border: none;
    position: relative;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: 300ms ease;
    -webkit-transition: 300ms ease;
    -moz-transition: 300ms ease;
    -ms-transition: 300ms ease;
    -o-transition: 300ms ease;
}

.bw-flipbox .bw-flip-card .bw-button:before {
    position: absolute;
    display: block;
    content: '';
    height: calc(100% - 20px);
    width: calc(100% - 20px);
    left: 10px;
    top: 16px;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
    transition: 300ms ease;
    -webkit-transition: 300ms ease;
    -moz-transition: 300ms ease;
    -ms-transition: 300ms ease;
    -o-transition: 300ms ease;
}

.bw-flipbox .bw-flip-card .bw-button:hover {
    transform: translateZ(40px);
    -webkit-transform: translateZ(40px);
    -moz-transform: translateZ(40px);
    -ms-transform: translateZ(40px);
    -o-transform: translateZ(40px);
}

.bw-flipbox .bw-flip-card .bw-button:active {
    transform: translateZ(20px);
    -webkit-transform: translateZ(20px);
    -moz-transform: translateZ(20px);
    -ms-transform: translateZ(20px);
    -o-transform: translateZ(20px);
}


/* Black Flip Box A = Right To Left */

.bw-flipbox.frtl .bw-flip-card:hover .bw-front {
    transform: rotateY(-180deg);
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
}

.bw-flipbox.frtl .bw-flip-card:nth-child(even):hover .bw-front {
    transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
}

.bw-flipbox.frtl .bw-flip-card .bw-back {
    transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
}

.bw-flipbox.frtl .bw-flip-card:hover .bw-back {
    transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
}

.bw-flipbox.frtl .bw-flip-card:nth-child(even) .bw-back {
    transform: rotateY(-180deg);
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
}

.bw-flipbox.frtl .bw-flip-card:nth-child(even):hover .bw-back {
    transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
}


/* Black Flip Box A = Top To Bottom */

.bw-flipbox.fttb .bw-flip-card:hover .bw-front {
    transform: rotateX(-180deg);
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
}

.bw-flipbox.fttb .bw-flip-card:nth-child(even):hover .bw-front {
    transform: rotateX(180deg);
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
}

.bw-flipbox.fttb .bw-flip-card .bw-back {
    transform: rotateX(180deg);
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
}

.bw-flipbox.fttb .bw-flip-card:hover .bw-back {
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
}

.bw-flipbox.fttb .bw-flip-card:nth-child(even) .bw-back {
    transform: rotateX(-180deg);
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
}

.bw-flipbox.fttb .bw-flip-card:nth-child(even):hover .bw-back {
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
}


/* Black Flip Box A = Bottom To Top */

.bw-flipbox.fbtt .bw-flip-card:hover .bw-front {
    transform: rotateX(180deg);
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
}

.bw-flipbox.fbtt .bw-flip-card:nth-child(even):hover .bw-front {
    transform: rotateX(-180deg);
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
}

.bw-flipbox.fbtt .bw-flip-card .bw-back {
    transform: rotateX(-180deg);
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
}

.bw-flipbox.fbtt .bw-flip-card:hover .bw-back {
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
}

.bw-flipbox.fbtt .bw-flip-card:nth-child(even) .bw-back {
    transform: rotateX(180deg);
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
}

.bw-flipbox.fbtt .bw-flip-card:nth-child(even):hover .bw-back {
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
}


/* Default Typography For FlipBox*/

.bw-flip-card .bw-back i,
.bw-flip-card .bw-front i {
    font-size: 42px;
    color: #fff;
    margin: 0 auto 30px;
}

.bw-flip-card .bw-back h4,
.bw-flip-card .bw-front h4 {
    font-size: 32px;
    letter-spacing: -1px;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0 auto 30px;
    color: #fff;
}

.bw-flip-card .bw-back p,
.bw-flip-card .bw-front p {
    font-size: 15px;
    color: #fff;
    margin: 0 auto 30px;
}


/* 3D FlipBox */

.bw-flipbox.ddd .bw-flip-card .bw-front {
    z-index: 9999;
}

.bw-flipbox.ddd .bw-flip-card .bw-back .description {
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    transform: translateZ(90px) scale(.91);
    -webkit-transform: translateZ(90px) scale(.91);
    -moz-transform: translateZ(90px) scale(.91);
    -ms-transform: translateZ(90px) scale(.91);
    -o-transform: translateZ(90px) scale(.91);
}

.bw-flipbox .bw-flip-card .bw-back .description {
    opacity: 0;
    transition: ease-in-out 600ms;
    -webkit-transition: ease-in-out 600ms;
    -moz-transition: ease-in-out 600ms;
    -ms-transition: ease-in-out 600ms;
    -o-transition: ease-in-out 600ms;
}

.bw-flipbox:hover .bw-flip-card .bw-back .description {
    z-index: -99999999999;
    opacity: 1;
}

.bw-flipbox.ddd .bw-flip-card .bw-front .title-box {
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    transform: translateZ(90px) scale(.91);
    -webkit-transform: translateZ(90px) scale(.91);
    -moz-transform: translateZ(90px) scale(.91);
    -ms-transform: translateZ(90px) scale(.91);
    -o-transform: translateZ(90px) scale(.91);
}

.bw-flipbox .bw-flip-card .bw-front .title-box {
    opacity: 1;
    transition: ease-in-out 600ms;
    -webkit-transition: ease-in-out 600ms;
    -moz-transition: ease-in-out 600ms;
    -ms-transition: ease-in-out 600ms;
    -o-transition: ease-in-out 600ms;
}

.bw-flipbox:hover .bw-flip-card .bw-front .title-box {
    z-index: -99999999 !important;
    opacity: 0;
}

.bw-flipbox.ddd:hover .bw-flip-card .bw-back {
    z-index: 9999;
}

.bw-flipbox.ddd .bw-flip-card .bw-front {
    overflow: visible;
}


/**
 * Black Magic Link
 */

.bw-magic-link {
    text-align: center;
    display: block;
    width: fit-content;
    position: relative;
}

.bw-magic-link a {
    font-size: 15px;
    letter-spacing: -1px;
    line-height: 2;
    text-align: center;
    display: block;
    text-transform: capitalize;
}

.bw-magic-link a.bw-magic-pullttb,
.bw-magic-link a.bw-magic-pullbtt,
.bw-magic-link a.bw-magic-pullltr,
.bw-magic-link .bw-magic-pullrtl a {
    color: #000;
}

.bw-magic-link a.bw-magic-pullltr:before,
.bw-magic-link a.bw-magic-pullrtl:before {
    position: absolute;
    width: 1px;
    height: 100%;
    top: calc(50% - 50%);
    content: '';
    background: #000;
    opacity: 0.5;
    z-index: -2;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
}

.bw-magic-link a.bw-magic-pullltr:before {
    right: 0px;
}

.bw-magic-link a.bw-magic-pullrtl:before {
    left: 0px;
}

.bw-magic-link a.bw-magic-pullltr:hover:before,
.bw-magic-link a.bw-magic-pullrtl:hover:before {
    width: 100%;
}

.bw-magic-link a.bw-magic-pullttb:before,
.bw-magic-link a.bw-magic-pullbtt:before {
    position: absolute;
    width: 100%;
    height: 1px;
    left: calc(50% - 50%);
    content: '';
    background: #000;
    opacity: 0.5;
    z-index: -2;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
}

.bw-magic-link a.bw-magic-pullttb:before {
    top: 0px;
}

.bw-magic-link a.bw-magic-pullbtt:before {
    bottom: 0px;
}

.bw-magic-link a.bw-magic-pullttb:hover:before,
.bw-magic-link a.bw-magic-pullbtt:hover:before {
    height: 100%;
}

.bw-magic-link a.bw-magic-pullttb,
.bw-magic-link a.bw-magic-pullbtt,
.bw-magic-link a.bw-magic-pullltr,
.bw-magic-link a.bw-magic-pullrtl {
    color: #000;
    padding: 0 9px 0 9px;
    line-height: 1.8;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.bw-magic-link a.bw-magic-pullltr:before,
.bw-magic-link a.bw-magic-pullrtl:before,
.bw-magic-link a.bw-magic-pullttb:before,
.bw-magic-link a.bw-magic-pullbtt:before {
    background: #b2b2b2;
    transition: all 0.37s cubic-bezier(0.99, 0.15, 0.3, 0.88);
    -webkit-transition: all 0.37s cubic-bezier(0.99, 0.15, 0.3, 0.88);
    -moz-transition: all 0.37s cubic-bezier(0.99, 0.15, 0.3, 0.88);
    -ms-transition: all 0.37s cubic-bezier(0.99, 0.15, 0.3, 0.88);
    -o-transition: all 0.37s cubic-bezier(0.99, 0.15, 0.3, 0.88);
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
}


/* Heart Beat */

.bw-magic-link .bw-magic-heart {
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    color: #000;
    letter-spacing: 0px;
    text-align: center;
    line-height: 2.4;
    font-weight: 700;
    cursor: pointer;
    will-change: transform;
    transition: all 0.25s ease-out;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
}

.bw-magic-link .bw-magic-heart span {
    font-size: 20px;
    position: relative;
    margin-right: 0;
    line-height: 0;
    margin-left: 42px;
    background: #282828;
    border-radius: 20px;
    padding: 3px;
    animation: linkripple 0.8s linear infinite;
    -webkit-animation: linkripple 0.8s linear infinite;
    transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

.bw-magic-link .bw-magic-heart span svg {
    fill: #fff;
    width: 14px;
    height: 14px;
}

@-webkit-keyframes linkripple {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18), 0 0 0 30px rgba(0, 0, 0, 0);
    }
}

@keyframes linkripple {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.18), 0 0 0 20px rgba(0, 0, 0, 0.18), 0 0 0 30px rgba(0, 0, 0, 0);
    }
}

.bw-magic-link .bw-magic-heart:hover span svg {
    fill: #000;
}

.bw-magic-link .bw-magic-heart:hover span {
    background: #f9f9f9;
    border-radius: 20px;
    padding: 3px;
    animation: linkrippleHover 0.8s linear infinite;
    -webkit-animation: linkrippleHover 0.8s linear infinite;
    transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

@-webkit-keyframes linkrippleHover {
    0% {
        box-shadow: 0 0 0 0 rgba(120, 120, 120, 0), 0 0 0 10px rgba(120, 120, 120, 0.18), 0 0 0 20px rgba(120, 120, 120, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(120, 120, 120, 0.18), 0 0 0 20px rgba(120, 120, 120, 0.18), 0 0 0 30px rgba(120, 120, 120, 0);
    }
}

@keyframes linkrippleHover {
    0% {
        box-shadow: 0 0 0 0 rgba(120, 120, 120, 0), 0 0 0 10px rgba(120, 120, 120, 0.18), 0 0 0 20px rgba(120, 120, 120, 0.18);
    }
    100% {
        box-shadow: 0 0 0 10px rgba(120, 120, 120, 0.18), 0 0 0 20px rgba(120, 120, 120, 0.18), 0 0 0 30px rgba(120, 120, 120, 0);
    }
}


/* Liner */

.bw-magic-link .bw-magic-liner {
    display: inline-block;
    padding: 0 14px;
    margin-left: -14px;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    line-height: 1.8;
    letter-spacing: 0.05em;
    position: relative;
    color: #000;
}

.bw-magic-link .bw-magic-liner:before {
    content: '';
    width: 0;
    height: 1px;
    background: #000;
    position: absolute;
    left: 0px;
    top: 50%;
    transition: all cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -webkit-transition: all cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -moz-transition: all cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -ms-transition: all cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -o-transition: all cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
}

.bw-magic-link .bw-magic-liner:hover:before {
    width: 100%;
}


/* Modern */

.bw-magic-link .bw-magic-modern {
    color: #248a6d;
    text-decoration: none;
    border-bottom: 1px dashed #33c79d;
    display: inline-block;
    position: relative;
    padding: 0 12px;
    z-index: 1000;
    font-size: 20px;
    font-weight: 600;
    transition: all 250ms ease-in-out;
    -webkit-transition: all 250ms ease-in-out;
    -moz-transition: all 250ms ease-in-out;
    -ms-transition: all 250ms ease-in-out;
    -o-transition: all 250ms ease-in-out;
}

.bw-magic-link .bw-magic-modern:before {
    content: "";
    z-index: -1;
    width: 100%;
    height: 0%;
    background: rgba(68, 207, 168, 0.16);
    bottom: 0;
    left: 0;
    position: absolute;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    transition: height 250ms;
    -webkit-transition: height 250ms;
    -moz-transition: height 250ms;
    -ms-transition: height 250ms;
    -o-transition: height 250ms;
}

.bw-magic-link .bw-magic-modern:hover {
    border-color: transparent;
}

.bw-magic-link .bw-magic-modern:hover:before {
    height: 100%;
}


/* Arrow */

.bw-magic-link .bw-magic-arrow {
    text-align: left;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    font-weight: 700;
    transition: all 0.47s cubic-bezier(1, 0.45, 0.56, 0.7);
    -webkit-transition: all 0.47s cubic-bezier(1, 0.45, 0.56, 0.7);
    -moz-transition: all 0.47s cubic-bezier(1, 0.45, 0.56, 0.7);
    -ms-transition: all 0.47s cubic-bezier(1, 0.45, 0.56, 0.7);
    -o-transition: all 0.47s cubic-bezier(1, 0.45, 0.56, 0.7);
}

.bw-magic-link .bw-magic-arrow span {
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
    -ms-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
}

.bw-magic-link .bw-magic-arrow:hover span {
    padding-left: 7px;
}

.bw-magic-link .bw-magic-arrow:hover {
    color: #000;
}


/* Simple */

.bw-magic-link .bw-magic-simple {
    font-size: 15px;
    letter-spacing: 0.02em;
    font-weight: 700;
    text-decoration-line: underline !important;
    -moz-text-decoration-line: underline !important;
    text-decoration-style: solid !important;
    -moz-text-decoration-style: solid !important;
    text-decoration-color: transparent !important;
    -moz-text-decoration-color: transparent !important;
    transition: all 0.67s cubic-bezier(1, 0.45, 0.56, 0.7);
    -webkit-transition: all 0.67s cubic-bezier(1, 0.45, 0.56, 0.7);
    -moz-transition: all 0.67s cubic-bezier(1, 0.45, 0.56, 0.7);
    -ms-transition: all 0.67s cubic-bezier(1, 0.45, 0.56, 0.7);
    -o-transition: all 0.67s cubic-bezier(1, 0.45, 0.56, 0.7);
    transition: text-decoration-color 0.2s ease !important;
    -webkit-transition: text-decoration-color 0.2s ease !important;
    -moz-transition: text-decoration-color 0.2s ease !important;
    -ms-transition: text-decoration-color 0.2s ease !important;
    -o-transition: text-decoration-color 0.2s ease !important;
}

.bw-magic-link .bw-magic-simple:hover {
    color: #000;
    text-decoration-color: #000 !important;
}


/* Minimal */

.bw-magic-link .bw-magic-minimal {
    text-align: left;
    color: #000;
    transition: all ease 0.3s;
}

.bw-magic-link .bw-magic-minimal:hover {
    padding-left: 14px;
    color: #000;
}

.bw-magic-link .bw-magic-minimal:after {
    content: '';
    background: #000;
    left: 0;
    top: calc(50% - 1px);
    width: 10px;
    height: 2px;
    position: absolute;
    opacity: 0;
    visibility: hidden;
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
    -ms-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
}

.bw-magic-link .bw-magic-minimal:hover:after {
    opacity: 1;
    visibility: visible;
}


/* Anchor */

.bw-magic-link .bw-magic-anchor {
    position: relative;
    display: inline-block;
    padding: 0 14px 0 0;
    margin: 0 0 0 0;
    color: rgba(0, 0, 0, .8);
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 1px;
    transition: all .5s ease;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
}

.bw-magic-link .bw-magic-anchor:hover {
    padding: 0 0 0 0;
    margin: 0 0 0 0;
}

.bw-magic-link .bw-magic-anchor:before,
.bw-magic-link .bw-magic-anchor:after {
    content: '';
    display: inline-block;
    width: 10px;
    height: 1px;
    background: currentColor;
    position: absolute;
    right: 3px;
    top: calc(50% - 0px);
    opacity: 0;
    transform-origin: right center;
    transition: all .5s ease;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
}

.bw-magic-link .bw-magic-anchor:hover:after,
.bw-magic-link .bw-magic-anchor:hover:before {
    transform-origin: right center;
    opacity: 1;
    right: -21px;
}

.bw-magic-link .bw-magic-anchor:hover:after {
    transform: rotate(-25deg);
    -webkit-transform: rotate(-25deg);
    -moz-transform: rotate(-25deg);
    -ms-transform: rotate(-25deg);
    -o-transform: rotate(-25deg);
}

.bw-magic-link .bw-magic-anchor:hover:before {
    transform: rotate(25deg);
    -webkit-transform: rotate(25deg);
    -moz-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    -o-transform: rotate(25deg);
}


/* Wheel */

.bw-magic-link .bw-magic-wheel {
    position: relative;
    display: inline-block;
    width: 25.6em;
    height: 6.3em;
    overflow: hidden;
    vertical-align: middle;
    text-align: left;
    text-decoration: none;
    line-height: 3em;
    font-size: 1rem;
    cursor: pointer;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transition: transform 0.5s;
    -webkit-transition: transform 0.5s;
    -moz-transition: transform 0.5s;
    -ms-transition: transform 0.5s;
    -o-transition: transform 0.5s;
    transition: -webkit-transform 0.5s;
    -webkit-transition: -webkit-transform 0.5s;
    -moz-transition: -webkit-transform 0.5s;
    -ms-transition: -webkit-transform 0.5s;
    -o-transition: -webkit-transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
    -webkit-transition: transform 0.5s, -webkit-transform 0.5s;
    -moz-transition: transform 0.5s, -webkit-transform 0.5s;
    -ms-transition: transform 0.5s, -webkit-transform 0.5s;
    -o-transition: transform 0.5s, -webkit-transform 0.5s;
}

.bw-magic-link .bw-magic-wheel svg {
    z-index: 1;
    position: absolute;
    top: 10px;
    left: -30px;
    width: auto;
    height: auto;
}

.bw-magic-link .bw-magic-wheel svg g line,
.bw-magic-link .bw-magic-wheel svg g polyline,
.bw-magic-link .bw-magic-wheel svg g circle {
    fill: none;
    stroke: #000;
}

.bw-magic-link .bw-magic-wheel svg g line,
.bw-magic-link .bw-magic-wheel svg g polyline {
    stroke-miterlimit: 10;
}

.bw-magic-link .bw-magic-wheel svg g circle {
    display: block;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 0.066em;
    stroke-dasharray: 200;
    stroke-dashoffset: 0;
    transition: stroke-dashoffset ease-out 0.5s;
    -webkit-transition: stroke-dashoffset ease-out 0.5s;
    -moz-transition: stroke-dashoffset ease-out 0.5s;
    -ms-transition: stroke-dashoffset ease-out 0.5s;
    -o-transition: stroke-dashoffset ease-out 0.5s;
}

.bw-magic-link .bw-magic-wheel span {
    position: relative;
    display: inline-block;
    padding: 0 14px 0 0;
    margin: 10px 0 0 0;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.4;
    z-index: 999;
    transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
}

.bw-magic-link .bw-magic-wheel:hover span {
    color: #000;
}

.bw-magic-link .bw-magic-wheel:hover {
    transform: translateZ(0) translateX(0.5em);
    -webkit-transform: translateZ(0) translateX(0.5em);
    -moz-transform: translateZ(0) translateX(0.5em);
    -ms-transform: translateZ(0) translateX(0.5em);
    -o-transform: translateZ(0) translateX(0.5em);
}

.bw-magic-link .bw-magic-wheel:hover svg g circle {
    stroke-dashoffset: 200;
}


/**
 * Black Dropcap
 */

.bw-dropcap-wrap {
    transition: all ease 0.3s;
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
    -ms-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
}

.bw-dropcap-wrap .bw-dropcap::first-letter {
    float: left;
    margin-right: 0.25em;
    color: #222;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 5em;
}


/**
 * Black Social Networks
 */

.bw-social-links {
    width: 100%;
}


/* Social Networks - Type 1 */

.bw-social-links.bw-t1 .bw-social-box .bw-social {
    width: 250px;
    height: 260px;
    background: transparent;
    border: 6px solid #000;
    padding: 60px 40px;
    margin: 0 20px;
    display: inline-block;
    text-align: center;
    color: #000;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-social-links.bw-t1 .bw-social-box .bw-social i {
    font-size: 26px;
    line-height: 30px;
    display: block;
}

.bw-social-links.bw-t1 .bw-social-box .bw-social .bw-social-name {
    display: block;
    margin: 16px 0 47px;
    font-size: 30px;
    font-weight: 600;
}

.bw-social-links.bw-t1 .bw-social-box .bw-social .bw-follow-text {
    color: #000;
    text-decoration: none;
    display: inline-block;
    vertical-align: top;
    padding: 0 4px 7px;
    text-decoration: none;
    color: #000;
    position: relative;
    font-weight: 400;
    transition: opacity .3s ease-in-out;
    -webkit-transition: opacity .3s ease-in-out;
    -moz-transition: opacity .3s ease-in-out;
    -ms-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
}

.bw-social-links.bw-t1 .bw-social-box .bw-social .bw-follow-text:after {
    background-color: #000;
    position: absolute;
    bottom: 0;
    content: "";
    height: 2px;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transition: width .3s ease-in-out, background-color .3s ease-in-out;
    -webkit-transition: width .3s ease-in-out, background-color .3s ease-in-out;
    -moz-transition: width .3s ease-in-out, background-color .3s ease-in-out;
    -ms-transition: width .3s ease-in-out, background-color .3s ease-in-out;
    -o-transition: width .3s ease-in-out, background-color .3s ease-in-out;
}

.bw-social-links.bw-t1 .bw-social-box .bw-social:hover .bw-follow-text:after {
    width: 0%;
}


/* Social Networks - Type 2 */

.bw-social-links.bw-t2 .bw-social-box .bw-social {
    width: 95px;
    height: 95px;
    background: transparent;
    border: 1px solid #000;
    margin: 0 4px;
    display: inline-block;
    line-height: 103px;
    text-align: center;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-social-links.bw-t2 .bw-social-box .bw-social:hover {
    background: #000;
}

.bw-social-links.bw-t2 .bw-social-box .bw-social i {
    color: #000;
    font-size: 32px;
    line-height: 32px;
}

.bw-social-links.bw-t2 .bw-social-box .bw-social:hover i {
    color: #fff;
}


/* Social Networks - Type 3 */

.bw-social-links.bw-t3 .bw-social-box .bw-social {
    width: 95px;
    height: 95px;
    background: #000;
    border: 1px solid #000;
    margin: 0 4px;
    display: inline-block;
    line-height: 103px;
    text-align: center;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-social-links.bw-t3 .bw-social-box .bw-social:hover {
    background: #fff;
    border-color: #fff;
}

.bw-social-links.bw-t3 .bw-social-box .bw-social i {
    color: #fff;
    font-size: 32px;
    line-height: 32px;
}

.bw-social-links.bw-t3 .bw-social-box .bw-social:hover i {
    color: #000;
}


/* Social Networks - Type 4 */

.bw-social-links.bw-t4 .bw-social-box .bw-social {
    width: 44px;
    height: 44px;
    background: #000;
    margin: 0 6px;
    display: inline-block;
    line-height: 47px;
    text-align: center;
    box-shadow: 0px 10px 25px 0px rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-social-links.bw-t4 .bw-social-box .bw-social:hover {
    background: #fff;
    background-color: #000;
    background-image: linear-gradient(90deg, #000 0%, #111 50%, #222 100%);
    box-shadow: 0px 10px 25px 0px rgba(0, 0, 0, 0.2);
}

.bw-social-links.bw-t4 .bw-social-box .bw-social i {
    color: #fff;
    font-size: 16px;
}

.bw-social-links.bw-t4 .bw-social-box .bw-social:hover i {
    color: #fff;
}


/* Social Networks - Type 5 */

.bw-social-links.bw-t5 .bw-social-box .bw-social {
    text-decoration: none;
    color: #000;
    margin: 0 16px;
    transition: opacity .3s ease-in-out;
    -webkit-transition: opacity .3s ease-in-out;
    -moz-transition: opacity .3s ease-in-out;
    -ms-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
}

.bw-social-links.bw-t5 .bw-social-box .bw-social i {
    color: #000;
    font-size: 21px;
    line-height: 32px;
}


/* Social Networks - Type 6 */

.bw-social-links.bw-t6 .bw-social-box .bw-social {
    text-decoration: underline;
    color: #000;
    margin: 0 16px;
    color: #000;
    font-size: 26px;
    line-height: 32px;
    font-weight: 500;
    transition: opacity .3s ease-in-out;
    -webkit-transition: opacity .3s ease-in-out;
    -moz-transition: opacity .3s ease-in-out;
    -ms-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
}


/**
 * Black Icon Box Pro
 */

.bw-iconbox {
    position: relative;
    width: 100%;
    background: #fff;
    padding: 22px 28px;
    box-shadow: 0px 0px 30px -12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-iconbox:hover {
    box-shadow: 0px 0px 50px -20px rgba(0, 0, 0, 0.3);
    z-index: 9;
}

.bw-iconbox.bw-box-left {
    text-align: left;
}

.bw-iconbox.bw-box-center {
    text-align: center;
}

.bw-iconbox.bw-box-right {
    text-align: right;
}

.bw-iconbox h1,
.bw-iconbox h2,
.bw-iconbox h3,
.bw-iconbox h4,
.bw-iconbox h5,
.bw-iconbox h6 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

.bw-iconbox p {
    margin: 12px 0 24px 0;
    font-size: 14px;
}

.bw-iconbox .bw-iconbox-icon i {
    font-size: 46px;
}

.bw-iconbox .bw-btn {
    font-size: 14px;
    margin: 12px 0;
    padding-left: 0;
    display: block;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-iconbox .bw-btn:hover {
    color: #000;
}

.bw-iconbox .left {
    text-align: left;
}

.bw-iconbox .center {
    text-align: center;
}

.bw-iconbox .right {
    text-align: right;
}

.bw-iconbox img,
.bw-iconbox svg,
.bw-iconbox .bw-iconbox-icon i {
    margin-bottom: 20px;

}





/* Position 1 */

.bw-position-1 i {
    margin: 0;
}


/* Position 2 */

.bw-iconbox.bw-position-2 {
    z-index: 3;
    text-align: center;
    box-shadow: unset;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
}

.bw-iconbox.bw-position-2:hover {
    box-shadow: 0 22px 40px -22px rgba(0, 0, 0, 0.3);
    z-index: 4;
    transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
}

.bw-iconbox.bw-position-2 .bw-iconbox-icon {
    padding: 24px 0;
    width: 100%;
    height: auto;
}

.bw-iconbox.bw-position-2 i {
    margin: 0;
}

.bw-iconbox.bw-position-2 .bw-it-is-title {
    font-size: 28px;
    letter-spacing: -1px;
    text-transform: capitalize;
    margin: 0 0 7px 0;
}

.bw-iconbox.bw-position-2 .bw-it-is-subtitle {
    font-size: 12px;
    letter-spacing: 2px;
    font-weight: 300;
    color: #999;
}

.bw-iconbox.bw-position-2 p {
    font-size: 15px;
    color: #999;
    font-weight: 500;
    line-height: 21px;
    margin: 0 0 24px 0;
}


/* Position 3 & Position 4 */

.bw-iconbox.bw-position-3 {
    padding: 22px 14px;
    display: table;
    width: 100%;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}

.bw-iconbox.bw-position-3 .bw-image-wrap,
.bw-iconbox.bw-position-3 .bw-content-wrap {
    float: left;
}

.bw-iconbox.bw-position-3 .bw-image-wrap {
    width: 20%;
}

.bw-iconbox.bw-position-3 .bw-content-wrap {
    width: 80%;
    padding-left: 18px;
}

.bw-iconbox.bw-position-4 {
    padding: 22px 12px;
    display: flex;
    width: 100%;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}

.bw-iconbox.bw-position-4 .bw-image-wrap,
.bw-iconbox.bw-position-4 .bw-content-wrap {
    float: left;
}

.bw-iconbox.bw-position-4 .bw-image-wrap {
    display: flex;
    width: 25%;
    align-items: center;
    justify-content: center;
    padding-right: 14px;
}

.bw-iconbox.bw-position-4 .bw-content-wrap {
    width: 75%;
    padding-left: 14px;
    border-left: 2px solid #D2D2D2;
}

.bw-iconbox.bw-position-4 .bw-content-wrap .bw-it-is-title,
.bw-iconbox.bw-position-3 .bw-content-wrap .bw-it-is-title {
    font-size: 11px;
    letter-spacing: 1px;
}

.bw-iconbox.bw-position-4 .bw-content-wrap .bw-it-is-subtitle,
.bw-iconbox.bw-position-3 .bw-content-wrap .bw-it-is-subtitle {
    font-size: 24px;
    letter-spacing: -1px;
    text-transform: unset;
    font-weight: 900;
    margin: 5px 0 0 0;
}

.bw-iconbox.bw-position-4 .bw-content-wrap p,
.bw-iconbox.bw-position-3 .bw-content-wrap p {
    font-size: 14px;
    margin: 14px 0;
}

.bw-iconbox.bw-position-4 .bw-content-wrap a,
.bw-iconbox.bw-position-3 .bw-content-wrap a {
    padding: 0 0 0 0;
    position: relative;
    margin: 0;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: -1px;
}

.bw-iconbox.bw-position-4 .bw-content-wrap a:before,
.bw-iconbox.bw-position-3 .bw-content-wrap a:before {
    position: absolute;
    content: '';
    width: 0;
    height: 2px;
    background: #000;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-iconbox.bw-position-4 .bw-content-wrap a:hover,
.bw-iconbox.bw-position-3 .bw-content-wrap a:hover {
    padding-left: 18px;
}

.bw-iconbox.bw-position-4 .bw-content-wrap a:hover:before,
.bw-iconbox.bw-position-3 .bw-content-wrap a:hover:before {
    width: 12px;
}


/* Position 5 & Position 6 */

.bw-iconbox.bw-position-5 {
    border-radius: 0;
    border-left: 7px solid #000;
    padding: 22px 28px 22px 12px;
    box-shadow: unset;
}

.bw-iconbox.bw-position-6 {
    padding: 22px 20px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}

.bw-iconbox.bw-position-5 .bw-wrapper,
.bw-iconbox.bw-position-6 .bw-wrapper {
    display: flex;
    margin-bottom: 22px;
}

.bw-iconbox.bw-position-5 .bw-wrapper .bw-iconbox-icon,
.bw-iconbox.bw-position-6 .bw-wrapper .bw-iconbox-icon {
    margin: 0 12px 0 0;
}

.bw-iconbox.bw-position-5 .bw-wrapper .bw-iconbox-icon i,
.bw-iconbox.bw-position-6 .bw-wrapper .bw-iconbox-icon i {
    font-size: 44px;
    margin-bottom: 0;
}

.bw-iconbox.bw-position-5 .bw-wrapper .bw-it-is-title,
.bw-iconbox.bw-position-6 .bw-wrapper .bw-it-is-title {
    font-size: 13px;
    font-weight: 300;
    margin: 0 0 5px 0;
}

.bw-iconbox.bw-position-5 .bw-wrapper .bw-it-is-subtitle,
.bw-iconbox.bw-position-6 .bw-wrapper .bw-it-is-subtitle {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: -1px;
}

.bw-iconbox.bw-iconbox-svg-animate .bw-iconbox-icon path,
.bw-iconbox.bw-iconbox-svg-animate .bw-iconbox-icon {
    transition: all .38s ease;
    -webkit-transition: all .38s ease;
    -moz-transition: all .38s ease;
    -ms-transition: all .38s ease;
    -o-transition: all .38s ease;
}

.bw-iconbox.bw-iconbox-svg-animate .bw-iconbox-icon path {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    /* opacity: 0; */
}

.bw-iconbox.bw-iconbox-svg-animate .bw-iconbox-icon {
    background-image: none !important;
}

@keyframes bwxanimate {
    100% {
        stroke-dashoffset: 0;
    }
}

.bw-iconbox.bw-iconbox-svg-animate.run .bw-iconbox-icon path {
    opacity: 1;
    /* beginning of L */
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
    /* animation: bw-animated 3s linear forwards 1s; */
    animation: bwxanimate 6s cubic-bezier(.65, 0, .35, 1) forwards;
}


/* right positioning */
.bw-box-right.bw-position-3,
.bw-box-right.bw-position-4 {
    direction: rtl;
    text-align: right;
}

.bw-box-right.bw-position-3 .bw-image-wrap,
.bw-box-right.bw-position-4 .bw-image-wrap {
    float: right;
}

.bw-box-right.bw-position-3 .bw-content-wrap,
.bw-box-right.bw-position-4 .bw-content-wrap {
    float: left;
    padding-left: 0;
    padding-right: 18px;
}

.bw-box-right.bw-position-4 .bw-content-wrap {
    border-left: 0;
    border-right: 2px solid #D2D2D2;
}

.bw-box-right.bw-position-3 .bw-content-wrap a:hover,
.bw-box-right.bw-position-4 .bw-content-wrap a:hover {
    padding-left: 0;
    padding-right: 18px;
}

.bw-box-right.bw-position-3 .bw-content-wrap a:before,
.bw-box-right.bw-position-4 .bw-content-wrap a:before {
    right: 0;
    left: auto;
}

.bw-box-right.bw-position-5 .bw-wrapper,
.bw-box-right.bw-position-6 .bw-wrapper {
    flex-direction: row-reverse;
}

.bw-box-right.bw-position-5{
    border-left: 0px;
    border-right: 7px solid #000;
}

.bw-box-right.bw-position-5 .bw-wrapper .bw-iconbox-icon,
.bw-box-right.bw-position-6 .bw-wrapper .bw-iconbox-icon {
    margin: 0 0 0 12px;
}

.bw-box-right.bw-position-5 .bw-wrapper .bw-typography-wrapper,
.bw-box-right.bw-position-6 .bw-wrapper .bw-typography-wrapper {
    float: left;
}

.bw-position-5 .bw-wrapper .bw-iconbox-img,
.bw-position-6 .bw-wrapper .bw-iconbox-img {
    margin: 0 12px;
}


/**
 * Black Call To Action - CTA
 */

.bw-cta {
    background: #000;
    color: #fff;
    width: auto;
    padding: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    box-shadow: 0px 20px 25px 0px rgba(0, 0, 0, 0.1);
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}


.bw-cta .bw-cta-title {
    font-size: 44px;
    margin: 0 0 34px 0;
    font-weight: 700;
    letter-spacing: -0.06em;
}

.bw-cta .bw-cta-subtitle {
    font-size: 23px;
    margin: 0;
    font-weight: 500;
}

.bw-cta .bw-cta-button {
    transform: scale(0.9, 0.9);
    -webkit-transform: scale(0.9, 0.9);
    -moz-transform: scale(0.9, 0.9);
    -ms-transform: scale(0.9, 0.9);
    -o-transform: scale(0.9, 0.9);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.bw-cta .bw-cta-button:hover {
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    -moz-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -o-transform: scale(1, 1);
}

.bw-cta .bw-cta-button a {
    display: block;
    color: #000;
    background: #fff;
    padding: 16px 38px 16px 28px;
    font-size: 14px;
    letter-spacing: 1px;
    text-transform: uppercase;
    position: relative;
    margin: 20px;
    font-weight: 800;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}

.bw-cta .bw-cta-button a i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 24px;
    opacity: 0;
    transition: all 0.3s ease;
}

.bw-cta .bw-cta-button a:hover i {
    right: 14px;
    opacity: 1;
}

@media(max-width: 780px) {
    .bw-cta {
        flex-direction: column;
        align-content: center;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 50px 25px;
    }
    .bw-cta .bw-cta-button a {
        padding: 8px 14px;
        font-size: 12px;
        margin: 14px 10px;
        display: block;
    }
}


/**
 * Black Blockquote
 */

.bw-blockquote {
    background: #fff;
    padding: 30px 25px 30px 25px;
    box-shadow: 0 7px 80px -24px rgba(0, 0, 0, 0.2);
    display: flex;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

.bw-blockquote .bw-icon-into {
    width: 25%;
    padding-right: 12px;
}

.bw-blockquote .bw-icon-into i {
    font-size: 60px;
    color: #000;
}

.bw-blockquote .bw-icon-into img,
.bw-blockquote .bw-icon-into svg {
    max-width: 60px;
    max-height: 60px;
    display: block;
    margin-top: -9px;
    width: -webkit-fill-available;
}

.bw-blockquote .bw-icon-into img {
    margin: 0;
}

.bw-blockquote .content {
    width: 75%;
    padding-left: 20px;
    border-left: 4px solid;
}

.bw-blockquote .content .bw-description {
    color: #000;
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 28px;
    letter-spacing: 0.014em;
    line-height: 30px;
    margin-top: -8px;
}

.bw-blockquote .content .bw-name {
    color: #000;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: -0.014em;
    margin: 0 0 -8px 0;
}

@media(max-width: 780px) {
    .bw-blockquote {
        padding: 25px 20px;
    }
    .bw-blockquote .bw-icon-into {
        width: 30%;
    }
    .bw-blockquote .content {
        width: 70%;
    }
    .bw-blockquote .content .bw-description {
        font-size: 14px;
        line-height: 24px;
    }
}

.bw-blockquote-right {
    display: flex;
    flex-direction: row-reverse;
}

.bw-blockquote-right .bw-icon-into {
    padding-right: 0;
    padding-left: 12px;
}

.bw-blockquote-right .content {
    padding-left: 0;
    padding-right: 20px;
    border-left: 0 solid;
    border-right: 4px solid;
    text-align: right;
}

.bw-blockquote-right .bw-icon-into img,
.bw-blockquote-right .bw-icon-into svg {
    float: right;
}

/**
 * Black Typography
 */

.bw-typograpgy {
    position: relative;
    display: block;
    word-break: keep-all;
}

.bw-typograpgy-main-title {
    word-break: keep-all !important;
}

.bw-typograpgy.left {
    text-align: left;
}

.bw-typograpgy.center {
    text-align: center;
}

.bw-typograpgy.right {
    text-align: right;
}

.bw-typograpgy.bw-t-1.left,
.bw-typograpgy.bw-t-2.left,
.bw-typograpgy.bw-t-1.center,
.bw-typograpgy.bw-t-2.center,
.bw-typograpgy.bw-t-1.right,
.bw-typograpgy.bw-t-2.right {
    display: flex;
}

.bw-typograpgy.bw-t-1.left,
.bw-typograpgy.bw-t-2.left {
    justify-content: flex-start;
}

.bw-typograpgy.bw-t-1.center,
.bw-typograpgy.bw-t-2.center {
    justify-content: center;
}

.bw-typograpgy.bw-t-1.right,
.bw-typograpgy.bw-t-2.right {
    justify-content: flex-end;
}

.bw-t-1 .bw-typograpgy-main-title.bw-block {
    writing-mode: vertical-lr;
    text-orientation: mixed;
    white-space: nowrap;
}

.bw-typograpgy-animate .bw-char {
    text-transform: none;
}

.bw-typograpgy-animate span.char {
    display: inline-block;
    white-space: break-spaces;
}

.bw-typograpgy-animate .char-wrap {
    display: inline-block;
    position: relative;
    overflow: hidden;
}


/* Simple Style */
.bw-typograpgy-wrap {
    word-break: break-all;
}

.bw-typograpgy.bw-t-1 {
    position: relative;
    display: block;
}

.bw-typograpgy.bw-t-1 .bw-typograpgy-main-title {
    display: block;
}

.bw-typograpgy-wrap em {
    position: relative;
}

.bw-typograpgy-wrap em .bw-code-em {
    position: absolute;
    top: auto;
    bottom: -50%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transition: all .38s ease;
    -webkit-transition: all .38s ease;
    -moz-transition: all .38s ease;
    -ms-transition: all .38s ease;
    -o-transition: all .38s ease;
    width: 100%;
    height: auto;
}

.bw-typograpgy-wrap em .bw-code-em svg {
    width: 100%;
    height: auto;
}

.bw-typograpgy-wrap em .bw-code-em path {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    opacity: 0;
}

@keyframes bwsvg {
    0% {
        stroke-dashoffset: 1;
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        stroke-dashoffset: 0;
    }
}

.bw-typograpgy-wrap em {
    background-image: none!important;
}

@keyframes bw-animated {
    100% {
        /* creates the drawing effect */
        stroke-dashoffset: 0;
    }
}

.bw-typograpgy-wrap em .bw-code-em.run path {
    opacity: 1;
    /* beginning of L */
    stroke-dasharray: 10000;
    stroke-dashoffset: 10000;
    /* animation: bw-animated 3s linear forwards 1s; */
    animation: bw-animated 3.7s cubic-bezier(.65, 0, .35, 1) forwards;
}


/* With Shape */

.bw-typograpgy.bw-t-2 {
    width: 100%;
}


/* .bw-typograpgy.bw-t-2.left.custom-style {
    float: left;
    width: fit-content;
    min-height: 20px;
    margin: 0;
    display: block;
}

.bw-typograpgy.bw-t-2.right.custom-style {
    float: left;
    width: fit-content;
    min-height: 20px;
    margin: 0;
    display: block;
} */

.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.style-x-1,
.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.style-x-2,
.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.style-x-3 {
    width: fit-content;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.style-x-4,
.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.style-x-5,
.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.style-x-6 {
    width: fit-content;
    margin: 0 auto;
    display: block;
}

.bw-typograpgy.bw-t-2 .line-1,
.bw-typograpgy.bw-t-2 .line-2 {
    width: 46px;
    height: 2px;
    background: #000;
    display: block;
    margin: 7px auto;
}

.bw-typograpgy.bw-t-2 .bw-bw-t-2-text {
    margin: 7px;
}


/* Custom Style */

.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.custom-style {
    width: fit-content;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
}

.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.custom-style .top-bottom {
    min-width: 100%;
    width: 100% !important;
    display: block !important;
    max-width: 100%;
}

.bw-typograpgy.bw-t-2 .bw-typograpgy-with-title.custom-style .bw-bw-t-2-text {
    margin: auto;
}

.bw-typograpgy .bw-left-top div,
.bw-typograpgy .bw-right-bottom div,
.bw-typograpgy .bw-left-top,
.bw-typograpgy .bw-right-bottom {
    line-height: 0;
}

.bw-typograpgy .bw-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}


/* Vertical Title */

.bw-typograpgy-wrap .bw-wrapper-unset,
.bw-typograpgy-wrap .bw-unset {
    display: unset !important;
}

.bw-typograpgy-wrap .bw-wrapper-block,
.bw-typograpgy-wrap .bw-block {
    display: block !important;
}

.bw-typography-this-title {
    word-break: break-word;
}

.bw-typograpgy-wrap .bw-wrapper-unset .bw-typograpgy-repetitive.bw-typography-this-title,
.bw-typograpgy-wrap .bw-wrapper-block .bw-typograpgy-repetitive.bw-typography-this-title {
    display: unset !important;
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-1,
.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-2,
.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-3,
.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-4,
.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-5,
.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-6,
.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-7,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-1,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-2,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-3,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-4,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-5,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-6,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-7,
.bw-typograpgy-wrap .bw-rotation-1 .bw-typography-this-title,
.bw-typograpgy-wrap .bw-rotation-2 .bw-typography-this-title,
.bw-typograpgy-wrap .bw-rotation-3 .bw-typography-this-title,
.bw-typograpgy-wrap .bw-rotation-4 .bw-typography-this-title,
.bw-typograpgy-wrap .bw-rotation-6 .bw-typography-this-title,
.bw-typograpgy-wrap .bw-rotation-7 .bw-typography-this-title {
    writing-mode: vertical-lr;
    text-orientation: mixed;
    white-space: nowrap;
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-1,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-1,
.bw-typograpgy-wrap .bw-rotation-1 .bw-typography-this-title {
    transform: rotate( -180deg);
    -webkit-transform: rotate( -180deg);
    -moz-transform: rotate( -180deg);
    -ms-transform: rotate( -180deg);
    -o-transform: rotate( -180deg);
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-2,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-2,
.bw-typograpgy-wrap .bw-rotation-2 .bw-typography-this-title {
    transform: rotate( -90deg);
    -webkit-transform: rotate( -90deg);
    -moz-transform: rotate( -90deg);
    -ms-transform: rotate( -90deg);
    -o-transform: rotate( -90deg);
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-3,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-3,
.bw-typograpgy-wrap .bw-rotation-3 .bw-typography-this-title {
    transform: rotate( -45deg);
    -webkit-transform: rotate( -45deg);
    -moz-transform: rotate( -45deg);
    -ms-transform: rotate( -45deg);
    -o-transform: rotate( -45deg);
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-4,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-4,
.bw-typograpgy-wrap .bw-rotation-4 .bw-typography-this-title {
    transform: rotate( 0deg);
    -webkit-transform: rotate( 0deg);
    -moz-transform: rotate( 0deg);
    -ms-transform: rotate( 0deg);
    -o-transform: rotate( 0deg);
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-5,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-5,
.bw-typograpgy-wrap .bw-rotation-5 .bw-typography-this-title {
    transform: rotate( 45deg);
    -webkit-transform: rotate( 45deg);
    -moz-transform: rotate( 45deg);
    -ms-transform: rotate( 45deg);
    -o-transform: rotate( 45deg);
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-6,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-6,
.bw-typograpgy-wrap .bw-rotation-6 .bw-typography-this-title {
    transform: rotate( 90deg);
    -webkit-transform: rotate( 90deg);
    -moz-transform: rotate( 90deg);
    -ms-transform: rotate( 90deg);
    -o-transform: rotate( 90deg);
}

.bw-typograpgy-wrap .bw-typograpgy-main-title.bw-rotation-7,
.bw-typograpgy-wrap .bw-typograpgy-animate.bw-rotation-7,
.bw-typograpgy-wrap .bw-rotation-7 .bw-typography-this-title {
    transform: rotate( 180deg);
    -webkit-transform: rotate( 180deg);
    -moz-transform: rotate( 180deg);
    -ms-transform: rotate( 180deg);
    -o-transform: rotate( 180deg);
}


/* Gradient */

.bw-typograpgy.bw-gradient .bw-typography-this-title,
.bw-typograpgy.bw-gradient .bw-typograpgy-main-title {
    -webkit-text-fill-color: transparent !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    word-break: keep-all !important;
}


/**
 * Black Loop
 */


/**
 * Black Box
 */

.bw-hover-box {
    position: relative;
    display: block;
    width: 100%;
}

.bw-hover-box.bw-style-1 .bw-featured-image {
    margin-bottom: 24px;
    overflow: hidden;
}

.bw-hover-box .bw-featured-image,
.bw-hover-box:hover .bw-featured-image {
    transition: all .38s ease;
    -webkit-transition: all .38s ease;
    -moz-transition: all .38s ease;
    -ms-transition: all .38s ease;
    -o-transition: all .38s ease;
}

.bw-hover-box.bw-style-1 .bw-title {
    font-weight: 500;
    color: #353640;
    font-size: 28px;
    line-height: 36px;
    margin-bottom: 4px;
    padding: 0;
}

.bw-hover-box.bw-style-1 .bw-description {
    color: #62636b;
    font-weight: 500;
    font-size: 16px;
    padding: 0;
}

.bw-hover-box .bw-hover-1 img {
    transform: scale(1.06, 1.06);
    -webkit-transform: scale(1.06, 1.06);
    -moz-transform: scale(1.06, 1.06);
    -ms-transform: scale(1.06, 1.06);
    -o-transform: scale(1.06, 1.06);
    transition: transform .38s ease;
    -webkit-transition: transform .38s ease;
    -moz-transition: transform .38s ease;
    -ms-transition: transform .38s ease;
    -o-transition: transform .38s ease;
}

.bw-hover-box:hover .bw-hover-1 img {
    transform: scale(1.22, 1.22);
    -webkit-transform: scale(1.22, 1.22);
    -moz-transform: scale(1.22, 1.22);
    -ms-transform: scale(1.22, 1.22);
    -o-transform: scale(1.22, 1.22);
}


/* Our Work */

.bw-hover-box.bw-style-2 {
    position: relative;
    margin: 0;
    overflow: hidden;
    border-radius: 4px !important;
    -webkit-border-radius: 4px !important;
    -moz-border-radius: 4px !important;
    -ms-border-radius: 4px !important;
    -o-border-radius: 4px !important;
}

.bw-hover-box.bw-style-2 a {
    display: block;
    font-size: 0;
    line-height: 0;
    overflow: hidden;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
}

.bw-hover-box.bw-style-2 .bw-hero {
    position: relative;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    -moz-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -o-transform: scale(1, 1);
    transition: all 0.34s cubic-bezier(0.37, 0.76, 0.59, 0.66);
    -webkit-transition: all 0.34s cubic-bezier(0.37, 0.76, 0.59, 0.66);
    -moz-transition: all 0.34s cubic-bezier(0.37, 0.76, 0.59, 0.66);
    -ms-transition: all 0.34s cubic-bezier(0.37, 0.76, 0.59, 0.66);
    -o-transition: all 0.34s cubic-bezier(0.37, 0.76, 0.59, 0.66);
}

.bw-hover-box.bw-style-2:hover .bw-hero {
    transform: scale(1.14, 1.14);
    -webkit-transform: scale(1.14, 1.14);
    -moz-transform: scale(1.14, 1.14);
    -ms-transform: scale(1.14, 1.14);
    -o-transform: scale(1.14, 1.14);
}

.bw-hover-box.bw-style-2 a {
    position: relative;
}

.bw-hover-box.bw-style-2 a:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(7 25 163 / 0%);
    width: 100%;
    height: 100%;
    z-index: 1;
    transform: scale(1.14, 1.14);
    -webkit-transform: scale(1.14, 1.14);
    -moz-transform: scale(1.14, 1.14);
    -ms-transform: scale(1.14, 1.14);
    -o-transform: scale(1.14, 1.14);
    transition: all 0.24s ease-in-out;
    -webkit-transition: all 0.24s ease-in-out;
    -moz-transition: all 0.24s ease-in-out;
    -ms-transition: all 0.24s ease-in-out;
    -o-transition: all 0.24s ease-in-out;
}

.bw-hover-box.bw-style-2 a:hover:after {
    background: rgba(0 0 0 / 90%);
}

.bw-hover-box.bw-style-2 .bw-title-box {
    width: 100%;
    height: 100px;
    text-align: center;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    overflow: hidden;
    z-index: 9999;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.bw-hover-box.bw-style-2 .bw-title-box .bw-typography {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    padding-top: 150px;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
}

.bw-hover-box.bw-style-2:hover .bw-title-box .bw-typography {
    padding-top: 0;
}

.bw-hover-box.bw-style-2 .bw-typography .bw-title {
    font-weight: 500;
    color: #fff;
    font-size: 28px;
    line-height: 36px;
    margin-bottom: 4px;
    padding: 0;
    letter-spacing: 0;
}

.bw-hover-box.bw-style-2 .bw-typography .bw-description {
    color: #fff;
    font-weight: 500;
    font-size: 14px;
    padding: 0;
    letter-spacing: 0;
}


/* Scroll Triggle Example */

.bw-gsap-code-box .bw-eg {
    transform-style: preserve-3d;
    opacity: 1;
    visibility: inherit;
    transform: translate(0px, 25px) rotate(3deg) skew(26deg, -42deg) scale(1, 0);
    color: #000;
    line-height: 150px;
}

.bw-boxer {
    position: relative;
}

.bw-bx {
    min-width: 200px;
    width: 100%;
    margin: auto;
    height: 100%;
    background: #E4E4FA;
    will-change: transform;
    position: absolute;
    z-index: -1;
}

.bw-boxer img {
    padding: 10px;
}

.start-point {
    transform-style: preserve-3d;
    opacity: 1;
    will-change: transform;
    transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    -webkit-transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    -moz-transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    -ms-transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    -o-transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
}

.bw-horizontal-section {
    width: 100%;
    display: block;
    overflow-y: hidden;
}

.bw-section {
    display: flex;
    width: 100%;
}

.bw-section>.elementor {
    display: inline;
    min-width: 100%;
}


/**
 * Black Nav
 */

.bw-nav {
    display: block;
}

.bw-nav.style3.right,
.bw-nav.style0.right {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
}

.bw-nav.style1.right li a,
.bw-nav.style2.right a,
.bw-nav.style3.right a,
.bw-nav.style0.right a {
    text-align: right;
    display: inline-flex;
}

.bw-nav.style5.right a:hover,
.bw-nav.style4.right a:hover,
.bw-nav.style3.right a {
    padding: 0 14px 0 0;
}

.bw-nav.style4.right a:before,
.bw-nav.style3.right a:before {
    left: auto;
    right: 0;
}

.bw-nav.style3.right a:hover {
    padding: 0 20px 0 0;
}

.bw-nav.left {
    text-align: left;
}

.bw-nav.center {
    text-align: center;
}

.bw-nav.right {
    text-align: right;
}

.bw-nav ul,
.bw-nav ol {
    margin: 0;
}

.bw-nav a {
    display: block
}

.bw-nav.style0 a {
    padding: 0 0 2px 0;
    margin: 0 0 7px 0;
    width: fit-content;
    position: relative;
}

.bw-nav.style0 a:after {
    position: absolute;
    display: block;
    content: '';
    bottom: 0;
    left: 0;
    right: 0;
    top: calc(100% - 0);
    height: 2px;
    background: #000;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform-origin: bottom right;
    z-index: -1;
    transition: transform .23s ease;
    -webkit-transition: transform .23s ease;
    -moz-transition: transform .23s ease;
    -ms-transition: transform .23s ease;
    -o-transition: transform .23s ease;
}

.bw-nav.style0 a:hover:after {
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform-origin: bottom left;
}

.bw-nav.style0.center {
    display: flex;
    justify-content: center;
}

.bw-nav.style0.center .bw-menu-box a {
    margin: 0 auto 7px;
    background: none;
    position: relative;
}

.bw-nav.style1 li {
    margin: 0 0 15px 0;
}

.bw-nav.style1 li a {
    background-color: transparent;
    background-image: linear-gradient( 180deg, transparent 90%, #000 0);
    background-size: 0% 100%;
    background-repeat: no-repeat;
    text-decoration: unset;
    width: fit-content;
    transition: background-size 0.4s ease;
    -webkit-transition: background-size 0.4s ease;
    -moz-transition: background-size 0.4s ease;
    -ms-transition: background-size 0.4s ease;
    -o-transition: background-size 0.4s ease;
}

.bw-nav.style1 li:hover a,
.bw-nav.style1 li:focus a {
    text-decoration: none;
    background-size: 100% 100%;
}

.bw-nav.style1.center {
    display: flex;
    justify-content: center;
}

.bw-nav.style1.center .bw-menu-box a {
    margin: 0 auto;
    background: none;
    position: relative;
}

.bw-nav.style1.center a:before {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    background: #000;
    bottom: -3px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style1.center a:hover:before {
    width: 100%;
}

.bw-nav.style2 li {
    margin: 0 0 15px 0;
}

.bw-nav.style2 a {
    width: fit-content;
    padding: 0 0 2px 0;
    position: relative;
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style2 a:before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    width: 100%;
    height: 2px;
    background: #000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style2 a:hover:before {
    visibility: visible;
    opacity: 1;
    bottom: 0px;
}

.bw-nav.style2.center {
    display: flex;
    justify-content: center;
}

.bw-nav.style2.center .bw-menu-box a {
    margin: 0 auto 15px;
}

.bw-nav.style3 a {
    margin: 0 0 12px 0;
    padding: 0 0 0 14px;
    position: relative;
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style3 a:before {
    content: '●';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style3 a:hover {
    padding: 0 0 0 20px;
}

.bw-nav.style3.center a {
    padding: 0;
    margin: 0 0 10px 0;
}

.bw-nav.style3.center a:hover {
    padding: 0 0 0 0;
    margin: -5px 0 15px 0;
}

.bw-nav.style3.center a:before {
    top: auto;
    bottom: -15px;
    left: 50%;
    visibility: hidden;
    opacity: 0;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
}

.bw-nav.style3.center a:hover:before {
    visibility: visible;
    opacity: 1;
}

.bw-nav.style4 a {
    margin: 0 0 10px 0;
    padding: 0 0 0 0;
    position: relative;
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style4 a:before {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    background: #000;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    left: 0;
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style4 a:hover {
    padding: 0 0 0 16px;
}

.bw-nav.style4 a:hover:before {
    width: 12px;
}

.bw-nav.style4.center a {
    margin: 0 0 10px 0;
}

.bw-nav.style4.center a:hover {
    padding: 0 0 0 0;
    margin: -5px 0 15px 0;
}

.bw-nav.style4.center a:before {
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
}

.bw-nav.style5 a {
    margin: 0 0 10px 0;
    padding: 0 0 0 0;
    transition: all 0.23s ease;
    -webkit-transition: all 0.23s ease;
    -moz-transition: all 0.23s ease;
    -ms-transition: all 0.23s ease;
    -o-transition: all 0.23s ease;
}

.bw-nav.style5 a:hover {
    padding: 0 0 0 12px;
}

.bw-nav.style5.center a {
    margin: 0 0 10px 0;
}

.bw-nav.style5.center a:hover {
    padding: 0 0 0 0;
    margin: -5px 0 15px 0;
}

.bw-nav.style6 a {
    position: relative;
    line-height: 40px;
    margin: 0;
    transition: all 0.17s ease;
    -webkit-transition: all 0.17s ease;
    -moz-transition: all 0.17s ease;
    -ms-transition: all 0.17s ease;
    -o-transition: all 0.17s ease;
    background: transparent;
    padding: 10px 35px;
    z-index: 999;
}

.bw-nav.style6 a:before {
    content: '';
    position: absolute;
    transition: all 0.17s ease;
    -webkit-transition: all 0.17s ease;
    -moz-transition: all 0.17s ease;
    -ms-transition: all 0.17s ease;
    -o-transition: all 0.17s ease;
    background-image: none;
    background-size: cover;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
}

.bw-nav.style6 a:hover:before {
    background-image: url('../img/bg-btn.png');
    opacity: 1;
    visibility: visible;
}

.bw-nav.style6 a:hover {
    background: #1c1c1c;
    color: #fff;
}

.bw-nav.style8 ul li,
.bw-nav.style7 ul li {
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    align-items: center;
}

.bw-nav.style8.center ul li,
.bw-nav.style7.center ul li {
    justify-content: center;
    align-items: center;
}

.bw-nav.style8.right ul li,
.bw-nav.style7.right ul li {
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: center;
    direction: rtl;
}

.bw-nav.style8.right ul li i,
.bw-nav.style7.right ul li i {
    transform: rotate(180deg);
}

.bw-nav.style8 ul li i,
.bw-nav.style7 ul li i {
    vertical-align: middle;
}

.bw-nav.style7 ul li img,
.bw-nav.style8 ul li img {
    width: 24px;
}

.bw-nav.style7 ul li i,
.bw-nav.style7 ul li img,
.bw-nav.style7 ul li svg {
    padding-right: 7px;
}

.bw-nav.style8 ul li i,
.bw-nav.style8 ul li img,
.bw-nav.style8 ul li svg {
    padding-left: 7px;
}

.bw-nav.style9 a {
    text-decoration-color: transparent !important;
    -moz-text-decoration-color: transparent !important;
    text-decoration-style: solid !important;
    -moz-text-decoration-style: solid !important;
    text-decoration-line: underline !important;
    -moz-text-decoration-line: underline !important;
}

.bw-nav.style9 a:hover {
    color: #000;
    text-decoration-color: #000 !important;
    -moz-text-decoration-color: #000 !important;
}

.bw-nav a,
.bw-nav a i {
    transition: all 0.21s cubic-bezier(1, 0.45, 0.56, 0.7) !important;
    -webkit-transition: all 0.21s cubic-bezier(1, 0.45, 0.56, 0.7) !important;
    -moz-transition: all 0.21s cubic-bezier(1, 0.45, 0.56, 0.7) !important;
    -ms-transition: all 0.21s cubic-bezier(1, 0.45, 0.56, 0.7) !important;
    -o-transition: all 0.21s cubic-bezier(1, 0.45, 0.56, 0.7) !important;
}



/**
 * Black Sentence
 */
.bw-sentence {
    position: relative;
    overflow: visible;
}

.bw-sentence-absolut {
    position: absolute;
}

.bw-sentence h1 {
    font-size: 56px;
    text-transform: none;
}

.bw-sentence .bw-sentence-items {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    align-content: center;
}

/* .bw-sentence .bw-sentence-items span {
    margin: 0 5px;
} */


.bw-sentence .bw-sentence-items.bw-left {
    justify-content: start;
}

.bw-sentence .bw-sentence-items.bw-center {
    justify-content: center;
}

.bw-sentence .bw-sentence-items.bw-strech {
    justify-content: space-between;
}

.bw-sentence .bw-sentence-items.bw-right {
    justify-content: end;
}

.bw-sentence .bw-sentence-items span {
    margin: 0 5px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.bw-sentence .bw-t-2 {
    overflow: hidden;
}

.bw-sentence .bw-t-2 img {
    width: 220px;
}

.bw-sentence .bw-gradient {
    -webkit-text-fill-color: transparent !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
}






/* Parallax */
.bw-parallax {
    min-height: 400px;
    background: transparent;
}

/* .bw-parallax-x > .e-container{
    z-index: 9999999999;
} */



