
/* ----------------------------------------------------------------
        Bootstrap Adjustments
-----------------------------------------------------------------*/
html{
    overflow-x: hidden;
    background: #ffffff;
    --scrollbarBG: #CFD8DC;
    --thumbBG: #90A4AE;
}
body::-webkit-scrollbar {
    width: 11px;
}
body::-webkit-scrollbar-thumb {
    background-color: var(--thumbBG);
    border-radius: 6px;
    border: 3px solid var(--scrollbarBG);
}
body::-webkit-scrollbar-track {
    background: var(--scrollbarBG);
}
@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: auto;
    }
}

@media (min-width: 576px) {
    .card-columns {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1;
    }
    .card-columns.grid-2 {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
    .card-columns > * {
        display: inline-block;
        width: 100%;
    }
    .button span,i{
        font-size: 13px !important;
    }
}

.form-group {
    margin-bottom: 1rem;
}

/*// Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {
    .button{
        padding: 8px 8px 3px 8px !important;
    }
    .revo-slider-caps-text {
        font-size: 16px !important;

    }
    .revo-slider-emphasis-text {
        font-size: 58px;}
    .revo-slider-desc-text {
        font-size: 25px !important;
        line-height: 28px !important;
    }
    .ares.tparrows:before {

        font-size: 25px;}
    .ares.tparrows {
        min-width: 60px;
        min-height: 60px;}
}
@media (min-width: 1440px) {
    .button{
        padding: 8px 8px 3px 8px !important;
    }
    .revo-slider-caps-text {
        font-size: 16px !important;

    }
    .revo-slider-emphasis-text {
        font-size: 58px;}
    .revo-slider-desc-text {
        font-size: 28px !important;
        line-height: 31px !important;
    }
    .ares.tparrows:before {

        font-size: 25px;}
    .ares.tparrows {
        min-width: 60px;
        min-height: 60px;}

}



@media (max-width: 576px) {
    .button{
        padding: 8px 8px 3px 8px !important;
    }
    .revo-slider-caps-text {
        font-size: 12px !important;

    }
    .revo-slider-emphasis-text {
        font-size: 20px !important;
        line-height: 21px !important;
    }
    .revo-slider-desc-text {
        font-size: 14px !important;
        line-height: 17px !important;
    }
    .button span,i{
        font-size: 10px !important;
    }
    .btn-shop{
        margin-top: 22px!important;
    }
    .ares.tparrows:before {
        font-size: 14px !important;
        line-height: 40px !important;
    }
    .ares.tparrows {
        min-width: 30px!important;
        min-height: 30px!important;}
    .ares .tp-title-wrap {
        display: none !important;
    }
    .top-search-form input {

        padding: 10px 80px 10px 55px !important;}
    .top-search-open #top-search a i.icon-line-cross:nth-child(2) {

        position: static!important;
    }
}
.widget_nav_menu:not(.widget-li-noicon) li::before, .widget_links:not(.widget-li-noicon) li::before, .widget_meta:not(.widget-li-noicon) li::before, .widget_archive:not(.widget-li-noicon) li::before, .widget_recent_entries:not(.widget-li-noicon) li::before, .widget_categories:not(.widget-li-noicon) li::before, .widget_pages:not(.widget-li-noicon) li::before, .widget_rss:not(.widget-li-noicon) li::before, .widget_recent_comments:not(.widget-li-noicon) li::before {
    content: "\e7a5";
    font-family: 'font-icons';
    display: inline-block;
    position: relative;
    top: 1px;
    left: 0;
}
.widget_nav_menu ul, .widget_nav_menu li, .widget_links ul, .widget_links li, .widget_meta ul, .widget_meta li, .widget_archive ul, .widget_archive li, .widget_recent_comments ul, .widget_recent_comments li, .widget_recent_entries ul, .widget_recent_entries li, .widget_categories ul, .widget_categories li, .widget_pages ul, .widget_pages li, .widget_rss ul, .widget_rss li {
    list-style: none;
    margin: 0;
}
.widget_nav_menu li, .widget_links li, .widget_meta li, .widget_archive li, .widget_recent_comments li, .widget_recent_entries li, .widget_categories li, .widget_pages li, .widget_rss li {
    display: flex;
    padding: 4px 0;
    font-size: 15px;
}
.widget_nav_menu > ul, .widget_links > ul, .widget_meta > ul, .widget_archive > ul, .widget_recent_comments > ul, .widget_recent_entries > ul, .widget_categories > ul, .widget_pages > ul, .widget_rss > ul {
    margin-top: -4px !important;
}

.widget_nav_menu li a, .widget_links li a, .widget_meta li a, .widget_archive li a, .widget_recent_entries li a, .widget_categories li a, .widget_pages li a, .widget_rss li a, .widget_recent_comments li a {
    display: inline-block;
    padding: 0 3px 0 12px;
    border: none !important;
    color: #444;
}
/* ----------------------------------------------------------------
        Basic
-----------------------------------------------------------------*/

dl, dt, dd, ol, ul, li {
    margin: 0;
    padding: 0;
}

.clear {
    clear: both;
    display: block;
    font-size: 0px;
    height: 0px;
    line-height: 0;
    width: 100%;
    overflow:hidden;
}

::selection {
    background: #1ABC9C;
    color: #FFF;
    text-shadow: none;
}

::-moz-selection {
    background: #1ABC9C; /* Firefox */
    color: #FFF;
    text-shadow: none;
}

::-webkit-selection {
    background: #1ABC9C; /* Safari */
    color: #FFF;
    text-shadow: none;
}

:active,
:focus { outline: none !important; }


/* ----------------------------------------------------------------
        Typography
-----------------------------------------------------------------*/


body {
    line-height: 1.5;
    color: #555;
    font-family: 'Lato', sans-serif;
}

a {
    text-decoration: none !important;
    color: #1ABC9C;
}

a:hover { color: #222; }

a img { border: none; }

img { max-width: 100%; }

iframe {
    width: 100%;
    border: 0 !important;
    overflow: hidden !important;
}


/* ----------------------------------------------------------------
        Basic Layout Styles
-----------------------------------------------------------------*/


h1,
h2,
h3,
h4,
h5,
h6 {
    color: #444;
    font-weight: 600;
    line-height: 1.5;
    margin: 0 0 30px 0;
    font-family: 'Poppins', sans-serif;
}

h5,
h6 { margin-bottom: 20px; }

h1 { font-size: 36px; }

h2 { font-size: 30px; }

h3 { font-size: 1.5rem; }

h4 { font-size: 18px; }

h5 { font-size: 0.875rem; }

h6 { font-size: 12px; }

h4 { font-weight: 600; }

h5,
h6 { font-weight: bold; }

@media (max-width: 767.98px) {

    h1 {
        font-size: 1.75rem;
    }

    h2 {
        font-size: 1.5rem;
    }

    h3 {
        font-size: 1.25rem;
    }

    h4 {
        font-size: 1rem;
    }

}

h1 > span:not(.nocolor):not(.badge),
h2 > span:not(.nocolor):not(.badge),
h3 > span:not(.nocolor):not(.badge),
h4 > span:not(.nocolor):not(.badge),
h5 > span:not(.nocolor):not(.badge),
h6 > span:not(.nocolor):not(.badge) { color: #1ABC9C; }

p,
pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset,
form { margin-bottom: 30px; }

small { font-family: 'Lato', sans-serif; }


@media (max-width: 1200px) {
    .display-1 {
        font-size: calc( 1.725rem + 5.7vw );
    }
    .display-2 {
        font-size: calc( 1.675rem + 5.1vw );
    }
    .display-3 {
        font-size: calc( 1.575rem + 3.9vw );
    }
    .display-4 {
        font-size: calc( 1.475rem + 2.7vw );
    }
}


/* ----------------------------------------------------------------
        Helper Classes
-----------------------------------------------------------------*/

#wrapper {
    position: relative;
    float: none;
    width: 100%;
    margin: 0 auto;
    background-color: #FFF;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    -moz-box-shadow: 0 0 10px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

@media (min-width: 1200px) {
    body:not(.stretched) #wrapper {
        max-width: 1200px;
    }
}

@media (min-width: 1440px) {
    body:not(.stretched) #wrapper {
        max-width: 1440px;
    }
}

.line,
.double-line {
    clear: both;
    position: relative;
    width: 100%;
    margin: 4rem 0;
    border-top: 1px solid #EEE;
}

.line.line-sm { margin: 2rem 0; }

span.middot {
    display: inline-block;
    margin: 0 5px;
}

.double-line { border-top: 3px double #E5E5E5; }

.nott { text-transform: none !important; }

.emptydiv {
    display: block !important;
    position: relative !important;
}

.allmargin { margin: 3rem !important; }

.leftmargin { margin-left: 3rem !important; }

.rightmargin { margin-right: 3rem !important; }

.topmargin { margin-top: 3rem !important; }

.bottommargin { margin-bottom: 3rem !important; }

.allmargin-sm { margin: 2rem !important; }

.leftmargin-sm { margin-left: 2rem !important; }

.rightmargin-sm { margin-right: 2rem !important; }

.topmargin-sm { margin-top: 2rem !important; }

.bottommargin-sm { margin-bottom: 2rem !important; }

.allmargin-lg { margin: 5rem !important; }

.leftmargin-lg { margin-left: 5rem !important; }

.rightmargin-lg { margin-right: 5rem !important; }

.topmargin-lg { margin-top: 5rem !important; }

.bottommargin-lg { margin-bottom: 5rem !important; }

.header-stick { margin-top: -3rem !important; }

.content-wrap .header-stick { margin-top: -5rem !important; }

.footer-stick { margin-bottom: -3rem !important; }

.content-wrap .footer-stick { margin-bottom: -5rem !important; }

.border-f5 { border-color: #F5F5F5 !important; }

.col-padding { padding: 4rem; }

.notextshadow { text-shadow: none !important; }

.inline-block {
    float: none !important;
    display: inline-block !important;
}

.center { text-align: center !important; }

.mx-auto {
    float: none !important;
}

.bg-color,
.bg-color #header-wrap { background-color: #1ABC9C !important; }

.color { color: #1ABC9C !important; }

.border-color { border-color: #1ABC9C !important; }

.ls0 { letter-spacing: 0px !important; }

.ls1 { letter-spacing: 1px !important; }

.ls2 { letter-spacing: 2px !important; }

.ls3 { letter-spacing: 3px !important; }

.ls4 { letter-spacing: 4px !important; }

.ls5 { letter-spacing: 5px !important; }

.noheight { height: 0 !important; }

.nolineheight { line-height: 0 !important; }

.font-body { font-family: 'Lato', sans-serif; }

.font-primary { font-family: 'Poppins', sans-serif; }

.font-secondary { font-family: 'PT Serif', serif; }

.fw-extralight {
    font-weight: 100 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-semibold {
    font-weight: 600 !important;
}

.fst-normal {
    font-style: normal !important;
}

.bgicon {
    display: block;
    position: absolute;
    bottom: -60px;
    right: -50px;
    font-size: 210px;
    color: rgba(0,0,0,0.1);
}

.imagescale,
.imagescalein {
    display: block;
    overflow: hidden;
}

.imagescale img,
.imagescalein img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}

.imagescale:hover img {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.imagescalein img {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.imagescalein:hover img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.grayscale {
    filter: brightness(80%) grayscale(1) contrast(90%);
    -webkit-filter: brightness(80%) grayscale(1) contrast(90%);
    -moz-filter: brightness(80%) grayscale(1) contrast(90%);
    -o-filter: brightness(80%) grayscale(1) contrast(90%);
    -ms-filter: brightness(80%) grayscale(1) contrast(90%);
    transition: 1s filter ease;
    -webkit-transition: 1s -webkit-filter ease;
    -moz-transition: 1s -moz-filter ease;
    -ms-transition: 1s -ms-filter ease;
    -o-transition: 1s -o-filter ease;
}

.grayscale:hover {
    filter: brightness(100%) grayscale(0);
    -webkit-filter: brightness(100%) grayscale(0);
    -moz-filter: brightness(100%) grayscale(0);
    -o-filter: brightness(100%) grayscale(0);
    -ms-filter: brightness(100%) grayscale(0);
}

/* MOVING BG -  TESTIMONIALS */
.bganimate {
    -webkit-animation:BgAnimated 30s infinite linear;
    -moz-animation:BgAnimated 30s infinite linear;
    -ms-animation:BgAnimated 30s infinite linear;
    -o-animation:BgAnimated 30s infinite linear;
    animation:BgAnimated 30s infinite linear;
}
@-webkit-keyframes BgAnimated {
    from  {background-position:0 0;}
to    {background-position:0 400px;}
}
@-moz-keyframes BgAnimated {
    from  {background-position:0 0;}
to    {background-position:0 400px;}
}
@-ms-keyframes BgAnimated {
    from  {background-position:0 0;}
to    {background-position:0 400px;}
}
@-o-keyframes BgAnimated {
    from  {background-position:0 0;}
to    {background-position:0 400px;}
}
@keyframes BgAnimated {
    from  {background-position:0 0;}
to    {background-position:0 400px;}
}


.input-block-level {
    display: block;
    width: 100% !important;
    min-height: 30px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.vertical-middle {
    z-index: 3;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 100%;
    justify-content: center;
    flex-flow: column;
}

.vertical-middle-overlay {
    position: absolute;
    top: 0;
    left: 0;
}

.vertical-middle + .video-wrap { z-index: 2 !important; }

.magnific-max-width .mfp-content { max-width: 800px; }

.overflow-visible {
    overflow: visible !important;
}


/* ----------------------------------------------------------------
        Opacity Utility Classes
-----------------------------------------------------------------*/

.op-ts {
    -webkit-transition: opacity .5s ease;
    transition: opacity .5s ease;
}

.op-0,
.h-op-0:hover {
    opacity: 0 !important;
}

.op-01,
.h-op-01:hover {
    opacity: 0.1 !important;
}

.op-02,
.h-op-02:hover {
    opacity: 0.2 !important;
}

.op-03,
.h-op-03:hover {
    opacity: 0.3 !important;
}

.op-04,
.h-op-04:hover {
    opacity: 0.4 !important;
}

.op-05,
.h-op-05:hover {
    opacity: 0.5 !important;
}

.op-06,
.h-op-06:hover {
    opacity: 0.6 !important;
}

.op-07,
.h-op-07:hover {
    opacity: 0.7 !important;
}

.op-08,
.h-op-08:hover {
    opacity: 0.8 !important;
}

.op-09,
.h-op-09:hover {
    opacity: 0.9 !important;
}

.op-1,
.h-op-1:hover {
    opacity: 1 !important;
}


/* ----------------------------------------------------------------
        Text Color Utility Classes
-----------------------------------------------------------------*/

.text-ts {
    -webkit-transition: color .5s ease;
    transition: color .5s ease;
}

.h-text-color:hover,
a.h-text-color:hover {
    color: #1ABC9C !important;
}

.h-text-primary:hover,
a.h-text-primary:hover {
    color: #007bff !important;
}

.h-text-secondary:hover,
a.h-text-secondary:hover {
    color: #6c757d !important;
}

.h-text-success:hover,
a.h-text-success:hover {
    color: #28a745 !important;
}

.h-text-info:hover,
a.h-text-info:hover {
    color: #17a2b8 !important;
}

.h-text-warning:hover,
a.h-text-warning:hover {
    color: #ffc107 !important;
}

.h-text-danger:hover,
a.h-text-danger:hover {
    color: #dc3545 !important;
}

.h-text-light:hover,
a.h-text-light:hover {
    color: #f8f9fa !important;
}

.h-text-dark:hover,
a.h-text-dark:hover {
    color: #343a40 !important;
}


/* ----------------------------------------------------------------
        Text Size Utility Classes
-----------------------------------------------------------------*/

.text-smaller {
    font-size: 80% !important;
}

.text-larger {
    font-size: 120% !important;
}

.text-smaller small {
    font-size: 90% !important;
}


/* ----------------------------------------------------------------
        BG Color Utility Classes
-----------------------------------------------------------------*/

.bg-ts {
    -webkit-transition: background-color .5s ease;
    transition: background-color .5s ease;
}

.h-nobg:hover {
    background-color: transparent !important;
}

.h-bg-color:hover {
    background-color: #1ABC9C !important;
}

.h-bg-primary:hover {
    background-color: #007bff !important;
}

.h-bg-secondary:hover {
    background-color: #6c757d !important;
}

.h-bg-success:hover {
    background-color: #28a745 !important;
}

.h-bg-info:hover {
    background-color: #17a2b8 !important;
}

.h-bg-warning:hover {
    background-color: #ffc107 !important;
}

.h-bg-danger:hover {
    background-color: #dc3545 !important;
}

.h-bg-light:hover {
    background-color: #f8f9fa !important;
}

.h-bg-dark:hover {
    background-color: #343a40 !important;
}


.bg-clip {
    border: 1rem solid transparent;
    -moz-background-clip: padding;
    -webkit-background-clip: padding;
    background-clip: padding-box;
    transform: translate3d(0,0,0);
}

.bg-clip-sm {
    border-width: 0.5rem;
}

.bg-clip-lg {
    border-width: 2rem;
}


/* ----------------------------------------------------------------
        Gradient Utility Classes
-----------------------------------------------------------------*/

.gradient-light-grey,
.h-gradient-light-grey:hover {
    background-image: -webkit-linear-gradient(to right, #2c3e50, #bdc3c7) !important;
    background-image: linear-gradient(to right, #2c3e50, #bdc3c7) !important;
}

.gradient-green-dark,
.h-gradient-green-dark:hover {
    background-image: -webkit-linear-gradient(to right, #99f2c8, #1f4037) !important;
    background-image: linear-gradient(to right, #99f2c8, #1f4037) !important;
}

.gradient-grey-brown,
.h-gradient-grey-brown:hover {
    background-image: -webkit-linear-gradient(to right, #C06C84, #6C5B7B, #355C7D) !important;
    background-image: linear-gradient(to right, #C06C84, #6C5B7B, #355C7D) !important;
}

.gradient-light-pink,
.h-gradient-light-pink:hover {
    background-image: -webkit-linear-gradient(to right, #ffdde1, #ee9ca7) !important;
    background-image: linear-gradient(to right, #ffdde1, #ee9ca7) !important;
}

.gradient-blue-purple,
.h-gradient-blue-purple:hover {
    background-image: -webkit-linear-gradient(to right, #4A00E0, #8E2DE2) !important;
    background-image: linear-gradient(to right, #4A00E0, #8E2DE2) !important;
}
.gradient-multiples,
.h-gradient-multiples:hover {
    background-image: -webkit-linear-gradient(to right, #eea2a2 0%, #bbc1bf 19%, #57c6e1 42%, #b49fda 79%, #7ac5d8 100%) !important;
    background-image: linear-gradient(to right, #eea2a2 0%, #bbc1bf 19%, #57c6e1 42%, #b49fda 79%, #7ac5d8 100%) !important;
}

.gradient-blue-green,
.h-gradient-blue-green:hover {
    background-image: -webkit-linear-gradient(to right, #2af598 0%, #009efd 100%) !important;
    background-image: linear-gradient(to right, #2af598 0%, #009efd 100%) !important;
}

.gradient-light,
.h-gradient-light:hover {
    background-image: -webkit-linear-gradient(to top, #DDD 0%, #FFF 100%) !important;
    background-image: linear-gradient(to top, #DDD 0%, #FFF 100%) !important;
}

.gradient-grey-orange,
.h-gradient-grey-orange:hover {
    background-image: -webkit-linear-gradient(to right, #3B4371, #F3904F) !important;
    background-image: linear-gradient(to right, #3B4371, #F3904F) !important;
}

.gradient-sunset,
.h-gradient-sunset:hover {
    background-image: -webkit-linear-gradient(to top, #a8edea 0%, #fed6e3 100%) !important;
    background-image: linear-gradient(to top, #a8edea 0%, #fed6e3 100%) !important;
}

.gradient-dark,
.h-gradient-dark:hover {
    background-image: -webkit-linear-gradient(to right, #535353, #000) !important;
    background-image: linear-gradient(to right, #535353, #000) !important;
}

.gradient-lemon,
.h-gradient-lemon:hover {
    background-image: -webkit-linear-gradient(to right, #cac531, #f3f9a7) !important;
    background-image: linear-gradient(to right, #cac531, #f3f9a7) !important;
}

.gradient-earth,
.h-gradient-earth:hover {
    background-image: -webkit-linear-gradient(to right, #649173, #dbd5a4) !important;
    background-image: linear-gradient(to right, #649173, #dbd5a4) !important;
}

.gradient-sky,
.h-gradient-sky:hover {
    background-image: -webkit-linear-gradient(to right, #2980b9, #6dd5fa, #F5F5F5) !important;
    background-image: linear-gradient(to right, #2980b9, #6dd5fa, #F5F5F5) !important;
}

.gradient-ocean,
.h-gradient-ocean:hover {
    background-image: -webkit-linear-gradient(to right, #000046, #1cb5e0) !important;
    background-image: linear-gradient(to right, #000046, #1cb5e0) !important;
}

.gradient-horizon,
.h-gradient-horizon:hover {
    background-image: -webkit-linear-gradient(90deg, rgba(131,58,180,1) 0%, rgba(253,29,29,1) 50%, rgba(252,176,69,1) 100%) !important;
    background-image: linear-gradient(90deg, rgba(131,58,180,1) 0%, rgba(253,29,29,1) 50%, rgba(252,176,69,1) 100%) !important;
}

.gradient-green-blue,
.h-gradient-green-blue:hover {
    background-image: -webkit-linear-gradient(to right, #43cea2, #185a9d) !important;
    background-image: linear-gradient(to right, #43cea2, #185a9d) !important;
}

.gradient-purple-blue,
.h-gradient-purple-blue:hover {
    background-image: -webkit-linear-gradient(19deg, rgb(33, 212, 253) 0%, rgb(183, 33, 255) 100%) !important;
    background-image: linear-gradient(19deg, rgb(33, 212, 253) 0%, rgb(183, 33, 255) 100%) !important;
}

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

.gradient-underline {
    background-repeat: no-repeat;
    background-size: 100% 8px;
    background-position: 0 88%;
}


/* ----------------------------------------------------------------
        Border Utility Classes
-----------------------------------------------------------------*/

.border-width-0,
.h-border-width-0:hover {
    border-width: 0px !important;
}

.border-width-1,
.h-border-width-1:hover {
    border-width: 1px !important;
}

.border-width-2,
.h-border-width-2:hover {
    border-width: 2px !important;
}

.border-width-3,
.h-border-width-3:hover {
    border-width: 3px !important;
}

.border-width-4,
.h-border-width-4:hover {
    border-width: 4px !important;
}

.border-width-5,
.h-border-width-5:hover {
    border-width: 5px !important;
}

.border-width-6,
.h-border-width-6:hover {
    border-width: 6px !important;
}

.border-dotted {
    border-style: dotted !important;
}

.border-dashed {
    border-style: dashed !important;
}

.border-solid {
    border-style: solid !important;
}

.border-double {
    border-style: double !important;
}

.h-border-primary:hover {
    border-color: #007bff !important;
}

.h-border-secondary:hover {
    border-color: #6c757d !important;
}

.h-border-success:hover {
    border-color: #28a745 !important;
}

.h-border-info:hover {
    border-color: #17a2b8 !important;
}

.h-border-warning:hover {
    border-color: #ffc107 !important;
}

.h-border-danger:hover {
    border-color: #dc3545 !important;
}

.h-border-light:hover {
    border-color: #f8f9fa !important;
}

.h-border-dark:hover {
    border-color: #343a40 !important;
}

.border-transparent,
.h-border-transparent:hover {
    border-color: transparent !important;
}

.border-default,
.h-border-default:hover {
    border-color: #EEE !important;
}

.dark.border-default,
.dark .border-default,
.dark.h-border-default:hover
.dark .h-border-default:hover {
    border-color: rgba(255, 255, 255, 0.15) !important;
}

.border-ts {
    -webkit-transition: border 0.5s ease;
    transition: border 0.5s ease;
}


/* ----------------------------------------------------------------
        Rounded
-----------------------------------------------------------------*/

.rounded-4 {
    border-radius: 0.4rem !important;
}

.rounded-5 {
    border-radius: 0.5rem !important;
}

.rounded-6 {
    border-radius: 0.6rem !important;
}


/* ----------------------------------------------------------------
        Shadows
-----------------------------------------------------------------*/

.h-shadow-sm:hover {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.h-shadow:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.h-shadow-lg:hover {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.h-shadow-none:hover {
    box-shadow: none !important;
}

.shadow-ts {
    -webkit-transition: box-shadow 0.5s ease;
    transition: box-shadow 0.5s ease;
}


/* ----------------------------------------------------------------
        Transform Utility Classes
-----------------------------------------------------------------*/

.translate-y-sm,
.h-translate-y-sm:hover {
    transform: translateY(-3px) !important;
}

.translate-y,
.h-translate-y:hover {
    transform: translateY(-6px) !important;
}

.translate-y-lg,
.h-translate-y-lg:hover {
    transform: translateY(-10px) !important;
}

.translate-x-sm,
.h-translate-x-sm:hover {
    transform: translateX(-3px) !important;
}

.translate-x,
.h-translate-x:hover {
    transform: translateX(-6px) !important;
}

.translate-x-lg,
.h-translate-x-lg:hover {
    transform: translateX(-10px) !important;
}

.translate-x-n-sm,
.h-translate-x-n-sm:hover {
    transform: translateX(3px) !important;
}

.translate-x-n,
.h-translate-x-n:hover {
    transform: translateX(6px) !important;
}

.translate-x-n-lg,
.h-translate-x-n-lg:hover {
    transform: translateX(10px) !important;
}

.scale-sm,
.h-scale-sm:hover {
    transform: scale(1.025) !important;
}

.scale,
.h-scale:hover {
    transform: scale(1.05) !important;
}

.scale-lg,
.h-scale-lg:hover {
    transform: scale(1.1) !important;
}

.scale-n-sm,
.h-scale-n-sm:hover {
    transform: scale(0.975) !important;
}

.scale-n,
.h-scale-n:hover {
    transform: scale(0.95) !important;
}

.scale-n-lg,
.h-scale-n-lg:hover {
    transform: scale(0.9) !important;
}

.transform-ts {
    -webkit-transition: transform 0.5s cubic-bezier(.215, .61, .355, 1);
    transition: transform 0.5s cubic-bezier(.215, .61, .355, 1);
}

.all-ts {
    -webkit-transition: all 0.5s cubic-bezier(.215, .61, .355, 1);
    transition: all 0.5s cubic-bezier(.215, .61, .355, 1);
}


/* ----------------------------------------------------------------
        Align Wide Utility Classes
-----------------------------------------------------------------*/

.align-wide-lg {
    margin-left: calc(50% - 480px) !important;
    margin-right: calc(50% - 480px) !important;
    max-width: 960px !important;
    width: 960px !important;
}

.align-wide-xl {
    margin-left: calc(50% - 570px) !important;
    margin-right: calc(50% - 570px) !important;
    max-width: 1140px !important;
    width: 1140px !important;
}

.align-wide-xxl {
    margin-left: calc(50% - 660px) !important;
    margin-right: calc(50% - 660px) !important;
    max-width: 1320px !important;
    width: 1320px !important;
}

@media (max-width: 991.98px) {
    .align-wide-lg,
    .align-wide-xl,
    .align-wide-xxl {
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        max-width: 100vw !important;
        width: 100vw !important;
    }
}

.align-wide-full {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    max-width: 100vw !important;
    width: 100vw !important;
}


/* ----------------------------------------------------------------
        Z-Index Utility Classes
-----------------------------------------------------------------*/

.z-1 {
    z-index: 1 !important;
}

.z-2 {
    z-index: 2 !important;
}

.z-3 {
    z-index: 3 !important;
}

.z-4 {
    z-index: 4 !important;
}

.z-5 {
    z-index: 5 !important;
}

.z-6 {
    z-index: 6 !important;
}

.z-7 {
    z-index: 7 !important;
}

.z-8 {
    z-index: 8 !important;
}

.z-9 {
    z-index: 9 !important;
}

.z-10 {
    z-index: 10 !important;
}

.z-auto {
    z-index: auto !important;
}


/* ----------------------------------------------------------------
        Bootstrap Utility Classes: Extended
-----------------------------------------------------------------*/


/*	Spacing Utilities */

.m-6 {
    margin: 5rem !important;
}

.mt-6,
.my-6 {
    margin-top: 5rem !important;
}

.me-6,
.mx-6 {
    margin-right: 5rem !important;
}

.mb-6,
.my-6 {
    margin-bottom: 5rem !important;
}

.ms-6,
.mx-6 {
    margin-left: 5rem !important;
}

.p-6 {
    padding: 5rem !important;
}

.pt-6,
.py-6 {
    padding-top: 5rem !important;
}

.pe-6,
.px-6 {
    padding-right: 5rem !important;
}

.pb-6,
.py-6 {
    padding-bottom: 5rem !important;
}

.ps-6,
.px-6 {
    padding-left: 5rem !important;
}

@media (min-width: 576px) {

    .m-sm-6 {
        margin: 5rem !important;
    }

    .mt-sm-6,
    .my-sm-6 {
        margin-top: 5rem !important;
    }

    .me-sm-6,
    .mx-sm-6 {
        margin-right: 5rem !important;
    }

    .mb-sm-6,
    .my-sm-6 {
        margin-bottom: 5rem !important;
    }

    .ms-sm-6,
    .mx-sm-6 {
        margin-left: 5rem !important;
    }

    .p-sm-6 {
        padding: 5rem !important;
    }

    .pt-sm-6,
    .py-sm-6 {
        padding-top: 5rem !important;
    }

    .pe-sm-6,
    .px-sm-6 {
        padding-right: 5rem !important;
    }

    .pb-sm-6,
    .py-sm-6 {
        padding-bottom: 5rem !important;
    }

    .ps-sm-6,
    .px-sm-6 {
        padding-left: 5rem !important;
    }

}

@media (min-width: 768px) {

    .m-md-6 {
        margin: 5rem !important;
    }

    .mt-md-6,
    .my-md-6 {
        margin-top: 5rem !important;
    }

    .me-md-6,
    .mx-md-6 {
        margin-right: 5rem !important;
    }

    .mb-md-6,
    .my-md-6 {
        margin-bottom: 5rem !important;
    }

    .ms-md-6,
    .mx-md-6 {
        margin-left: 5rem !important;
    }

    .p-md-6 {
        padding: 5rem !important;
    }

    .pt-md-6,
    .py-md-6 {
        padding-top: 5rem !important;
    }

    .pe-md-6,
    .px-md-6 {
        padding-right: 5rem !important;
    }

    .pb-md-6,
    .py-md-6 {
        padding-bottom: 5rem !important;
    }

    .ps-md-6,
    .px-md-6 {
        padding-left: 5rem !important;
    }

}

@media (min-width: 992px) {

    .m-lg-6 {
        margin: 5rem !important;
    }

    .mt-lg-6,
    .my-lg-6 {
        margin-top: 5rem !important;
    }

    .me-lg-6,
    .mx-lg-6 {
        margin-right: 5rem !important;
    }

    .mb-lg-6,
    .my-lg-6 {
        margin-bottom: 5rem !important;
    }

    .ms-lg-6,
    .mx-lg-6 {
        margin-left: 5rem !important;
    }

    .p-lg-6 {
        padding: 5rem !important;
    }

    .pt-lg-6,
    .py-lg-6 {
        padding-top: 5rem !important;
    }

    .pe-lg-6,
    .px-lg-6 {
        padding-right: 5rem !important;
    }

    .pb-lg-6,
    .py-lg-6 {
        padding-bottom: 5rem !important;
    }

    .ps-lg-6,
    .px-lg-6 {
        padding-left: 5rem !important;
    }

}

@media (min-width: 1200px) {

    .m-xl-6 {
        margin: 5rem !important;
    }

    .mt-xl-6,
    .my-xl-6 {
        margin-top: 5rem !important;
    }

    .me-xl-6,
    .mx-xl-6 {
        margin-right: 5rem !important;
    }

    .mb-xl-6,
    .my-xl-6 {
        margin-bottom: 5rem !important;
    }

    .ms-xl-6,
    .mx-xl-6 {
        margin-left: 5rem !important;
    }

    .p-xl-6 {
        padding: 5rem !important;
    }

    .pt-xl-6,
    .py-xl-6 {
        padding-top: 5rem !important;
    }

    .pe-xl-6,
    .px-xl-6 {
        padding-right: 5rem !important;
    }

    .pb-xl-6,
    .py-xl-6 {
        padding-bottom: 5rem !important;
    }

    .ps-xl-6,
    .px-xl-6 {
        padding-left: 5rem !important;
    }

}


@media (min-width: 1400px) {

    .m-xxl-6 {
        margin: 5rem !important;
    }

    .mt-xxl-6,
    .my-xxl-6 {
        margin-top: 5rem !important;
    }

    .me-xxl-6,
    .mx-xxl-6 {
        margin-right: 5rem !important;
    }

    .mb-xxl-6,
    .my-xxl-6 {
        margin-bottom: 5rem !important;
    }

    .ms-xxl-6,
    .mx-xxl-6 {
        margin-left: 5rem !important;
    }

    .p-xxl-6 {
        padding: 5rem !important;
    }

    .pt-xxl-6,
    .py-xxl-6 {
        padding-top: 5rem !important;
    }

    .pe-xxl-6,
    .px-xxl-6 {
        padding-right: 5rem !important;
    }

    .pb-xxl-6,
    .py-xxl-6 {
        padding-bottom: 5rem !important;
    }

    .ps-xxl-6,
    .px-xxl-6 {
        padding-left: 5rem !important;
    }

}


/*	Custom Bootstrap Column */

[class*="col-"]:not([class*="sticky-"]):not([class*="position-"]) {
    position: relative;
}

.col-1-5 {
    flex: 0 0 auto;
    width: 20%;
}

@media (min-width: 576px) {
    .col-sm-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }
}

@media (min-width: 768px) {
    .col-md-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }
}

@media (min-width: 992px) {
    .col-lg-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }
}

@media (min-width: 1200px) {
    .col-xl-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }
}

@media (min-width: 1400px) {
    .col-xxl-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }
}


/*	Gutters */
[class*="gutter-"] {
    --custom-gutter: var(--bs-gutter-x); /* Default Bootstrap */
    margin-right: calc(var(--custom-gutter) / -2);
    margin-left: calc(var(--custom-gutter) / -2);
    margin-top: calc(var(--custom-gutter) * -1);
}

[class*="gutter-"] > .col,
[class*="gutter-"] > [class*="col-"] {
    padding-right: calc(var(--custom-gutter) / 2);
    padding-left: calc(var(--custom-gutter) / 2);
    margin-top: var(--custom-gutter);
}

.gutter-10 {
    --custom-gutter: 10px;
}

.gutter-20 {
    --custom-gutter: 20px;
}

.gutter-30 {
    --custom-gutter: 30px;
}

.gutter-40 {
    --custom-gutter: 40px;
}

.gutter-50 {
    --custom-gutter: 50px;
}

[class*="col-mb-"] {
    margin-bottom: calc(var(--col-mb) / -1);
}

[class*="col-mb-"] > .col,
[class*="col-mb-"] > [class*="col-"] {
    padding-bottom: var(--col-mb);
}

.col-mb-30 {
    --col-mb: 30px;
}

.col-mb-50 {
    --col-mb: 50px;
}

.col-mb-80 {
    --col-mb: 80px;
}

@media (min-width: 576px) {
    .gutter-sm-10 {
        --custom-gutter: 10px;
    }

    .gutter-sm-20 {
        --custom-gutter: 20px;
    }

    .gutter-sm-30 {
        --custom-gutter: 30px;
    }

    .gutter-sm-40 {
        --custom-gutter: 40px;
    }

    .gutter-sm-50 {
        --custom-gutter: 50px;
    }

    .col-mb-sm-30 {
        --col-mb: 30px;
    }

    .col-mb-sm-50 {
        --col-mb: 50px;
    }

    .col-mb-sm-80 {
        --col-mb: 80px;
    }
}

@media (min-width: 768px) {
    .gutter-md-10 {
        --custom-gutter: 10px;
    }

    .gutter-md-20 {
        --custom-gutter: 20px;
    }

    .gutter-md-30 {
        --custom-gutter: 30px;
    }

    .gutter-md-40 {
        --custom-gutter: 40px;
    }

    .gutter-md-50 {
        --custom-gutter: 50px;
    }

    .col-mb-md-30 {
        --col-mb: 30px;
    }

    .col-mb-md-50 {
        --col-mb: 50px;
    }

    .col-mb-md-80 {
        --col-mb: 80px;
    }
}

@media (min-width: 992px) {
    .gutter-lg-10 {
        --custom-gutter: 10px;
    }

    .gutter-lg-20 {
        --custom-gutter: 20px;
    }

    .gutter-lg-30 {
        --custom-gutter: 30px;
    }
    .gutter-lg-40 {
        --custom-gutter: 40px;
    }
    .gutter-lg-50 {
        --custom-gutter: 50px;
    }

    .col-mb-lg-30 {
        --col-mb: 30px;
    }

    .col-mb-lg-50 {
        --col-mb: 50px;
    }

    .col-mb-lg-80 {
        --col-mb: 80px;
    }
}

@media (min-width: 1200px) {
    .gutter-xl-10 {
        --custom-gutter: 10px;
    }

    .gutter-xl-20 {
        --custom-gutter: 20px;
    }

    .gutter-xl-30 {
        --custom-gutter: 30px;
    }
    .gutter-xl-40 {
        --custom-gutter: 40px;
    }
    .gutter-xl-50 {
        --custom-gutter: 50px;
    }

    .col-mb-xl-30 {
        --col-mb: 30px;
    }

    .col-mb-xl-50 {
        --col-mb: 50px;
    }

    .col-mb-xl-80 {
        --col-mb: 80px;
    }
}

@media (min-width: 1400px) {
    .gutter-xxl-10 {
        --custom-gutter: 10px;
    }

    .gutter-xxl-20 {
        --custom-gutter: 20px;
    }

    .gutter-xxl-30 {
        --custom-gutter: 30px;
    }
    .gutter-xxl-40 {
        --custom-gutter: 40px;
    }
    .gutter-xxl-50 {
        --custom-gutter: 50px;
    }

    .col-mb-xxl-30 {
        --col-mb: 30px;
    }

    .col-mb-xxl-50 {
        --col-mb: 50px;
    }

    .col-mb-xxl-80 {
        --col-mb: 80px;
    }
}


/* ----------------------------------------------------------------
        Max Width Utility Classes
-----------------------------------------------------------------*/

.mw-xs {
    max-width: 36rem !important;
}

.mw-sm {
    max-width: 48rem !important;
}

.mw-md {
    max-width: 64rem !important;
}

.mw-lg {
    max-width: 78rem !important;
}

.mw-xl {
    max-width: 88rem !important;
}

.mw-xxl {
    max-width: 100rem !important;
}


/* ----------------------------------------------------------------
        Height Utility Classes
-----------------------------------------------------------------*/

.min-vh-75 {
    min-height: 75vh !important;
}

.min-vh-60 {
    min-height: 60vh !important;
}

.min-vh-50 {
    min-height: 50vh !important;
}

.min-vh-40 {
    min-height: 40vh !important;
}

.min-vh-25 {
    min-height: 25vh !important;
}

.min-vh-0 {
    min-height: 0 !important;
}

.vh-75 {
    height: 75vh !important;
}

.vh-60 {
    height: 60vh !important;
}

.vh-50 {
    height: 50vh !important;
}

.vh-40 {
    height: 40vh !important;
}

.vh-25 {
    height: 25vh !important;
}

.h-60 {
    height: 60% !important;
}

.h-40 {
    height: 40% !important;
}

.max-vh-100 {
    max-height: 100vh !important;
}

.max-vh-75 {
    max-height: 75vh !important;
}

.max-vh-60 {
    max-height: 60vh !important;
}

.max-vh-50 {
    max-height: 50vh !important;
}

.max-vh-40 {
    max-height: 40vh !important;
}

.max-vh-25 {
    max-height: 25vh !important;
}

.max-vh-none {
    max-height: none !important;
}

@media (min-width: 576px) {
    .min-vh-sm-100 {
        min-height: 100vh !important;
    }

    .min-vh-sm-75 {
        min-height: 75vh !important;
    }

    .min-vh-sm-60 {
        min-height: 60vh !important;
    }

    .min-vh-sm-50 {
        min-height: 50vh !important;
    }

    .min-vh-sm-40 {
        min-height: 40vh !important;
    }

    .min-vh-sm-25 {
        min-height: 25vh !important;
    }

    .min-vh-sm-0 {
        min-height: 0 !important;
    }

    .vh-sm-100 {
        height: 100vh !important;
    }

    .vh-sm-75 {
        height: 75vh !important;
    }

    .vh-sm-60 {
        height: 60vh !important;
    }

    .vh-sm-50 {
        height: 50vh !important;
    }

    .vh-sm-40 {
        height: 40vh !important;
    }

    .vh-sm-25 {
        height: 25vh !important;
    }

    .h-sm-100 {
        height: 100% !important;
    }

    .h-sm-75 {
        height: 75% !important;
    }

    .h-sm-60 {
        height: 60% !important;
    }

    .h-sm-50 {
        height: 50% !important;
    }

    .h-sm-40 {
        height: 40% !important;
    }

    .h-sm-25 {
        height: 25% !important;
    }

    .h-sm-auto {
        height: auto !important;
    }

    .max-vh-sm-100 {
        max-height: 100vh !important;
    }

    .max-vh-sm-75 {
        max-height: 75vh !important;
    }

    .max-vh-sm-60 {
        max-height: 60vh !important;
    }

    .max-vh-sm-50 {
        max-height: 50vh !important;
    }

    .max-vh-sm-40 {
        max-height: 40vh !important;
    }

    .max-vh-sm-25 {
        max-height: 25vh !important;
    }

    .max-vh-sm-none {
        max-height: none !important;
    }
}

@media (min-width: 768px) {
    .min-vh-md-100 {
        min-height: 100vh !important;
    }

    .min-vh-md-75 {
        min-height: 75vh !important;
    }

    .min-vh-md-60 {
        min-height: 60vh !important;
    }

    .min-vh-md-50 {
        min-height: 50vh !important;
    }

    .min-vh-md-40 {
        min-height: 40vh !important;
    }

    .min-vh-md-25 {
        min-height: 25vh !important;
    }

    .min-vh-md-0 {
        min-height: 0 !important;
    }

    .vh-md-100 {
        height: 100vh !important;
    }

    .vh-md-75 {
        height: 75vh !important;
    }

    .vh-md-60 {
        height: 60vh !important;
    }

    .vh-md-50 {
        height: 50vh !important;
    }

    .vh-md-40 {
        height: 40vh !important;
    }

    .vh-md-25 {
        height: 25vh !important;
    }

    .h-md-100 {
        height: 100% !important;
    }

    .h-md-75 {
        height: 75% !important;
    }

    .h-md-60 {
        height: 60% !important;
    }

    .h-md-50 {
        height: 50% !important;
    }

    .h-md-40 {
        height: 40% !important;
    }

    .h-md-25 {
        height: 25% !important;
    }

    .h-md-auto {
        height: auto !important;
    }

    .max-vh-md-100 {
        max-height: 100vh !important;
    }

    .max-vh-md-75 {
        max-height: 75vh !important;
    }

    .max-vh-md-60 {
        max-height: 60vh !important;
    }

    .max-vh-md-50 {
        max-height: 50vh !important;
    }

    .max-vh-md-40 {
        max-height: 40vh !important;
    }

    .max-vh-md-25 {
        max-height: 25vh !important;
    }

    .max-vh-md-none {
        max-height: none !important;
    }
}

@media (min-width: 992px) {
    .min-vh-lg-100 {
        min-height: 100vh !important;
    }

    .min-vh-lg-75 {
        min-height: 75vh !important;
    }

    .min-vh-lg-60 {
        min-height: 60vh !important;
    }

    .min-vh-lg-50 {
        min-height: 50vh !important;
    }

    .min-vh-lg-40 {
        min-height: 40vh !important;
    }

    .min-vh-lg-25 {
        min-height: 25vh !important;
    }

    .min-vh-lg-0 {
        min-height: 0 !important;
    }

    .vh-lg-100 {
        height: 100vh !important;
    }

    .vh-lg-75 {
        height: 75vh !important;
    }

    .vh-lg-60 {
        height: 60vh !important;
    }

    .vh-lg-50 {
        height: 50vh !important;
    }

    .vh-lg-40 {
        height: 40vh !important;
    }

    .vh-lg-25 {
        height: 25vh !important;
    }

    .h-lg-100 {
        height: 100% !important;
    }

    .h-lg-75 {
        height: 75% !important;
    }

    .h-lg-60 {
        height: 60% !important;
    }

    .h-lg-50 {
        height: 50% !important;
    }

    .h-lg-40 {
        height: 40% !important;
    }

    .h-lg-25 {
        height: 25% !important;
    }

    .h-lg-auto {
        height: auto !important;
    }

    .max-vh-lg-100 {
        max-height: 100vh !important;
    }

    .max-vh-lg-75 {
        max-height: 75vh !important;
    }

    .max-vh-lg-60 {
        max-height: 60vh !important;
    }

    .max-vh-lg-50 {
        max-height: 50vh !important;
    }

    .max-vh-lg-40 {
        max-height: 40vh !important;
    }

    .max-vh-lg-25 {
        max-height: 25vh !important;
    }

    .max-vh-lg-none {
        max-height: none !important;
    }
}

@media (min-width: 1200px) {
    .min-vh-xl-100 {
        min-height: 100vh !important;
    }

    .min-vh-xl-75 {
        min-height: 75vh !important;
    }

    .min-vh-xl-60 {
        min-height: 60vh !important;
    }

    .min-vh-xl-50 {
        min-height: 50vh !important;
    }

    .min-vh-xl-40 {
        min-height: 40vh !important;
    }

    .min-vh-xl-25 {
        min-height: 25vh !important;
    }

    .min-vh-xl-0 {
        min-height: 0 !important;
    }

    .vh-xl-100 {
        height: 100vh !important;
    }

    .vh-xl-75 {
        height: 75vh !important;
    }

    .vh-xl-60 {
        height: 60vh !important;
    }

    .vh-xl-50 {
        height: 50vh !important;
    }

    .vh-xl-40 {
        height: 40vh !important;
    }

    .vh-xl-25 {
        height: 25vh !important;
    }

    .h-xl-100 {
        height: 100% !important;
    }

    .h-xl-75 {
        height: 75% !important;
    }

    .h-xl-60 {
        height: 60% !important;
    }

    .h-xl-50 {
        height: 50% !important;
    }

    .h-xl-40 {
        height: 40% !important;
    }

    .h-xl-25 {
        height: 25% !important;
    }

    .h-xl-auto {
        height: auto !important;
    }

    .max-vh-xl-100 {
        max-height: 100vh !important;
    }

    .max-vh-xl-75 {
        max-height: 75vh !important;
    }

    .max-vh-xl-60 {
        max-height: 60vh !important;
    }

    .max-vh-xl-50 {
        max-height: 50vh !important;
    }

    .max-vh-xl-40 {
        max-height: 40vh !important;
    }

    .max-vh-xl-25 {
        max-height: 25vh !important;
    }

    .max-vh-xl-none {
        max-height: none !important;
    }
}

@media (min-width: 1400px) {
    .min-vh-xxl-100 {
        min-height: 100vh !important;
    }

    .min-vh-xxl-75 {
        min-height: 75vh !important;
    }

    .min-vh-xxl-60 {
        min-height: 60vh !important;
    }

    .min-vh-xxl-50 {
        min-height: 50vh !important;
    }

    .min-vh-xxl-40 {
        min-height: 40vh !important;
    }

    .min-vh-xxl-25 {
        min-height: 25vh !important;
    }

    .min-vh-xxl-0 {
        min-height: 0 !important;
    }

    .vh-xxl-100 {
        height: 100vh !important;
    }

    .vh-xxl-75 {
        height: 75vh !important;
    }

    .vh-xxl-60 {
        height: 60vh !important;
    }

    .vh-xxl-50 {
        height: 50vh !important;
    }

    .vh-xxl-40 {
        height: 40vh !important;
    }

    .vh-xxl-25 {
        height: 25vh !important;
    }

    .h-xxl-100 {
        height: 100% !important;
    }

    .h-xxl-75 {
        height: 75% !important;
    }

    .h-xxl-60 {
        height: 60% !important;
    }

    .h-xxl-50 {
        height: 50% !important;
    }

    .h-xxl-40 {
        height: 40% !important;
    }

    .h-xxl-25 {
        height: 25% !important;
    }

    .h-xxl-auto {
        height: auto !important;
    }

    .max-vh-xxl-100 {
        max-height: 100vh !important;
    }

    .max-vh-xxl-75 {
        max-height: 75vh !important;
    }

    .max-vh-xxl-60 {
        max-height: 60vh !important;
    }

    .max-vh-xxl-50 {
        max-height: 50vh !important;
    }

    .max-vh-xxl-40 {
        max-height: 40vh !important;
    }

    .max-vh-xxl-25 {
        max-height: 25vh !important;
    }

    .max-vh-xxl-none {
        max-height: none !important;
    }
}


/* ----------------------------------------------------------------
        Position Utility Classes: Extended
-----------------------------------------------------------------*/

@media (min-width: 576px) {
    .position-sm-static {
        position: static !important;
    }

    .position-sm-relative {
        position: relative !important;
    }

    .position-sm-absolute {
        position: absolute !important;
    }

    .position-sm-fixed {
        position: fixed !important;
    }

    .position-sm-sticky {
        position: -webkit-sticky !important;
        position: sticky !important;
    }
}

@media (min-width: 768px) {
    .position-md-static {
        position: static !important;
    }

    .position-md-relative {
        position: relative !important;
    }

    .position-md-absolute {
        position: absolute !important;
    }

    .position-md-fixed {
        position: fixed !important;
    }

    .position-md-sticky {
        position: -webkit-sticky !important;
        position: sticky !important;
    }
}

@media (min-width: 992px) {
    .position-lg-static {
        position: static !important;
    }

    .position-lg-relative {
        position: relative !important;
    }

    .position-lg-absolute {
        position: absolute !important;
    }

    .position-lg-fixed {
        position: fixed !important;
    }

    .position-lg-sticky {
        position: -webkit-sticky !important;
        position: sticky !important;
    }
}

@media (min-width: 1200px) {
    .position-xl-static {
        position: static !important;
    }

    .position-xl-relative {
        position: relative !important;
    }

    .position-xl-absolute {
        position: absolute !important;
    }

    .position-xl-fixed {
        position: fixed !important;
    }

    .position-xl-sticky {
        position: -webkit-sticky !important;
        position: sticky !important;
    }
}

@media (min-width: 1400px) {
    .position-xxl-static {
        position: static !important;
    }

    .position-xxl-relative {
        position: relative !important;
    }

    .position-xxl-absolute {
        position: absolute !important;
    }

    .position-xxl-fixed {
        position: fixed !important;
    }

    .position-xxl-sticky {
        position: -webkit-sticky !important;
        position: sticky !important;
    }
}


/* ----------------------------------------------------------------
        X/Y Positioning Classes
-----------------------------------------------------------------*/

.pos-x-start {
    left: 0 !important;
    right: auto !important;
}

.pos-y-start {
    top: 0 !important;
    bottom: auto !important;
}

.pos-x-end {
    left: auto !important;
    right: 0 !important;
}

.pos-y-end {
    top: auto !important;
    bottom: 0 !important;
}

.pos-x-center {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
}

.pos-y-center {
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
}

.pos-x-center.pos-y-center {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}


/* ----------------------------------------------------------------
        Square Sizing Classes
-----------------------------------------------------------------*/

.square-xs {
    width: 1rem !important;
    height: 1rem !important;
}

.square-sm {
    width: 2rem !important;
    height: 2rem !important;
}

.square-md {
    width: 4rem !important;
    height: 4rem !important;
}

.square-lg {
    width: 6rem !important;
    height: 6rem !important;
}

.square-xl {
    width: 8rem !important;
    height: 8rem !important;
}


/* ----------------------------------------------------------------
        Text Sizing Classes
-----------------------------------------------------------------*/

.text-size-xs {
    font-size: 0.875rem !important;
}

.text-size-sm {
    font-size: 1rem !important;
}

.text-size-md {
    font-size: 1.5rem !important;
}

.text-size-lg {
    font-size: 2rem !important;
}

.text-size-xl {
    font-size: calc(1rem + 2.25vw) !important;
}

.text-size-xxl {
    font-size: calc(1rem + 3.5vw) !important;
}


/* ----------------------------------------------------------------
        Lazy Loading
-----------------------------------------------------------------*/

.lazy {
    opacity: 0;
}

.lazy:not(.initial) {
    transition: opacity 1s;
}

.lazy.initial,
.lazy.lazy-loaded,
.lazy.lazy-error {
    opacity: 1;
}

img.lazy {
    max-width: 100%;
    height: auto;
}

img.lazy:not([src]) {
    visibility: hidden;
}


/* ----------------------------------------------------------------
        Sections
-----------------------------------------------------------------*/


.section {
    position: relative;
    width: 100%;
    margin: 60px 0;
    padding: 60px 0;
    background-color: #F9F9F9;
    overflow: hidden;
}

.parallax {
    background-color: transparent;
    background-attachment: fixed;
    background-position: 50% 0;
    background-repeat: no-repeat;
    overflow: hidden;
    will-change: auto;
}

.mobile-parallax,
.video-placeholder {
    background-size: cover !important;
    background-attachment: scroll !important;
    background-position: center center !important;
}

.section .container { z-index: 2; }

.section .container + .video-wrap { z-index: 1; }

.revealer-image {
    position: relative;
    bottom: -100px;
    transition: bottom .3s ease-in-out;
    -webkit-transition: bottom .3s ease-in-out;
    -o-transition: bottom .3s ease-in-out;
}

.section:hover .revealer-image { bottom: -50px; }


/* ----------------------------------------------------------------
        Columns & Grids
-----------------------------------------------------------------*/


.postcontent,
.sidebar {
    position: relative;
}


/* ----------------------------------------------------------------
        Top Bar
-----------------------------------------------------------------*/


#top-bar {
    position: relative;
    border-bottom: 1px solid #EEE;
    font-size: 13px;
    height: 35px;
}


/* Top Links
---------------------------------*/

.top-links {
    position: relative;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-positive: 0;
    flex-grow: 0;
    border-bottom: 1px solid #EEE;
}

@media (min-width: 768px) {
    .top-links {
        border-bottom: 0;
        margin-top: -3px;
    }

}

@media (max-width: 768px) {

    #header {

        margin-top: 41px;
    }
}
.top-links-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    list-style: none;
    margin-bottom: 0;
}

.top-links-item {
    position: relative;
    border-left: 1px solid #EEE;
}

.top-links-item:first-child,
.top-links-sub-menu .top-links-item { border-left: 0 !important; }

.top-links-item > a {
    display: block;
    padding: 12px;
    font-size: 0.75rem;
    line-height: 20px;
    font-weight: 700;
    text-transform: uppercase;
    color: #666;
}

.top-links-item > a > i { vertical-align: top; }

.top-links-item > a > i.icon-angle-down { margin: 0 0 0 5px !important; }

.top-links-item > a > i:first-child { margin-right: 3px; }

.top-links-item.full-icon > a > i {
    top: 2px;
    font-size: 0.875rem;
    margin: 0;
}

.top-links-item:hover { background-color: #EEE; }

.top-links-sub-menu,
.top-links-section {
    position: absolute;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    list-style: none;
    z-index: -1;
    line-height: 1.5;
    background: #FFF;
    border: 0;
    top: 100%;
    left: -1px;
    width: 140px;
    margin-top: 10px;
    border: 1px solid #EEE;
    border-top-color: #1ABC9C;
    box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05);
    transition: opacity .25s ease, margin .2s ease;
}

.top-links:not(.on-click) .top-links-item:hover > .top-links-sub-menu,
.top-links:not(.on-click) .top-links-item:hover > .top-links-section,
.top-links.on-click .top-links-sub-menu,
.top-links.on-click .top-links-section {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
    pointer-events: auto;
    z-index: 499;
}

.top-links.on-click .top-links-sub-menu,
.top-links.on-click .top-links-section {
    display: none;
}

.top-links-sub-menu .top-links-sub-menu {
    top: -1px;
    left: 100%;
}

.top-links-sub-menu .top-links-item:not(:first-child) {
    border-top: 1px solid #F5F5F5;
}

.top-links-sub-menu .top-links-item:hover { background-color: #F9F9F9; }

.top-links-sub-menu .top-links-item > a {
    padding-top: 9px;
    padding-bottom: 9px;
    font-size: 0.6875rem;
}

.top-links-sub-menu .top-links-item > a > img {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 16px;
    height: 16px;
    margin-right: 4px;
}

.top-links-sub-menu.top-demo-lang .top-links-item > a > img {
    top: 4px;
    width: 16px;
    height: 16px;
}

.top-links-sub-menu .top-links-item > a > i.icon-angle-down {
    margin: 0 !important;
    position: absolute;
    top: 50%;
    left: auto;
    right: 10px;
    transform: translateY(-50%) rotate(-90deg);
}

.top-links-section {
    padding: 25px;
    left: 0;
    width: 280px;
}

.top-links-section.menu-pos-invert {
    left: auto;
    right: 0;
}



/* Top Login
-----------------------------------------------------------------*/

#top-login { margin-bottom: 0; }



/* ----------------------------------------------------------------
        Header
-----------------------------------------------------------------*/


#header {
    position: relative;
    background-color: #FFF;
    border-bottom: 1px solid #F5F5F5;
    height: 110px;
}

#header-wrap {
    position: relative;
    background-color: #FFF;
    width: 100%;
}

.header-wrap-clone {
    display: none;
}

.header-row {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media (min-width: 992px) {

    #header-wrap {
        position: fixed;
        /* height: auto; */
        height: 37px;
        z-index: 299;
        box-shadow: 0 0 0 rgba(0,0,0,0.1);
        transition: height .2s ease 0s, background-color .3s ease 0s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        will-change: left, top, transform;
    }

    #top-bar + #header:not(.sticky-header) #header-wrap,
    #slider + #header:not(.sticky-header) #header-wrap,
    .floating-header:not(.sticky-header) #header-wrap,
    div + #header-wrap,
    .no-sticky #header-wrap,
    [data-sticky-offset]:not([data-sticky-offset="full"]):not(.sticky-header) #header-wrap,
    body:not(.stretched) #header:not(.sticky-header) #header-wrap {
        position: absolute;
    }

    .header-wrap-clone {
        display: block;
        height: calc( 100px + 1px );
    }

    .header-size-sm .header-wrap-clone {
        height: calc( 60px + 1px );
    }

    .header-size-md .header-wrap-clone {
        height: calc( 80px + 1px );
    }

    .header-size-lg .header-wrap-clone {
        height: calc( 120px + 1px );
    }

    .header-row {
        position: initial;
    }

    #header.transparent-header,
    #header.transparent-header:not(.sticky-header) #header-wrap {
        background: transparent;
        border-bottom: 1px solid transparent;
        z-index: 299;
    }

    #header.transparent-header.semi-transparent #header-wrap { background-color: rgba(255,255,255,0.8); }

    #header.transparent-header.floating-header { margin-top: 60px; }

    .transparent-header.floating-header .container {
        background-color: #FFF;
        padding: 0 30px;
    }

    .transparent-header.floating-header:not(.sticky-header) .container {
        position: relative;
    }

    #header + .include-header {
        margin-top: calc( -100px - 2px );
        display: inline-block;
        vertical-align: bottom;
        width: 100%;
    }

    #header.header-size-sm + .include-header {
        margin-top: calc( -60px - 2px );
    }

    #header.header-size-md + .include-header {
        margin-top: calc( -80px - 2px );
    }

    #header.header-size-lg + .include-header {
        margin-top: calc( -120px - 2px );
    }

    #header.floating-header + .include-header {
        margin-top: calc( -160px - 2px );
    }

    #header.transparent-header + .page-title-parallax.include-header .container {
        z-index: 5;
        padding-top: 100px;
    }

    #header.full-header:not(.transparent-header) { border-bottom-color: #EEE; }

    .stretched .full-header #header-wrap > .container {
        width: 100%;
        max-width: none;
        padding: 0 30px;
    }

    #header.transparent-header.full-header #header-wrap {
        border-bottom: 1px solid rgba(0,0,0,0.1);
    }

    #slider + #header.transparent-header.full-header #header-wrap {
        border-top: 1px solid rgba(0,0,0,0.1);
        border-bottom: none;
    }

    /* ----------------------------------------------------------------
            Sticky Header
    -----------------------------------------------------------------*/

    #logo img {
        -webkit-transition: height .4s ease, padding .4s ease, margin .4s ease, opacity .3s ease;
        transition: height .4s ease, padding .4s ease, margin .4s ease, opacity .3s ease;
    }

    #logo img { max-height: 100%; }

    .sub-menu-container,
    .mega-menu-content {
        -webkit-transition: top .4s ease;
        transition: top .4s ease;
    }

    .sticky-header #header-wrap {
        position: fixed;
        top: 0;
        left: 0;
        background-color: #FFF;
        box-shadow: 0 0 10px rgba(0,0,0,0.1);
    }

    .sticky-header.full-header #header-wrap {
        border-bottom: 1px solid #EEE;
    }

    .sticky-header.semi-transparent { background-color: transparent; }

    .semi-transparent.sticky-header #header-wrap { background-color: rgba(255,255,255,0.8) }



}

@media (max-width: 991.98px) {

    .sticky-header #header-wrap {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 299;
        background-color: #FFF;
        border-bottom: 1px solid #EEE;
        -webkit-transform: translateZ(0);
        -webkit-backface-visibility: hidden;
    }

    .sticky-header .header-wrap-clone {
        display: block;
    }

    .sticky-header .menu-container {
        max-height: 60vh;
        margin: 1rem 0;
        overflow-x: hidden;
        overflow-y: scroll;
    }

    body:not(.primary-menu-open) .dark.transparent-header-responsive,
    body:not(.primary-menu-open) .transparent-header-responsive {
        background-color: transparent;
        border: none;
    }

    body:not(.primary-menu-open) .semi-transparent.transparent-header-responsive {
        background-color: rgba(255,255,255,0.8);
        z-index: 1;
    }

}


/* ----------------------------------------------------------------
        Logo
-----------------------------------------------------------------*/


#logo {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -ms-flex-align: center;
    margin-right: auto;
    max-height: 100%;
    height: 70px;
}

#logo a {
    color: #000;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
}

#logo img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    /* height: 100px; */
}

.header-size-sm #header-wrap #logo img {
    height: 60px;
}

.header-size-md #header-wrap #logo img {
    height: 80px;
}

.header-size-lg #header-wrap #logo img {
    height: 120px;
}

#logo a.standard-logo {
    display: -ms-flexbox;
    display: flex;
}

#logo a.retina-logo { display: none; }

@media (min-width: 992px) {

    .full-header #logo {
        padding-right: 30px;
        border-right: 1px solid #EEE;
    }

    #header.transparent-header.full-header #logo { border-right-color: rgba(0,0,0,0.1); }

    .sticky-header-shrink #header-wrap #logo img {
        height: 60px;
    }

}


/* ----------------------------------------------------------------
        Retina Logo
-----------------------------------------------------------------*/


@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {

    #logo a.standard-logo { display: none; }

    #logo a.retina-logo {
        display: -ms-flexbox;
        display: flex;
    }

}


/* ----------------------------------------------------------------
        Header Right Area
-----------------------------------------------------------------*/


.header-extras {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    margin-bottom: 0;
}

.header-extras li {
    display: -ms-flexbox;
    display: flex;
    margin-left: 1.25rem;
    overflow: hidden;
    list-style: none;
}

.header-extras li:first-child { margin-left: 0; }

.header-extras li .he-text {
    padding-left: 10px;
    font-weight: bold;
    font-size: 0.875rem;
}

.header-extras li .he-text span {
    display: block;
    font-weight: 400;
    color: #1ABC9C;
}


/* ----------------------------------------------------------------
        Primary Menu
-----------------------------------------------------------------*/

.primary-menu {
    display: -ms-flexbox;
    display: flex;
    flex-basis: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-align: center;
    align-items: center;
    height: 37px;
}

.primary-menu + .primary-menu {
    border-top: 1px solid #EEE;
}

#primary-menu-trigger,
#page-menu-trigger {
    display: -ms-flex;
    display: flex;
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
    cursor: pointer;
    font-size: 0.875rem;
    width: 50px;
    height: 50px;
    line-height: 50px;
    justify-content: center;
    align-items: center;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
}

body:not(.top-search-open) .top-search-parent #primary-menu-trigger {
    opacity: 1;
    -webkit-transition: opacity .2s .2s ease, top .4s ease;
    -o-transition: opacity .2s .2s ease, top .4s ease;
    transition: opacity .2s .2s ease, top .4s ease;
}

.top-search-open .top-search-parent #primary-menu-trigger {
    opacity: 0;
}

.svg-trigger {
    width: 30px;
    height: 30px;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: transform 400ms;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.svg-trigger path {
    fill: none;
    transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
    stroke: #333;
    stroke-width: 5;
    stroke-linecap:round;
}

.svg-trigger path:nth-child(1) { stroke-dasharray: 40 160; }

.svg-trigger path:nth-child(2) {
    stroke-dasharray: 40 142;
    transform-origin: 50%;
    transition: transform 400ms;
}

.svg-trigger path:nth-child(3) {
    stroke-dasharray: 40 85;
    transform-origin: 50%;
    transition: transform 400ms, stroke-dashoffset 400ms;
}

.primary-menu-open .svg-trigger { transform: rotate(45deg); }

.primary-menu-open .svg-trigger path:nth-child(1),
.primary-menu-open .svg-trigger path:nth-child(3) { stroke-dashoffset: -64px; }

.primary-menu-open .svg-trigger path:nth-child(2) { transform: rotate(90deg); }

.menu-container {
    display: none;
    list-style: none;
    margin: 0;
    width: 100%;
}

.menu-item {
    position: relative;
}

.menu-item:not(:first-child) {
    border-top: 1px solid #EEE;
}

.menu-link {
    display: block;
    line-height: 22px;
    padding: 14px 5px;
    color: #444;
    font-weight: 700;
    font-size: 0.8125rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-family: 'Poppins', sans-serif;
}

.menu-link span {
    display: none;
}

.menu-link i {
    position: relative;
    top: -1px;
    font-size: 0.875rem;
    width: 16px;
    text-align: center;
    margin-right: 6px;
    vertical-align: top;
}

.menu-item:hover > .menu-link,
.menu-item.current > .menu-link {
    color: #1ABC9C;
}

.menu-item.sub-menu > .menu-link > div { }

.sub-menu-container,
.mega-menu-content {
    position: relative;
    padding-left: 15px;
    border-top: 1px solid #EEE;
    list-style: none;
    margin-bottom: 0;
}

.sub-menu-container .menu-item:not(:first-child) {
    border-top: 1px solid #EEE;
}

.sub-menu-container .menu-item > .menu-link {
    position: relative;
    padding: 11px 5px;
    font-size: 0.75rem;
    font-weight: 400;
    color: #666;
    letter-spacing: 0;
    font-family: 'Lato', sans-serif;
}

.sub-menu-container .menu-item:hover > .menu-link {
    font-weight: 700;
}

.sub-menu-container .menu-link div {
    position: relative;
}

.menu-item .sub-menu-trigger {
    display: block;
    position: absolute;
    cursor: pointer;
    outline: none;
    border: none;
    background: none;
    padding: 0;
    top: 9px;
    right: 0;
    width: 32px;
    height: 32px;
    font-size: 12px;
    line-height: 32px;
    text-align: center;
    -webkit-transition: transform .3s ease;
    transition: transform .3s ease;
}

.menu-link div > i.icon-angle-down {
    display: none;
}

.sub-menu-container .sub-menu-trigger {
    font-size: 10px;
}

.sub-menu-container .menu-item .sub-menu-trigger {
    top: 6px;
}


/* ----------------------------------------------------------------
        Mega Menu
-----------------------------------------------------------------*/

.mega-menu:not(.mega-menu-full) .mega-menu-content .container {
    max-width: none;
}

.mega-menu-content {
    padding-left: 0;
}

@media (max-width: 991.98px) {

    .primary-menu {
        max-width: 100%;
        height: auto;
    }

    .primary-menu > .container {
        max-width: none;
        padding: 0;
    }

    .mega-menu-content .sub-menu-container {
        border-top: 1px solid #EEE;
    }

    .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        display: block !important;
    }

    .mega-menu-content .mega-menu-column {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        padding-right: 0;
    }

    .mega-menu-column .widget {
        padding: 30px 0;
    }
    #header {
        position: relative;
        background-color: #FFF;
        border-bottom: 1px solid #F5F5F5;
        height: auto;
    }

}

.mega-menu-content .mega-menu-column:first-child {
    border-top: 0;
}

/* Off Canvas Menu
-----------------------------------------------------------------*/

@media (max-width: 991.98px) {

    #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container {
        position: fixed;
        display: block;
        z-index: 499;
        width: 280px;
        height: 100%;
        height: calc(100vh);
        max-height: none !important;
        margin: 0 !important;
        left: 0 !important;
        top: 0 !important;
        padding: 35px 25px 60px !important;
        background-color: #FFF;
        border-right: 1px solid #EEE !important;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        -webkit-transform: translate(-280px,0);
        -o-transform: translate(-280px,0);
        transform: translate(-280px,0);
        -webkit-backface-visibility: hidden;
        transform-style: preserve-3d;
    }

    #header:not(.sticky-header) .mobile-menu-off-canvas.from-right .menu-container {
        left: auto !important;
        right: 0;
        border-right: 0 !important;
        border-left: 1px solid #EEE !important;
        -webkit-transform: translate(280px,0);
        -o-transform: translate(280px,0);
        transform: translate(280px,0);
    }

    #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container {
        -webkit-transition: -webkit-transform .3s ease-in-out, opacity .2s ease !important;
        -o-transition: -o-transform .3s ease-in-out, opacity .2s ease !important;
        transition: transform .3s ease-in-out, opacity .2s ease !important;
    }

    #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container.d-block {
        -webkit-transform: translate(0,0);
        -o-transform: translate(0,0);
        transform: translate(0,0);
    }

}

@media (min-width: 992px) {

    .primary-menu {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        -ms-flex-positive: 0;
        flex-grow: 0;
    }

    .primary-menu + .primary-menu {
        border-top: 0;
    }

    #primary-menu-trigger,
    #page-menu-trigger {
        display: none;
        opacity: 0;
        pointer-events: none;
        z-index: 0;
    }

    .menu-container:not(.mobile-primary-menu) {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: center;
        align-items: center;
    }

    .full-header .primary-menu .menu-container {
        padding-right: 0.5rem;
        margin-right: 0.5rem;
        border-right: 1px solid #EEE;
    }

    .transparent-header.full-header .primary-menu .menu-container { border-right-color: rgba(0,0,0,0.1); }

    .mega-menu { position: inherit; }

    .menu-container > .menu-item:not(:first-child) {
        margin-left: 2px;
    }

    .menu-item:not(:first-child) {
        border-top: 0;
    }

    .menu-item.menu-item-important .menu-link > div::after {
        content: '';
        display: inline-block;
        position: relative;
        top: -5px;
        left: 5px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background-color: #dc3545;
    }

    .menu-link {
        padding: 39px 15px;
        -webkit-transition: margin .4s ease, padding .4s ease;
        -o-transition: margin .4s ease, padding .4s ease;
        transition: margin .4s ease, padding .4s ease;
    }

    .header-size-sm .menu-container > .menu-item > .menu-link {
        padding-top: 19px;
        padding-bottom: 19px;
    }

    .header-size-md .menu-container > .menu-item > .menu-link {
        padding-top: 29px;
        padding-bottom: 29px;
    }

    .header-size-lg .menu-container > .menu-item > .menu-link {
        padding-top: 49px;
        padding-bottom: 49px;
    }

    .sticky-header-shrink .menu-container > .menu-item > .menu-link {
        padding-top: 19px;
        padding-bottom: 19px;
    }

    .with-arrows .menu-container > .menu-item > .menu-link div > i.icon-angle-down {
        display: inline-block;
    }

    .sub-menu-container,
    .mega-menu-content {
        position: absolute;
        visibility: hidden;
        background-color: #FFF;
        box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05);
        border: 1px solid #EEE;
        border-top: 2px solid #1ABC9C;
        z-index: 399;
        top: 100%;
        left: 0;
        padding: 0;
    }

    .menu-container > .menu-item:not(.mega-menu) .sub-menu-container:not([class*='col']) {
        width: 220px;
    }

    /* Sub-Menu On-Hover Dropdown */
    .primary-menu:not(.on-click) .menu-item:not(.mega-menu) .sub-menu-container,
    .primary-menu:not(.on-click) .mega-menu-content {
        display: block;
        opacity: 0;
        margin-top: 15px;
        z-index: -9999;
        pointer-events: none;
        transition: opacity .3s ease, margin .25s ease;
    }

    .primary-menu:not(.on-click) .menu-item.mega-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        margin-top: 0;
        z-index: auto;
    }

    .primary-menu:not(.on-click) .menu-item.mega-menu:hover > .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        pointer-events: auto;
    }

    .primary-menu:not(.on-click) .menu-item:hover > .sub-menu-container,
    .primary-menu:not(.on-click) .menu-item:hover > .mega-menu-content {
        opacity: 1;
        visibility: visible;
        margin-top: 0;
        z-index: 399;
        pointer-events: auto;
    }

    .primary-menu:not(.on-click) .menu-item:not(:hover) > .sub-menu-container > *,
    .primary-menu:not(.on-click) .menu-item:not(:hover) > .mega-menu-content > * {
        display: none;
    }

    .primary-menu:not(.on-click) .menu-item.mega-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) > * {
        display: block;
    }

    .sub-menu-container .sub-menu-container {
        list-style: none;
        top: -2px !important;
        left: 100%;
    }

    .sub-menu-container.menu-pos-invert,
    .mega-menu-content.menu-pos-invert {
        left: auto;
        right: 0;
    }

    .sub-menu-container .sub-menu-container.menu-pos-invert {
        right: 100%;
    }

    .sub-menu-container .menu-item:not(:first-child) {
        border-top: 0;
    }

    .sub-menu-container .menu-item > .menu-link {
        padding: 10px 15px;
        font-weight: 700;
        border: 0;
        -webkit-transition: all .2s ease-in-out;
        -o-transition: all .2s ease-in-out;
        transition: all .2s ease-in-out;
    }

    .sub-menu-container .menu-item > .menu-link i { vertical-align: middle; }

    .sub-menu-container .menu-item:hover > .menu-link {
        background-color: #F9F9F9;
        padding-left: 18px;
        color: #1ABC9C;
    }

    .menu-link div > i.icon-angle-down {
        top: 0;
        font-size: 0.875rem;
        margin: 0 0 0 5px;
    }

    .sub-menu-container .menu-link div > i.icon-angle-down,
    .side-header .primary-menu:not(.on-click) .menu-link i.icon-angle-down {
        display: block;
        position: absolute;
        top: 50%;
        right: 0;
        font-size: 0.875rem;
        line-height: 1;
        margin: 0;
        transform: translateY(-50%) rotate(-90deg);
    }

    .menu-item .sub-menu-trigger,
    .side-header .on-click .sub-menu-container .menu-link i.icon-angle-down:last-child {
        display: none;
    }

    /* ----------------------------------------------------------------
            Mega Menu
    -----------------------------------------------------------------*/

    .mega-menu:not(.mega-menu-full) .mega-menu-content .container {
        max-width: none;
        padding: 0 var(--bs-gutter-x, 0.75rem) !important;
        margin: 0 auto !important;
    }

    .mega-menu-content {
        margin: 0;
        width: 100%;
        max-width: none;
        left: 50%;
        transform: translateX(-50%);
    }

    .mega-menu-full .mega-menu-content {
        width: 100%;
        left: 0;
        transform: none;
    }

    .mega-menu-small {
        position: relative;
    }

    .mega-menu-small .mega-menu-content {
        left: 0;
        width: 400px;
        transform: none;
    }

    .floating-header:not(.sticky-header) .mega-menu:not(.mega-menu-small) .mega-menu-content {
        max-width: 100%;
    }

    .sub-menu-container .mega-menu {
        position: relative;
    }

    .sub-menu-container .mega-menu-small .mega-menu-content {
        top: 0;
        left: 100%;
    }

    .sub-menu-container .mega-menu-small .mega-menu-content.menu-pos-invert {
        left: auto;
        right: 100%;
    }

    .mega-menu-content.mega-menu-style-2 {
        padding: 0 10px;
    }

    .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        position: relative;
        display: block !important;
        visibility: visible !important;
        top: 0 !important;
        left: 0;
        min-width: inherit;
        height: auto !important;
        list-style: none;
        border: 0;
        box-shadow: none;
        background-color: transparent;
        opacity: 1 !important;
        z-index: auto;
    }

    .mega-menu-content .sub-menu-container.mega-menu-dropdown {
        padding: 0.75rem;
        width: 220px;
    }

    .mega-menu-column {
        display: block !important;
        padding-left: 0;
        padding-right: 0;
    }

    .sub-menu-container.mega-menu-column:not(:first-child) {
        border-left: 1px solid #F2F2F2;
    }

    .mega-menu-style-2 .mega-menu-column {
        padding: 15px 15px;
    }

    .mega-menu-style-2 .mega-menu-title:not(:first-child) {
        margin-top: 20px;
    }

    .mega-menu-style-2 .mega-menu-title > .menu-link {
        font-size: 0.8125rem;
        font-weight: 700;
        font-family: 'Poppins', sans-serif;
        letter-spacing: 1px;
        text-transform: uppercase !important;
        margin-bottom: 15px;
        color: #444;
        padding: 0 !important;
        line-height: 1.3 !important;
    }

    .mega-menu-style-2 .mega-menu-title:hover > .menu-link {
        background-color: transparent;
    }

    .mega-menu-style-2 .mega-menu-title > .menu-link:hover {
        color: #1ABC9C;
    }

    .mega-menu-style-2 .sub-menu-container:not(.mega-menu-dropdown) .menu-item {
        border: 0;
    }

    .mega-menu-style-2 .sub-menu-container .menu-link {
        padding-left: 5px;
        padding-top: 7px;
        padding-bottom: 1px;
    }

    .mega-menu-style-2 .sub-menu-container .menu-item:hover > .menu-link { padding-left: 12px; }

    /* Sub-Menu On-Click Dropdown */
    .on-click .sub-menu-container,
    .on-click .mega-menu-content {
        display: none;
        visibility: visible;
    }

    .on-click .menu-item:not(.mega-menu-small) .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
        display: block;
    }


    /* Primary Menu - Style 2
    -----------------------------------------------------------------*/

    .style-2 #logo {
        margin-right: 1.5rem;
    }

    .style-2 .primary-menu {
        margin-right: auto;
    }

    .style-2.menu-center .primary-menu {
        margin-right: auto;
        margin-left: auto;
    }



}



/* ----------------------------------------------------------------
        Top Search
-----------------------------------------------------------------*/

.header-misc {
    position: initial;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    margin-left: 15px;
}

.header-misc-element,
.header-misc-icon {
    margin: 0 8px;
}

.header-misc-icon > a {
    display: block;
    position: relative;
    width: 20px;
    height: 20px;
    font-size: 1.125rem;
    line-height: 20px;
    text-align: center;
    color: #333;
    -webkit-transition: color .3s ease-in-out;
    -o-transition: color .3s ease-in-out;
    transition: color .3s ease-in-out;
}

@media (min-width: 992px) {
    .header-misc:not([class*="order-"]) {
        -ms-flex-order: 6;
        order: 6;
    }
}

#top-search a { z-index: 11; }

#top-search a i {
    /*position: absolute;*/
    position:static;
    /* top: 0;
    left: 3px; */
    top: 3px;
    right: 55px;
    -webkit-transition: opacity .3s ease;
    -o-transition: opacity .3s ease;
    transition: opacity .3s ease;
}

.top-search-open #top-search a i:nth-child(1),
#top-search a i.icon-line-cross:nth-child(2) { opacity: 0; }

.top-search-open #top-search a i.icon-line-cross:nth-child(2) {
    opacity: 1;
    z-index: 11;
    font-size: 1rem;
    position: absolute;
}

.top-search-form {
    opacity: 0;
    z-index: -2;
    pointer-events: none;
    position: absolute;
    width: 100% !important;
    height: 100%;
    padding: 0;
    margin: 0;
    top: 0;
    left: 0;
    -webkit-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
}

.top-search-open .top-search-form {
    opacity: 1;
    z-index: 10;
    pointer-events: auto;
}

.top-search-form input {
    box-shadow: none !important;
    border-radius: 0;
    border: 0;
    outline: 0 !important;
    font-size: 17px;
    padding: 10px 80px 10px 0;
    height: 100%;
    background-color: transparent !important;
    color: #333;
    font-weight: 700;
    margin-top: 0 !important;
    font-family: 'Poppins', sans-serif;
    letter-spacing: 2px;
}

@media (min-width: 992px) {
    .top-search-form input { font-size: 17px; }

    .full-header .top-search-form input,
    .container-fluid .top-search-form input {
        padding-left: 30px;
    }

    .transparent-header:not(.sticky-header):not(.full-header):not(.floating-header) .top-search-form input {
        border-bottom: 2px solid rgba(0,0,0,0.1);
    }
}

.search-overlay .top-search-form {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
    align-items: center;
    justify-content: center;
}

.search-overlay .top-search-form input {
    max-width: 580px;
    margin: 0 auto;
    text-align: center;
    padding: 0 40px;
}

.top-search-form input::-moz-placeholder {
    color: #555;
    opacity: 1;
    text-transform: uppercase;
}
.top-search-form input:-ms-input-placeholder {
    color: #555;
    text-transform: uppercase;
}
.top-search-form input::-webkit-input-placeholder {
    color: #555;
    text-transform: uppercase;
}

.primary-menu .container .top-search-form input,
.sticky-header .top-search-form input { border: none !important; }

/* Top Search Animation */

#top-search {
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
}

body:not(.top-search-open) .top-search-parent #logo,
body:not(.top-search-open) .top-search-parent .primary-menu,
body:not(.top-search-open) .top-search-parent .header-misc > *:not(#top-search) {
    opacity: 1;
    -webkit-transition: padding .4s ease, margin .4s ease, opacity .2s .2s ease;
    transition: padding .4s ease, margin .4s ease, opacity .2s .2s ease;
}

.top-search-open .top-search-parent #logo,
.top-search-open .top-search-parent .primary-menu,
.top-search-open .top-search-parent .header-misc > *:not(#top-search) { opacity: 0; }


/* ----------------------------------------------------------------
        Top Cart
-----------------------------------------------------------------*/


.top-cart-number {
    display: block;
    position: absolute;
    top: -7px;
    left: auto;
    right: -8px;
    font-size: 0.625rem;
    color: #FFF;
    width: 1.125rem;
    height: 1.125rem;
    line-height: 1.125rem;
    text-align: center;
    border-radius: 50%;
    z-index: 1;
    overflow: hidden;
}

.top-cart-number::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #1ABC9C;
    opacity: 0.8;
    z-index: -1;
}

.top-cart-content {
    position: fixed;
    top: 0;
    left: auto;
    width: 260px;
    background-color: #FFF;
    border-left: 1px solid #EEE;
    box-shadow: 0px 20px 50px 10px rgba(0, 0, 0, 0.05);
    -webkit-transition: right .3s ease;
    -o-transition: right .3s ease;
    transition: right .3s ease;
}

@media (max-width: 991.98px) {
    .top-cart-content {
        right: -260px !important;
        height: calc(100vh);
        z-index: 499;
    }

    .top-cart-open .top-cart-content {
        right: 0 !important;
    }
}

.top-cart-title {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #EEE;
}

.top-cart-title h4 {
    margin-bottom: 0;
    font-size: 0.875rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.top-cart-items {
    padding: 1rem;
}

.top-cart-item,
.top-cart-action,
.top-cart-item-desc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
}

.top-cart-item {
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.top-cart-item:not(:first-child) {
    padding-top: 1rem;
    margin-top: 1rem;
    border-top: 1px solid #F5F5F5;
}

.top-cart-item-image {
    width: 48px;
    height: 48px;
    border: 2px solid #EEE;
    -webkit-transition: border-color .2s linear;
    -o-transition: border-color .2s linear;
    transition: border-color .2s linear;
}

.top-cart-item-image a,
.top-cart-item-image img {
    display: block;
    width: 44px;
    height: 44px;
}

.top-cart-item-image:hover { border-color: #1ABC9C; }

.top-cart-item-desc,
.top-cart-item-desc-title {
    padding-left: 1rem;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
}

.top-cart-item-desc {
    -ms-flex-align: start;
    align-items: flex-start;
}

.top-cart-item-desc-title {
    padding-left: 0;
}

.top-cart-item-desc a {
    display: block;
    font-size: 0.8125rem;
    line-height: 1.25rem;
    color: #333;
    font-weight: 700;
    margin-bottom: 5px;
}

.top-cart-item-desc a:hover { color: #1ABC9C; }

.top-cart-item-price {
    font-size: 0.75rem;
    color: #999;
}

.top-cart-item-quantity {
    font-size: 0.75rem;
    line-height: 1.25rem;
    color: #444;
}

.top-cart-action {
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem;
    border-top: 1px solid #EEE;
}

.top-cart-action .top-checkout-price {
    font-size: 1.25rem;
    color: #1ABC9C;
}

@media (min-width: 992px) {
    #top-cart {
        position: relative;
    }

    .top-cart-content {
        opacity: 0;
        position: absolute;
        width: 280px;
        border: 1px solid #EEE;
        border-top: 2px solid #1ABC9C;
        top: calc( 100% + 20px );
        right: -15px;
        margin: -10000px 0 0;
        z-index: auto;
        -webkit-transition: opacity .5s ease, top .4s ease;
        -o-transition: opacity .5s ease, top .4s ease;
        transition: opacity .5s ease, top .4s ease;
    }

    #top-cart.on-hover:hover .top-cart-content,
    .top-cart-open .top-cart-content {
        opacity: 1;
        z-index: 399;
        margin-top: 0;
    }

    .top-cart-items {
        padding: 1rem;
    }
}



/* ----------------------------------------------------------------
        Page Title
-----------------------------------------------------------------*/


#page-title {
    position: relative;
    padding: 1.5rem 0;
    background-color: #F5F5F5;
    border-bottom: 1px solid #EEE;
}

#page-title .container {
    position: relative;
}

#page-title h1 {
    padding: 0;
    margin: 0;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 1px;
    color: #333;
    font-size: 1rem;
    text-transform: uppercase;
}

#page-title span {
    display: block;
    margin-top: 10px;
    font-weight: 300;
    color: #777;
    font-size: 1.125rem;
}

.breadcrumb {
    position: absolute !important;
    width: auto !important;
    top: 50% !important;
    left: auto !important;
    right: 15px !important;
    margin: 0 !important;
    background-color: transparent !important;
    padding: 0 !important;
    font-size: 90%;
    transform: translateY(-50%);
}

.transparent-header + .page-title-parallax .breadcrumb { margin-top: 35px !important; }

.breadcrumb a { color: #555; }

.breadcrumb a:hover { color: #1ABC9C; }

.breadcrumb i { width: auto !important; }



/* Page Title - Right Aligned
-----------------------------------------------------------------*/

.page-title-right { text-align: right; }

.page-title-right .breadcrumb {
    left: 15px !important;
    right: auto !important;
}

/* Page Title - Center Aligned
-----------------------------------------------------------------*/

.page-title-center { text-align: center; }

#page-title.page-title-center span {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

#page-title.page-title-center .breadcrumb {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: 20px 0 0 !important;
    justify-content: center;
    transform: translateY(0);
}


@media (max-width: 767.98px) {
    #page-title {
        padding: 2rem 0;
        text-align: center;
    }

    #page-title h1 {
        line-height: 1.5;
        font-size: calc( 1rem + 2vw );
    }

    .page-title-parallax span {
        font-size: 1rem;
    }

    #page-title .breadcrumb {
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        margin: 20px 0 0 !important;
        justify-content: center;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    #page-title #portfolio-navigation,
    #portfolio-ajax-title #portfolio-navigation {
        position: relative;
        top: 0;
        left: 0;
        margin: 15px auto 0;
    }
}


/* ----------------------------------------------------------------
        Content
-----------------------------------------------------------------*/


#content {
    position: relative;
    background-color: #FFF;
}

#content p { line-height: 1.8; }

.content-wrap {
    position: relative;
    padding: 80px 0 0 0;
    overflow: hidden;
}

#content .container { position: relative; }

.grid-container,
.grid-inner {
    position: relative;
    overflow: hidden;
}

.grid-inner {
    width: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

body:not(.device-touch) .grid-container {
    -webkit-transition: height .4s ease;
    -o-transition: height .4s ease;
    transition: height .4s ease;
}


/* ----------------------------------------------------------------
        Shop
-----------------------------------------------------------------*/


.shop,
.product {
    position: relative;
}

.product .product-image {
    position: relative;
    overflow: hidden;
}

.product-image > a,
.product-image .slide a,
.product-image img {
    display: block;
    width: 100%;
}

body:not(.device-touch):not(.device-sm):not(.device-xs) .product-image > a {
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.product-image > a:nth-of-type(2) {
    opacity: 0;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
}

.product-image:hover > a:nth-of-type(2) {
    opacity: 1;
    z-index: 2;
}

.product-desc {
    padding: 15px 0;
}

.product-title { margin-bottom: 7px; }

.product-title h3 {
    margin: 0;
    /* font-size: 0.9rem; */
    font-size: 12px;
    font-weight: 400;
}

.product-title h3 a,
.single-product .product-title h2 a { color: #333; }

.product-title h3 a:hover,
.single-product .product-title h2 a:hover { color: #1ABC9C; }

.product-price {
    font-size: 1rem;
    font-weight: 700;
    color: #444;
    margin-bottom: 4px;
}

.product-price del {
    font-weight: 400;
    font-size: 90%;
    color: #888;
}

.product-price ins {
    text-decoration: none;
    color: #1ABC9C;
}

.product-image > .badge,
.sale-flash {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 5;
}


/* Shop - Single
-----------------------------------------------------------------*/

.single-product .product {
    width: 100%;
    margin: 0;
}

.shop-quick-view-ajax,
.portfolio-ajax-modal {
    position: relative;
    background-color: #FFF;
    width: auto;
    max-width: 800px;
    margin: 0 auto;
}

.portfolio-ajax-modal {
    max-width: 1000px;
}

.single-product .product-image,
.single-product .product-image img { height: auto; }

.single-product .product-title h2 {
    font-size: 1.75rem;
    margin-bottom: 8px;
}

.single-product .product-price {
    font-size: 1.5rem;
    color: #1ABC9C;
    margin-bottom: 0;
}

.single-product .product-desc .line { margin: 20px 0; }

.quantity {
    display: -ms-inline-flexbox;
    display: inline-flex;
    justify-content: center;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: 30px;
}

.quantity input[type=number]::-webkit-inner-spin-button,
.quantity input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

.quantity .qty {
    width: 50px;
    height: 40px;
    line-height: 40px;
    border: 0;
    border-left: 1px solid #DDD;
    border-right: 1px solid #DDD;
    background-color: #EEE;
    text-align: center;
    margin-bottom: 0;
}

.quantity .plus,
.quantity .minus {
    display: block;
    cursor: pointer;
    border: 0px transparent;
    padding: 0;
    width: 36px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background-color: #EEE;
    font-size: 1rem;
    font-weight: bold;
    transition: background-color .2s linear;
    -webkit-transition: background-color .2s linear;
    -o-transition: background-color .2s linear;
}

.quantity .plus:hover,
.quantity .minus:hover { background-color: #DDD; }

.quantity .qty:focus,
.quantity .plus:focus,
.quantity .minus:focus {
    box-shadow: none !important;
    outline: 0 !important;
}

.product-meta {
    font-size: 90%;
    color: #777;
}

.product-meta > .card-body > span {
    display: inline-block;
    margin: 0 5px;
}


.single-product .fbox-plain.fbox-sm .fbox-icon {
    width: 2.25rem;
}

.single-product .fbox-plain.fbox-sm .fbox-icon i {
    font-size: 1.125rem;
    line-height: 1.5;
}

/* ----------------------------------------------------------------
        Buttons
-----------------------------------------------------------------*/


.button {
    display: inline-block;
    position: relative;
    cursor: pointer;
    outline: none;
    white-space: nowrap;
    margin: 5px;
    padding: 8px 22px;
    font-size: 0.875rem;
    line-height: 24px;
    background-color: #1ABC9C;
    color: #FFF;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: none;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

body:not(.device-touch) .button {
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.button.button-dark {
    background-color: #444;
}

.button.button-light {
    background-color: #EEE;
    color: #333;
    text-shadow: none !important;
}

.button:hover {
    background-color: #444;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

.button.button-dark:hover { background-color: #1ABC9C; }

.button.button-mini {
    padding: 4px 14px;
    font-size: 11px;
    line-height: 20px;
}

.button.button-small {
    padding: 7px 17px;
    font-size: 12px;
    line-height: 20px;
}

.button.button-large {
    padding: 8px 26px;
    font-size: 1rem;
    line-height: 30px;
}

.button.button-xlarge {
    padding: 9px 32px;
    font-size: 18px;
    letter-spacing: 2px;
    line-height: 34px;
}

.button.button-desc {
    text-align: left;
    padding: 24px 34px;
    font-size: 1.25rem;
    height: auto;
    line-height: 1;
    font-family: 'Poppins', sans-serif;
}

.button.button-desc span {
    display: block;
    margin-top: 10px;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 1px;
    font-family: 'PT Serif', serif;
    font-style: italic;
    text-transform: none;
}

.button i {
    position: relative;
    margin-right: 5px;
    width: 16px;
    text-align: center;
}

.button.text-end i { margin: 0 0 0 5px; }

.button-mini i { margin-right: 3px; }

.button-mini.text-end i { margin: 0 0 0 3px; }

.button-small i { margin-right: 4px; }

.button-small.text-end i { margin: 0 0 0 4px; }

.button-xlarge i {
    margin-right: 8px;
}

.button-xlarge.text-end i { margin: 0 0 0 8px; }

.button.button-desc i {
    font-size: 48px;
    width: 48px;
    text-align: center;
    margin-right: 12px;
}

.button.button-desc.text-end i { margin: 0 0 0 12px; }

.button.button-desc div { display: inline-block; }

.button.button-rounded { border-radius: 3px; }


/* Buttons - Border
-----------------------------------------------------------------*/

.button.button-border {
    /* border: 2px solid #444; */
    border: 2px solid #1bbc9c;
    background-color: transparent;
    color: #333;
    font-weight: 700;
    text-shadow: none;
}

.button.button-border-thin {
    border-width: 1px;
}

.button.button-border.button-desc { line-height: 1; }

.button.button-border:not(.button-fill):hover {
    background-color: #444;
    color: #FFF;
    border-color: transparent !important;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

.button.button-border.button-light {
    border-color: #FFF;
    color: #FFF;
}

.button.button-border.button-light:hover {
    background-color: #FFF;
    color: #333;
    text-shadow: none;
}


/* Buttons - Border
-----------------------------------------------------------------*/

.button.button-3d {
    border-radius: 3px;
    box-shadow: inset 0 -3px 0 rgba(0,0,0,0.15);
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.button.button-3d:hover {
    background-color: #1ABC9C;
    opacity: 0.9;
}

.button.button-3d.button-light:hover,
.button.button-reveal.button-light:hover {
    text-shadow: none;
    color: #333;
}




/* Buttons - Fill Effect
-----------------------------------------------------------------*/

.button.button-border.button-fill {
    overflow: hidden;
    transform-style: preserve-3d;
    -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
    -webkit-backface-visibility: hidden;
}

.button.button-border.button-fill span { position: relative; }

.button.button-border.button-fill:hover {
    background-color: transparent !important;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

.button.button-border.button-fill.button-light:hover {
    border-color: #EEE !important;
    color: #333 !important;
    text-shadow: none;
}

.button.button-border.button-fill::before {
    content: '';
    position: absolute;
    background-color: #444;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    -webkit-backface-visibility: hidden;
}

.button.button-border.button-fill.button-light::before { background-color: #EEE; }

.button.button-border.button-fill.fill-from-right::before {
    left: auto;
    right: 0;
}

.button.button-border.button-fill:hover::before { width: 100%; }

.button.button-border.button-fill.fill-from-top::before,
.button.button-border.button-fill.fill-from-bottom::before {
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.button.button-border.button-fill.fill-from-top::before {
    width: 100%;
    height: 0;
}

.button.button-border.button-fill.fill-from-top:hover::before { height: 100%; }

.button.button-border.button-fill.fill-from-bottom::before {
    width: 100%;
    height: 0;
    top: auto;
    bottom: 0;
}

.button.button-border.button-fill.fill-from-bottom:hover::before { height: 100%; }



/* Buttons - Colors
-----------------------------------------------------------------*/

.button-red:not(.button-border) { background-color: #C02942 !important; }
.button-3d.button-red:hover,
.button-reveal.button-red:hover,
.button-border.button-red:hover,
.button-border.button-red.button-fill::before { background-color: #C02942 !important; }

.button-border.button-red {
    color: #C02942;
    border-color: #C02942;
}

.button-teal:not(.button-border) { background-color: #53777A !important; }
.button-3d.button-teal:hover,
.button-reveal.button-teal:hover,
.button-border.button-teal:hover,
.button-border.button-teal.button-fill::before { background-color: #53777A !important; }

.button-border.button-teal {
    color: #53777A;
    border-color: #53777A;
}

.button-light.button-yellow:not(.button-border) { background-color: #ECD078 !important; }
.button-3d.button-yellow:hover,
.button-reveal.button-yellow:hover,
.button-border.button-yellow:hover,
.button-border.button-yellow.button-fill::before { background-color: #ECD078 !important; }

.button-border.button-yellow,
.button-border.button-yellow.button-fill.button-light:hover {
    color: #ECD078 !important;
    border-color: #ECD078 !important;
}

.button-border.button-yellow:hover,
.button-border.button-yellow.button-fill.button-light:hover { color: #333 !important; }

.button-green:not(.button-border) { background-color: #59BA41 !important; }
.button-3d.button-green:hover,
.button-reveal.button-green:hover,
.button-border.button-green:hover,
.button-border.button-green.button-fill::before { background-color: #59BA41 !important; }

.button-border.button-green {
    color: #59BA41;
    border-color: #59BA41;
}

.button-brown:not(.button-border) { background-color: #774F38 !important; }
.button-3d.button-brown:hover,
.button-reveal.button-brown:hover,
.button-border.button-brown:hover,
.button-border.button-brown.button-fill::before { background-color: #774F38 !important; }

.button-border.button-brown {
    color: #774F38;
    border-color: #774F38;
}

.button-aqua:not(.button-border) { background-color: #40C0CB !important; }
.button-3d.button-aqua:hover,
.button-reveal.button-aqua:hover,
.button-border.button-aqua:hover,
.button-border.button-aqua.button-fill::before { background-color: #40C0CB !important; }

.button-border.button-aqua {
    color: #40C0CB;
    border-color: #40C0CB;
}

.button-light.button-lime:not(.button-border) { background-color: #AEE239 !important; }
.button-3d.button-lime:hover,
.button-reveal.button-lime:hover,
.button-border.button-lime:hover,
.button-border.button-lime.button-fill::before { background-color: #AEE239 !important; }

.button-border.button-lime {
    color: #AEE239;
    border-color: #AEE239;
}

.button-purple:not(.button-border) { background-color: #5D4157 !important; }
.button-3d.button-purple:hover,
.button-reveal.button-purple:hover,
.button-border.button-purple:hover,
.button-border.button-purple.button-fill::before { background-color: #5D4157 !important; }

.button-border.button-purple {
    color: #5D4157;
    border-color: #5D4157;
}

.button-leaf:not(.button-border) { background-color: #A8CABA !important; }
.button-3d.button-leaf:hover,
.button-reveal.button-leaf:hover,
.button-border.button-leaf:hover,
.button-border.button-leaf.button-fill::before { background-color: #A8CABA !important; }

.button-border.button-leaf {
    color: #A8CABA;
    border-color: #A8CABA;
}

.button-pink:not(.button-border) { background-color: #F89FA1 !important; }
.button-3d.button-pink:hover,
.button-reveal.button-pink:hover,
.button-border.button-pink:hover,
.button-border.button-pink.button-fill::before { background-color: #F89FA1 !important; }

.button-border.button-pink {
    color: #F89FA1;
    border-color: #F89FA1;
}

.button-dirtygreen:not(.button-border) { background-color: #1693A5 !important; }
.button-3d.button-dirtygreen:hover,
.button-reveal.button-dirtygreen:hover,
.button-border.button-dirtygreen:hover,
.button-border.button-dirtygreen.button-fill::before { background-color: #1693A5 !important; }

.button-border.button-dirtygreen {
    color: #1693A5;
    border-color: #1693A5;
}

.button-blue:not(.button-border) { background-color: #1265A8 !important; }
.button-3d.button-blue:hover,
.button-reveal.button-blue:hover,
.button-border.button-blue:hover,
.button-border.button-blue.button-fill::before { background-color: #1265A8 !important; }

.button-border.button-blue {
    color: #1265A8;
    border-color: #1265A8;
}

.button-amber:not(.button-border) { background-color: #EB9C4D !important; }
.button-3d.button-amber:hover,
.button-reveal.button-amber:hover,
.button-border.button-amber:hover,
.button-border.button-amber.button-fill::before { background-color: #EB9C4D !important; }

.button-border.button-amber {
    color: #EB9C4D;
    border-color: #EB9C4D;
}

.button-black:not(.button-border) { background-color: #111 !important; }
.button-3d.button-black:hover,
.button-reveal.button-black:hover,
.button-border.button-black:hover,
.button-border.button-black.button-fill::before { background-color: #111 !important; }

.button-border.button-black {
    color: #111;
    border-color: #111;
}

.button-white:not(.button-border) { background-color: #F9F9F9 !important; }
.button-3d.button-white:hover,
.button-reveal.button-white:hover { background-color: #F9F9F9 !important; }


/* ----------------------------------------------------------------
        Featured Boxes
-----------------------------------------------------------------*/


.feature-box {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -0.75rem;
    margin-right: -0.75rem;
}

.feature-box:first-child { margin-top: 0; }

.fbox-icon {
    width: 5.5rem;
    height: 4rem;
    padding: 0 0.75rem;
}

.fbox-icon a,
.fbox-icon i,
.fbox-icon img {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    color: #FFF;
}

.fbox-icon i,
.fbox-icon img {
    border-radius: 50%;
    background-color: #1ABC9C;
}

.fbox-icon i {
    font-style: normal;
    font-size: 1.75rem;
    line-height: 4rem;
    text-align: center;
}

.fbox-content {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
    padding: 0 0.75rem;
}

.fbox-content h3 {
    font-size: 1rem;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
    text-transform: uppercase;
    margin-bottom: 0;
    color: #333;
}

.fbox-content p {
    margin-top: 0.5rem;
    margin-bottom: 0px;
    color: #999;
}

.fbox-content .before-heading {
    font-size: 0.875rem;
}

.fbox-content-sm h3,
.fbox-content-sm p {
    font-size: 0.875rem;
}

.fbox-content-sm .before-heading {
    font-size: 0.75rem;
}

.fbox-content-lg h3 {
    font-size: 1.25rem;
}

.fbox-content-lg p {
    font-size: 1.125rem;
    margin-top: 0.75rem;
}

.fbox-content-lg .before-heading {
    font-size: 1rem;
}


/* Feature Box - Icon Small
-----------------------------------------------------------------*/

.fbox-sm {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}

.fbox-sm .fbox-icon {
    width: 3rem;
    height: 2rem;
    padding: 0 0.5rem;
}

.fbox-sm .fbox-icon i {
    font-size: 1rem;
    line-height: 2rem;
}

.fbox-sm .fbox-content {
    padding: 0 0.5rem;
}

/* Feature Box - Icon Large
-----------------------------------------------------------------*/

.fbox-lg .fbox-icon {
    width: 7.5rem;
    height: 6rem;
}

.fbox-lg .fbox-icon i {
    font-size: 2.5rem;
    line-height: 6rem;
}

/* Feature Box - Icon X-Large
-----------------------------------------------------------------*/

.fbox-xl .fbox-icon {
    width: 9.5rem;
    height: 8rem;
}

.fbox-xl .fbox-icon i {
    font-size: 4.5rem;
    line-height: 8rem;
}


/* Feature Box - Icon Outline
-----------------------------------------------------------------*/

.fbox-outline .fbox-icon a {
    border: 1px solid #1ABC9C;
    padding: 0.25rem;
    border-radius: 50%;
}

.fbox-outline .fbox-icon i {
    line-height: 3.5rem;
}


/* Feature Box - Icon Outline Sizes
-----------------------------------------------------------------*/

.fbox-outline.fbox-sm .fbox-icon i { line-height: 1.5rem; }

.fbox-outline.fbox-lg .fbox-icon i { line-height: 5.5rem; }

.fbox-outline.fbox-xl .fbox-icon i { line-height: 7.5rem; }


/* Feature Box - Icon Rounded
-----------------------------------------------------------------*/

.fbox-rounded .fbox-icon { border-radius: 3px !important; }

.fbox-rounded .fbox-icon i,
.fbox-rounded .fbox-icon img { border-radius: 3px !important; }


/* Feature Box - Icon Rounded Sizes
-----------------------------------------------------------------*/

.fbox-rounded.fbox-lg .fbox-icon { border-radius: 4px !important; }

.fbox-rounded.fbox-lg .fbox-icon i,
.fbox-rounded.fbox-lg .fbox-icon img { border-radius: 4px !important; }

.fbox-rounded.fbox-xl .fbox-icon { border-radius: 6px !important; }

.fbox-rounded.fbox-xl .fbox-icon i,
.fbox-rounded.fbox-xl .fbox-icon img { border-radius: 6px !important; }


/* Feature Box - Light Background
-----------------------------------------------------------------*/

.fbox-light.fbox-outline .fbox-icon a { border-color: #E5E5E5; }

.fbox-light .fbox-icon i,
.fbox-light .fbox-icon img {
    border: 1px solid #E5E5E5;
    background-color: #F5F5F5;
    color: #444;
}


/* Feature Box - Dark Background
-----------------------------------------------------------------*/

.fbox-dark.fbox-outline .fbox-icon a { border-color: #444; }

.fbox-dark .fbox-icon i,
.fbox-dark .fbox-icon img { background-color: #333; }


/* Feature Box - Border
-----------------------------------------------------------------*/

.fbox-border .fbox-icon a {
    border: 1px solid #1ABC9C;
    border-radius: 50%;
}

.fbox-border .fbox-icon i,
.fbox-border .fbox-icon img {
    border: none;
    background-color: transparent !important;
    color: #1ABC9C;
}


/* Feature Box - Border - Light
-----------------------------------------------------------------*/

.fbox-border.fbox-light .fbox-icon a { border-color: #E5E5E5; }

.fbox-border.fbox-light .fbox-icon i,
.fbox-border.fbox-light .fbox-icon img { color: #888; }


/* Feature Box - Border - Dark
-----------------------------------------------------------------*/

.fbox-border.fbox-dark .fbox-icon a { border-color: #333; }

.fbox-border.fbox-dark .fbox-icon i,
.fbox-border.fbox-dark .fbox-icon img { color: #444; }


/* Feature Box - Plain
-----------------------------------------------------------------*/

.fbox-plain .fbox-icon {
    border: none !important;
}

.fbox-plain .fbox-icon i,
.fbox-plain .fbox-icon img {
    border: none;
    background-color: transparent !important;
    color: #1ABC9C;
    border-radius: 0;
}

.fbox-plain .fbox-icon i {
    font-size: 3rem;
    line-height: 1;
}

.fbox-plain.fbox-image .fbox-icon { width: auto; }

.fbox-plain.fbox-image .fbox-icon img {
    width: auto;
    display: inline-block;
}

.fbox-plain.fbox-light .fbox-icon i,
.fbox-plain.fbox-light .fbox-icon img { color: #888; }

.fbox-plain.fbox-dark .fbox-icon i,
.fbox-plain.fbox-dark .fbox-icon img { color: #444; }


/* Feature Box - Icon Plain Sizes
-----------------------------------------------------------------*/

.fbox-plain.fbox-sm .fbox-icon i { font-size: 2rem; }

.fbox-plain.fbox-lg .fbox-icon i { font-size: 4.5rem; }

.fbox-plain.fbox-xl .fbox-icon i { font-size: 6rem; }


/* Feature Box - Center & Large Icons
-----------------------------------------------------------------*/

.fbox-center {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

.fbox-center .fbox-icon {
    margin-bottom: 1.5rem;
}

.fbox-center .fbox-content {
    -ms-flex-preferred-size: auto;
}


/* Feature Box - Subtitle
-----------------------------------------------------------------*/

.fbox-content + .fbox-icon {
    margin-top: 1.5rem;
    margin-bottom: 0 !important;
}

.fbox-content h3 span.subtitle {
    display: block;
    margin-top: 5px;
    color: #444;
    font-weight: 300;
    text-transform: none;
}

.fbox-center.fbox-sep:not(.fbox-bg) h3::after {
    content: '';
    display: block;
    margin: 1.25rem auto;
    width: 2rem;
    height: 2px;
    background-color: #555;
    -webkit-transition: width .3s ease;
    -o-transition: width .3s ease;
    transition: width .3s ease;
}

.fbox-center.fbox-sep:not(.fbox-bg):hover h3::after { width: 3rem; }

.fbox-center.fbox-italic p {
    font-style: italic;
    font-family: 'Lato', sans-serif;
}


/* Feature Box - Background
-----------------------------------------------------------------*/

.fbox-bg.fbox-center {
    margin-top: 2rem;
    margin-left: 0;
    margin-right: 0;
    padding: 0 2rem 2rem;
    border: 1px solid #E5E5E5;
    border-radius: 5px;
}

.fbox-bg.fbox-center .fbox-icon {
    margin-top: -2rem;
}

.fbox-bg.fbox-center .fbox-icon { background-color: #FFF; }


.fbox-bg.fbox-center.fbox-lg {
    margin-top: 3rem;
}

.fbox-bg.fbox-center.fbox-lg .fbox-icon {
    margin-top: -3rem;
}

.fbox-bg.fbox-center.fbox-xl {
    margin-top: 4rem;
}

.fbox-bg.fbox-center.fbox-xl .fbox-icon {
    margin-top: -4rem;
}


/* Animated Icon Hovers
-----------------------------------------------------------------*/

.fbox-effect .fbox-icon i { z-index: 1; }

.fbox-effect .fbox-icon i::after {
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    content: '';
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.fbox-rounded.fbox-effect .fbox-icon i::after { border-radius: 3px; }

.fbox-effect .fbox-icon i {
    -webkit-transition: background-color 0.3s, color 0.3s;
    -o-transition: background-color 0.3s, color 0.3s;
    transition: background-color 0.3s, color 0.3s;
}

.fbox-effect .fbox-icon i::after {
    top: -3px;
    left: -3px;
    padding: 3px;
    box-shadow: 0 0 0 2px #333;
    -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
    -webkit-transform: scale(.8);
    -moz-transition: -moz-transform 0.3s, opacity 0.3s;
    -moz-transform: scale(.8);
    -ms-transform: scale(.8);
    transition: transform 0.3s, opacity 0.3s;
    transform: scale(.8);
    opacity: 0;
}

.fbox-effect .fbox-icon i:hover,
.fbox-effect:hover .fbox-icon i {
    background-color: #333;
    color: #FFF;
}

.fbox-effect.fbox-dark .fbox-icon i::after { box-shadow: 0 0 0 2px #1ABC9C; }

.fbox-effect.fbox-dark .fbox-icon i:hover,
.fbox-effect.fbox-dark:hover .fbox-icon i { background-color: #1ABC9C; }

.fbox-effect .fbox-icon i:hover::after,
.fbox-effect:hover .fbox-icon i::after {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

/* Icon Effects - Bordered
-----------------------------------------------------------------*/

.fbox-border.fbox-effect .fbox-icon i {
    -webkit-transition: color 0.5s, box-shadow 0.5s, background-color 0.5s;
    -o-transition: color 0.5s, box-shadow 0.5s, background-color 0.5s;
    transition: color 0.5s, box-shadow 0.5s, background-color 0.5s;
}

.fbox-border.fbox-effect .fbox-icon i::after {
    top: -2px;
    left: -2px;
    padding: 2px;
    z-index: -1;
    box-shadow: none;
    background-image: url('images/icons/iconalt.svg');
    background-position: center center;
    background-size: 100% 100%;
    -webkit-transition: -webkit-transform 0.5s, opacity 0.5s, background-color 0.5s;
    -o-transition: -moz-transform 0.5s, opacity 0.5s, background-color 0.5s;
    transition: transform 0.5s, opacity 0.5s, background-color 0.5s;
}

.fbox-border.fbox-rounded.fbox-effect .fbox-icon i::after { border-radius: 3px; }

.fbox-border.fbox-effect .fbox-icon i:hover,
.fbox-border.fbox-effect:hover .fbox-icon i {
    color: #FFF;
    box-shadow: 0 0 0 1px #333;
}

.fbox-border.fbox-effect .fbox-icon i::after {
    -webkit-transform: scale(1.3);
    -moz-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
    opacity: 0;
    background-color: #333;
}

.fbox-border.fbox-effect.fbox-dark .fbox-icon i:hover,
.fbox-border.fbox-effect.fbox-dark:hover .fbox-icon i { box-shadow: 0 0 0 1px #1ABC9C; }

.fbox-border.fbox-effect.fbox-dark .fbox-icon i::after { background-color: #1ABC9C; }

.fbox-border.fbox-effect .fbox-icon i:hover::after,
.fbox-border.fbox-effect:hover .fbox-icon i::after {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}


/* Media Featured Box
-----------------------------------------------------------------*/

.media-box {
    padding: 0;
    margin-left: 0;
    margin-right: 0;
    -ms-flex-direction: column;
    flex-direction: column;
}

.media-box .fbox-media { margin: 0 0 1.5rem; }

.media-box .fbox-media,
.media-box .fbox-media a,
.media-box .fbox-media img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

.media-box .fbox-media iframe { display: block; }

.media-box p { margin-top: 1rem; }

.media-box .fbox-content {
    -ms-flex-preferred-size: auto;
}

.media-box.fbox-bg .fbox-media { margin: 0; }

.media-box.fbox-bg .fbox-content {
    padding: 1.5rem;
    background-color: #FFF;
    border: 1px solid #E5E5E5;
    border-top: 0;
    border-radius: 0 0 5px 5px;
}

.media-box.fbox-bg .fbox-media img { border-radius: 5px 5px 0 0; }



/* ----------------------------------------------------------------
        Styled Icons
-----------------------------------------------------------------*/


.i-rounded,
.i-plain,
.i-circled,
.i-bordered,
.social-icon {
    display: block;
    float: left;
    margin: 4px 11px 7px 0;
    text-align: center !important;
    font-size: 28px;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    cursor: pointer;
    font-style: normal;
}

body:not(.device-touch) .i-rounded,
body:not(.device-touch) .i-plain,
body:not(.device-touch) .i-circled,
body:not(.device-touch) .i-bordered,
body:not(.device-touch) .social-icon {
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.i-rounded,
.i-circled,
.i-bordered {
    width: 52px !important;
    height: 52px !important;
    line-height: 52px !important;
    background-color: #444;
    border-radius: 3px;
}

.i-bordered {
    border: 1px solid #555;
    line-height: 50px !important;
    background-color: transparent !important;
    color: #444;
    text-shadow: none;
}

.i-plain {
    width: 36px !important;
    height: 36px !important;
    font-size: 28px;
    line-height: 36px !important;
    color: #444;
    text-shadow: 1px 1px 1px #FFF;
}

.i-plain:hover { color: #777; }

.i-circled { border-radius: 50%; }

.i-light {
    background-color: #F5F5F5;
    color: #444;
    text-shadow: 1px 1px 1px #FFF;
    box-shadow: inset 0 0 15px rgba(0,0,0,0.2);
}

.i-alt {
    background-image: url('images/icons/iconalt.svg');
    background-position: center center;
    background-size: 100% 100%;
}


.i-rounded:hover,
.i-circled:hover {
    background-color: #1ABC9C;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    box-shadow: 0 0 0 rgba(0,0,0,0.2);
}

.i-bordered:hover {
    background-color: #444 !important;
    color: #FFF;
    border-color: #444;
}


/* Icon Size - Small
-----------------------------------------------------------------*/

.i-small.i-rounded,
.i-small.i-plain,
.i-small.i-circled,
.i-small.i-bordered {
    margin: 4px 11px 7px 0;
    font-size: 0.875rem;
}

.i-small.i-rounded,
.i-small.i-circled,
.i-small.i-bordered {
    width: 28px !important;
    height: 28px !important;
    line-height: 28px !important;
}

.i-small.i-bordered { line-height: 26px !important; }

.i-small.i-plain {
    width: 18px !important;
    height: 18px !important;
    font-size: 0.875rem;
    line-height: 18px !important;
}


/* Icon Size - Small
-----------------------------------------------------------------*/

.i-medium.i-rounded,
.i-medium.i-plain,
.i-medium.i-circled,
.i-medium.i-bordered {
    margin: 6px 13px 9px 0;
    font-size: 21px;
}

.i-medium.i-rounded,
.i-medium.i-circled,
.i-medium.i-bordered {
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
}

.i-medium.i-bordered { line-height: 34px !important; }

.i-medium.i-plain {
    width: 28px !important;
    height: 28px !important;
    font-size: 1.25rem;
    line-height: 28px !important;
}


/* Icon Size - Large
-----------------------------------------------------------------*/

.i-large.i-rounded,
.i-large.i-plain,
.i-large.i-circled,
.i-large.i-bordered {
    margin: 4px 11px 7px 0;
    font-size: 42px;
}

.i-large.i-rounded,
.i-large.i-circled,
.i-large.i-bordered {
    width: 64px !important;
    height: 64px !important;
    line-height: 64px !important;
}

.i-large.i-bordered { line-height: 62px !important; }

.i-large.i-plain {
    width: 48px !important;
    height: 48px !important;
    font-size: 42px;
    line-height: 48px !important;
}


/* Icon Size - Extra Large
-----------------------------------------------------------------*/

.i-xlarge.i-rounded,
.i-xlarge.i-plain,
.i-xlarge.i-circled,
.i-xlarge.i-bordered {
    margin: 4px 11px 7px 0;
    font-size: 56px;
}

.i-xlarge.i-rounded,
.i-xlarge.i-circled,
.i-xlarge.i-bordered {
    width: 84px !important;
    height: 84px !important;
    line-height: 84px !important;
}

.i-xlarge.i-bordered { line-height: 82px !important; }

.i-xlarge.i-plain {
    width: 64px !important;
    height: 64px !important;
    font-size: 56px;
    line-height: 64px !important;
}


/* Icon Size - Extra Extra Large
-----------------------------------------------------------------*/

.i-xxlarge.i-rounded,
.i-xxlarge.i-plain,
.i-xxlarge.i-circled,
.i-xxlarge.i-bordered {
    margin: 6px 15px 10px 0;
    font-size: 64px;
}

.i-xxlarge.i-rounded,
.i-xxlarge.i-circled,
.i-xxlarge.i-bordered {
    width: 96px !important;
    height: 96px !important;
    line-height: 96px !important;
}

.i-xxlarge.i-bordered { line-height: 94px !important; }

.i-xxlarge.i-plain {
    width: 80px !important;
    height: 80px !important;
    font-size: 64px;
    line-height: 80px !important;
}


/* ----------------------------------------------------------------
        Social Icons
-----------------------------------------------------------------*/


.social-icon {
    margin: 0 5px 5px 0;
    width: 40px;
    height: 40px;
    font-size: 1.25rem;
    line-height: 38px !important;
    color: #555;
    text-shadow: none;
    border: 1px solid #AAA;
    border-radius: 3px;
    overflow: hidden;
}

.d-flex > .social-icon,
.d-sm-flex > .social-icon,
.d-md-flex > .social-icon,
.d-lg-flex > .social-icon,
.d-xl-flex > .social-icon,
.d-xxl-flex > .social-icon {
    float: none;
    margin-bottom: 0px;
}


/* Social Icons - Rounded
-----------------------------------------------------------------*/

.si-rounded { border-radius: 50%; }

/* Social Icons - Borderless
-----------------------------------------------------------------*/

.si-borderless { border-color: transparent !important; }

/* Social Icons - Dark
-----------------------------------------------------------------*/

.si-dark {
    background-color: #444;
    color: #FFF !important;
    border-color: transparent;
}

/* Social Icons - Light
-----------------------------------------------------------------*/

.si-light {
    background-color: rgba(0,0,0,0.05);
    color: #666 !important;
    border-color: transparent;
}

/* Social Icons - Colored
-----------------------------------------------------------------*/

.si-colored { border-color: transparent !important; }

.si-colored i { color: #FFF; }

/* Social Icons - Large
-----------------------------------------------------------------*/

.social-icon.si-large {
    margin: 0 10px 10px 0;
    width: 56px;
    height: 56px;
    font-size: 30px;
    line-height: 54px !important;
}

/* Social Icons - Small
-----------------------------------------------------------------*/

.social-icon.si-small {
    width: 32px;
    height: 32px;
    font-size: 0.875rem;
    line-height: 30px !important;
}

.social-icon i {
    display: block;
    position: relative;
}

body:not(.device-touch) .social-icon i {
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.social-icon i:last-child { color: #FFF !important; }

.social-icon:hover i:first-child { margin-top: -38px; }

.social-icon.si-large:hover i:first-child { margin-top: -54px; }

.social-icon.si-small:hover i:first-child { margin-top: -30px; }

.social-icon:hover {
    color: #555;
    border-color: transparent;
}

.si-colored.social-icon { border-color: transparent; }

/* Social Icons - Sticky
-----------------------------------------------------------------*/

.si-sticky {
    position: fixed;
    top: 50%;
    left: 5px;
    width: 36px;
    z-index: 499;
    transform: translateY(-50%);
}

/* Social Icons - Sticky Right
-----------------------------------------------------------------*/

.si-sticky.si-sticky-right {
    left: auto;
    right: 8px;
}

/* Social Icons - Share
-----------------------------------------------------------------*/

.si-share {
    position: relative;
    padding-left: 5px;
    border-top: 1px solid #EEE;
    border-bottom: 1px solid #EEE;
}

.si-share span {
    line-height: 36px;
    font-weight: bold;
    font-size: 13px;
}

.si-share .social-icon {
    margin: -1px 0;
    border-radius: 0;
    font-size: 15px;
}

.si-facebook:hover,
.si-colored.si-facebook { background-color: #3B5998 !important; }

.si-gplus:hover,
.si-colored.si-gplus { background-color: #DD4B39 !important; }

.si-google:hover,
.si-colored.si-google { background-color: #DD4B39 !important; }

.si-linkedin:hover,
.si-colored.si-linkedin { background-color: #0E76A8 !important; }

.si-colored.si-twitter { background-color: #00ACEE !important; }
.si-youtube:hover,

.si-googleplay:hover,
.si-colored.si-googleplay { background-color: #DD4B39 !important; }

.si-instagram:hover,
.si-colored.si-instagram { background-color: #8A3AB9 !important; }


/* Social Icons Text Color
-----------------------------------------------------------------*/

.si-text-color.si-facebook i { color: #3B5998; }

.si-text-color.si-gplus i { color: #DD4B39; }

.si-text-color.si-google i { color: #DD4B39; }
.si-text-color.si-instapaper i { color: #333; }

.si-text-color.si-linkedin i { color: #0E76A8; }
.si-text-color.si-googleplay i { color: #DD4B39; }
.si-text-color.si-whatsapp i { color: #25D366; }


.si-text-color:hover { color: #FFF; }

/* ----------------------------------------------------------------
        Tabs
-----------------------------------------------------------------*/


.tabs {
    position: relative;
    margin: 0 0 30px 0;
}

.tab-nav {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0;
    border-bottom: 1px solid #DDD;
    list-style: none;
    padding: 0 15px;
}

.tab-nav li {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    border: 1px solid #DDD;
    border-bottom: 0;
    border-left: 0;
    height: 41px;
    text-align: center;
}

.tabs-justify .tab-nav li {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.tab-nav li:first-child {
    border-left: 1px solid #DDD;
}

.tab-nav li a {
    display: block;
    padding: 0 15px;
    color: #444;
    height: 40px;
    line-height: 40px;
    background-color: #F2F2F2;
    font-weight: bold;
}

@media (max-width: 767.98px) {
    .tab-nav li a {
        font-size: 0.875rem;
    }
}

.tab-nav li.ui-tabs-active a {
    position: relative;
    top: 1px;
    background-color: #FFF;
}


/* Tabs - Alternate Nav
-----------------------------------------------------------------*/

.tabs-alt .tab-nav li { border-color: transparent; }

.tabs-alt .tab-nav li:first-child { border-left: 0; }

.tabs-alt .tab-nav li a { background-color: #FFF; }

.tabs-alt .tab-nav li.ui-tabs-active a {
    border: 1px solid #DDD;
    border-bottom: 0;
}


/* Tabs - Top Border
-----------------------------------------------------------------*/

.tabs-tb .tab-nav li.ui-tabs-active a {
    top: -1px;
    height: 43px;
    line-height: 38px;
    border-top: 2px solid #1ABC9C;
}

.tabs-alt.tabs-tb .tab-nav li.ui-tabs-active a { height: 42px; }


/* Tabs - Bottom Border
-----------------------------------------------------------------*/

.tabs-bb .tab-nav {
    padding: 0;
}

.tabs-bb .tab-nav li {
    border: 0 !important;
    margin: 0;
}

.tabs-bb .tab-nav li a {
    background-color: transparent;
    border-bottom: 2px solid transparent;
}

.tabs-bb .tab-nav li.ui-tabs-active a {
    border-bottom: 2px solid #1ABC9C;
    top: -2px;
    height: 44px;
    line-height: 44px;
}


/* Tabs - Navigation Style 2
-----------------------------------------------------------------*/


.tab-nav.tab-nav2 {
    border-bottom: 0;
    padding: 0;
}

.tab-nav.tab-nav2 li {
    border: 0;
    margin-left: 10px;
}

.tab-nav.tab-nav2 li:first-child {
    margin-left: 0;
    border-left: 0;
}

.tab-nav.tab-nav2 li a {
    background-color: #F5F5F5;
    border-radius: 2px;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.tab-nav.tab-nav2 li.ui-state-active a {
    top: 0;
    background-color: #1ABC9C;
    color: #FFF;
}


/* Tabs - Large Navigation
-----------------------------------------------------------------*/


.tab-nav-lg {
    margin-bottom: 20px;
    list-style: none;
}

.tab-nav-lg li {
    position: relative;
    text-align: center;
    padding: 1rem;
}

.tab-nav-lg li a {
    display: inline-block;
    color: #444;
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.tab-nav.tab-nav-lg li i {
    display: block;
    font-size: 28px;
    margin: 0 0 7px;
}

.tab-nav-lg li.ui-tabs-active a {
    color: #1ABC9C;
}



.tab-nav-lg.tab-nav-section li.ui-tabs-active::before,
.tab-nav-lg.tab-nav-section li.ui-tabs-active::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: auto;
    bottom: -50px;
    border: solid transparent;
}

.tab-nav-lg.tab-nav-section li.ui-tabs-active::after {
    border-top-color: #FFF;
    border-width: 16px;
    left: 50%;
    margin-left: -16px;
}

.tab-nav-lg.tab-nav-section li.ui-tabs-active::before {
    border-top-color: #FFF;
    border-width: 16px;
    left: 50%;
    margin-left: -16px;
}


/* Tabs - Content Area
-----------------------------------------------------------------*/

.tab-container {
    position: relative;
    padding: 20px 0 0;
}

.tabs .tab-content:not(:first-child) {
    display: none;
}

.tab-nav i {
    position: relative;
    top: 1px;
    margin-right: 3px;
}

/* Tabs - Bordered
-----------------------------------------------------------------*/

.tabs-bordered .tab-nav {
    padding: 0;
}

.tabs-bordered .tab-nav li:first-child { margin-left: 0; }

.tabs-bordered .tab-container {
    border: 1px solid #DDD;
    border-top: 0;
    padding: 20px;
}


/* Slider Caption
-----------------------------------------------------------------*/

.slider-caption {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    flex-flow: column;
    justify-content: center;
    z-index: 20;
    max-width: 550px;
    color: #EEE;
    font-size: 1.375rem;
    font-weight: 300;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.15);
    -webkit-transition: top .3s ease;
    -o-transition: top .3s ease;
    transition: top .3s ease;
}

.slider-caption:not(.dark),
.slider-caption:not(.dark) h2 {
    color: #222;
    text-shadow: none;
}

.slider-caption h2 {
    font-size: 4rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0;
}

.slider-caption p {
    margin-top: 30px;
    margin-bottom: 10px;
    font-size: 1.5rem;
}

@media (max-width: 991.98px) {

    .swiper_wrapper .slider-caption h2 {
        font-size: 5.5vw;
    }

    .swiper_wrapper .slider-caption p {
        font-size: 2.6vw;
    }

}

.slider-caption.slider-caption-right {
    margin-left: auto;
}

.slider-caption.slider-caption-center {
    position: relative;
    max-width: 800px;
    text-align: center;
    margin: 0 auto;
    left: 0;
    right: 0;
}

.slider-caption-bg {
    padding: 5px 12px;
    border-radius: 2px;
    background-color: rgba(0,0,0,0.6);
    top: auto;
    bottom: 50px;
    left: 50px;
}

.slider-caption-bg.slider-caption-bg-light {
    background-color: rgba(255,255,255,0.8);
    color: #333;
    font-weight: 400;
    text-shadow: none;
}

.slider-caption-top-left {
    top: 50px;
    bottom: auto;
}

.slider-caption-top-right {
    top: 50px;
    bottom: auto;
    left: auto;
    right: 50px;
}

.slider-caption-bottom-right {
    left: auto;
    right: 50px;
}


/* Slider Arrows
-----------------------------------------------------------------*/

.slider-element .owl-carousel { margin: 0; }

.slider-arrow-left,
.slider-arrow-right,
.flex-prev,
.flex-next,
.slider-arrow-top-sm,
.slider-arrow-bottom-sm {
    position: absolute;
    cursor: pointer;
    z-index: 10;
    top: 50%;
    left: 0;
    background-color: rgba(0,0,0,0.3);
    width: 52px;
    height: 52px;
    border: 0;
    border-radius: 0 3px 3px 0;
    transform: translateY(-50%);
    -webkit-transition: background-color .3s ease-in-out;
    -o-transition: background-color .3s ease-in-out;
    transition: background-color .3s ease-in-out;
}

.slider-arrow-top-sm,
.slider-arrow-bottom-sm {
    top: auto;
    bottom: 57px;
    left: auto;
    right: 20px;
    margin: 0;
    width: 32px;
    height: 32px;
    border-radius: 3px 3px 0 0;
}

.slider-arrow-bottom-sm {
    bottom: 20px;
    border-radius: 0 0 3px 3px;
}

.fslider[data-thumbs="true"] .flex-prev,
.fslider[data-thumbs="true"] .flex-next { margin-top: -20px; }

.slider-arrow-right,
.slider-element .owl-next,
.flex-next {
    left: auto;
    right: 0;
    border-radius: 3px 0 0 3px;
}

.slider-arrow-left i,
.slider-arrow-right i,
.flex-prev i,
.flex-next i,
.slider-arrow-top-sm i,
.slider-arrow-bottom-sm i {
    line-height: 50px;
    width: 100%;
    height: 100%;
    color: #DDD;
    color: rgba(255,255,255,0.8);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.1);
    font-size: 34px;
    text-align: center;
    transition: color .3s ease-in-out;
}


.slider-arrow-top-sm i,
.slider-arrow-bottom-sm i {
    width: 32px;
    height: 32px;
    margin: 0;
    line-height: 30px;
    font-size: 18px;
    color: #FFF;
    color: rgba(255,255,255,1);
}

.slider-element .owl-prev i { margin-left: 0; }

.slider-element .owl-next i { margin-right: 4px; }

.slider-arrow-left:hover,
.slider-arrow-right:hover,
.flex-prev:hover,
.flex-next:hover,
.slider-arrow-top-sm:hover,
.slider-arrow-bottom-sm:hover { background-color: rgba(0,0,0,0.6) !important; }


/* Slide Number
-----------------------------------------------------------------*/

.slide-number {
    position: absolute;
    opacity: 0;
    top: auto;
    right: 20px;
    bottom: 20px;
    z-index: 20;
    width: 36px;
    height: 40px;
    text-align: center;
    color: rgba(255,255,255,0.8);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.15);
    font-size: 18px;
    font-weight: 300;
    -webkit-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
}

.slider-element:hover .slide-number { opacity: 1; }

.slide-number-current,
.slide-number-total {
    position: absolute;
    line-height: 1;
    top: 5px;
    left: 0;
}

.slide-number-total {
    top: auto;
    bottom: 5px;
    left: auto;
    right: 0;
}

.slide-number span {
    display: block;
    font-size: 32px;
    line-height: 40px;
}


/* Pagination
-----------------------------------------------------------------*/

.slider-element .owl-dots {
    position: absolute;
    width: 100%;
    z-index: 20;
    margin: 0;
    top: auto;
    bottom: 15px;
}

.slider-element .owl-dots button {
    width: 10px;
    height: 10px;
    margin: 0 3px;
    opacity: 1 !important;
    background-color: transparent !important;
    border: 1px solid #FFF;
}

.slider-element .owl-dots .owl-dot.active,
.slider-element .owl-dots .owl-dot:hover { background-color: #FFF !important; }


/* Flex Slider - Navigation
-----------------------------------------------------------------*/

.nav-offset .flex-prev,
.nav-offset .flex-next {
    border-radius: 3px;
}

.nav-offset .flex-prev {
    left: 20px;
}

.nav-offset .flex-next {
    right: 20px;
}

.nav-circle .flex-prev,
.nav-circle .flex-next {
    border-radius: 50%;
}

.nav-solid .flex-prev,
.nav-solid .flex-next {
    opacity: 1;
    background-color: #FFF;
}

.nav-solid .flex-prev:hover,
.nav-solid .flex-next:hover {
    background-color: #333 !important;
}

.nav-solid .flex-prev:not(:hover) i,
.nav-solid .flex-next:not(:hover) i {
    color: #444;
    text-shadow: none;
}


.nav-size-sm .flex-prev,
.nav-size-sm .flex-next {
    width: 32px;
    height: 32px;
}

.nav-size-sm .flex-prev i,
.nav-size-sm .flex-next i {
    line-height: 32px;
    font-size: 1.5rem;
}

.fslider[class*="nav-pos-"] .flex-prev,
.fslider[class*="nav-pos-"] .flex-next {
    position: relative;
    display: block;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 5px;
    transform: none;
}

.fslider.nav-size-sm[class*="nav-pos-"] .flex-prev,
.fslider.nav-size-sm[class*="nav-pos-"] .flex-next {
    margin: 0 3px;
}

.fslider[class*="nav-pos-"] .flex-direction-nav {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 100%;
}

.nav-pos-top .flex-direction-nav,
.nav-pos-top-left .flex-direction-nav,
.nav-pos-top-right .flex-direction-nav {
    top: 20px;
    left: 0;
}

.nav-pos-bottom .flex-direction-nav,
.nav-pos-bottom-left .flex-direction-nav,
.nav-pos-bottom-right .flex-direction-nav {
    top: auto;
    bottom: 20px;
}

.nav-pos-top-left .flex-direction-nav,
.nav-pos-bottom-left .flex-direction-nav {
    width: auto !important;
    left: 16px;
}

.nav-pos-top-right .flex-direction-nav,
.nav-pos-bottom-right .flex-direction-nav {
    width: auto !important;
    left: auto;
    right: 16px;
}


/* Flex Slider - Pagination & Thumbs
-----------------------------------------------------------------*/

.fslider[data-animation="fade"][data-thumbs="true"] .flexslider,
.fslider.testimonial[data-animation="fade"] .flexslider { height: auto !important; }

.flex-control-nav {
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    align-items: center;
    justify-content: center;
    width: auto;
    z-index: 10;
    text-align: center;
    top: 14px;
    right: 10px;
    margin: 0;
}

.flex-control-nav li {
    display: block;
    margin: 0 3px;
    width: 0.625rem;
    height: 0.625rem;
}

.flex-control-nav li a {
    display: block;
    cursor: pointer;
    text-indent: -9999px;
    width: 100% !important;
    height: 100% !important;
    border: 1px solid #FFF;
    color: transparent;
    border-radius: 50%;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
}

.flex-control-nav li:hover a,
.flex-control-nav li a.flex-active {
    background-color: #FFF;
}


.control-solid .flex-control-nav li a {
    border: none;
    background-color: #FFF;
}

.control-solid .flex-control-nav li:hover a,
.control-solid .flex-control-nav li a.flex-active {
    background-color: #1ABC9C;
}


.control-square .flex-control-nav li a {
    border-radius: 3px;
}

.control-diamond .flex-control-nav li a {
    border-radius: 3px;
    transform: rotate(45deg);
}


/* Flex Slider: Pagination Positions
-----------------------------------------------------------------*/

.control-offset-lg .flex-control-nav {
    top: 24px;
    right: 20px;
}

.control-pos-top-left .flex-control-nav,
.control-pos-bottom-left .flex-control-nav {
    left: 10px;
    right: auto;
}

.control-offset-lg.control-pos-top-left .flex-control-nav,
.control-offset-lg.control-pos-bottom-left .flex-control-nav {
    left: 20px;
}

.control-pos-bottom-right .flex-control-nav,
.control-pos-bottom-left .flex-control-nav,
.control-pos-bottom .flex-control-nav,
.control-pos-bottom .flex-control-nav {
    top: auto;
    bottom: 14px;
}

.control-offset-lg.control-pos-bottom-right .flex-control-nav,
.control-offset-lg.control-pos-bottom-left .flex-control-nav,
.control-offset-lg.control-pos-bottom .flex-control-nav,
.control-offset-lg.control-pos-bottom .flex-control-nav {
    bottom: 24px;
}

.control-pos-bottom .flex-control-nav,
.control-pos-bottom .flex-control-nav,
.control-pos-top .flex-control-nav,
.control-pos-top .flex-control-nav {
    width: 100%;
    right: 0;
}


.control-size-lg .flex-control-nav li {
    width: 0.9325rem;
    height: 0.9325rem;
    margin: 0 5px;
}

/* Flex Slider: Thumbs
-----------------------------------------------------------------*/

.flex-control-nav.flex-control-thumbs {
    position: relative;
    justify-content: left;
    top: 0;
    left: 0;
    right: 0;
    margin: 2px -2px -2px 0;
    height: auto;
}

.flex-control-nav.flex-control-thumbs li { margin: 0 2px 2px 0; }

.flex-control-nav.flex-control-thumbs li img {
    cursor: pointer;
    text-indent: -9999px;
    border: 0;
    border-radius: 0;
    margin: 0;
    opacity: 0.5;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.flex-control-nav.flex-control-thumbs li,
.flex-control-nav.flex-control-thumbs li img {
    display: block;
    width: 100px !important;
    height: auto !important;
}

.flex-control-nav.flex-control-thumbs li:hover img,
.flex-control-nav.flex-control-thumbs li img.flex-active {
    border-width: 0;
    opacity: 1;
}


/* FlexSlider: Thumbs - Flexible
-----------------------------------------------------------------*/

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs {
    margin: 2px -2px -2px 0;
    height: auto;
    display: flex;
    flex-wrap: wrap;
}

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs li {
    flex-shrink: 0;
    flex: 0 0 auto;
    max-width: 100%;
    height: auto !important;
    margin: 0;
    padding: 0 2px 2px 0;
}

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs li {
    width: 25% !important;
}

.fslider.flex-thumb-grid.grid-3 .flex-control-nav.flex-control-thumbs li {
    width: 33.333333% !important;
}

.fslider.flex-thumb-grid.grid-5 .flex-control-nav.flex-control-thumbs li {
    width: 20% !important;
}

.fslider.flex-thumb-grid.grid-6 .flex-control-nav.flex-control-thumbs li {
    width: 16.666666% !important;
}

.fslider.flex-thumb-grid.grid-8 .flex-control-nav.flex-control-thumbs li {
    width: 12.5% !important;
}

.fslider.flex-thumb-grid.grid-10 .flex-control-nav.flex-control-thumbs li {
    width: 10% !important;
}

.fslider.flex-thumb-grid.grid-12 .flex-control-nav.flex-control-thumbs li {
    width: 8.333333% !important;
}

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs li img {
    width: 100% !important;
    height: auto !important;
}


/* ----------------------------------------------------------------
        Owl Carousel CSS
-----------------------------------------------------------------*/

.owl-carousel .animated {
    -webkit-animation-duration: 1000ms;
    animation-duration: 1000ms;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.owl-carousel .owl-animated-in { z-index: 0; }

.owl-carousel .owl-animated-out { z-index: 1; }

.owl-carousel .fadeOut  {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
    0% { opacity: 1; }
100% { opacity: 0; }
}

@keyframes fadeOut {
    0% { opacity: 1; }
100% { opacity: 0; }
}

.owl-height {
    -webkit-transition:height 500ms ease-in-out;
    -o-transition:height 500ms ease-in-out;
    transition:height 500ms ease-in-out
}

.owl-carousel {
    display:none;
    -webkit-tap-highlight-color:transparent;
    position:relative;
    z-index:1;
    width: 100%;
    touch-action: manipulation;
}

.owl-carousel .owl-stage {
    position:relative;
    -ms-touch-action: pan-Y;
}

.owl-carousel .owl-stage::after {
    content:".";
    display:block;
    clear:both;
    visibility:hidden;
    line-height:0;
    height:0
}

.owl-carousel .owl-stage-outer {
    position:relative;
    overflow:hidden;
    -webkit-transform:translate3d(0,0,0);
}

.owl-carousel.owl-loaded { display:block }

.owl-carousel.owl-loading {
    display:block;
    min-height: 100px;
    background: no-repeat center center;
}

.owl-carousel .owl-refresh .owl-item { display:none }

.owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
    display:block;
    width:100%;
    -webkit-transform-style:preserve-3d;
}

.slider-element .owl-carousel .owl-item img { -webkit-transform-style: preserve-3d; }

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled { display: none; }

.owl-nav .owl-prev,
.owl-nav .owl-next,
.owl-dot,
.owl-dots button {
    cursor: pointer;
    cursor: hand;
    padding: 0;
    border: 0;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel.owl-loaded { display: block; }

.owl-carousel.owl-loading {
    opacity: 0;
    display: block;
}

.owl-carousel.owl-hidden { opacity: 0; }

.mega-menu-content .owl-carousel.owl-hidden { opacity: 1; }

.owl-carousel.owl-refresh .owl-item { display: none; }

.owl-carousel.owl-drag .owl-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: -o-grab;
    cursor: -ms-grab;
    cursor: grab;
}

.owl-carousel.owl-rtl { direction: rtl; }

.owl-carousel.owl-rtl .owl-item { float: right; }

.no-js .owl-carousel { display: block; }

.owl-carousel .owl-item .owl-lazy {
    opacity:0;
    -webkit-transition:opacity 400ms ease;
    -o-transition:opacity 400ms ease;
    transition:opacity 400ms ease
}

.owl-carousel .owl-item img { transform-style:preserve-3d }

.owl-carousel .owl-video-wrapper {
    position:relative;
    height:100%;
    background:#111
}

.owl-carousel .owl-video-play-icon {
    position: absolute;
    height: 64px;
    width: 64px;
    left: 50%;
    top: 50%;
    margin-left: -32px;
    margin-top: -32px;
    background: url("images/icons/play.png") no-repeat;
    cursor: pointer;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transition: scale 100ms ease;
    -o-transition: scale 100ms ease;
    transition: scale 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
    -webkit-transition:scale(1.3,1.3);
    -o-transition:scale(1.3,1.3);
    transition:scale(1.3,1.3)
}

.owl-carousel .owl-video-playing .owl-video-play-icon,
.owl-carousel .owl-video-playing .owl-video-tn { display:none }

.owl-carousel .owl-video-tn {
    opacity:0;
    height:100%;
    background-position:center center;
    background-repeat:no-repeat;
    -webkit-background-size:contain;
    -moz-background-size:contain;
    -o-background-size:contain;
    background-size:contain;
    -webkit-transition:opacity 400ms ease;
    -o-transition:opacity 400ms ease;
    transition:opacity 400ms ease
}

.owl-carousel .owl-video-frame {
    position:relative;
    z-index:1;
    height: 100%;
    width: 100%;
}


/* Owl Carousel - Controls
-----------------------------------------------------------------*/

.owl-carousel .owl-dots,
.owl-carousel .owl-nav {
    text-align: center;
    -webkit-tap-highlight-color: transparent;
    line-height: 1;
}

/* Owl Carousel - Controls - Arrows
-----------------------------------------------------------------*/

.owl-carousel .owl-nav [class*=owl-] {
    position: absolute;
    top: 50%;
    margin-top: -18px;
    left: -36px;
    zoom: 1;
    width: 36px;
    height: 36px;
    line-height: 32px;
    border: 1px solid rgba(0,0,0,0.2);
    color: #666;
    background-color: #FFF;
    font-size: 18px;
    border-radius: 50%;
    opacity: 0;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.owl-carousel.with-carousel-dots .owl-nav [class*=owl-] { margin-top: -38px; }

.slider-element .owl-nav [class*=owl-],
.owl-carousel-full .owl-nav [class*=owl-] {
    margin-top: -30px;
    left: 0 !important;
    height: 60px;
    line-height: 60px;
    border: none;
    color: #EEE;
    background-color: rgba(0,0,0,0.4);
    font-size: 28px;
    border-radius: 0 3px 3px 0;
}

.owl-carousel-full .with-carousel-dots .owl-nav [class*=owl-] { margin-top: -50px; }

.owl-carousel .owl-nav .owl-next {
    left: auto;
    right: -36px;
}

.slider-element .owl-nav .owl-next,
.owl-carousel-full  .owl-nav .owl-next {
    left: auto !important;
    right: 0 !important;
    border-radius: 3px 0 0 3px;
}

.owl-carousel:hover .owl-nav [class*=owl-] {
    opacity: 1;
    left: -18px;
}

.owl-carousel:hover .owl-nav .owl-next {
    left: auto;
    right: -18px;
}

.owl-carousel .owl-nav [class*=owl-]:hover {
    background-color: #1ABC9C !important;
    color: #FFF !important;
    text-decoration: none;
}

.owl-carousel .owl-nav .disabled { display: none !important; }


/* Owl Carousel - Controls - Dots
-----------------------------------------------------------------*/

.owl-carousel .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    width: 8px;
    height: 8px;
    margin: 30px 4px 0 4px;
    opacity: 0.5;
    border-radius: 50%;
    background-color: #1ABC9C;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.owl-carousel .owl-dots .owl-dot.active,
.owl-carousel .owl-dots .owl-dot:hover { opacity: 1; }


/* Owl Carousel - Controls - Dots - Positions
-----------------------------------------------------------------*/
.owl-carousel[class*=owl-nav-pos-],
.owl-carousel[class*=owl-dots-pos-]
.owl-carousel[class*=owl-img-pos-] {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
}

.owl-carousel.owl-nav-pos-1 .owl-nav,
.owl-carousel.owl-dots-pos-1 .owl-dots,
.owl-carousel.owl-content-pos-1 .owl-stage-outer {
    order: 1;
}

.owl-carousel.owl-nav-pos-2 .owl-nav,
.owl-carousel.owl-dots-pos-2 .owl-dots,
.owl-carousel.owl-content-pos-2 .owl-stage-outer {
    order: 2;
    margin: 20px 0;
}

.owl-carousel.owl-nav-pos-3 .owl-nav,
.owl-carousel.owl-dots-pos-3 .owl-dots,
.owl-carousel.owl-content-pos-3 .owl-stage-outer {
    order: 3;
}

.owl-carousel.owl-dots-pos-2 .owl-dots .owl-dot,
.owl-carousel.owl-dots-pos-3 .owl-dots .owl-dot {
    margin-top: 0;
}

.owl-carousel.owl-nav-pos-left .owl-nav,
.owl-carousel.owl-nav-pos-right .owl-nav,
.owl-carousel.owl-dots-pos-left .owl-dots,
.owl-carousel.owl-dots-pos-right .owl-dots {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
}

.owl-carousel.owl-dots-pos-left .owl-dots,
.owl-carousel.owl-nav-pos-left .owl-nav {
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.owl-carousel.owl-dots-pos-right .owl-dots,
.owl-carousel.owl-nav-pos-right .owl-nav {
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.owl-carousel.with-carousel-dots.owl-dots-pos-top .owl-nav [class*=owl-] { margin-top: 0; }

/* Owl Carousel - Controls - Dots - Sizes
-----------------------------------------------------------------*/
.owl-carousel {
    --owl-nav-sizes: 36px;
    --owl-dots-gutters: 4px;
    --owl-dots-sizes: 8px;
    --owl-nav-bg: var(--themecolor, #1ABC9C);
    --owl-nav-margin: calc(var(--owl-nav-sizes) / -2);
    --owl-nav-with-dots: calc( var(--owl-nav-margin) - calc( calc( 30px + var(--owl-dots-sizes) ) / 2 ) );
}

.owl-carousel.owl-dots-size-sm {
    --owl-dots-sizes: 4px;
    --owl-dots-gutters: 2px;
}

.owl-carousel.owl-dots-size-lg {
    --owl-dots-sizes: 12px;
    --owl-dots-gutters: 5px;
}

.owl-carousel.owl-dots-size-xl {
    --owl-dots-sizes: 16px;
    --owl-dots-gutters: 6px;
}

.owl-carousel .owl-dots .owl-dot {
    width: var(--owl-dots-sizes);
    height: var(--owl-dots-sizes);
    background-color: var(--owl-nav-bg);
    margin-left: var(--owl-dots-gutters);
    margin-right: var(--owl-dots-gutters);
    transition: all .3s;
}

.owl-carousel.owl-nav-hover-fixed[class*=owl-nav-pos-] .owl-nav .disabled {
    display: inline-block !important;
    pointer-events: none;
    opacity: .4 !important;
}

/* Owl Carousel - Controls - Dots - Border
-----------------------------------------------------------------*/
.owl-carousel.owl-dots-border .owl-dots .owl-dot:not(.active) {
    opacity: 1;
    background-color: transparent;
    border: 1px solid var(--owl-nav-bg);
}

.owl-carousel.owl-dots-border .owl-dots .owl-dot.active {
    border-color: transparent;
}

/* Owl Carousel - Controls - Dots - square
-----------------------------------------------------------------*/
.owl-carousel.owl-dots-square .owl-dots .owl-dot {
    border-radius: 0;
    --owl-dots-sizes: 10px;
}

/* Owl Carousel - Controls - Dots - square
-----------------------------------------------------------------*/
.owl-carousel.owl-dots-rounded .owl-dots .owl-dot {
    --owl-dots-sizes: 10px;
    border-radius: 2px;
}

/* Owl Carousel - Controls - Dots - Dashed
-----------------------------------------------------------------*/
.owl-carousel.owl-dots-dashed .owl-dots .owl-dot {
    --owl-dots-sizes: 16px;
    opacity: .4;
    height: 4px;
    border-radius: 4px;
}

.owl-carousel.owl-dots-dashed .owl-dots .owl-dot.active {
    --owl-dots-sizes: 32px;
    opacity: 1;
}

/* Owl Carousel - Controls - Dots - Numbers
-----------------------------------------------------------------*/
.owl-carousel.owl-dots-number .owl-dots {
    --owl-dots-sizes: 28px;
    counter-reset: dots;
    --owl-nav-bg: #FFF;
}

.owl-carousel.owl-dots-number .owl-dots .owl-dot {
    position: relative;
    width: auto;
    opacity: .3;
}

.owl-carousel.owl-dots-number .owl-dots .owl-dot.active {
    opacity: 1;
}

.owl-carousel.owl-dots-number .owl-dots .owl-dot:before {
    display: inline-block;
    counter-increment: dots;
    content: counter(dots, decimal-leading-zero);
}

.owl-carousel.owl-dots-number .owl-dots .owl-dot span {
    position: relative;
    display: inline-block;
    width: 0px;
    height: 2px;
    background-color: #666;
    top: -5px;
    margin-left: 5px;
    transition: width .4s ease-in-out;
}

.owl-carousel.owl-dots-number .owl-dots .owl-dot.active span {
    width: 30px;
}

/* Owl Carousel - Controls - Arrows - Sizes
-----------------------------------------------------------------*/

.owl-carousel .owl-nav [class*=owl-] {
    left: calc(-1 * var(--owl-nav-sizes));
    width: var(--owl-nav-sizes);
    height: var(--owl-nav-sizes);
    line-height: calc(calc(-1 * var(--owl-nav-sizes)) - 4px);
    font-size: calc(var(--owl-nav-sizes) / 2);
    margin-top: var(--owl-nav-margin);
}

.owl-carousel.with-carousel-dots .owl-nav [class*=owl-] {
    margin-top: var(--owl-nav-with-dots);
}

.owl-carousel .owl-nav .owl-next {
    left: auto;
    right: calc(-1 * var(--owl-nav-sizes));
}

.slider-element .owl-nav .owl-next,
.owl-carousel-full  .owl-nav .owl-next {
    left: auto !important;
    right: 0 !important;
}

.owl-carousel.owl-nav-hover-fixed .owl-nav [class*=owl-],
.owl-carousel:hover .owl-nav [class*=owl-] {
    opacity: 1;
    left: calc(calc(-1 * var(--owl-nav-sizes)) / 2);
}

.owl-carousel.owl-nav-hover-fixed .owl-nav .owl-next,
.owl-carousel:hover .owl-nav .owl-next {
    left: auto;
    right: calc(calc(-1 * var(--owl-nav-sizes)) / 2);
}

.owl-carousel .owl-nav [class*=owl-]:hover {
    background-color: var(--owl-nav-bg) !important;
}

.slider-element .owl-nav [class*=owl-],
.owl-carousel-full .owl-nav [class*=owl-] {
    margin-top: -30px;
    height: calc(var(--owl-nav-sizes) * 1.6666666667);
    line-height: calc(var(--owl-nav-sizes) * 1.6666666667);
    font-size: calc(calc(var(--owl-nav-sizes) * 1.6666666667) / 2);
}

.owl-carousel-full .with-carousel-dots .owl-nav [class*=owl-] {
    margin-top: calc( calc(calc(var(--owl-nav-sizes) * 1.6666666667) / -2)) - calc( calc( 30px + var(--owl-dots-sizes) ) / 2 );
}

.owl-carousel.owl-nav-hover-fixed[class*=owl-nav-pos-] .owl-nav [class*=owl-] {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    margin: 0;
}

.owl-carousel.owl-nav-hover-fixed[class*=owl-nav-pos-] .owl-nav .owl-prev {
    margin-right: 5px;
}

.owl-carousel.owl-nav-hover-fixed[class*=owl-nav-pos-] .owl-nav .owl-next {
    margin-left: 5px;
}

.owl-carousel.owl-nav-text .owl-nav [class*=owl-] {
    width: auto;
    height: auto;
    line-height: 1.5;
    font-size: 0.925rem;
    border-radius: 3px;
    padding: 4px 8px;
}

.owl-carousel.owl-nav-text .owl-nav [class*=owl-] i {
    position: relative;
    top: 1px;
}


/* ----------------------------------------------------------------
        Overlays
-----------------------------------------------------------------*/


.bg-overlay,
.bg-overlay-bg,
.bg-overlay-content {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
}

.bg-overlay [data-hover-animate]:not(.animated) {
    opacity: 0;
}

.bg-overlay {
    z-index: 5;
}

.bg-overlay-content {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    padding: 20px;
}

.bg-overlay-bg {
    background-color: rgba(255,255,255,0.85);
}

.dark .bg-overlay-bg,
.bg-overlay-bg.dark {
    background-color: rgba(0,0,0,0.5);
}


.text-overlay-mask {
    opacity: 0.85;
    top: auto;
    bottom: 0;
    height: auto;
    padding: 40px 15px 15px;
    background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.85))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* IE10+ */
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}

.overlay-trigger-icon {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    margin: 0 0.25rem;
    font-size: 1.125rem;
    text-align: center;
    border-radius: 50%;
    -webkit-backface-visibility: hidden;
    transition: all .3s ease;
}

.overlay-trigger-icon .icon-line-play {
    position: relative;
    left: 2px;
}

.overlay-trigger-icon.size-sm {
    width: 30px;
    height: 30px;
    line-height: 30px;
    margin: 0 0.5rem;
    font-size: 0.875rem;
}

.overlay-trigger-icon.size-lg {
    width: 64px;
    height: 64px;
    line-height: 64px;
    margin: 0 0.5rem;
    font-size: 1.5rem;
}


/* ----------------------------------------------------------------
        Heading Styles
-----------------------------------------------------------------*/


/* Heading Block - with Subtitle
-----------------------------------------------------------------*/

.heading-block { margin-bottom: 50px; }

.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4,
.emphasis-title h1,
.emphasis-title h2 {
    margin-bottom: 0;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #333;
}

.emphasis-title h1,
.emphasis-title h2 {
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

.heading-block h1 { font-size: 32px; }

.heading-block h2 { font-size: 30px; }

.heading-block h3 { font-size: 1.75rem; }

.heading-block h4 {
    font-size: 1.05rem;
    font-weight: 500;
}

.heading-block > span:not(.before-heading) {
    display: block;
    margin-top: 10px;
    font-weight: 300;
    color: #777;
}

.heading-block .before-heading { margin-bottom: 7px; }

.heading-block.center > span,
.heading-block.text-center > span,
.center .heading-block > span,
.text-center .heading-block > span {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 768px) {
    .text-md-start .heading-block > span {
        max-width: none !important;
    }
}

.heading-block h1 + span { font-size: 1.5rem; }

.heading-block h2 + span { font-size: 1.25rem; }

.heading-block h3 + span,
.heading-block h4 + span { font-size: 1.25rem; }

.heading-block::after {
    content: '';
    display: block;
    margin-top: 30px;
    width: 40px;
    border-top: 2px solid #444;
}

.center .heading-block::after,
.text-center .heading-block::after,
.heading-block.center::after,
.heading-block.text-center::after { margin: 30px auto 0; }

@media (min-width: 768px) {
    .text-md-start .heading-block::after {
        margin-left: 0 !important;
    }
}

.text-end .heading-block,
.heading-block.text-end,
.heading-block.title-right { direction: rtl; }

.heading-block.border-0::after,
.heading-block.border-bottom-0::after { display: none; }

.heading-block.border-color::after { border-color: #1ABC9C; }


/* Justify Border Title
-----------------------------------------------------------------*/

.fancy-title {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 2rem;
}

.fancy-title h1,
.fancy-title h2,
.fancy-title h3,
.fancy-title h4,
.fancy-title h5,
.fancy-title h6 {
    position: relative;
    margin-bottom: 0;
}

.fancy-title::before,
.fancy-title::after {
    content: '';
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
    height: 0;
    border-top: 3px double #E5E5E5;
}

.fancy-title::before {
    display: none;
    margin-right: 0.75rem;
}

.fancy-title::after {
    margin-left: 0.75rem;
}

.title-border::before,
.title-border::after {
    border-top-width: 1px;
    border-top-style: solid;
}

.title-border-color::before,
.title-border-color::after {
    border-top: 1px solid #1ABC9C !important;
}


/* Fancy Title - Center Align
-----------------------------------------------------------------*/

.title-center::before {
    display: block;
}


/* Fancy Title - Right Align
-----------------------------------------------------------------*/

.title-right::before {
    display: block;
}

.title-right::after {
    display: none;
}


/* Fancy Title - Bottom Short Border
-----------------------------------------------------------------*/

.title-bottom-border::before,
.title-bottom-border::after {
    display: none;
}

.title-bottom-border h1,
.title-bottom-border h2,
.title-bottom-border h3,
.title-bottom-border h4,
.title-bottom-border h5,
.title-bottom-border h6 {
    width: 100%;
    padding: 0 0 0.75rem;
    border-bottom: 2px solid #1ABC9C;
}


/* ----------------------------------------------------------------
        Go To Top
-----------------------------------------------------------------*/


#gotoTop {
    display: none;
    z-index: 599;
    position: fixed;
    width: 40px;
    height: 40px;
    background-color: #333;
    background-color: rgba(0,0,0,0.3);
    font-size: 1.25rem;
    line-height: 36px;
    text-align: center;
    color: #FFF;
    top: auto;
    left: auto;
    right: 30px;
    bottom: 50px;
    cursor: pointer;
    border-radius: 2px;
}

body:not(.device-touch) #gotoTop {
    transition: background-color .2s linear;
    -webkit-transition: background-color .2s linear;
    -o-transition: background-color .2s linear;
}

.stretched #gotoTop { bottom: 30px; }

#gotoTop:hover { background-color: #1ABC9C; }

/* ----------------------------------------------------------------
        Footer
-----------------------------------------------------------------*/


#footer {
    position: relative;
    background-color: #EEE;
    border-top: 5px solid rgba(0,0,0,0.2);
}

@media (min-width: 992px) {
    .sticky-footer #slider:not(.slider-parallax-invisible),
    .sticky-footer #page-submenu,
    .sticky-footer #page-title,
    .sticky-footer #content {
        z-index: 2;
    }

    .sticky-footer #content {
        transform: translate3d(0,0,0);
    }

    .sticky-footer #footer {
        position: sticky;
        top: auto;
        bottom: 0;
        left: 0;
    }
}

#footer .footer-widgets-wrap {
    position: relative;
    padding: 20px 0;
}

#copyrights {
    padding: 0px 0 40px 0px;
    /* background-color: #DDD; */
    font-size: 0.875rem;
    /* line-height: 1.8;*/
}

#copyrights i.footer-icon {
    position: relative;
    top: 1px;
    font-size: 0.875rem;
    width: 14px;
    text-align: center;
    margin-right: 3px;
}

.copyright-links a {
    display: inline-block;
    margin: 0 3px;
    color: #333;
    border-bottom: 1px dotted #444;
}

.copyright-links a:hover {
    color: #555;
    border-bottom: 1px solid #666;
}

.copyrights-menu { margin-bottom: 10px; }

.copyrights-menu a {
    font-size: 0.875rem;
    margin: 0 10px;
    border-bottom: 0 !important;
}

#copyrights a:first-child { margin-left: 0; }

#copyrights.text-end a:last-child { margin-right: 0; }


