/*
Theme Name:  Azra
Theme URI:   https://demo.apalodi.com/azra/
Version:     1.1

Author:      APALODI
Author URI:  http://apalodi.com

Description: Modern and fully responsive theme that looks great on any device.
Tags:        theme-options, custom-colors, translation-ready, custom-menu, post-formats, left-sidebar, right-sidebar, full-width-template
Text Domain: azra

License:     Themeforest Licence
License URI: https://themeforest.net/licenses
*/

/*=======================================
=========================================

    1. Normalize.css
    2. Base Elements
    3. Layout
        3.1. Grid
        3.2. Header
            3.2.1. Logo
            3.2.2. Site Actions
            3.2.3. Navigation 
        3.3. Page Heading
        3.4. Page
        3.5. Sidebar
        3.6. Blog
        3.7. Posts
        3.8. Search Page
        3.9. 404 Page
        3.10. Footer
    4. Modules
        4.1. WP Required Classes
        4.2. Rows and Columns
        4.3. Media
            4.3.1. Iframe and Playlist
            4.3.2. Background Media
            4.3.3. Object Fit
            4.3.4. Image Preload
            4.3.5. Single Image
            4.3.6. Image Caption and Zoom Icon
        4.4. Gallery
            4.4.1. Gallery Slider
            4.4.2. Gallery Carousel
            4.4.3. Gallery Grid
        4.5. Elements
            4.5.1. Buttons
            4.5.2. Icons
            4.5.3. Separator
            4.5.4. Heading
            4.5.5. Call To Action
            4.5.6. Message Box
            4.5.7. Progress Bar
            4.5.8. Progress Circle
            4.5.9. Google Maps
            4.5.10. Tabs
            4.5.11. Accordion
            4.5.12. Before/After
            4.5.13. Counters
            4.5.14. Testimonials
            4.5.15. Team
            4.5.16. Services
            4.5.17. Pricing
            4.5.18. Content Carousel
            4.5.19. Content Masonry
        4.6. Comments
        4.7. Filter
        4.8. Pagination
        4.9. Share Buttons
        4.10. Stars
        4.11. Widgets
        4.12. Magnific Popup
        4.13. OwlCarousel
        4.14. Font Icons
        4.15. CSS Animations

===========================================
=========================================*/

/*==================================================================================================
1.  Normalize.css v5.0.0 | MIT License | https: //necolas.github.io/normalize.css/ - modified by apalodi
================================================================================================= */
html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; overflow-x: hidden; overflow-y: scroll; }
body { margin: 0; -webkit-tap-highlight-color: rgba(0,0,0,0); }
hr { box-sizing: content-box; height: 0; overflow: visible; }

a { background-color: transparent; -webkit-text-decoration-skip: objects; text-decoration: none; }
a:active, 
a:hover, 
a:focus { outline-width: 0; }

abbr[title] { text-decoration: none; border-bottom: 1px dashed; padding-bottom: 1px; cursor: help; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -.25em; }
sup { top: -.5em; }
audio:not([controls]) { display: none; height: 0; }
img { border-style: none; }
svg:not(:root) { overflow: hidden; }

button, input, optgroup, select, textarea { margin: 0; outline: 0 }
button, input { overflow: visible; }
button, select { text-transform: none; }

button, 
input[type="button"], 
input[type="reset"], 
input[type="submit"] { -webkit-appearance: button; }

button::-moz-focus-inner, 
input[type="button"]::-moz-focus-inner, 
input[type="reset"]::-moz-focus-inner, 
input[type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

button:-moz-focusring, 
input[type="button"]:-moz-focusring, 
input[type="reset"]:-moz-focusring, 
input[type="submit"]:-moz-focusring { outline: none; }

legend { color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
progress { vertical-align: baseline; }
textarea { overflow: auto; }

input[type="checkbox"], input[type="radio"] { padding: 0; }
input[type="number"]::-webkit-inner-spin-button, 
input[type="number"]::-webkit-outer-spin-button { height: auto; }
input[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }
input[type="search"]::-webkit-search-cancel-button, 
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

summary { display: list-item; }
template { display: none; }
[hidden] { display: none; }
table { border-collapse: collapse; border-spacing: 0; }
td, th { padding: 0; }


/*==================================================================================================
2. Base Elements
================================================================================================= */
*, *:before, *:after { box-sizing: inherit; }
html { box-sizing: border-box; }
body { display: flex; overflow: hidden; }

a { -webkit-transition: all 0.3s; transition: all 0.3s; }
a:hover { color: inherit; }

hr { border-top-width: 1px; border-top-style: solid; margin-bottom: .875em }

h1, h2, h3, h4, h5, h6 { margin: 0; margin-bottom: .5em; }
h1 em, h2 em, h3 em, h4 em, h5 em, h6 em { font-family: inherit; font-weight: inherit; }

h1 { margin-top: 1.618em; }
h2 { margin-top: 1.618em; }
h3 { margin-top: 1.618em; }
h4 { margin-top: 1.618em; }
h5 { margin-top: 1.618em; }
h6 { margin-top: 1.618em; }

p, ul, ol, pre, table, blockquote, fieldset { margin-top: 0px; margin-bottom: .875em; }
ul ul, ol ol, ul ol, ol ul { margin-top: 0px; margin-bottom: 0px; }

/* Remove the gap between images, videos, audio, iframe and canvas and the bottom of their containers */
audio, canvas, img, video, iframe { vertical-align: middle; }

figure { margin: 0; }
img { height: auto; max-width: 100%; }

blockquote { position: relative; padding-left: 20px; margin-left: 2em }
q { position: relative; padding-left: 20px; }
blockquote::before, 
q::before { content: ""; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 5px; }
blockquote cite { display: block; }
cite { display: inline-block; }

/* List */
ul, ol { padding: 0 0 0 1em }
/* avoid supp margin on nested elements */
li > ul,
li > ol { margin-bottom: 0; }
li ul, li ol { margin-top: 10px; margin-bottom: 10px; }
li:last-of-type ul, li:last-of-type ol { margin-bottom: 0 }

ins { text-decoration: none; }
mark { padding: 0 3px }
del { opacity: 0.8; }

fieldset { border-width: 1px; border-style: solid; padding: 0.35em 0.625em 0.75em;  }

input, textarea, select { 
    border: none; padding: 13px 15px; max-width: 100%; margin: 0; outline: 0;
    border-width: 1px; border-style: solid;
    background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); /* Removing the inner shadow, rounded corners on iOS inputs */
}

input[type=checkbox], input[type=radio] {
    clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 18px; margin: -3px 4px 0 0; outline: 0; padding: 0; 
    text-align: center; vertical-align: middle; width: 18px; min-width: 18px; -webkit-appearance: none; appearance: none;
}

input[type=radio] { border-radius: 50%; margin-top: 0 }
input[type=checkbox]:checked::before { font-size: 10px; line-height: 18px; text-align: center; }
input[type=radio]:checked::before { content: ''; display: inline-block; border-radius: 50%; width: 6px; height: 6px; margin-top: 5px; }

code, kbd, tt, var, samp, pre { -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; border-width: 1px; border-style: solid; }
pre { max-width: 100%; overflow: auto; padding: 20px; white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
code, kbd, tt, var, samp { padding: 0 5px }
pre code, pre var, pre samp,
code var, code samp { border:none; padding: 0 }
code { line-height: 1; }
code, kbd, tt, var, samp, pre { font-family:monospace, monospace; white-space: pre-wrap; }

/* Table */
table { width: 100%; }
table thead th { padding: 0 15px }
table td, 
table tbody th { padding: 7px 15px }
table td > :last-child { margin-bottom: 0 }
table td,
table tbody th { border-width: 1px; border-style: solid }
table caption, table th, table td { font-weight: inherit; text-align: left; }


/*==================================================================================================
3. Layout
================================================================================================= */
/* 3.1. Grid
================================================== */
.container-fluid, .container { width: 100%; margin-right: auto; margin-left: auto; padding-right: 20px; padding-left: 20px; }
.container-fluid { padding-right: 20px; padding-left: 20px; }

.row,
.display-flex { 
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; 
    -webkit-box-flex: 0; -ms-flex: 1 1 auto; flex: 1 1 auto;
}
.row { 
    -webkit-box-orient: horizontal; -webkit-box-direction: normal; 
    -ms-flex-direction: row; -webkit-flex-direction: row; flex-direction: row; 
    -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; 
    margin: -15px;
}

.row.columns-start { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; text-align: start; }
.row.columns-center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; text-align: center; }
.row.columns-end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; text-align: end; }
.row.columns-top { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.row.columns-middle { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.row.columns-bottom { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }
.row.columns-around { -ms-flex-pack: distribute; justify-content: space-around; }
.row.columns-between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

/* Columns */
.column, 
.column-offset { 
    -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; padding: 15px;
}
.column { 
    -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; -ms-flex-preferred-size: 0; flex-basis: 0; 
    -ms-flex-preferred-size: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; width: 100%; max-width: 100%; 
}

.col-xs-1 { -ms-flex-preferred-size: 8.33333333%; -webkit-flex-basis: 8.33333333%; flex-basis: 8.33333333%; max-width: 8.33333333%; }
.col-xs-1-1 { -ms-flex-preferred-size: 9.09090909%; -webkit-flex-basis: 9.09090909%; flex-basis: 9.09090909%; max-width: 9.09090909%; }
.col-xs-1-2 { -ms-flex-preferred-size: 10%; -webkit-flex-basis: 10%; flex-basis: 10%; max-width: 10%; }
.col-xs-1-3 { -ms-flex-preferred-size: 11.11111111%; -webkit-flex-basis: 11.11111111%; flex-basis: 11.11111111%; max-width: 11.11111111%; }
.col-xs-1-5 { -ms-flex-preferred-size: 12.5%; -webkit-flex-basis: 12.5%; flex-basis: 12.5%; max-width: 12.5%; }
.col-xs-1-7 { -ms-flex-preferred-size: 14.28571429%; -webkit-flex-basis: 14.28571429%; flex-basis: 14.28571429%; max-width: 14.28571429%; }
.col-xs-2 { -ms-flex-preferred-size: 16.66666667%; -webkit-flex-basis: 16.66666667%; flex-basis: 16.66666667%; max-width: 16.66666667%; }
.col-xs-2-4 { -ms-flex-preferred-size: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; max-width: 20%; }
.col-xs-3 { -ms-flex-preferred-size: 25%; -webkit-flex-basis: 25%; flex-basis: 25%; max-width: 25%; }
.col-xs-4 { -ms-flex-preferred-size: 33.33333333%; -webkit-flex-basis: 33.33333333%; flex-basis: 33.33333333%; max-width: 33.33333333%; }
.col-xs-5 { -ms-flex-preferred-size: 41.66666667%; -webkit-flex-basis: 41.66666667%; flex-basis: 41.66666667%; max-width: 41.66666667%; }
.col-xs-6 { -ms-flex-preferred-size: 50%; -webkit-flex-basis: 50%; flex-basis: 50%; max-width: 50%; }
.col-xs-7 { -ms-flex-preferred-size: 58.33333333%; -webkit-flex-basis: 58.33333333%; flex-basis: 58.33333333%; max-width: 58.33333333%; }
.col-xs-8 { -ms-flex-preferred-size: 66.66666667%; -webkit-flex-basis: 66.66666667%; flex-basis: 66.66666667%; max-width: 66.66666667%; }
.col-xs-9 { -ms-flex-preferred-size: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; max-width: 75%; }
.col-xs-10 { -ms-flex-preferred-size: 83.33333333%; -webkit-flex-basis: 83.33333333%; flex-basis: 83.33333333%; max-width: 83.33333333%; }
.col-xs-11 { -ms-flex-preferred-size: 91.66666667%; -webkit-flex-basis: 91.66666667%; flex-basis: 91.66666667%; max-width: 91.66666667%; }
.col-xs-12 { -ms-flex-preferred-size: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; max-width: 100%; }
.col-xs-offset-0 { margin-left: 0; }
.col-xs-offset-1 { margin-left: 8.33333333%; }
.col-xs-offset-2 { margin-left: 16.66666667%; }
.col-xs-offset-3 { margin-left: 25%; }
.col-xs-offset-4 { margin-left: 33.33333333%; }
.col-xs-offset-5 { margin-left: 41.66666667%; }
.col-xs-offset-6 { margin-left: 50%; }
.col-xs-offset-7 { margin-left: 58.33333333%; }
.col-xs-offset-8 { margin-left: 66.66666667%; }
.col-xs-offset-9 { margin-left: 75%; }
.col-xs-offset-10 { margin-left: 83.33333333%; }
.col-xs-offset-11 { margin-left: 91.66666667%; }

@media only screen and (max-width: 659px) {
    .column.hidden-xs { display: none !important; }
}

@media only screen and (min-width: 660px) {
    .col-sm-1 { -ms-flex-preferred-size: 8.33333333%; -webkit-flex-basis: 8.33333333%; flex-basis: 8.33333333%; max-width: 8.33333333%; }
    .col-sm-1-1 { -ms-flex-preferred-size: 9.09090909%; -webkit-flex-basis: 9.09090909%; flex-basis: 9.09090909%; max-width: 9.09090909%; }
    .col-sm-1-2 { -ms-flex-preferred-size: 10%; -webkit-flex-basis: 10%; flex-basis: 10%; max-width: 10%; }
    .col-sm-1-3 { -ms-flex-preferred-size: 11.11111111%; -webkit-flex-basis: 11.11111111%; flex-basis: 11.11111111%; max-width: 11.11111111%; }
    .col-sm-1-5 { -ms-flex-preferred-size: 12.5%; -webkit-flex-basis: 12.5%; flex-basis: 12.5%; max-width: 12.5%; }
    .col-sm-1-7 { -ms-flex-preferred-size: 14.28571429%; -webkit-flex-basis: 14.28571429%; flex-basis: 14.28571429%; max-width: 14.28571429%; }
    .col-sm-2 { -ms-flex-preferred-size: 16.66666667%; -webkit-flex-basis: 16.66666667%; flex-basis: 16.66666667%; max-width: 16.66666667%; }
    .col-sm-2-4 { -ms-flex-preferred-size: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; max-width: 20%; }
    .col-sm-3 { -ms-flex-preferred-size: 25%; -webkit-flex-basis: 25%; flex-basis: 25%; max-width: 25%; }
    .col-sm-4 { -ms-flex-preferred-size: 33.33333333%; -webkit-flex-basis: 33.33333333%; flex-basis: 33.33333333%; max-width: 33.33333333%; }
    .col-sm-5 { -ms-flex-preferred-size: 41.66666667%; -webkit-flex-basis: 41.66666667%; flex-basis: 41.66666667%; max-width: 41.66666667%; }
    .col-sm-6 { -ms-flex-preferred-size: 50%; -webkit-flex-basis: 50%; flex-basis: 50%; max-width: 50%; }
    .col-sm-7 { -ms-flex-preferred-size: 58.33333333%; -webkit-flex-basis: 58.33333333%; flex-basis: 58.33333333%; max-width: 58.33333333%; }
    .col-sm-8 { -ms-flex-preferred-size: 66.66666667%; -webkit-flex-basis: 66.66666667%; flex-basis: 66.66666667%; max-width: 66.66666667%; }
    .col-sm-9 { -ms-flex-preferred-size: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; max-width: 75%; }
    .col-sm-10 { -ms-flex-preferred-size: 83.33333333%; -webkit-flex-basis: 83.33333333%; flex-basis: 83.33333333%; max-width: 83.33333333%; }
    .col-sm-11 { -ms-flex-preferred-size: 91.66666667%; -webkit-flex-basis: 91.66666667%; flex-basis: 91.66666667%; max-width: 91.66666667%; }
    .col-sm-12 { -ms-flex-preferred-size: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; max-width: 100%; }
    .col-sm-offset-0 { margin-left: 0; }
    .col-sm-offset-1 { margin-left: 8.33333333%; }
    .col-sm-offset-2 { margin-left: 16.66666667%; }
    .col-sm-offset-3 { margin-left: 25%; }
    .col-sm-offset-4 { margin-left: 33.33333333%; }
    .col-sm-offset-5 { margin-left: 41.66666667%; }
    .col-sm-offset-6 { margin-left: 50%; }
    .col-sm-offset-7 { margin-left: 58.33333333%; }
    .col-sm-offset-8 { margin-left: 66.66666667%; }
    .col-sm-offset-9 { margin-left: 75%; }
    .col-sm-offset-10 { margin-left: 83.33333333%; }
    .col-sm-offset-11 { margin-left: 91.66666667%; }
    .column.hidden-sm { display: none !important; }
}

@media only screen and (min-width: 860px) {
    .col-md-1 { -ms-flex-preferred-size: 8.33333333%; -webkit-flex-basis: 8.33333333%; flex-basis: 8.33333333%; max-width: 8.33333333%; }
    .col-md-1-1 { -ms-flex-preferred-size: 9.09090909%; -webkit-flex-basis: 9.09090909%; flex-basis: 9.09090909%; max-width: 9.09090909%; }
    .col-md-1-2 { -ms-flex-preferred-size: 10%; -webkit-flex-basis: 10%; flex-basis: 10%; max-width: 10%; }
    .col-md-1-3 { -ms-flex-preferred-size: 11.11111111%; -webkit-flex-basis: 11.11111111%; flex-basis: 11.11111111%; max-width: 11.11111111%; }
    .col-md-1-5 { -ms-flex-preferred-size: 12.5%; -webkit-flex-basis: 12.5%; flex-basis: 12.5%; max-width: 12.5%; }
    .col-md-1-7 { -ms-flex-preferred-size: 14.28571429%; -webkit-flex-basis: 14.28571429%; flex-basis: 14.28571429%; max-width: 14.28571429%; }
    .col-md-2 { -ms-flex-preferred-size: 16.66666667%; -webkit-flex-basis: 16.66666667%; flex-basis: 16.66666667%; max-width: 16.66666667%; }
    .col-md-2-4 { -ms-flex-preferred-size: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; max-width: 20%; }
    .col-md-3 { -ms-flex-preferred-size: 25%; -webkit-flex-basis: 25%; flex-basis: 25%; max-width: 25%; }
    .col-md-4 { -ms-flex-preferred-size: 33.33333333%; -webkit-flex-basis: 33.33333333%; flex-basis: 33.33333333%; max-width: 33.33333333%; }
    .col-md-5 { -ms-flex-preferred-size: 41.66666667%; -webkit-flex-basis: 41.66666667%; flex-basis: 41.66666667%; max-width: 41.66666667%; }
    .col-md-6 { -ms-flex-preferred-size: 50%; -webkit-flex-basis: 50%; flex-basis: 50%; max-width: 50%; }
    .col-md-7 { -ms-flex-preferred-size: 58.33333333%; -webkit-flex-basis: 58.33333333%; flex-basis: 58.33333333%; max-width: 58.33333333%; }
    .col-md-8 { -ms-flex-preferred-size: 66.66666667%; -webkit-flex-basis: 66.66666667%; flex-basis: 66.66666667%; max-width: 66.66666667%; }
    .col-md-9 { -ms-flex-preferred-size: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; max-width: 75%; }
    .col-md-10 { -ms-flex-preferred-size: 83.33333333%; -webkit-flex-basis: 83.33333333%; flex-basis: 83.33333333%; max-width: 83.33333333%; }
    .col-md-11 { -ms-flex-preferred-size: 91.66666667%; -webkit-flex-basis: 91.66666667%; flex-basis: 91.66666667%; max-width: 91.66666667%; }
    .col-md-12 { -ms-flex-preferred-size: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; max-width: 100%; }
    .col-md-offset-0 { margin-left: 0; }
    .col-md-offset-1 { margin-left: 8.33333333%; }
    .col-md-offset-2 { margin-left: 16.66666667%; }
    .col-md-offset-3 { margin-left: 25%; }
    .col-md-offset-4 { margin-left: 33.33333333%; }
    .col-md-offset-5 { margin-left: 41.66666667%; }
    .col-md-offset-6 { margin-left: 50%; }
    .col-md-offset-7 { margin-left: 58.33333333%; }
    .col-md-offset-8 { margin-left: 66.66666667%; }
    .col-md-offset-9 { margin-left: 75%; }
    .col-md-offset-10 { margin-left: 83.33333333%; }
    .col-md-offset-11 { margin-left: 91.66666667%; }
    .column.hidden-md { display: none !important; }
}

@media only screen and (min-width: 1200px) {
    .col-lg-1 { -ms-flex-preferred-size: 8.33333333%; -webkit-flex-basis: 8.33333333%; flex-basis: 8.33333333%; max-width: 8.33333333%; }
    .col-lg-1-1 { -ms-flex-preferred-size: 9.09090909%; -webkit-flex-basis: 9.09090909%; flex-basis: 9.09090909%; max-width: 9.09090909%; }
    .col-lg-1-2 { -ms-flex-preferred-size: 10%; -webkit-flex-basis: 10%; flex-basis: 10%; max-width: 10%; }
    .col-lg-1-3 { -ms-flex-preferred-size: 11.11111111%; -webkit-flex-basis: 11.11111111%; flex-basis: 11.11111111%; max-width: 11.11111111%; }
    .col-lg-1-5 { -ms-flex-preferred-size: 12.5%; -webkit-flex-basis: 12.5%; flex-basis: 12.5%; max-width: 12.5%; }
    .col-lg-1-7 { -ms-flex-preferred-size: 14.28571429%; -webkit-flex-basis: 14.28571429%; flex-basis: 14.28571429%; max-width: 14.28571429%; }
    .col-lg-2 { -ms-flex-preferred-size: 16.66666667%; -webkit-flex-basis: 16.66666667%; flex-basis: 16.66666667%; max-width: 16.66666667%; }
    .col-lg-2-4 { -ms-flex-preferred-size: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; max-width: 20%; }
    .col-lg-3 { -ms-flex-preferred-size: 25%; -webkit-flex-basis: 25%; flex-basis: 25%; max-width: 25%; }
    .col-lg-4 { -ms-flex-preferred-size: 33.33333333%; -webkit-flex-basis: 33.33333333%; flex-basis: 33.33333333%; max-width: 33.33333333%; }
    .col-lg-5 { -ms-flex-preferred-size: 41.66666667%; -webkit-flex-basis: 41.66666667%; flex-basis: 41.66666667%; max-width: 41.66666667%; }
    .col-lg-6 { -ms-flex-preferred-size: 50%; -webkit-flex-basis: 50%; flex-basis: 50%; max-width: 50%; }
    .col-lg-7 { -ms-flex-preferred-size: 58.33333333%; -webkit-flex-basis: 58.33333333%; flex-basis: 58.33333333%; max-width: 58.33333333%; }
    .col-lg-8 { -ms-flex-preferred-size: 66.66666667%; -webkit-flex-basis: 66.66666667%; flex-basis: 66.66666667%; max-width: 66.66666667%; }
    .col-lg-9 { -ms-flex-preferred-size: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; max-width: 75%; }
    .col-lg-10 { -ms-flex-preferred-size: 83.33333333%; -webkit-flex-basis: 83.33333333%; flex-basis: 83.33333333%; max-width: 83.33333333%; }
    .col-lg-11 { -ms-flex-preferred-size: 91.66666667%; -webkit-flex-basis: 91.66666667%; flex-basis: 91.66666667%; max-width: 91.66666667%; }
    .col-lg-12 { -ms-flex-preferred-size: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; max-width: 100%; }
    .col-lg-offset-0 { margin-left: 0; }
    .col-lg-offset-1 { margin-left: 8.33333333%; }
    .col-lg-offset-2 { margin-left: 16.66666667%; }
    .col-lg-offset-3 { margin-left: 25%; }
    .col-lg-offset-4 { margin-left: 33.33333333%; }
    .col-lg-offset-5 { margin-left: 41.66666667%; }
    .col-lg-offset-6 { margin-left: 50%; }
    .col-lg-offset-7 { margin-left: 58.33333333%; }
    .col-lg-offset-8 { margin-left: 66.66666667%; }
    .col-lg-offset-9 { margin-left: 75%; }
    .col-lg-offset-10 { margin-left: 83.33333333%; }
    .col-lg-offset-11 { margin-left: 91.66666667%; }
    .column.hidden-lg { display: none !important; }
}


/* 3.2. Header
================================================== */
#wpadminbar { position: fixed; z-index: 11 }

.site-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 10; -webkit-transition: background .3s; transition: background .3s; }
.admin-bar .site-header { top: 46px; }

.site-header-container { position: relative; height: 100%; }
.site-header-inner { height: 100%; }

/* Mobile Slide Out */
@media only screen and ( max-width : 1024px ) {
    .is-mobile-menu-active .site-header::after { opacity: 1; z-index: 11 }

    .site-header-inner { 
        position: fixed; top: 0; left: 100%; bottom: 0; width: 250px; padding: 20px 20px 0 20px; z-index: 12; 
        overflow-x: hidden; overflow-y: scroll; -webkit-overflow-scrolling: touch;
        -webkit-transition: all .75s cubic-bezier(.19,1,.22,1); transition: all .75s cubic-bezier(.19,1,.22,1); 
    }

    .admin-bar .site-header-inner { top: 46px; }

    /* Some browsers don't add the bottom padding to the fixed container 
     * so we need to add bottom margin to the last element */
    .site-header-inner > *:last-child { margin-bottom: 20px }
    .admin-bar .site-header-inner > *:last-child { margin-bottom: 66px }
    .site-header-inner::-webkit-scrollbar { width: 3px; }
    .site-header-inner::-webkit-scrollbar-track-piece { background: transparent; }

    .is-mobile-menu-active .site-header-inner { -webkit-transform: translate3d(-100%,0,0); transform: translate3d(-100%,0,0) }

    .is-mobile-menu-active,
    .is-mobile-menu-active body { overflow: hidden; }
}

@media only screen and ( min-width : 782px ) and ( max-width : 1024px ) {
    .admin-bar .site-header-inner { top: 32px; }
    .admin-bar .site-header-inner > *:last-child { margin-bottom: 52px }
}

@media only screen and ( min-width : 782px ) {
    .admin-bar .site-header { top: 32px; }
}

@media only screen and ( min-width : 1025px ) {
    .site-header.is-sticky,
    .site-header-container { -webkit-transition: all .3s; transition: all .3s; }
    .is-header-search-active .site-header-container { -webkit-transform: translate3d(0,-10%,0); transform: translate3d(0,-10%,0); }
}


/* 3.2.1. Logo
-----------------------------*/
.logo { position: absolute; height: 100%; width: 100%; top: 0; left: 20px; overflow: hidden; }
.logo a { height: 100%; }
.logo img { 
    position: absolute; display: block; max-width: 100%; height: 100%; opacity: 0;
    -webkit-transition: opacity .3s; transition: opacity .3s; 
    -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
}

.site-header.is-sticky .logo img { -webkit-transition: padding .3s, opacity .3s; transition: padding .3s, opacity .3s; }

img.logo-default { opacity: 1; }

/* Transparent Header */
.site-header.is-transparent .logo img,
.site-header.is-transparent .logo.has-logo-light img.logo-default,
.site-header.is-transparent.is-dark .logo.has-logo-light img.logo-light,
.site-header.is-transparent.is-dark .logo.has-logo-dark img.logo-default { opacity: 0; }

.site-header.is-transparent .logo.has-logo-light img.logo-light,
.site-header.is-transparent .logo:not(.has-logo-light) img.logo-default,
.site-header.is-transparent.is-dark .logo.has-logo-light img.logo-dark,
.site-header.is-transparent.is-dark .logo:not(.has-logo-dark) img.logo-default { opacity: 1; }

@media only screen and ( min-width : 1025px ) {
    .site-header.is-sticky .logo img {   }

    .logo img,
    .site-header.is-resized .logo.has-logo-resized img.logo-default { opacity: 0; }

    .site-header .logo img.logo-default,
    .site-header.is-resized .logo.has-logo-resized img.logo-resized { opacity: 1; }
}

/* 3.2.2. Site Actions
-----------------------------*/
.site-action-trigger { 
    display: block; cursor: pointer; 
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; 
    -webkit-transition: opacity .3s, color .3s, background .3s; transition: opacity .3s, color .3s, background .3s;
}
.site-action-info { 
    position: relative; display: inline-block; vertical-align: middle; margin-left: 4px; padding: 5px 8px; border-radius: 35px; top: -2px;
    font-family: Helvetica, Arial; font-weight: bold; font-size: 11px; line-height: 1;
    -webkit-transition: opacity .3s, color .3s, background .3s; transition: opacity .3s, color .3s, background .3s; 
}
.site-action-info::before { 
    content: ''; display: block; position: absolute; top: calc(50% - 6px); left: -2px; width: 12px; height: 12px; 
    -webkit-transform: rotate(45deg); transform: rotate(45deg); background-color: inherit; border-radius: 2px; z-index: -1;
}

.site-action-trigger:hover .site-action-info {}

/* Close Action */
.site-action-close { 
    position: relative; display: block; width: 30px; height: 26px; cursor: pointer;
    -webkit-transition: all 0.2s; transition: all 0.2s; 
}

.site-action-close::before,
.site-action-close::after { 
    content: ''; position: absolute; left: 0; display: block; width: 30px; height: 2px; 
    -webkit-transition: all 0.2s; transition: all 0.2s;
}

.site-action-close::before { top: 4px; -webkit-transform: translate3d(0,8px,0) rotate(45deg); transform: translate3d(0,8px,0) rotate(45deg);  }
.site-action-close::after { top: 20px; -webkit-transform: translate3d(0,-8px,0) rotate(-45deg); transform: translate3d(0,-8px,0) rotate(-45deg); }

.site-action-close:hover { -webkit-transform: scale3d(1.2,1.2,1.2); transform: scale3d(1.2,1.2,1.2); }

/* Close for Slide-Out Actions */
.slide-out-action-close { 
    position: fixed; top: 15px; right: 260px; opacity: 0; pointer-events: none; z-index: 20;
    -webkit-transform: translate3d(0,0,0) scale(.3); transform: translate3d(0,0,0) scale(.3);
    -webkit-transition: all 0.3s; transition: all 0.3s; -webkit-transition-delay: 0s; transition-delay: 0s
}
.admin-bar .slide-out-action-close { top: 61px; }
.slide-out-action-close.is-active { 
    opacity: 1; pointer-events: auto; 
    -webkit-transform: translate3d(0,0,0) scale(1); transform: translate3d(0,0,0) scale(1);
    -webkit-transition-delay: .55s; transition-delay: .55s
}
.slide-out-action-close.is-active:hover { 
    -webkit-transform: translate3d(0,0,0) scale(1.2); transform: translate3d(0,0,0) scale(1.2);
    -webkit-transition-delay: 0s; transition-delay: 0s
}
/* ie 10 */
.no-flexbox.flexboxtweener .slide-out-action-close { visibility: hidden; }
.no-flexbox.flexboxtweener .slide-out-action-close.is-active { visibility: visible; }

/* Cart Action */
.header-cart { 
    position: fixed; top: 0; left: 100%; bottom: 0; width: 250px; z-index: 20; overflow: hidden;
    -webkit-transition: all .75s cubic-bezier(.19,1,.22,1); transition: all .75s cubic-bezier(.19,1,.22,1); 
}
.admin-bar .header-cart { top: 46px; }

.is-header-cart-active .header-cart { -webkit-transform: translate3d(-100%,0,0); transform: translate3d(-100%,0,0)  }
.header-cart .mini-cart-empty { 
    position: absolute; top: 50%; width: 100%; text-align: center; padding: 20px;
    -webkit-transform: translateY(-50%); transform: translateY(-50%); 
}
.header-cart .mini-cart-empty i { position: relative; margin: 0; font-size: 90px; display: block; }

.header-cart .mini-cart-content { position: absolute; top: 0; bottom: 90px; left: 0; width: 100%; overflow-y: scroll; -webkit-overflow-scrolling: touch; }
.header-cart .mini-cart-content::-webkit-scrollbar { width: 3px; }
.header-cart .mini-cart-content::-webkit-scrollbar-track-piece { background: transparent; }
.header-cart .mini-cart-meta { position: absolute; bottom: 0; left: 0; width: 100%; height: 90px; }

.header-cart .mini-cart ul,
.header-cart .mini-cart ul li { margin: 0; padding: 0 }

.header-cart .mini-cart .remove { top: 30px; left: 15px; }
.header-cart .mini-cart-link { padding: 20px; border-bottom-style: solid; border-bottom-width: 1px }

.header-cart .mini-cart-total,
.header-cart .mini-cart-actions { border-top-width: 1px; border-top-style: solid; }
.header-cart .mini-cart-actions .button { 
    float: left; width: 50%; height: 50px; margin: 0; border: 0; border-radius: 0; background-color: transparent;
    display: -webkit-box; display: -ms-flexbox; display: flex;  
    -webkit-box-align: center; -ms-flex-align: center; align-items: center;
    -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; text-align: center;
}
.header-cart .mini-cart-actions .button-checkout { border-left-width: 1px; border-left-style: solid; }

/* Overlay */
.site-actions-overlay { 
    display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; z-index: -1;
    -webkit-transition: all.2s; transition: all .2s; pointer-events: none;
}
.is-header-cart-active .site-actions-overlay { opacity: 1; z-index: 9; pointer-events: auto; }

/* ie 10 */
.no-flexbox.flexboxtweener .site-actions-overlay { visibility: hidden; }
.no-flexbox.flexboxtweener.is-header-cart-active .site-actions-overlay { visibility: visible; }

@media only screen and ( max-width : 1024px ) {
    .header-cart-trigger { position: absolute; top: 50%; right: 70px; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
    .header-search-trigger,
    .header-search-form-close { display: none; }

    .header-search-form { margin-bottom: 30px }

    .is-mobile-menu-active .site-actions-overlay { opacity: 1; z-index: 9; pointer-events: auto; }
    .no-flexbox.flexboxtweener.is-mobile-menu-active .site-actions-overlay { visibility: visible; }

    .is-header-cart-active,
    .is-header-cart-active body { overflow: hidden; }
}

@media only screen and ( min-width : 782px ) {
    .admin-bar .header-cart { top: 32px; }
    .admin-bar .slide-out-action-close { top: 47px; }
}

@media only screen and ( min-width : 1025px ) {
    .site-actions { 
        position: relative; height: 100%; float: right;
        display: -webkit-box; display: -ms-flexbox; display: flex;
        -webkit-box-align: center; -ms-flex-align: center; align-items: center;
    }

    .site-action-trigger { padding-left: 10px; margin-left: 5px }

    .header-search-form { 
        position: absolute; top: -100%; left: 20px; right: 20px; height: 100%; padding-right: 45px; opacity: 0; z-index: 2;
        -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
        -webkit-transition: all .3s; transition: all .3s;
    }
    .is-header-search-active .header-search-form { opacity: 1; -webkit-transform: translate3d(0,110%,0); transform: translate3d(0,110%,0); }

    .header-search-form .search-form { height: 100%; }
    .header-search-form .header-search-form-close { position: absolute; top: 50%; right: 7px; margin-top: -13px; }
    .site-header.is-transparent .header-search-form .header-search-form-close { right: 8px }
    .header-search-form .search-form .search-field { font-size: 25px; padding-left: 25px; padding-right: 60px; background-color: transparent; border: 0 }
    .header-search-form .search-form .search-submit { width: 60px; font-size: 16px }
}

/* 3.2.3. Navigation
-----------------------------*/
.site-navigation-wrapper { position: relative; }

/* Hamburger Menu */
.hamburger-menu { position: relative; display: block; width: 30px; height: 26px; cursor: pointer; }

.hamburger-menu span,
.hamburger-menu::before,
.hamburger-menu::after { 
    position: absolute; left: 0; display: block; width: 30px; height: 2px; 
    -webkit-transition: all 0.2s; transition: all 0.2s;
}
.hamburger-menu::before,
.hamburger-menu::after { content: ''; }

.hamburger-menu::before { top: 4px; }
.hamburger-menu span { top: 12px; }
.hamburger-menu::after { top: 20px; }

.hamburger-menu.is-active::before { -webkit-transform: translate3d(0,8px,0) rotate(45deg); transform: translate3d(0,8px,0) rotate(45deg); }
.hamburger-menu.is-active span { opacity: 0; -webkit-transform: translate3d(-20px,0,0); transform: translate3d(-20px,0,0) }
.hamburger-menu.is-active::after { -webkit-transform: translate3d(0,-8px,0) rotate(-45deg); transform: translate3d(0,-8px,0) rotate(-45deg); }

/* Menu */
.site-nav,
.site-nav ul,
.site-nav li { list-style: none; margin: 0; padding: 0 }

.site-nav { }
.site-nav li { position: relative; }
.site-nav a { position: relative; display: block; -webkit-transition: color .3s, background .3s, opacity .3s; transition: color .3s, background .3s, opacity .3s; }
.site-nav a span {  }

/* Menu Icon */
.site-nav li a i + .menu-item-label { margin-left: 5px; }
.site-nav li a .menu-item-label + i { margin-left: 5px; }

/* Menu Button */
.site-nav li.menu-button a > span { 
    padding: 10px 15px; border-width: 2px; border-style: solid; border-radius: 35px; display: inline-block; 
    -webkit-transition: color .3s, background .3s, opacity .3s, border .3s; transition: color .3s, background .3s, opacity .3s, border .3s; 
}
.site-nav li.menu-button a:hover > span {  }

/* Menu Description */
.site-nav li a .menu-item-description { display: block; clear: both; }
.site-nav li a .menu-item-label + .menu-item-description { margin-top: 1px }

/* Menu Tooltip */
.site-nav li.menu-tooltip > a .menu-item-label { margin-right: 5px; }
.site-nav li.menu-tooltip > a .menu-item-tooltip { display: inline-block; padding: 5px 6px; border-radius: 3px; line-height: 1 }

/* Sub-menu */
.site-nav ul {  }

/* Mobile Navigation */
@media only screen and ( max-width : 1024px ) {
    .mobile-menu-trigger { position: absolute; top: calc(50% - 13px); right: 20px }
    .site-navigation-wrapper { }

    .has-mobile-nav .no-navigation,
    .has-mobile-nav .main-navigation { display: none; }

    .site-nav a { padding: 10px 0; border-bottom-style: solid; border-bottom-width: 1px; cursor: pointer; }
    .site-nav > li:first-of-type > a { padding-top: 0 } 
    .site-nav > li:last-of-type > a { padding-bottom: 0; border-bottom: 0 } 
    .site-nav li.menu-item-has-children > a { padding-right: 15px; }
    .site-nav li a > span { -webkit-transition: background .3s; transition: background .3s; }

    .site-nav a > span {  }

    /* Menu Seperator */
    .site-nav ul li.menu-separator { display: none; }

    /* Has Submenu Indicator */
    .mobile-sub-menu-trigger { 
        position: absolute; display: block; top: 50%; right: 0; font-size: 12px; line-height: 1;
        -webkit-transform:translate3d(0,-50%,0); transform:translate3d(0,-50%,0);
        -webkit-transition: -webkit-transform .2s, opacity .1s; transition: transform .2s, opacity .1s;
    }
    .site-nav > li:first-of-type > a .mobile-sub-menu-trigger { margin-top: -5px }
    .site-nav li.menu-item-has-children.is-active > a > .mobile-sub-menu-trigger { 
        -webkit-transform:translateY(-50%) rotate(90deg); transform:translateY(-50%) rotate(90deg);
    }

    /* Sub-menu */
    .site-nav ul { display: none; padding-left: 10px; border-left-style: solid; border-left-width: 1px }
    .site-nav li.menu-item-has-children.is-submenu-active > ul { display: block; }

    /* Sub-menu without parent menu label */
    .site-nav ul .menu-no-label > a { display: none; }
    .site-nav ul .menu-no-label > ul { display: block; border: none; margin: 0; padding: 0 }
}

/* Desktop Navigation */
@media only screen and ( min-width : 1025px ) {
    .site-navigation-wrapper { float: right; height: 100%; }

    .mobile-navigation,
    .mobile-menu-trigger,
    .mobile-menu-close-trigger,
    .mobile-sub-menu-trigger { display: none; }

    .no-navigation,
    .main-navigation,
    .site-nav, .site-nav > li, .site-nav > li > a { height: 100%;}

    .site-nav > li:first-child { margin-left: 0 }

    .site-nav, .site-nav > li > a  { 
        display: -webkit-box; display: -ms-flexbox; display: flex; 
        -webkit-box-align: center; -ms-flex-align: center; align-items: center;
    }
    .site-nav a { position: relative; overflow: hidden; -webkit-transition: none; transition: none; }
    .site-nav > li > a > span { display: block; line-height: 1; margin-left: 2px; padding: 6px 10px; border-radius: 15px; }
    .site-nav li a > span { -webkit-transition: color .3s, background .3s; transition: color .3s, background .3s; }

    /* Menu No Link */
    .site-nav li.menu-no-link > a { cursor: default; }

    /* Menu Seperator */
    .site-nav ul li.menu-separator { height: 0px; margin: 6px 0; display: block; border-bottom-style: solid; border-bottom-width: 1px; }

    /* Menu Full Width Item */
    .site-nav ul li.menu-full-width { width: 100% !important; clear: both; }

    /* Menu Align */
    .site-nav li.menu-align-left { text-align: left; }
    .site-nav li.menu-align-center { text-align: center; }
    .site-nav li.menu-align-right { text-align: right; }

    .site-nav > li.menu-button a > span { margin-left: 6px }
    .site-nav > li > .menu-item-description { text-align: center; }

    /* Submenu */
    .site-nav ul { 
        position: absolute; top: 100%; left: auto; right: -30px; right: calc(50% - 95px); z-index: 99; 
        width: 190px; padding: 15px 0; opacity: 0; pointer-events: none;
        -webkit-transform:translate3d(0,-4px,0); transform:translate3d(0,-4px,0);
        -webkit-transition: opacity .4s cubic-bezier(.19,1,.22,1), -webkit-transform .3s cubic-bezier(.19,1,.22,1); 
        transition: opacity .4s cubic-bezier(.19,1,.22,1), transform .3s cubic-bezier(.19,1,.22,1);
    }
    .site-nav li:hover > ul { opacity: 1; pointer-events: auto; -webkit-transform:translate3d(0,0,0); transform:translate3d(0,0,0); } 
    
    /* ie 10 */
    .no-flexbox.flexboxtweener .site-nav ul { visibility: hidden; transition: all .4s cubic-bezier(.19,1,.22,1);  }
    .no-flexbox.flexboxtweener  .site-nav li:hover > ul { visibility: visible; }

    .site-nav ul li {  }
    .site-nav ul a { padding: 0 15px }
    .site-nav ul li:not(.menu-no-label) > a > span { 
        padding: 6px 10px; border-radius: 15px; display: inline-block;
        -webkit-transition: background-color .3s; transition: background-color .3s;
    }
    .site-nav ul li.menu-description > a > span { border-radius: 5px; }

    /* Submenu Second Level Items */
    .site-nav ul ul { top: -21px; top: calc(50% - 21px); right: 100% }

    /* Sub-Menu Move Up */
    .site-nav ul .submenu-move-up > ul { top: -100px; top: calc(50% - 100px); }

    /* Sub-Menu Go Up */
    .site-nav ul li.submenu-go-up > ul { top: auto; bottom: -21px; bottom: calc(50% - 21px); }

    /* Has Submenu Indicator */
    .site-nav ul li.menu-item-has-children > a::after { 
        content: ''; position: absolute; display: block; z-index: -1;
        top: calc(50% - 1px); left: calc(100% - 4px); width: 100%; height: 2px;
        -webkit-transform:translate3d(0,0,0); transform:translate3d(0,0,0);
        -webkit-transition: -webkit-transform .2s, opacity .1s; transition: transform  .2s, opacity .1s;
    }
    .site-nav ul li.menu-item-has-children:hover > a::after { -webkit-transform:translate3d(-200%,0,0); transform:translate3d(-200%,0,0); opacity: .5 }
    
    /* Sub-menu hover indicator */
    .site-nav li.menu-item-has-children::after { 
        content: ''; position: absolute; display: block; z-index: 100; 
        -webkit-transition: -webkit-transform .2s; transition: transform .2s;
    }
    .site-nav li.menu-item-has-children::after { -webkit-transition-delay: .05s; transition-delay: .05s }
    .site-nav > li.menu-item-has-children::after { 
        bottom: 0; left: calc(50% - 15px); width: 30px; height: 4px; 
        -webkit-transform:rotateY(90deg); transform:rotateY(90deg) translate3d(0,0,0);
    }
    .site-nav ul li.menu-item-has-children::after { 
        top: calc(50% - 10px); left: 0; width: 4px; height: 20px;
        -webkit-transform:rotateX(90deg); transform:rotateX(90deg) translate3d(0,0,0);
    }
    .site-nav li.menu-item-has-children:hover::after { -webkit-transform:translate3d(0,0,0); transform:translate3d(0,0,0); }

    /* Mega Menu */
    .mega-menu > ul { width: 380px; }
    .mega-menu > ul::after { display: block; content: ''; clear: both; }

    .mega-menu > ul { padding: 10px 0 }
    .mega-menu > ul > li { margin: 5px 0 }

    .mega-menu ul li { padding: 0 } 
    .site-nav .mega-menu li.menu-item-has-children::after,
    .site-nav .mega-menu li.menu-item-has-children > a::after { display: none; }

    /* Mega Menu Columns */
    .mega-menu.mm-col-3 > ul { width: 570px; }
    .mega-menu.mm-col-4 > ul { width: 760px; } 

    .mega-menu ul .sub-menu { background: none }
    .mega-menu > ul > li { float: left; height: 100%; width: 50% }
    .mega-menu.mm-col-3 > ul > li { width: 33.3333% }
    .mega-menu.mm-col-4 > ul > li { width: 25% }

    /* Mega Menu Center */
    .site-nav > li.mega-menu.mm-col-2.is-mega-menu-centered > .sub-menu { right: calc(50% - 190px) }
    .site-nav > li.mega-menu.mm-col-3.is-mega-menu-centered > .sub-menu { right: calc(50% - 285px) }
    .site-nav > li.mega-menu.mm-col-4.is-mega-menu-centered > .sub-menu { right: calc(50% - 380px) }

    /* Menu Title */
    .site-nav ul li.menu-title > a,
    .mega-menu > ul > li:not(.menu-no-label) > a { margin-bottom: 0px }

    .site-nav ul li.menu-title:hover > a > span,
    .site-nav .mega-menu > ul > li:hover > a > span { background-color: transparent; color: inherit; }

    /* Inner Mega Menu Submenu Reset */
    .mega-menu .sub-menu ul { 
        position: relative; top: 0; left: 0; right: 0; width: 100%; 
        padding: 0; box-shadow: none; border: none; opacity: 1;
        -webkit-transform:translate3d(0,0,0); transform:translate3d(0,0,0);
    }
    /* ie 10 */
    .no-flexbox.flexboxtweener .mega-menu:hover .sub-menu ul { visibility: visible; }
}


/* 3.3. Page Heading
================================================== */
.site-heading { position: relative; overflow: hidden; display: flex; }
.site-heading * { color: inherit; }

.site-heading-container { 
    position: relative; min-height: 100px; padding-top: 40px; padding-bottom: 40px; will-change: transform; 
    display: -webkit-box; display: -ms-flexbox; display: flex; 
    -webkit-box-align: center; -ms-flex-align: center; align-items: center;
}

.site-title { margin: 0 }

.site-title a,
.site-title-desc a { 
    border-bottom-width: 2px; border-bottom-style: solid; padding: 2px 0; 
    -webkit-transition: color 0.3s, background .3s, opacity .3s; transition: color 0.3s, background .3s, opacity .3s 
}

.site-subtitle { margin: 0 0 .5em 0 }
.site-title-desc { margin-top: 1.4em }

.site-heading em { font-family: inherit; }

/* Align */
.site-heading-align-left { text-align: left; }
.site-heading-align-center { text-align: center; }
.site-heading-align-right { text-align: right; }

.site-heading-align-left .site-heading-container { -webkit-box-pack: start; justify-content: flex-start; }
.site-heading-align-center .site-heading-container { -webkit-box-pack: center; justify-content: center; }
.site-heading-align-right .site-heading-container { -webkit-box-pack: end; justify-content: flex-end; }

.site-heading.is-full-height .site-heading-container { min-height: 100vh; }


/* 3.4. Page
================================================== */
.site { 
    width: 100%; min-height: 100vh; display: -webkit-box; display: -ms-flexbox; display: flex; 
    -webkit-box-orient: vertical; -ms-flex-direction: column; -webkit-flex-direction: column; flex-direction: column; 
}
.header-transparent .site { padding-top: 0 }

.site-content { flex: 1 0 auto; word-wrap: break-word; }
.content-area { padding-top: 20px; padding-bottom: 20px }
.site-main { display: block; }

/* Links */
.site-main p > a,
.site-main dd > a,
.site-main ul > a,
.site-main ol > a,
.site-main li > a,
.site-main table a:not(.button),
.site-main figcaption > a { border-bottom-width: 1px; border-bottom-style: solid; padding-bottom: 3px }

.contentt {
    display: -webkit-box; display: -ms-flexbox; display: flex;
    -ms-flex-direction: row; flex-direction: row; 
    -ms-flex-wrap: wrap; flex-wrap: wrap;
}
.contentt { display: -ms-flexbox; -ms-flex-direction: row; -ms-flex-wrap: nowrap; }
.content::after { content: ''; display: block; clear: both; }
.content > *:first-child { margin-top: 0 }
.content > *:last-child { margin-bottom: 0 }

.no-top-content-padding .content-area { padding-top: 0 }
.no-bottom-content-padding .content-area { padding-bottom: 0 }

.fluid-width .site-content.container { max-width: 100%; padding-left: 0; padding-right: 0 }

@media only screen and ( min-width : 1025px ) {
    .content-area { padding-top: 40px; padding-bottom: 40px }
    .site-heading.is-simple + .site-content .content-area { padding-top: 0 }
}


/* 3.5. Sidebar
================================================== */
.widget-area { width: 100%; position: relative; margin-top: 50px; padding: 40px 0 20px 0; border-top-width: 1px; border-top-style: solid }

@media only screen and ( min-width : 1025px ) {
    .has-sidebar .widget-area { margin: 0; border-top: none; padding: 40px 0; }
    .right-sidebar .widget-area { left: -1px; }
    .left-sidebar .widget-area { right: -1px; }

    .left-sidebar .widget-area,
    .right-sidebar .content-area { padding-right: 40px; float: left; border-right-width: 1px; border-right-style: solid  }
    .right-sidebar .widget-area,
    .left-sidebar .content-area { padding-left: 40px; float: right; border-left-width: 1px; border-left-style: solid }

    .site-heading.is-simple + .site-content .widget-area { padding-top: 0 }
}


/* 3.6. Blog
================================================== */
.blog-container { }
.blog-post { }

.blog-post a { 
    position: relative; width: 100%; border-width: 1px; border-style: solid;
    display: -webkit-box; display: -ms-flexbox; display: flex; 
    -ms-flex-direction: column; -webkit-box-orient: vertical; flex-direction: column;
    -webkit-transition: border .3s, color .3s, box-shadow .3s; transition: border .3s, color .3s, box-shadow .3s;
}
.blog-post a:hover { z-index: 2 }
.blog-post.sticky a { overflow: hidden; }
.blog-post.sticky a::before { 
    position: absolute; bottom: -35px; left: 50%; font-size: 100px; line-height: 90px; 
    -webkit-transform: translateX(-50%) rotate(180deg); transform: translateX(-50%) rotate(180deg); opacity: .08;
}

.blog-post-media { position: relative; overflow: hidden; margin: -1px }

.blog-post-thumbnail { }
.blog-post-thumbnail img { }

.blog-post-content { padding: 20px 20px 15px 20px; -webkit-box-flex: 1; -ms-flex: 1 0 auto; flex: 1 0 auto; }

.blog-post-meta { margin-bottom: 1em }
.blog-post-meta::after { content: ''; display: block; width: 15px; height: 2px; margin: 5px 0 }
 
.blog-post-cats { display: block; }
.blog-post-date { margin-right: 5px }
.blog-post-comments::before { margin-right: 2px }

.blog-post-title { margin: 0; -webkit-transition: color .3s; transition: color .3s; }

.blog-post-content p { margin: 0 }
.blog-post-title + p { margin-top: 1em }

.blog-post-footer { padding: 15px 20px; -webkit-transition: color .3s; transition: color .3s }


/* 3.7. Posts
================================================== */
.single-post .content { margin-bottom: 2em }
.single-tags { margin-top: 1em; display: inline-block; vertical-align: middle; }
.single-post:not(.has-sidebar) .site-main { margin-right: auto; margin-left: auto; }


/* 3.8. Search Page
================================================== */
.search-results .site-main .search-form { margin-bottom: 30px }
.search-summary { margin-top: .875em }
.search-summary p { margin: 0 }


/* 3.9. 404 Page
================================================== */ 
.error404 .site-content { }
.error404 .content-area { }
.error404 .site-main { text-align: center; }
.error404-sign { font-size: 100px; }

@media only screen and ( min-width : 600px ) {
    .error404-sign { font-size: 200px; }
}


/* 3.10. Footer
================================================== */
.site-footer { padding: 30px 0; text-align: center; }

.site-footer-container > * { margin-top: 25px }
.site-footer-container > *:first-child { margin-top: 0 }

.footer-logo {  }

.footer-content { }
.copyright p { margin: 0; }
.copyright a { padding-bottom: 2px; border-bottom-width: 1px; border-bottom-style: solid }

.footer-menu {  }
.footer-menu ul,
.footer-menu ul li { list-style: none; margin: 0; padding: 0;  }
.footer-menu ul::after { content: ''; clear: both; }
.footer-menu ul li { display: inline-block; margin-right: 5px; margin-left: 5px }

.footer-social {  }
.footer-social .social-icon { padding: 0 10px; font-size: 20px; }

.button.back-to-top { 
    display: none; position: fixed; z-index: 9; bottom: 20px; right: 20px; text-align: center; padding: 0;
    width: 30px; height: 30px; line-height: 28px; font-size: 12px; border-radius: 30px;
}

@media only screen and ( min-width : 680px ) {
    .site-footer { text-align: left; }
    .site-footer-container { 
        display: -webkit-box; display: -ms-flexbox; display: flex; 
        -ms-flex-direction: row; flex-direction: row;
        -webkit-box-align: center; -ms-flex-align: center; align-items: center; 
    }
    .site-footer-container > * { margin-top: 0 }
    .footer-logo { margin-right: 20px; }
    .footer-logo img {  }
    .footer-content { margin-right: 20px }
    .footer-menu ul li { margin-right: 10px; margin-left: 0 }
    .footer-social { -webkit-box-flex: 1; flex: 1 0 auto; text-align: right; }
    .footer-social .social-icon:last-child { padding-right: 0 }
}

@media only screen and ( min-width : 1025px ) {
    .button.back-to-top { 
        display: block; opacity: 0; visibility: hidden; 
        -webkit-transform: translate3d(0,10px,0); transform: translate3d(0,10px,0); 
    }
    .button.back-to-top.is-visible { opacity: 1; visibility: visible; -webkit-transform: none; transform: none; }
}


/*==================================================================================================
4. Modules
================================================================================================= */
/* 4.1. WP Required Classes
================================================== */
#wpadminbar { -webkit-backface-visibility:hidden; }
.wp-smiley { border: 0; margin-bottom: 0; margin-top: 0; padding: 0; }

.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); position: absolute; }
.screen-reader-text:focus {
  position: absolute; left: 5px; top: 5px; display: block; padding: 15px 23px 14px;
  width: auto; height: auto; clip: auto; border-radius: 3px;
  text-decoration: none; text-transform: none; line-height: normal;
  z-index: 100000; /* Above WP toolbar */
}

/* Alignment */
.alignleft { float: left; margin: 0 1em .875em 0; }
.alignright { float: right; margin: 0 0 .875em 1em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; margin-bottom: .875em; }

blockquote.alignleft,
blockquote.alignright { padding-top: 1em; width: 50%; }

.wp-caption { position: relative; overflow: hidden; margin-bottom: .875em; max-width: 100% }

.clear,
.clearfix { clear: both; }
.is-hidden { display: none; }


/* 4.2. Rows and Columns
================================================== */
.section,
.row-wrapper { position: relative; width: 100%; margin-bottom: 30px; display: flex; }

.section.section-no-bottom-margin,
.row-wrapper.row-no-bottom-margin { margin-bottom: 0 }

body:not(.fluid-width) .section-container,
body:not(.fluid-width) .row-container,
.fluid-width .section .row-container { max-width: 100%; padding: 0 }

.row-full-width.container,
.section-full-width.container { max-width: 100% }
.row-full-width.row-no-padding.container,
.section-full-width.section-no-padding.container { padding: 0 }

/* Columns Masonry */
.row.columns-masonry { position: relative; -webkit-transition: height .3s, opacity .2s; transition: height .3s, opacity .2s; opacity: 0 }
.no-js .row.columns-masonry,
.row.columns-masonry.is-masonry-ready { opacity: 1 }

/* Margins */
.row.columns-no-margins { margin: 0 }
.row.columns-small-margins { margin: -2px }
.row.columns-medium-margins { margin: -10px }

.row.columns-no-margins > .column { padding: 0 }
.row.columns-small-margins > .column { padding: 2px }
.row.columns-medium-margins > .column { padding: 10px; }

.row.columns-equal-height > .column,
.no-js .row.columns-masonry > .column { display: -webkit-box; display: -ms-flexbox; display: flex; }

/* Full Height */
.row-full-height,
.section-full-height,
.flexboxtweener .row-full-height > .row-container,
.flexboxtweener .section-full-height > .section-container { min-height: 100vh; }

.row-full-height,
.section-full-height,
.row-full-height > .row-container { 
    display: -webkit-box; display: -ms-flexbox; display: flex;
    -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; 
}
.row-full-height > .row-container > .row { -webkit-box-align: stretch; -ms-flex-align: stretch; align-self: stretch }

.row-full-height.content-align-top,
.section-full-height.content-align-top { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.row-full-height.content-align-bottom,
.section-full-height.content-align-bottom { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }
.row-full-height.content-align-stretch { align-items: stretch; }
.row-full-height.content-align-stretch > .container > .row { height: 100% }

.row-full-height > .container > .row:not(.columns-equal-height) { 
    width: 100%; max-width: 100%; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; -ms-flex-preferred-size: 0; flex-basis: 0;
}
.row-full-height > .container > .row:not(.columns-equal-height) { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.row-full-height.content-align-top > .container > .row:not(.columns-equal-height) { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.row-full-height.content-align-bottom > .container > .row:not(.columns-equal-height) { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }

/* Equeal Height Columns */
.row.columns-equal-height > .column > .column-inner { 
    display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; max-width: 100%;
    -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; -ms-flex-preferred-size: 0; flex-basis: 0;
}
.row.columns-equal-height.columns-content-middle > .column > .column-inner { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.row.columns-equal-height.columns-content-middle > .column > .column-inner { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.row.columns-equal-height.columns-content-bottom > .column > .column-inner { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }

/* Columns Content */
.column-inner,
.column-content { position: relative; }
.column-content::after { content: ""; display: block; clear: both; }

.col-has-fill { padding: 20px; }
.column-content { width: 100%; max-width: 100% }

.content-element { margin-bottom: 1.75em }
.column-content > .content-element:last-child,
.column-content > .row-wrapper:last-child,
.content-element > *:last-child { margin-bottom: 0 }


/* 4.3. Media
================================================== */
/* 4.3.1. Iframe and Playlist
-----------------------------*/
.iframe-wrapper,
.wp-video { position: relative; width: 100%; padding-bottom: 56.25% }
.iframe-wrapper.iframe-soundcloud { padding-bottom: 30% }
.iframe-wrapper iframe,
.wp-video video,
.wp-video .mejs-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; border: 0 }

.wp-playlist video { height: auto; }
.wp-audio-playlist .wp-playlist-current-item { display: none; }

/* 4.3.2. Background Media
-----------------------------*/
.bg-media,
.bg-media-container,
.bg-image,
.bg-gallery,
.bg-media-overlay { position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; }

.row-wrapper .bg-media-container.skrollable,
.section-wrapper .bg-media-container.skrollable { top: auto; bottom: 0; min-height: 175%; }

.content > .row-wrapper:first-child .bg-media-container.skrollable,
.content > .section-wrapper:first-child .bg-media-container.skrollable {  }

.skrollable { will-change: transform; backface-visibility: hidden; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }

.bg-image {  }

.bg-video { position: absolute; opacity: 0; -webkit-transition: opacity .3s; transition: opacity .3s }
.bg-video.is-ready { opacity: 1 }
.flexboxtweener .bg-video.is-ready { opacity: .99 }

.bg-video-fallback { opacity: 0 }

.bg-gallery { z-index: 0 }
.bg-gallery .bg-gallery-item,
.bg-gallery .bg-gallery-item.is-ready { opacity: 0; z-index: 1; -webkit-transition: opacity .7s; transition: opacity .7s; }
.no-js .bg-gallery .bg-gallery-item:first-child,
.bg-gallery .bg-gallery-item.is-ready.is-active { opacity: 1; z-index: 2 }
.flexboxtweener.no-js .bg-gallery .bg-gallery-item:first-child,
.flexboxtweener .bg-gallery .bg-gallery-item.is-ready.is-active { opacity: .99; }

/* 4.3.3. Object Fit
-----------------------------*/
.object-fit-wider { 
    position: absolute; top: 0; bottom: 0; left: 50%; min-width: 100%; max-width: none; height: 100%;
    -webkit-transform: translateX(-50%); transform: translateX(-50%); 
}
.object-fit-taller { 
    position: absolute; top: 50%; left: 0; right: 0; width: 100%; height: auto;
    -webkit-transform: translateY(-50%); transform: translateY(-50%); 
}

/* 4.3.4. Image Preload
-----------------------------*/
.preload-image,
.preload-bg-image { opacity: 0; -webkit-transition: opacity .5s; transition: opacity .5s; will-change: opacity; }
.no-js .preload-image,
.preload-image.is-ready,
.no-js .preload-bg-image,
.preload-bg-image.is-ready { opacity: 1 }


/* 4.3.5. Single Image
-----------------------------*/
.image-wrapper { width: 100% }
.image-thumbnail { 
    position: relative; display: block; overflow: hidden;
    -webkit-transition: none; transition: none;
}
.image-thumbnail::before {
    position: absolute; top: 50%; left: 50%; font-size: 30px; opacity: .5;
    -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);
}
.image-thumbnail.thumbnail-size::after { content: ""; display: block; padding-bottom: 100% }

.image-thumbnail.is-transparent-bg { background: transparent; }
.image-thumbnail.is-transparent-bg::before { opacity: 0 }

.image-thumbnail img:not(.is-object-fit) { position: absolute; top: 0; left: 0; height: 100%; width: 100% }

/* 4.3.6. Image Caption and Zoom Icon
-----------------------------*/
.image-caption,
.gallery-caption,
.wp-caption-text,
.image-zoom-icon { 
    position: absolute; top: 0; left: 0; height: 40px; width: 40px; line-height: 40px; 
    margin: 0; overflow: hidden; border: none; z-index: 2; opacity: 0;
    -webkit-transition: -webkit-transform .3s, opacity .3s; transition: transform .3s, opacity .3s; will-change: transform, opacity;
    -webkit-transform: translate3d(0,-5px,0); transform: translate3d(0,-5px,0);
}

.image-caption,
.wp-caption-text { 
    padding: 0 10px; width: auto; max-width: 100%;
    pointer-events: none; text-align: left; white-space: nowrap; text-overflow: ellipsis;
}
.image-zoom-icon + .image-caption { margin-left: 40px; max-width: calc(100% - 40px); }

.wp-caption-text a { pointer-events: auto; }

.image-zoom-icon { text-align: center; line-height: 38px; }
.image-zoom-icon::before { font-size: 12px }

.wp-caption:hover .wp-caption-text,
.image-thumbnail:hover .image-caption,
.image-thumbnail:hover .image-zoom-icon { opacity: 1; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }


/* 4.4. Gallery
================================================== */
/* 4.4.1. Gallery Slider
-----------------------------*/
.gallery-slider { position: relative; overflow: hidden; }
.gallery-slider:not(.is-ready) .gallery-item { position: absolute; }
.gallery-slider:not(.is-ready) .gallery-item:first-child { position: relative; }

/* 4.4.2. Gallery Carousel
-----------------------------*/
.gallery-carousel {}
.gallery-carousel .apalodi-owl-pagination { text-align: left; }

/* 4.4.3. Gallery Grid
-----------------------------*/
.gallery-grid { margin-top: -1px; margin-right: -2px; font-size: 0; }
.gallery-grid::after { content: ''; display: block; clear: both; }

/* JetPack Tiled Gallery */
.tiled-gallery { margin-bottom: 1.75em; }

.gallery-grid .gallery-item { position: relative; display: inline-block; width: 100%; padding-top: 2px; padding-right: 2px }
.gallery-grid .image-thumbnail { padding-bottom: 100%; }

/* hide on small screens */
.gallery-grid .image-caption { display: none; }

/* mobile portrait */
.gallery-grid .gallery-item { max-width: 50%; }
.gallery-grid.gallery-columns-1 .gallery-item { max-width: 100%; }

/* mobile landscape */
@media screen and ( min-width: 480px ) {
  .gallery-grid.gallery-columns-2 .gallery-item { max-width: 50%; }

  .gallery-grid.gallery-columns .gallery-item,
  .gallery-grid.gallery-columns-3 .gallery-item { max-width: calc(100% / 3.001); }
}
/* tablet portrait */
@media screen and ( min-width: 768px ) {
  .gallery-grid .image-caption { display: block; }
}
/* tablet landscape */
@media screen and ( min-width: 960px ) {
  .gallery-grid.gallery-columns .gallery-item,
  .gallery-grid.gallery-columns-4 .gallery-item { max-width: calc(100% / 4); }
}
/* desktop small */
@media screen and ( min-width: 1124px ) {
  .gallery-grid.gallery-columns-5 .gallery-item { max-width: calc(100% / 5); }
  .gallery-grid.gallery-columns .gallery-item,
  .gallery-grid.gallery-columns-6 .gallery-item { max-width: calc(100% / 6); }
}
/* desktop large */
@media screen and ( min-width: 1400px ) {
  .gallery-grid.gallery-columns-7 .image-caption,
  .gallery-grid.gallery-columns-8 .image-caption,
  .gallery-grid.gallery-columns-9 .image-caption { display: none; }

  .gallery-grid.gallery-columns-7 .gallery-item { max-width: calc(100% / 7); }
  .gallery-grid.gallery-columns-8 .gallery-item { max-width: calc(100% / 8); }
  .gallery-grid.gallery-columns-9 .gallery-item { max-width: calc(100% / 9); }
}

/* 4.5. Elements
================================================== */
/* 4.5.1. Buttons
-----------------------------*/
button,
.button,
p>a.button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    position: relative; padding: 12px 15px; display: inline-block; vertical-align: middle; line-height: 1;
    border-width: 1px; border-style: solid; border-radius: 35px; cursor: pointer; word-break: break-word; white-space: nowrap; 
    -webkit-transition: all .3s; transition: all .3s;
}

.button.disabled,
.button.disabled:hover,
.button:disabled,
.button:disabled:hover,
.button:disabled[disabled],
.button:disabled[disabled]:hover { opacity: .7; pointer-events: none; cursor: default; }

.button-align-inline { display: inline-block; vertical-align: middle; }

.button-size-xs { padding: 8px 10px }
.button-size-sm { padding: 10px 12px }
.button-size-lg { padding: 16px 20px }

.button-square { border-radius: 0 }
.button-round { border-radius: 50% }

.button-round.button-size-xs { padding: 10px }
.button-round.button-size-sm { padding: 12px }
.button-round.button-size-md { padding: 15px }
.button-round.button-size-lg { padding: 20px }

.button-align-left { float: left; }
.button-align-center { display: block; clear: both; text-align: center; }
.button-align-right { float: right; }
.button-block { width: 100% }

.button-text {  }
.button .icon { display: inline; vertical-align: baseline; }
.button span + i,
.button i + span { margin-left: 5px; }

.button.button-size-xs span + i,
.button.button-size-xs i + span { margin-left: 4px }

.button.button-size-lg span + i,
.button.button-size-lg i + span { margin-left: 8px }

/* 4.5.2. Icons
-----------------------------*/
.icon-wrapper {  }
.icon-align-inline { display: inline-block; }
.icon-align-left { float: left; margin-right: .875em }
.icon-align-right { float: right; margin-left: .875em }
.icon-align-center { margin: 0 auto; text-align: center; }

.icon { display: inline-block; vertical-align: middle; line-height: 1 }

.icon-rounded { border-radius: 5px; }
.icon-circle { border-radius: 50%; }

.icon.icon-size-xs { font-size: 12px }
.icon.icon-size-sm { font-size: 20px }
.icon.icon-size-md { font-size: 30px }
.icon.icon-size-lg { font-size: 50px }
.icon.icon-size-xl { font-size: 80px }

.icon-boxed { width: 30px; height: 30px; line-height: 30px; text-align: center; }
.icon-boxed.icon-size-sm { width: 40px; height: 40px; line-height: 40px; }
.icon-boxed.icon-size-md { width: 60px; height: 60px; line-height: 60px; }
.icon-boxed.icon-size-lg { width: 90px; height: 90px; line-height: 90px; }
.icon-boxed.icon-size-xl { width: 130px; height: 130px; line-height: 130px; }

.icon-with-border { border-width: 2px; border-style: solid; line-height: 28px }
.icon-boxed.icon-with-border.icon-size-sm { line-height: 38px; }
.icon-boxed.icon-with-border.icon-size-md { line-height: 58px; }
.icon-boxed.icon-with-border.icon-size-lg { line-height: 88px; }
.icon-boxed.icon-with-border.icon-size-xl { line-height: 128px; }


/* 4.5.3. Separator
-----------------------------*/
.separator,
.separator-content {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
    -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
    -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
}

.separator-line { 
    position: relative; height: 1px;
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-box-flex: 1; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto;
}

.separator-content { padding: 0 20px }
.separator-title { margin: 0 }
.separator-content i + .separator-title { margin-left: 10px }

.separator-align-left .separator-line-left,
.separator-align-right .separator-line-right { display: none; }
.separator-align-left .separator-content { padding-left: 0 }
.separator-align-right .separator-content { padding-right: 0 }

.separator-pos-align-center { margin-left: auto; margin-right: auto }
.separator-pos-align-left { margin-left: 0; margin-right: auto }
.separator-pos-align-right { margin-left: auto; margin-right: 0 }

.separator-width-10 { width: 10% }
.separator-width-20 { width: 20% }
.separator-width-30 { width: 30% }
.separator-width-40 { width: 40% }
.separator-width-50 { width: 50% }
.separator-width-60 { width: 60% }
.separator-width-70 { width: 70% }
.separator-width-80 { width: 80% }
.separator-width-90 { width: 90% }
.separator-width-100 { width: 100% }

.separator-height-2 .separator-line { height: 2px }
.separator-height-3 .separator-line { height: 3px }
.separator-height-4 .separator-line { height: 4px }
.separator-height-5 .separator-line { height: 5px }
.separator-height-6 .separator-line { height: 6px }
.separator-height-7 .separator-line { height: 7px }
.separator-height-8 .separator-line { height: 8px }
.separator-height-9 .separator-line { height: 9px }
.separator-height-10 .separator-line { height: 10px }

/* 4.5.4. Heading
-----------------------------*/
.heading-wrapper { position: relative; }
.heading-wrapper > * { position: relative; z-index: 1 }
.heading-separator { max-width: 100px; margin: 5px auto; justify-content: center; }

.subheading { margin: 0 0 .5em 0; }
.heading { margin: 0 }
.heading-wrapper .heading + .separator { margin-top: 10px }

.heading-desc { margin-top: 1em; }

.heading-align-left { text-align: left; }
.heading-align-center { margin-left: auto; margin-right: auto; text-align: center; }
.heading-align-right { margin-left: auto; text-align: right; }

.heading-align-left .separator { margin-left: 0; justify-content: flex-start; }
.heading-align-right .separator { margin-right: 0; justify-content: flex-end; }

.heading-separator-line { height: 2px; max-width: 30px; }
.heading-separator .separator-content { padding: 0 10px }

.heading-align-left .separator-line-left,
.heading-align-right .separator-line-right { display: none; }
.heading-align-left .separator-content { padding-left: 0 }
.heading-align-right .separator-content { padding-right: 0 }

.bg-heading-wrapper { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
.bg-heading { position: absolute; width: auto; height: auto; line-height: 1;  }
.bg-heading span,
.bg-heading .icon { 
    font-size: inherit; color: inherit; line-height: 1;
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; 
}
.bg-heading-left-top.bg-heading { left: 0; top: 0; }
.bg-heading-left-center.bg-heading { left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.bg-heading-left-bottom.bg-heading { left: 0; bottom: 0; }
.bg-heading-center-top.bg-heading { left: 50%; top: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.bg-heading-center-center.bg-heading { top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.bg-heading-center-bottom.bg-heading { left: 50%; bottom: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%) }
.bg-heading-right-top.bg-heading { right: 0; top: 0; }
.bg-heading-right-center.bg-heading { right: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.bg-heading-right-bottom.bg-heading { right: 0; bottom: 0; }

/* 4.5.5. Call To Action
-----------------------------*/
.cta-wrapper { position: relative; padding: 1.5em; border-radius: 2px; }
.cta-wrapper > * { z-index: 1 }

.cta-mobile-align-left { text-align: left; }
.cta-mobile-align-center { text-align: center; }
.cta-mobile-align-right { text-align: right; }

.cta-content { position: relative; flex-shrink: 1; width: 100%; max-width: 100% }
.cta-content > :last-child { margin-bottom: 0 }

.cta-heading,
.cta-subheading { margin: 0 }
.cta-heading + .cta-subheading { margin-top: 4px }
.cta-subheading + .cta-heading { margin-top: 4px }

.cta-wrapper .button { z-index: 1 }
.cta-button-left .cta-button-wrapper,
.cta-button-top .cta-button-wrapper { margin-bottom: 1em }
.cta-button-right .cta-button-wrapper,
.cta-button-bottom .cta-button-wrapper { margin-top: 1em }

.cta-bg-meta-wrapper { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
.cta-bg-meta { position: absolute; width: auto; height: auto; line-height: 1;  }
.cta-bg-meta span,
.cta-bg-meta .icon { 
    font-size: inherit; color: inherit; line-height: 1;
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; 
}
.cta-bg-meta-left-top.cta-bg-meta { left: 0; top: 0; }
.cta-bg-meta-left-center.cta-bg-meta { left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.cta-bg-meta-left-bottom.cta-bg-meta { left: 0; bottom: 0; }
.cta-bg-meta-center-top.cta-bg-meta { left: 50%; top: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.cta-bg-meta-center-center.cta-bg-meta { top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.cta-bg-meta-center-bottom.cta-bg-meta { left: 50%; bottom: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%) }
.cta-bg-meta-right-top.cta-bg-meta { right: 0; top: 0; }
.cta-bg-meta-right-center.cta-bg-meta { right: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.cta-bg-meta-right-bottom.cta-bg-meta { right: 0; bottom: 0; }

@media only screen and ( min-width : 760px ) {
    .cta-wrapper {
        display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
        -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
        -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
    }

    .cta-button-top,
    .cta-button-bottom { display: block; }

    .cta-align-left { text-align: left; }
    .cta-align-center { text-align: center; }
    .cta-align-right { text-align: right; }

    .cta-button-left .cta-button-wrapper { margin-right: 1.5em }
    .cta-button-right .cta-button-wrapper { margin-left: 1.5em }

    .cta-button-left .cta-button-wrapper,
    .cta-button-right .cta-button-wrapper { margin-top: 0 }
}

/* 4.5.6. Message Box
-----------------------------*/
.message-box { 
    position: relative; padding: 1em; border-width: 1px; border-style: solid; border-radius: 2px;
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
}
.message-box .icon-wrapper { margin-right: 1em }
.message-box .icon {  }
.message-box-content { display: block; flex-shrink: 1; width: 100%; max-width: 100% }
.message-box-content > :last-child { margin-bottom: 0 }

/* 4.5.7. Progress Bar
-----------------------------*/
.progress-bar { position: relative; overflow: hidden; margin-bottom: .875em }
.progress-bar-background { display: block; height: 7px; }
.progress-bar-line { 
    display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 7px;
    -webkit-transform: translate3d(-100%,0,0); transform: translate3d(-100%,0,0); will-change: transform;
    -webkit-transition: -webkit-transform .3s; transition: transform .3s;
}
.no-js .progress-bar-line,
.progress-bar-line.is-animated { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }

.progress-bar-label { display: block; }
.progress-bar-unit { float: right; }

/* 4.5.8. Progress Circle
-----------------------------*/
.progress-circle-wrapper {  }
.progress-circle { position: relative; padding-bottom: 100%; margin-bottom: .875em }
.progress-circle-background { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100% }

.progress-circle-background { border-width: 8px; border-style: solid; border-radius: 50% }
.progress-circle-canvas { display: block; position: absolute; top: 0; left: 0 }
.progress-circle-value { 
    position: absolute; top: 50%; left: 50%; margin-top: 4px; margin-left: 4px; line-height: 1; text-align: center;
    -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); 
}

.no-js .progress-circle-line,
.progress-circle-line.is-animated { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }

.progress-circle-label { display: block; margin: 0; text-align: center; }
.progress-circle-unit { font-size: 50%; vertical-align: top; }

/* 4.5.9. Google Maps
-----------------------------*/
.google-map-wrapper {}
.google-map { position: relative; }
.google-map::before { 
    position: absolute; top: 50%; left: 50%; font-size: 30px; opacity: .5;
    -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);
}
.google-map > div { 
    position: absolute !important; top: 0; left: 0; opacity: 0;
    -webkit-transition: opacity .3s; transition: opacity .3s;
}
.google-map.is-ready > div { opacity: 1 }

.gmap-ratio-25-4 { padding-bottom: 16%; }
.gmap-ratio-4-1 { padding-bottom: 25%; }
.gmap-ratio-21-9 { padding-bottom: 42.85%; }
.gmap-ratio-16-9 { padding-bottom: 56.25%; }
.gmap-ratio-4-3 { padding-bottom: 75%; }
.gmap-ratio-1-1 { padding-bottom: 100%; }

/* 4.5.10. Tabs
-----------------------------*/
.tabs { position: relative; }
.tabs a { display: inline-block; vertical-align: bottom; margin-right: 15px; }
.tabs-wrapper .tabs a:last-of-type { margin-right: 0 }
.tabs a i { vertical-align: baseline; }
.tabs a span + i,
.tabs a i + span { margin-left: 7px; }

.tabs-align-center .tabs { text-align: center; }
.tabs-align-right .tabs { text-align: right; }

.tabs-icon-block .tabs a { margin-right: 20px }
.tabs-wrapper.tabs-icon-block .tabs a:last-of-type {  }
.tabs-icon-block .tabs a i,
.tabs-icon-block .tabs a span { display: block; margin: 0; text-align: center; }
.tabs-icon-block .tabs a span + i,
.tabs-icon-block .tabs a i + span { margin-top: 10px; }
.tabs-icon-block .tabs a i { font-size: 45px }

.tabs-type-fill .tabs a { 
    margin-right: -2px; margin-bottom: 2px; padding: 8px 10px; line-height: 1.2;
    border-width: 1px; border-style: solid; border-radius: 2px;
}

.tabs-type-indicator .tabs { border-bottom-width: 2px; border-bottom-style: solid; padding-bottom: .5em; }
.tabs .tab-indicator { 
    position: absolute; top: 100%; left: 0; width: 0; height: 2px;
    -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); 
    -webkit-transition: all .3s; transition: all .3s;
}

.tabs-wrapper .panel { 
    display: none; opacity: 0; padding-top: 10px;
    -webkit-transform: translate3d(0,10px,0); transform: translate3d(0,10px,0); 
    -webkit-transition: opacity .2s, -webkit-transform .2s; transition: opacity .2s, transform .2s; 
}
.tabs-wrapper .panel.is-active { display: block; }
.tabs-wrapper .panel.is-visible { opacity: 1; transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
.tabs-wrapper .panel > *:last-child { margin-bottom: 0 }

.tabs-vertical { }
.tabs-vertical .tabs { width: auto; max-width: 150px; float: left; }
.tabs-vertical .tabs a { display: block; margin: 0 0 2px 0 }
.tabs-vertical.tabs-icon-block .tabs a { margin-bottom: 20px }
.tabs-vertical .tabs a:last-of-type { margin-bottom: 0 }
.tabs-vertical .panel { padding-top: 0; padding-left: 20px; overflow: hidden; }

.tabs-vertical.tabs-type-indicator .tabs { padding: 0; padding-right: 1em; border-bottom: none; border-right-width: 1px; border-right-style: solid; }
.tabs-vertical.tabs-type-indicator .tab-indicator { top: 0; left: 100%; width: 2px; height: 0 }
.tabs-vertical-right.tabs-type-indicator .tab-indicator { top: 0; left: 100%; width: 2px; height: 0 }

.tabs-vertical-right.tabs-type-indicator .tabs { 
    float: right; padding: 0; padding-left: 1em;
    border-right: none; border-left-width: 1px; border-left-style: solid; 
}
.tabs-vertical-right.tabs-type-indicator .tab-indicator { left: 0; }

.tabs-vertical-right .panel { padding-left: 0; padding-right: 20px; }

/* 4.5.11. Accordion
-----------------------------*/
.accordion-nav { 
    position: relative; display: block; margin-bottom: -1px; padding: 12px 35px 12px 15px; line-height: 1.2; text-align: left;
    border-radius: 2px; border-width: 1px; border-style: solid; 
}
.accordion-nav:hover { z-index: 2 }
.accordion-nav span + i,
.accordion-nav i + span { margin-left: 7px; }

.accordion-nav-icon {
    position: absolute; display: block; top: 50%; right: 15px;
    -webkit-transform: translate3d(0,-50%,0); transform: translate3d(0,-50%,0);
    -webkit-transition: -webkit-transform .2s, opacity .1s;
    transition: transform .2s, opacity .1s;
}
.accordion-nav .accordion-nav-icon { margin: 0 }
.accordion-nav.is-active .accordion-nav-icon {
    -webkit-transform: translateY(-50%) rotate(90deg); transform: translateY(-50%) rotate(90deg);
}

.accordion-align-center .accordion-nav { text-align: center; }
.accordion-align-right .accordion-nav { padding: 12px 15px 12px 35px; text-align: right; }
.accordion-align-right .accordion-nav-icon { left: 15px; right: auto; }

.accordion .panel { 
    display: none; padding: 20px; margin-bottom: 4px; margin-top: -3px;
    border-width: 1px; border-style: solid; border-top: 0;
}
.accordion .panel.is-active { display: block; }
.accordion .panel > *:last-child { margin-bottom: 0 }

/* 4.5.12. Before/After
-----------------------------*/
.before-after { position: relative; overflow: hidden; }
.before-after .image-thumbnail { position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: auto; max-width: none; height: 100%; }
.before-after .image-thumbnail:first-child { width: 40%; overflow: hidden; z-index: 1 }
.before-after .image-thumbnail:first-child img { width: auto; max-width: none }

.before-after-handle {
  position: absolute; top: 0; left: 40%; height: 100%; width: 1px; opacity: .7; z-index: 2;
  background-color: #fff; box-shadow: 0 0 15px rgba(0,0,0,.5);
  -webkit-transition: opacity .4s; transition: opacity .4s;
}

.before-after-handle span {
  cursor: move; cursor: -webkit-grab; cursor: -moz-grab;
  position: absolute; top: 50%; left: 0; text-align: center;
  width: 52px; height: 52px; line-height: 52px; margin-top: -26px; margin-left: -26px;
  border-radius: 26px; box-shadow: 0 0 15px rgba(0,0,0,.3);
}
.before-after-handle span::before { font-size: 18px }
.before-after-handle.is-grabbing span { cursor: -webkit-grabbing; cursor: -moz-grabbing; }

.before-after:hover .before-after-handle,
.before-after:focus .before-after-handle { opacity: 1 }

/* 4.5.13. Counters
-----------------------------*/
.counter-wrapper {  }

.counter-align-left { text-align: left; }
.counter-align-center { text-align: center; }
.counter-align-right { text-align: right; }

.counter-type-standard {  }
.counter-type-box { border-width: 1px; border-style: solid }
.counter-type-border { border-width: 10px; border-style: solid }

.counter-type-box,
.counter-type-border { padding: 40px; }

.counter-wrapper .icon { display: block; margin-bottom: 10px }

.counter { line-height: 1; margin: 5px 0 }
.counter-number { opacity: 0 }
.no-js .counter-number,
.counter-number.is-loaded { opacity: 1 }
.counter-title { margin: 0 }

/* 4.5.14. Testimonials
-----------------------------*/
.testimonial-wrapper {}
.testimonial-type-box { padding: 20px; border-width: 1px; border-style: solid }

.testimonial-align-left { text-align: left; }
.testimonial-align-center { text-align: center; }
.testimonial-align-right { text-align: right; }

.testimonial-quote { margin: 0 0 15px 0; padding: 0; }
.testimonial-quote::before { 
    display: block; position: relative; width: 100%; margin-bottom: 10px;
    background-color: transparent; font-size: 30px; line-height: 1
}

.testimonial-image { display: inline-block; vertical-align: middle; width: 100%; max-width: 50px; border-radius: 50% }
.testimonial-image::after { content: ""; display: block; clear: both; }
.testimonial-image img { border-radius: 50% }

.testimonial-info { margin-top: 10px; line-height: 1 }
.testimonial-author { margin: 0 }
.testimonial-desc {}

/* 4.5.15. Team
-----------------------------*/
.team-wrapper { position: relative; overflow: hidden; }

.team-align-left { text-align: left; }
.team-align-center { text-align: center; }
.team-align-right { text-align: right; }

.team-image { }
.team-info { margin-top: 10px }
.team-name { margin: 0 }
.team-desc {}
.team-info p { margin: 10px 0 0 0 }

.team-icons { margin-top: 10px }
.team-icon { 
    display: inline-block; width: 30px; height: 30px; line-height: 28px; font-size: 14px; text-align: center;
    border-width: 1px; border-style: solid; border-color: currentColor; border-radius: 50%; 
}

.team-over-image .image-thumbnail::after { 
    content: ""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
    -webkit-transition: opacity .3s; transition: opacity .3s;
    -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
}
.team-over-image .team-info { 
    position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: 0; padding: 20px;
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;
    -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; 
    -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
}
.team-over-image-hover .image-thumbnail::after { opacity: 0; }
.team-over-image-hover:hover .image-thumbnail::after { opacity: 1 }
.team-over-image-hover .team-info { 
    opacity: 0; -webkit-transition: all .2s; transition: all .2s;
    -webkit-transform: translate3d(0,5px,0); transform: translate3d(0,5px,0); 
}
.team-over-image-hover:hover .team-info { opacity: 1; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }

.team-boxed .team-info { margin: 0; padding: 20px; border-width: 1px; border-style: solid; border-top: none }
.team-boxed.team-over-image { padding: 10px; border-width: 1px; border-style: solid }
.team-boxed.team-over-image .team-info { top: 10px; left: 10px; right: 10px; bottom: 10px; border: none }

/* 4.5.16. Services
-----------------------------*/
.service-wrapper { position: relative; }
.service-boxed { padding: 20px; border-width: 1px; border-style: solid }

.service-align-left { text-align: left; }
.service-align-center { text-align: center; }
.service-align-right { text-align: right; }

.service-meta { font-size: 40px; line-height: 1 }

.service-info,
.service-meta { position: relative; z-index: 1 }
.service-title { margin: 0 }
.service-desc { }
.service-info p { margin: 10px 0 0 0 }

.service-meta-left,
.service-meta-right { 
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
    -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start;
}
.service-meta-right { flex-direction: row-reverse; }
.service-meta-left .service-info,
.service-meta-right .service-info { position: relative; flex-shrink: 1; width: 100%; max-width: 100% }

.service-meta-top .service-meta { margin-bottom: 15px }
.service-meta-left .service-meta { margin-right: 15px }
.service-meta-right .service-meta { margin-left: 15px }

.service-bg-meta-wrapper { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
.service-bg-meta { position: absolute; width: auto; height: auto; line-height: 1;  }
.service-bg-meta span,
.service-bg-meta .icon { 
    font-size: inherit; color: inherit; line-height: 1;
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; 
}
.service-bg-meta-left-top.service-bg-meta { left: 0; top: 0; }
.service-bg-meta-left-center.service-bg-meta { left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.service-bg-meta-left-bottom.service-bg-meta { left: 0; bottom: 0; }
.service-bg-meta-center-top.service-bg-meta { left: 50%; top: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.service-bg-meta-center-center.service-bg-meta { top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.service-bg-meta-center-bottom.service-bg-meta { left: 50%; bottom: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%) }
.service-bg-meta-right-top.service-bg-meta { right: 0; top: 0; }
.service-bg-meta-right-center.service-bg-meta { right: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.service-bg-meta-right-bottom.service-bg-meta { right: 0; bottom: 0; }

/* 4.5.17. Pricing
-----------------------------*/
.pricing-wrapper { position: relative; padding: 40px; border-width: 1px; border-style: solid; }

.pricing-align-left { text-align: left; }
.pricing-align-center { text-align: center; }
.pricing-align-right { text-align: right; }

.pricing-icon { margin-bottom: 25px; }
.pricing-info { margin-bottom: 25px; }
.pricing-title { margin: 0 }
.pricing-desc { }

.pricing-price-wrapper { line-height: 1; }
.pricing-price { white-space: nowrap; }
.pricing-unit { margin-right: 0px; display: inline-block; vertical-align: top; }
.pricing-period { display: inline-block; margin-left: 0px }

.pricing-list { margin-top: 25px }
.pricing-list ul { margin: 0; padding: 0; list-style: none }
.pricing-list ul li { margin: 5px 0 }

.pricing-wrapper .button { margin-top: 25px }
.pricing-additional-info { display: block; margin-top: 10px; }

/* 4.5.18. Content Carousel
-----------------------------*/
.content-carousel .apalodi-owl-pagination { display: none }

/* 4.5.19. Content Masonry
-----------------------------*/
.masonry-item > *:last-child { margin-bottom: 0 }


/* 4.6. Comments
================================================== */
#comments:focus { outline: 0 }
.comments-area { outline: 0; margin-top: 10px; padding-top: 1em; border-top: 1px solid #eee }

.comments-area .comments-title { margin-top: 0 }

.comments-title,
.comment-reply-title { position: relative; margin: 0 0 1em 0; padding-bottom: 8px; }
.comments-title::before,
.comment-reply-title::before,
.comments-title::after,
.comment-reply-title::after { content: ''; display: block; position: absolute; bottom: 0; left: 0; height: 1px; border-width: 1px; border-style: solid; }
.comments-title::before,
.comment-reply-title::before { width: 15px; bottom: 4px }
.comments-title::after,
.comment-reply-title::after { width: 8px; }

.comment-list { list-style: none; padding: 0; margin: 0 }
.comment .children { list-style: none; padding: 0 0 0 25px; }

.comment-body { 
    position: relative; margin: 0 0 2px 40px; padding: 10px 10px 10px 15px; 
    border-width: 1px; border-style: solid; border-radius: 2px; 
}
.bypostauthor > .comment-body::before {
  position: absolute; top: 10px; right: 10px; height: 20px; opacity: .2;
  font-size: 20px; line-height: 20px; color: inherit;
}
.pingback .comment-body,
.trackback .comment-body { margin: 0 0 4px 0; }

.comment-author img { position: absolute; top: 0; left: -40px; width: 32px; height: 32px; border-radius: 2px }
.comment-author span.says { display: none; }
.comment-metadata { display: block; }
.comment-metadata .edit-link::before { content: "–"; display: inline-block; margin: 0 5px; }
.comment-awaiting-moderation { margin: 0 }

.comment-meta::after { content: ''; display: block; width: 15px; height: 2px; margin: 5px 0 }

.comment-content { margin-top: .5em }
.comment-content > :last-child { margin-bottom: 0 }

.comment .reply { margin-top: .5em; }

.pingback .url,
.trackback .url,
.comment-content a { border-bottom-width: 1px; border-bottom-style: solid; padding-bottom: 2px }

.comments-area .comments-navigation { margin-top: 6px }
.comments-area .no-comments { margin: 0; text-align: center; }

/* Respond Form */
.comment-respond { position: relative; clear: both; }
.comment-respond:focus { outline: 0 }
.comments-area * + .comment-respond { margin-top: 50px }
.comments-area .comment-list .comment-respond { margin: 20px 0 }

.comment-reply-title { margin-top: 0; }
#cancel-comment-reply-link { padding: 3px 5px; border-width: 1px; border-style: solid; border-radius: 3px }

.comment-respond .must-log-in a,
.comment-respond .logged-in-as a { border-bottom-width: 1px; border-bottom-style: solid; padding-bottom: 3px; }

.comment-form { }
.comment-form::after { content: ""; display: block; clear: both; }

.comment-form .comment-form-author,
.comment-form .comment-form-email,
.comment-form .comment-form-url { width: 100%; margin-bottom: 10px }
.comment-form .comment-form-comment { margin-bottom: 10px }

.comment-form .comment-form-comment { clear:both; display: block; width: 100%; }

.comment-form input,
.comment-form textarea,
.comment-form select { width: 100% }

.comment-form .form-submit { clear: both; margin-bottom: 0; }
.form-allowed-tags { display: none; }

@media only screen and ( min-width : 1024px )  {
  .comment-form .comment-form-author,
  .comment-form .comment-form-email,
  .comment-form .comment-form-url { float: left; width: 30.75%; margin-right: 3.8%; }
  .comment-form .comment-form-url { margin-right: 0 }
}


/* 4.7. Filter
================================================== */
.filter-navigation { text-align: center; margin: 0 auto; margin-bottom: 30px; }
.filter-list { list-style: none; margin: 0; padding: 0; font-size: 0 }
.filter-list li { display: inline-block; position: relative; padding: 0; margin: 0 2px 2px 0 }
.filter-list li:last-child { margin-right: 0 }
.filter-list li a { 
    position: relative; padding: 5px 10px; display: block; cursor: pointer;
    border-width: 1px; border-style: solid; border-radius: 2px;
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; 
}
.filter-list li a:hover { z-index: 2 }

/* Filter Button */
.filter-button {  }
.filter-button::before { font-size: 100%; line-height: inherit; display: inline-block; vertical-align: baseline; margin: 0 10px 0 0; }

/* Slide In Type */
.filter-type-slide-in .filter-list { display: none; margin-top: 10px }

/* Dropdown Type */
.filter-type-dropdown { }
.filter-dropdown { position: relative; z-index: 5; width: 170px; text-align: left; display: inline-block; }
.filter-dropdown .filter-button { display: block; width: 100%; text-align: left; overflow: hidden; text-overflow: ellipsis; }
.filter-dropdown .filter-button::before { float: right; margin: 0 0 0 10px }

.filter-dropdown .filter-list { 
    position: absolute; top: 100%; left: 0; width: 100%; margin-top: -1px; z-index: -2;
    visibility: hidden; opacity: 0; box-shadow: 0 0 20px 0 rgba(0,0,0,.1); 
    -webkit-transform:translate3d( 0,-5px,0 ); transform:translate3d( 0,-5px,0 );
    -webkit-transition:all .2s; transition:all .2s; 
 }
.filter-dropdown .filter-list li { display: block; margin: 0 }
.filter-dropdown .filter-list li a { padding: 8px 15px;  border:0; border-radius: 0; }
.filter-dropdown .filter-list li a:hover { box-shadow: none; }

.filter-dropdown:hover .filter-list { 
    visibility: visible; opacity: 1; 
    -webkit-transform:translate3d( 0,0,0 ); transform:translate3d( 0,0,0 );
}


/* 4.8. Pagination
================================================== */
/* 4.8.1. Page Links
-----------------------------*/
.page-links .page-numbers > span,
.page-links .page-numbers a { float: left; margin: 1px; }

/* 4.8.1. Page Pagination
-----------------------------*/
.paging-navigation { margin-top: 40px; text-align: center; }

.paging-navigation .page-numbers,
.paging-navigation .pagination-arrow a { 
    text-decoration: none; line-height: 1;
    -webkit-transition: all .4s; transition: all .4s;
    -webkit-transform:translate3d(0,0,0); transform:translate3d(0,0,0);
}

.paging-navigation .pagination-arrow a,
.paging-navigation .page-numbers .page-numbers { border-width: 1px; border-style: solid; }

/* Pagination Numbers */
.paging-navigation .page-numbers { list-style: none; padding: 0; margin: 0; display: inline-block; vertical-align: middle; }
.paging-navigation .page-numbers li { float: left; margin: 1px; list-style: none; }
.paging-navigation .page-numbers .page-numbers { padding: 10px 15px; border-radius: 2px; }
.paging-navigation .page-numbers .page-numbers.current { z-index: 3 }
.paging-navigation .page-numbers .page-numbers:hover { z-index: 2; }

/* Pagination Arrows */
.paging-navigation .pagination-arrow-desc { display: block; }
.paging-navigation .pagination-arrow { display: inline-block; position: relative; width: 50px; height: 40px; }
.paging-navigation .pagination-arrow.nav-previous { }
.paging-navigation .pagination-arrow.nav-next { margin-left: -1px }
.paging-navigation .pagination-arrow a { overflow: hidden; z-index: 1 }
.paging-navigation .pagination-arrow a:hover { z-index: 3 }
.paging-navigation .pagination-arrow.nav-previous a { border-top-left-radius: 2px; border-bottom-left-radius: 2px; }
.paging-navigation .pagination-arrow.nav-next a { border-top-right-radius: 2px; border-bottom-right-radius: 2px }
.paging-navigation .pagination-arrow a,
.paging-navigation .pagination-arrow::before,
.paging-navigation .pagination-arrow a::before { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2 }
.paging-navigation .pagination-arrow a span { display: none; }
.paging-navigation .pagination-arrow::before,
.paging-navigation .pagination-arrow a::before { font-size: 14px; line-height: 40px }

/* Pagination Load More */
.paging-navigation .pagination-load-more { position: relative; overflow: hidden; }
.paging-navigation .pagination-load-more .load-more-count { display: inline-block; margin-left: 5px }

.paging-navigation .pagination-load-more .load-more-text,
.paging-navigation .pagination-load-more .load-more-loader { 
    -webkit-transition: opacity .4s, -webkit-transform .4s; transition: opacity .4s, transform .4s;  
}

.paging-navigation .pagination-load-more .load-more-text { position: relative; display: block; }
.paging-navigation .pagination-load-more .load-more-loader {
  position: absolute; display: block; top: 50%; left: 50%; opacity: 0;
  height: 20px; width: 20px; font-size: 20px; line-height: 20px; margin-top: -10px; margin-left: -10px; 
  -webkit-transform: translate(0,150%); -ms-transform: translate(0,150%); transform: translate(0,150%);
}
.paging-navigation .pagination-load-more.is-loading .load-more-text { 
    opacity: 0; -webkit-transform:translate3d(0,-20px,0); transform:translate3d(0,-20px,0); 
}
.paging-navigation .pagination-load-more.is-loading .load-more-loader { 
    opacity: 1; -webkit-transform: translate(0,0); -ms-transform: translate(0,0); transform: translate(0,0); 
}
.paging-navigation .pagination-load-more.is-loading .load-more-loader::before {
    -webkit-animation: rotate infinite linear 1.5s; animation: rotate infinite linear 1.5s;
}
.paging-navigation .pagination-load-more.is-loading.is-ajax-error .load-more-loader::before { -webkit-animation:none; animation:none; }

/* 4.8.2. Single Pagination
-----------------------------*/
.single-navigation { position: relative; display: inline-block; vertical-align: middle; margin-top: 1em; margin-right: 15px; }
.single-navigation::before, 
.single-navigation::after { content: ''; display: block; clear: both; }

.single-navigation .nav-single-links { position: relative; float: left; margin: 0 2px 2px 0; padding: 0; }
.single-navigation .nav-single-links a { 
    position: relative; display: block; line-height: 1; padding: 10px 14px; 
    border-width: 1px; border-style: solid; border-radius: 2px;
}
.single-navigation .nav-single-links a:hover { z-index: 2 }
.single-navigation .nav-single-links a::before {  font-size: 12px; }
.single-navigation .nav-single-links .nav-single-title { display: none; }


/* 4.9. Share Buttons
================================================== */
.share-buttons { margin-top: 1em; margin-right: 15px; display: inline-block; vertical-align: middle; }
.share-buttons ul { list-style: none; margin: 0; padding: 0; }
.share-buttons ul::after { content: ""; display: block; }
.share-buttons ul li { float: left; margin: 0 2px 2px 0; padding: 0; }
.share-buttons .share-desc { display: none; }

.share-buttons .share-button { 
    position: relative; display: block; line-height: 1; padding: 10px 12px; font-size: 0;
    border-width: 1px; border-style: solid; border-radius: 2px
}
.share-buttons .share-button::before { vertical-align: middle; }
.share-buttons .share-button:hover { z-index: 2 }


/* 4.10. Stars
================================================== */
.star-rating { position: relative; display: inline-block; }
.star-rating span { position: absolute; overflow: hidden; top: 0; left: 0; height: 100% }
.star-rating span:before { top: 0; position: absolute; left: 0 }


/* 4.11. Widgets
================================================== */
.widget-area .widget { margin: 50px 0 0 0; width: 100% }
.widget-area .widget:first-of-type { margin-top: 0 }

/* Widget Title */
.widget h3 { position: relative; margin: 0 0 15px 0; padding-bottom: 8px; }
.widget h3::before,
.widget h3::after { content: ''; display: block; position: absolute; bottom: 0; left: 0; height: 1px; border-width: 1px; border-style: solid; }
.widget h3::before { width: 15px; bottom: 4px }
.widget h3::after { width: 8px; }

.widget h3 a { color: inherit; }

.widget ul { width: 100%; list-style: none; margin: 0; padding: 0; }
.widget ul li { position: relative; margin: 10px 0; padding-bottom: 10px; border-bottom-width: 1px; border-bottom-style: solid; }
.widget ul li:first-child { margin-top: 0 }
.widget ul li:last-child { border-bottom-width: 0; margin-bottom: 0; padding-bottom: 0 }
.widget li a { color: inherit; }

.widget ul ul { padding: 0 0 0 10px; margin: 15px 0 0 0; border-left-width: 1px; border-left-style: solid; }
.widget li:last-of-type ul ul { margin-bottom: 0 }

.widget ul ul ul ul ul ul ul ul { padding: 0; margin: 0; border: none }

.widget select,
.widget textarea { width: 100%; }

/* Recent Posts Widget */
.widget_recent_entries ul li { padding-left: 35px; counter-increment: step-counter; }
.widget_recent_entries ul li::before {
    position: absolute; top: 4px; left: 0;
    content: counter(step-counter); font-size: 80%; font-weight: bold; padding: 3px 8px; border-radius: 3px;
}
.widget_recent_entries ul li a:only-child { display: inline-block; width: 100%; margin-top: 4px }

.widget_recent_entries ul li span,
.widget_rss .rss-date { display: block; margin-top: 2px }

/* Text Widget */
.widget_text { }

/* Search Widget */
.search-form { position: relative; width: 100%; height: 45px; }
.search-form label { }
.search-form .search-field { width: 100%; height: 100%; padding-left: 15px; padding-right: 45px; }
.search-form .search-submit {
    position: absolute; top: 0; right: 0; height: 100%; width: 45px; font-size: 14px; line-height: inherit; cursor: pointer;
    padding: 0; background: none; outline: none; border: 0; border-radius: 0;
    -webkit-transition: color .2s; transition: color .2s;
}
.search-form .search-submit:hover { box-shadow: none; color: inherit; }
.search-form .search-submit span { display: none; }
.search-form .search-submit::before { display: block; }

/* Tag Cloud Widget */
.tagcloud::after { content: ''; display: block; clear: both; }
.tagcloud a {
    position: relative; float: left; margin: 0 2px 2px 0; padding: 10px; line-height: 1;
    border-width: 1px; border-style: solid; border-radius: 2px;
}
.tagcloud a::before { margin-right: 6px }
.tagcloud a:hover { z-index: 2; }

/* Calendar Widget */
.widget_calendar table { width: 100%; border: none; }
.widget_calendar caption { padding-bottom: 10px; text-align: center; }
.widget_calendar thead th { padding-bottom: 5px; text-align: center; }
.widget_calendar tbody td { border-width: 1px; border-style: solid; padding: 10px 0; text-align: center; }
.widget_calendar tbody td.pad { background-color: transparent; border: 0 }
.widget_calendar tfoot td { padding-top:10px; margin:0; }
.widget_calendar tfoot a { margin-top: 5px; }
.widget_calendar tfoot #next { text-align: right; }

/* RSS Widget */
.widget_rss .widget-title .rsswidget { display: inline-block; vertical-align: middle; line-height: 1 }
.widget_rss .rsswidget img { float: left; margin: 0 }
.widget_rss .rssSummary,
.widget_rss cite { display: none; }

/* Dribbble Widget */
.widget-dribbble { margin: -2px }
.widget-dribbble::after { content: ''; display: table; clear: both; }
.widget-dribbble img { width: 100%; height: auto }
.widget-dribbble .dribble-shot { width: 33.3333%; float: left; padding: 2px; }

/* Social Icons */
.social-icon,
.social-icon::before { }
.social-icon { font-size: 16px }
.social-icon span { display: none; }

/* Viba Portfolio */
.viba-portfolio-widget-wrapper { margin: 0 -1px; width: auto; max-width: none; min-width: 100% }
.viba-portfolio-widget-wrapper::after { content: ""; display: table; clear: both; }
.viba-portfolio-widget-item { float: left; width: 33.3334%; padding: 1px }
.viba-portfolio-widget-item .image-thumbnail { padding-bottom: 100% }

.vp-widget-col-4 .viba-portfolio-widget-item { width: 25%; }
.vp-widget-col-5 .viba-portfolio-widget-item { width: 20%; }
.vp-widget-col-6 .viba-portfolio-widget-item { width: 16.6667%; }

@media only screen and ( min-width : 480px ) {
    .viba-portfolio-widget-item { width: 25%; }
}

@media only screen and ( min-width : 660px ) {
    .viba-portfolio-widget-item,
    .vp-widget-col-4 .viba-portfolio-widget-item { width: 20%; }
}

@media only screen and ( min-width : 768px ) {
    .viba-portfolio-widget-item,
    .vp-widget-col-5 .viba-portfolio-widget-item,
    .vp-widget-col-4 .viba-portfolio-widget-item { width: 16.6667%; }
}

@media only screen and ( min-width : 1025px ) {
    .vp-widget-col-1 .viba-portfolio-widget-item { width: 100%; }
    .vp-widget-col-2 .viba-portfolio-widget-item { width: 50%; }
    .vp-widget-col-3 .viba-portfolio-widget-item { width: 33.3334%; }
    .vp-widget-col-4 .viba-portfolio-widget-item { width: 25%; }
    .vp-widget-col-5 .viba-portfolio-widget-item { width: 20%; }
}

/* Viba Portfolio Filter */
.viba-portfolio-widget-filter .filter-list li { margin: 0 2px 2px 0; padding: 0; border: none }

/* Mini Cart Widget */
.mini-cart { }
.mini-cart-empty i { margin-right: 7px }

.mini-cart-link::after,
.mini-cart-info::after,
.mini-cart .variation::after,
.mini-cart-actions::after { content: ''; display: block; clear: both; }
.mini-cart ul li { position: relative; }

.mini-cart .remove { 
    position: absolute; top: 10px; left: -10px; margin-top: -15px; font-family: Helvetica, Arial; font-size: 20px;
    width: 30px; height: 30px; line-height: 30px; text-align: center; border-radius: 50%; z-index: 2
}

.mini-cart-link { display: inline-block; vertical-align: top; width: 100% }
.mini-cart-link::after { content: ""; display: block; clear: both; }

.mini-cart-title,
.mini-cart .quantity,
.mini-cart .variation { display: block; }
.mini-cart .image-thumbnail { width: 70px; margin-right: 15px; float: left; }

.mini-cart-info { overflow: hidden; }
.mini-cart-title { margin-top: 0; margin-bottom: 3px }
.mini-cart .variation { margin: 4px 0 0 0 }
.mini-cart .variation dt,
.mini-cart .variation dd { margin: 0; float: left; }
.mini-cart .variation dt { clear: both; }
.mini-cart .variation dd { margin-left: 3px; }
.mini-cart .variation dd p { margin: 0 }

.mini-cart-total { margin: 0; text-align: center; height: 40px; line-height: 40px; }
.mini-cart-total > span { display: inline-block; }
.mini-cart-total,
.mini-cart-actions {  }
.mini-cart-actions .button { margin-right: 2px; margin-bottom: 2px }
.mini-cart-actions .button-checkout { margin-right: 0 }

@media only screen and ( min-width : 1025px ) {
    .mini-cart .remove { opacity: 0; }
    .mini-cart-item:hover .remove { opacity: 1; }
}

/* Product Widget */
.product_list_widget li::after { content: ""; display: table; clear: both; }
.product_list_widget li a { display: block; }
.product_list_widget li .image-thumbnail { float:right; height:auto; margin-left: 4px; width: 45px; height: auto; }

/* Cart Widget */
.widget_shopping_cart .total { margin: 20px 0 10px 0 }
.widget_shopping_cart .buttons { margin: 0 }
.widget_shopping_cart .buttons .button { margin-top: 10px }

/* Layered Nav Widget */
.widget_layered_nav a::before,
.widget_layered_nav_filters a::before { margin-right: 6px; }

/* Layered Nav Filters Widget */
.widget_layered_nav_filters a { display: block; }

/* Price Filter Widget */
.widget_price_filter .price_slider_wrapper { padding-top: 9px; }

.widget_price_filter .ui-slider { 
    position: relative; height: 8px; margin-left: 9px; margin-right: 9px;  margin-bottom: 18px;
    border-width: 1px; border-style: solid; border-radius: 6px; 
}
.widget_price_filter .ui-slider-range { position: absolute; z-index: 1; display: block; border-radius: 20px; }

.widget_price_filter .ui-slider-range { top: 0; height: 100%; }
.widget_price_filter .ui-slider-range-min { left: -6px }
.widget_price_filter .ui-slider-range-max { right: -6px }

.widget_price_filter .ui-slider-handle { 
    position: absolute; top: -6px; z-index: 2; width: 18px; height: 18px; margin-left: -9px; 
    border-radius: 18px; cursor: ew-resize; outline: 0; 
}

.widget_price_filter #min_price,
.widget_price_filter #max_price { display: none; }
.widget_price_filter .button { padding: 12px }
.widget_price_filter .price_label { display: inline-block; margin: 0 0 0 5px; }
.widget_price_filter .button::before { margin-right: 6px }

/* Rating Filter Widget */
.widget_rating_filter .star-rating { overflow: hidden; vertical-align: middle; }
.widget_rating_filter ul li a { display: block; }
.widget_rating_filter ul li a span span { padding-top: 40px }

/* Recent Reviews Widget */
.widget_recent_reviews .reviewer { margin-top: 3px }

/* Top Rated Products Widget */
.widget_top_rated_products .amount { margin-top: 3px }


/* 4.12. Magnific Popup
================================================= */
.is-mobile .lightbox,
.is-mobile .gallery-lightbox { pointer-events: none; }

.mfp-zoom-out-cur { cursor: -moz-zoom-out; cursor: -webkit-zoom-out; cursor: zoom-out }
.mfp-hide { display: none !important }

.mfp-no-scroll, 
.mfp-no-scroll body { overflow: hidden; }

.apalodi-mfp.mfp-bg { 
    position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 100002; overflow: hidden; opacity: 0; 
    -webkit-transition: all 0.2s; transition: all 0.2s;
}
.apalodi-mfp.mfp-bg.mfp-ready { opacity: 1; }
.apalodi-mfp.mfp-bg.mfp-removing { opacity: 0; }

.apalodi-mfp.mfp-wrap { 
    position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 100003; 
    outline: none !important; -webkit-backface-visibility: hidden 
}
.apalodi-mfp .mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0; top: 0; }
.apalodi-mfp .mfp-container::before { content: ''; display: inline-block; height: 100%; vertical-align: middle }

.apalodi-mfp .mfp-content { 
    position: relative; max-width: 100%; display: inline-block; vertical-align: middle; 
    margin: 0 auto; text-align: left; opacity: 0; z-index: 100005; will-change: transform;
    -webkit-transform: translate3d(0,0,0) scale(.8); transform: translate3d(0,0,0) scale(.8);
    -webkit-transition: all 0.2s; transition: all 0.2s;
}
.apalodi-mfp .mfp-iframe-holder .mfp-content { width: 100%; max-width: 900px }
.apalodi-mfp.mfp-s-error .mfp-content { display: none }

.apalodi-mfp.mfp-ready .mfp-content { -webkit-transform: translate3d(0,0,0) scale(1); transform: translate3d(0,0,0) scale(1); opacity: 1; }
.apalodi-mfp.mfp-removing .mfp-content { -webkit-transform: translate3d(0,0,0) scale(.8); transform: translate3d(0,0,0) scale(.8); opacity: 0; }

.apalodi-mfp-iframe-scaler { position: relative; padding-bottom: 56.25% }
.apalodi-mfp-iframe-scaler iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none }

.apalodi-mfp-close,
.apalodi-mfp .mfp-counter { 
    position: absolute; top: 0; height: 50px; line-height: 50px; opacity: .9;
    border-width: 1px; border-style: solid; border-top: none; border-right: none; 
}
.apalodi-mfp-close { right: 0; width: 50px; text-align: center; cursor: pointer; }
.apalodi-mfp .mfp-iframe-holder .apalodi-mfp-close { top: -50px }
.apalodi-mfp .mfp-counter { right: 50px; padding: 0 10px; cursor: auto; display: none; pointer-events: none; }
.apalodi-mfp.mfp-gallery .mfp-counter { display: block; }

.apalodi-mfp-arrow {
  position: absolute; top: 50%; width: 50px; height: 60px; line-height: 60px; margin-top: -30px; z-index: 100006; opacity: .7;
  text-align: center; font-size: 20px; cursor: pointer; will-change: background;
  -webkit-transition: background .4s; transition: background .4s;
}
.apalodi-mfp-arrow-left { left: 0; border-radius: 0px 3px 3px 0px; }
.apalodi-mfp-arrow-right { right: 0; border-radius: 3px 0px 0px 3px; }

.apalodi-mfp .mfp-figure { opacity: 0; -webkit-transition: all 0.2s; transition: all 0.2s; will-change: opacity; }
.apalodi-mfp .mfp-figure::after {
    content: ''; width: auto; height: auto; z-index: -1;
    position: absolute; left: 0; top: 0; bottom: 0; display: block; right: 0; 
}
.apalodi-mfp.mfp-gallery .mfp-figure { cursor: pointer }
.apalodi-mfp .mfp-loading.mfp-figure { }
.apalodi-mfp .mfp-s-ready .mfp-figure,
.apalodi-mfp-image-loaded .mfp-figure { opacity: 1 }

.apalodi-mfp .mfp-img { width: auto; max-width: 100%; height: auto; display: block; line-height: 0; margin: 0 auto }
.apalodi-mfp .mfp-title { 
    position: absolute; bottom: 0; left: 0; padding: 5px 10px; opacity: .9; display: none;
    border-width: 1px; border-style: solid; border-bottom: none; border-left: none; 
}
.apalodi-mfp-caption.apalodi-mfp .mfp-title { display: block; }

.apalodi-mfp .mfp-preloader { 
    position: absolute; top: 50%; left: 50%; width: 30px; height: 30px; margin-top: -15px; margin-left: -15px; border-radius: 50%; z-index: 100004;
    -webkit-animation: pulseBig 1s infinite; animation: pulseBig 1s infinite;
 }
.apalodi-mfp .mfp-s-ready .mfp-preloader { display: none }

.apalodi-mfp .mfp-figure::after { box-shadow: 0 0 8px rgba(0,0,0,0.6); background: #444 }

.apalodi-mfp-close,
.apalodi-mfp .mfp-counter { font-size: 12px; background-color: #222; border-color: #333; color: #eee }

.apalodi-mfp-arrow { background: rgba(0,0,0,0.3); color: #eee; }
.apalodi-mfp-arrow:hover { background: rgba(0,0,0,0.9); }

.apalodi-mfp .mfp-title { background-color: #222; border-color: #333; color: #eee }

.apalodi-mfp .mfp-preloader { background-color: #eee }


/* 4.13. OwlCarousel
================================================== */
.apalodi-owl-wrapper { 
    position: relative; overflow: hidden; z-index: 2;
    -webkit-transition-property: height; transition-property: height;
    -webkit-transition-duration: .4s; transition-duration: .4s;
}
.apalodi-owl { /*position: relative; width:100%; z-index: 2*/ }
.apalodi-owl { 
    display: block; position: absolute; top: 0; left: 0; height: 100%; 
    will-change: transform; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); 
}
.apalodi-owl::after { content: ""; display: block; clear: both; }

.apalodi-owl-item { float: left; }
.apalodi-owl .owl-controls .owl-page,
.apalodi-owl .owl-controls .apalodi-owl-arrow { cursor: pointer }
.apalodi-owl .owl-controls { 
}

/* Fix of Webkit flickering */ 
.apalodi-owl-wrappers { 
    position: relative; width: 100%; overflow: hidden; z-index: 2; 
}
/* flickering fix */
.apalodi-owl .owl-wrappers,
.apalodi-owl .owl-items { 
    -webkit-backface-visibility: hidden; backface-visibility: hidden;
    -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
}

/* Carousel Grabbing Cursor */
.apalodi-owl-item { cursor: move; cursor: -webkit-grab; cursor: -moz-grab; }
.apalodi-owl.is-grabbing .apalodi-owl-item {cursor: -webkit-grabbing; cursor: -moz-grabbing; }
.apalodi-owl-wrapper.is-default-cursor .apalodi-owl-item { cursor: auto; }

/* Styling Navigation */
.apalodi-owl-arrow { 
    position: absolute; top: 50%; z-index: 4; margin-top: -15px; width: 30px; height: 30px;
    border-radius: 30px; border-width: 2px; border-style: solid; text-align: center; cursor: pointer;
    -webkit-transition: all 0.2s; transition: all 0.2s;
}
.apalodi-owl-arrow::before { 
    position: absolute; top: 50%; left: 50%; font-size: 12px; line-height: 1;
    -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);
}
.apalodi-owl-prev { left: 5px; }
.apalodi-owl-next { right: 5px; }

/* Styling Pagination */
.apalodi-owl-pagination { 
    position: absolute; bottom: 0; left: 0; right: 0; line-height: 1; padding: 0 4px;
    text-align: left; z-index: 3; pointer-events: none; 
}
.apalodi-owl-page { 
    display: inline-block; vertical-align: top; pointer-events: all; cursor: pointer;
    width: 10px; height: 10px; margin: 0 1px; 
    border-width: 2px; border-style: solid; border-radius: 50%;
    -webkit-transition: all .3s; transition: all .3s; 
}

/* Carousel */
.carousel { position: relative; display: block; overflow: hidden; margin: 0; }
.content-element.carousel { margin-bottom: 1.75em }

.carousel:not(.is-ready) { white-space: nowrap; }
.carousel:not(.is-ready) .carousel-item { width: 100%; display: inline-block; margin-left: -4px; vertical-align: top; white-space: normal; }
.carousel:not(.is-ready) .carousel-item:first-child { margin-left: 0 }
.carousel.is-ready .carousel-item { max-width: 100% }
.carousel-item > *:last-child { margin-bottom: 0 }

.carousel.is-ready { margin-left: 0; margin-right: 0 }
.carousel-no-margins {  }
.carousel-small-margins:not(.is-ready),
.carousel-small-margins .apalodi-owl-wrapper { margin-left: -2px; margin-right: -2px }
.carousel-medium-margins:not(.is-ready),
.carousel-medium-margins .apalodi-owl-wrapper { margin-left: -10px; margin-right: -10px }
.carousel-large-margins:not(.is-ready),
.carousel-large-margins .apalodi-owl-wrapper { margin-left: -15px; margin-right: -15px }
.carousel-no-margins .carousel-item {  }
.carousel-small-margins .carousel-item { padding: 0 2px; }
.carousel-medium-margins .carousel-item { padding: 0 10px; }
.carousel-large-margins .carousel-item { padding: 0 15px; }

.carousel-small-margins .apalodi-owl-prev { left: 7px }
.carousel-small-margins .apalodi-owl-next { right: 7px }
.carousel-medium-margins .apalodi-owl-prev { left: 15px }
.carousel-medium-margins .apalodi-owl-next { right: 15px }
.carousel-large-margins .apalodi-owl-prev { left: 20px }
.carousel-large-margins .apalodi-owl-next { right: 20px }

.carousel-small-margins .apalodi-owl-pagination { left: 2px; right: 2px; }
.carousel-medium-margins .apalodi-owl-pagination { left: 10px; right: 10px; }
.carousel-large-margins .apalodi-owl-pagination { left: 15px; right: 15px; }

@media screen and ( min-width: 1025px ) {
    .apalodi-owl-pagination { display: none; }

    .apalodi-owl-arrow { margin-top: -25px; width: 50px; height: 50px; border-radius: 50px; opacity: 0 }
    .apalodi-owl-arrow::before { font-size: 16px; line-height: 48px; }
    .apalodi-owl-prev { left: 15px; -webkit-transform:translate3d(-5px,0,0); transform:translate3d(-5px,0,0); }
    .apalodi-owl-next { right: 15px; -webkit-transform:translate3d(5px,0,0); transform:translate3d(5px,0,0); }
    .apalodi-owl-wrapper:hover .apalodi-owl-arrow { opacity: 1; -webkit-transform:translate3d(0,0,0); transform:translate3d(0,0,0);  }
    .apalodi-owl-arrow:hover { width: 60px; }

    .carousel-small-margins .apalodi-owl-prev { left: 17px }
    .carousel-small-margins .apalodi-owl-next { right: 17px }
    .carousel-medium-margins .apalodi-owl-prev { left: 25px }
    .carousel-medium-margins .apalodi-owl-next { right: 25px }
    .carousel-large-margins .apalodi-owl-prev { left: 35px }
    .carousel-large-margins .apalodi-owl-next { right: 35px }
}

/* Carousel Navigation Buttons */
.apalodi-owl-arrow { background-color: rgba(51,51,51,0.1); border-color: rgba(255,255,255,.7); color: #fff; }
.apalodi-owl-arrow:hover { background-color: #fff; border-color: #fff; color: #000; }

/* Carousel Pagination */
.apalodi-owl-page { background-color: rgba(51,51,51,0.1); border-color: rgba(255,255,255,.7); }
.apalodi-owl-page.is-active,
.apalodi-owl-page:hover { background-color: rgba(255,255,255,.9); }


/* 4.14. Font Icons
================================================== */
/* Form Elements */
input[type=checkbox]:checked::before,

/* Search Form */
.search-form .search-submit::before,

/* Blog */
.blog-post.sticky a::before,
.blog-post-comments::before,

/* Filter */
.filter-button::before,

/* Pagination */
.pagination-arrow::before, .pagination-arrow a::before, .pagination-load-more .load-more-loader::before, .pagination-button::after,
.single-navigation .nav-single-links a::before,

/* Gallery */
.image-thumbnail::before,
.image-zoom-icon::before,
.apalodi-owl-arrow::before,

/* Google Maps */
.google-map::before,

/* Stars */
.star-rating:before,
.star-rating span:before,

/* Widgets */
.widget_price_filter .button:before,
.widget_layered_nav a:before,
.widget_layered_nav_filters a:before,

/* Social Icons & Share Buttons */
.social-icon::before, .share-button::before,

.before-after-handle span::before,
.testimonial-quote::before,

/* Back to Top */
.back-to-top::before,

/* Magnific Popup */
.apalodi-mfp-arrow,
.apalodi-mfp-close {
    font-family: "apalodi-fontello"; font-variant: normal; font-style: normal; font-weight: normal; text-transform: none; text-decoration: none;
    display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing:grayscale
}

/* Form Elements */
input[type=checkbox]:checked::before { content: '\eaa0'; }

/* Search Form */
.search-form .search-submit::before { content: '\ea95'; }

/* Blog */
.blog-post.sticky a::before { content: '\e9a2'; }
.blog-post-comments::before { content: '\e983'; }

/* Filter */
.filter-button::before { content: "\e91d"; }

/* Pagination */
.pagination-arrow.nav-previous::before,
.pagination-arrow.nav-previous a::before { content: "\e9d4"; }
.pagination-arrow.nav-next::before,
.pagination-arrow.nav-next a::before { content: "\e9d5"; }

.pagination-load-more .load-more-loader::before { content: '\e814'; }

.pagination-single-arrow.nav-previous a::before { content: "\e9d4"; }
.pagination-single-arrow.nav-next a::before { content: "\e9d5"; }
.pagination-single-archives::before { content: "\ea75"; }

.single-navigation .nav-single-archives a::before { content: '\ea75'; }
.single-navigation .nav-single-previous a::before { content: "\e9d4"; }
.single-navigation .nav-single-next a::before { content: "\e9d5"; }

/* Gallery */
.image-thumbnail::before { content: '\e82e'; }
.image-zoom-icon::before { content: '\ea95'; }
.apalodi-owl-prev::before { content: "\e9d4"; }
.apalodi-owl-next::before { content: "\e9d5"; }

.before-after-handle span::before { content: '\eac5'; }
.testimonial-quote::before { content: '\e9ad'; }

/* Google Maps */
.google-map::before { content: '\e9ba'; }

/* Stars */
.star-rating:before { content: "\e825\e825\e825\e825\e825"; }
.star-rating span:before { content: "\e824\e824\e824\e824\e824"; }

/* Widgets */
.widget_price_filter .button:before { content: "\e91d"; }
.widget_layered_nav a:before { content: '\eadd'; }
.widget_layered_nav a:hover:before,
.widget_layered_nav li.chosen a:before { content: '\eadc'; }
.widget_layered_nav_filters a:before { content: '\e839'; }

/* Social Icons & Share Buttons */
.icon-facebook::before,
.share-button-facebook::before { content: "\e94d"; }
.icon-twitter::before,
.share-button-twitter::before { content: "\e957"; }
.icon-gplus::before,
.share-button-google-plus::before { content: "\e976"; }
.icon-pinterest::before,
.share-button-pinterest::before { content: '\e967'; }
.icon-tumblr::before,
.share-button-tumblr::before { content: '\e96a'; }
.icon-linkedin::before,
.share-button-linkedin::before { content: "\e961"; }
.icon-reddit::before,
.share-button-reddit::before { content: '\eb20'; }
.icon-vk::before,
.share-button-vk::before { content: '\e8ce'; }
.icon-mail::before,
.share-button-mail::before { content: "\e821"; }

.icon-instagram::before { content: "\e95c"; }
.icon-dribbble::before { content: "\eaed"; }
.icon-five_100_px::before { content: "\eb18"; }
.icon-behance::before { content: "\e8e6"; }
.icon-skype::before { content: "\eaea"; }
.icon-soundcloud::before { content: "\eaf6"; }
.icon-flickr::before { content: "\e951"; }
.icon-vimeo::before { content: "\eaeb"; }
.icon-xing::before { content: "\eb25"; }
.icon-youtube::before { content: "\e973"; }

/* Back to Top */
.back-to-top::before { content: "\e9d6"; }

/* Magnific Popup */
.apalodi-mfp-arrow-left::before { content: "\e9d4"; }
.apalodi-mfp-arrow-right::before { content: "\e9d5"; }
.apalodi-mfp-close::before { content: "\e823"; }


/* 4.15. CSS Animations
================================================== */
html:not(.no-animations) .animate-element { opacity: 0; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
html:not(.no-animations) .animate-element.is-animated,
.no-js:not(.no-animations) .animate-element { opacity: 1 }

/* animate.css */
.animate-element {
  -webkit-animation-duration: .3s;
  animation-duration: .3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animate-element.rotateIn,
.animate-element.rotateInDownLeft,
.animate-element.rotateInDownRight,
.animate-element.rotateInUpLeft,
.animate-element.rotateInUpRight,
.animate-element.rotateOut,
.animate-element.rotateOutDownLeft,
.animate-element.rotateOutDownRight,
.animate-element.rotateOutUpLeft,
.animate-element.rotateOutUpRight {
  -webkit-animation-duration: .4s;
  animation-duration: .4s;
}

.animate-element.rotate,
.animate-element.lightSpeedIn,
.animate-element.lightSpeedOut,
.animate-element.rollIn,
.animate-element.rollOut,

.animate-element.flip,
.animate-element.flipInX,
.animate-element.flipInY,
.animate-element.flipOutX,
.animate-element.flipOutY,

.animate-element.zoomInDown,
.animate-element.zoomInLeft,
.animate-element.zoomInRight,
.animate-element.zoomInUp,
.animate-element.zoomOut,
.animate-element.zoomOutDown,
.animate-element.zoomOutLeft,
.animate-element.zoomOutRight,
.animate-element.zoomOutUp {
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

.animate-element.bounce,
.animate-element.bounceIn,
.animate-element.bounceInDown,
.animate-element.bounceInLeft,
.animate-element.bounceInRight,
.animate-element.bounceInUp,
.animate-element.bounceOut,
.animate-element.bounceOutDown,
.animate-element.bounceOutLeft,
.animate-element.bounceOutRight,
.animate-element.bounceOutUp,
.animate-element.flash,
.animate-element.rubberBand,
.animate-element.shake,
.animate-element.swing,
.animate-element.tada,
.animate-element.wobble,
.animate-element.jello { animation-duration: 1s; }

.animate-element.hinge {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
}

.animate-element.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
