/* -------------------------------------------- */
/*             TABLE OF CONTENTS
/* -------------------------------------------- */
/*  01  -   GENERAL                             */
/*  02  -   BUTTONS                             */
/*  03  -   FORM                                */
/*  04  -   FIGURE                              */
/*  05  -   ACCORDION                           */
/*  06  -   SLICK                               */
/*  07  -   CARD                                */
/*  08  -   ICON BOX                            */
/*  09  -   ABS BLOCK                           */
/*  10  -   HEADER                              */
/*  11  -   CONTENT                             */
/*  12  -   HOME                                */
/*  13  -   PROJECTS                            */
/*  14  -   BRANDS                              */
/*  15  -   EVENTS                              */
/*  16  -   WHAT WE DO                          */
/*  17  -   ABOUT                               */
/*  18  -   CAREER                              */
/*  19  -   CONTACTS                            */
/*  20  -   FOOTER                              */
/*----------------------------------------------*/


/*----------------------------------------------------
    1. GENERAL
------------------------------------------------------*/
html {
    font-size: 16px;
}
body {
    margin: 0;
    padding: 0;
    font-family: 'Nunito Sans', sans-serif;
    color: #141414;
    font-size: 16px;
    line-height: 1.75;
    overflow-x: hidden;
}
body.no-scroll {
    overflow: hidden;
}
h1, h2, h3, h4, h5, h6 {
    margin-bottom: 1rem;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    color: #000000;
}
h1,.h1 {
    font-size: 61px;
    line-height: 1.18;
    letter-spacing: -0.03em;
    font-weight: bold;
    margin: 0 0 0.5rem;
}
h2,.h2 {
    font-size: 39px;
    line-height: 1.23;
    font-weight: bold;
}
h3,.h3 {
    font-size: 25px;
    line-height: 1.28;
    font-weight: bold;
}
h4,.h4 {
    font-size: 20px;
    font-weight: bold;
}
h5,.h5 {
    font-size: 18px;
    font-weight: bold;
}
h6,.h6 {
    font-size: 16px;
    font-weight: bold;
}
a {
    color: #888;
}

/* Underline link in text elements */
.post-content a,
body.elementor-page .elementor-text-editor a {
    text-decoration: underline;
    text-decoration-color: #999;
}

/* Reset text-decoration */
.wp-block-calendar a,
.wp-block-tag-cloud a,
.wp-block-rss__item-title a,
.pagination a,
.navigation a {
    text-decoration: none;
}


.link-inherit,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a,
.h1 a, .h2 a, .h3 a, .h4 a, .h5 a, .h6 a,
.header-phone a {
    color: inherit;
    text-decoration: none;
}
.link-inherit:hover,
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.header-phone a:hover {
    color: #666666;
    text-decoration: none;
}
img {
    max-width: 100%;
    height: auto;
}
*:focus {
    outline: none;
}
a:hover{
    color: #666666;
}
a:focus,
button:focus {
    outline: none;
}
ol {
    padding: 0;
    list-style-position: inside;
}
ul {
    padding: 0 0 0 20px;
}
dl, ol, ul {
    margin-bottom: 1rem;
}
ol ol, ol ul, ul ol, ul ul {
    padding-left: 1.5em;
    margin-bottom: 0.5rem;
    margin-top: 0.5rem;
}
dt + dd {
    margin: 5px 0 0 40px;
}
dd + dt {
    margin-top: 1.5rem;
}
embed, iframe, object {
    margin-bottom: 1.5em;
    max-width: 100%;
}

.slide-image-wrap {
    overflow: hidden;
    transform: translate(0);
    position: relative;
}
.animation {
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}
.bg-light {
    background-color: #f2f2f2;
}
.bg-dark {
    background: radial-gradient(854.92px at 0% 100%, #333333 0%, #2B2B2B 100%);
    color: #fff;
}
.text-muted {
    color: #999999!important;
}
p {
    margin-bottom: 2rem;
    margin-top: 0;
}
p:last-child {
    margin-bottom: 0;
}
blockquote {
    font-size: 25px;
    line-height: 40px;
    margin: 40px 0 50px;
    text-transform: capitalize;
}
.wp-block-quote.is-large p,
.wp-block-quote.is-style-large p {
    font-size: 30px;
}
blockquote p {
    margin-bottom: 1rem;
}
blockquote cite {
    font-size: 20px;
}

table {
    width: 100%;
    margin-bottom: 1rem;
}
table td,
table th {
    padding: .75rem;
    vertical-align: top;
    border-top: 1px solid #dee2e6;
}

@media only screen and (max-width: 1200px) {
    h1,.h1 {
        font-size: 50px;
        line-height: 1.2;
    }
}
@media only screen and (max-width: 992px) {
    h1,.h1 {
        font-size: 40px;
    }
    h2,.h2 {
        font-size: 28px;
    }
}

@media only screen and (max-width: 768px) {
    blockquote {
        font-size: 20px;
        line-height: 1.3;
        margin: 30px 0 40px;
    }
}

@media only screen and (max-width: 576px) {
    h1,.h1 {
        font-size: 36px;
    }
    h3,.h3 {
        font-size: 22px;
    }
}

@media only screen and (min-width: 321px) {
    .fade-from-top,
    .slide-image-children > *,
    .fade-from-top-children > *,
    .fade-from-top-children-lg > *,
    .fade-from-top-content > *,
    .post-list > .post-item,
    .fade-in,
    .slide-image-right,
    .slide-image-left,
    .dm-accordion > .job-item,
    .project-filter {
        visibility: hidden;
    }
}

/*----------------------------------------------------
    21. WP DEFAULTS
------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}
.has-large-font-size {
    line-height: 1.3;
}
#content[tabindex="-1"]:focus {
    outline: 0;
}
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
}
.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
}
.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-block-cover.alignright,
.wp-block-cover.alignleft,
figure.wp-caption.alignright,
figure.wp-caption.alignleft {
    float: none;
    margin-left: 0;
    margin-right: 0;
}
img.alignleft,
img.alignright {
    float: none;
    margin: 0 0 2rem;
    display: block;
}

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}
.wp-caption {
    margin-bottom: 1.5em;
    max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-caption .wp-caption-text {
    margin: 0.8075em 0;
}
.wp-caption,
.gallery-caption {
    color: #666;
    font-size: 13px;
    font-size: 0.8125rem;
    font-style: italic;
    line-height: 1.3;
    margin-bottom: 1.5em;
    max-width: 100%;
}
.wp-block-search,
.wp-block-categories-dropdown,
.wp-block-archives-dropdown {
    margin-bottom: 2rem;
}
.wp-block-calendar tbody td,
.wp-block-calendar th {
    background: #fff;
    border: 1px solid #CCCCCC;
}
.wp-block-calendar tfoot td {
    text-align: left;
}
.wp-block-latest-comments {
    padding-left: 0;
    margin-bottom: 2rem;
}
.wp-block-rss {
    list-style: none;
    padding: 0;
    margin: 0 0 1rem;
}
.post-content .blocks-gallery-grid {
    padding: 0;
}
.post-content table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
}
.post-content table th,
.post-content table td {
    padding: 5px;
    vertical-align: top;
    border: 1px solid #dee2e6;
    background: #fff;
}
.post-content table thead th {
    vertical-align: bottom;
}
.gallery {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -15px 2rem;
}
.gallery-item {
    display: inline-block;
    vertical-align: top;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 15px;
}
.gallery-columns-1 .gallery-item {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
.keyboard-navigation-mode .post-content a:focus,
.keyboard-navigation-mode .comment-content a:focus,
.keyboard-navigation-mode .widget a:focus,
.keyboard-navigation-mode .author a:focus,
.keyboard-navigation-mode .post-cats-link a:focus,
.keyboard-navigation-mode .post-title a:focus,
.keyboard-navigation-mode .post-more__link a:focus,
.keyboard-navigation-mode .comment-metadata a:focus,
.keyboard-navigation-mode .comment-metadata a.comment-edit-link:focus,
.keyboard-navigation-mode .comment-reply-link:focus,
.keyboard-navigation-mode .widget_authors a:focus strong,
.keyboard-navigation-mode .menu-item a:focus,
.keyboard-navigation-mode .pagination a:not(.prev):not(.next):focus,
.keyboard-navigation-mode .comments-pagination a:not(.prev):not(.next):focus,
.keyboard-navigation-mode .logged-in-as a:focus,
.keyboard-navigation-mode .edit-link a:focus,
.keyboard-navigation-mode .site-info a:focus,
.keyboard-navigation-mode .widget .widget-title a:focus,
.keyboard-navigation-mode .widget ul li a:focus {
    outline: 1px dashed #999;
}
.gallery-columns-5 .gallery-caption,
.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
    display: none;
}
.gallery-caption {
    display: block;
    text-align: left;
}

@media only screen and (min-width: 576px) {
    .gallery-columns-2 .gallery-item,
    .gallery-columns-4 .gallery-item,
    .gallery-columns-5 .gallery-item,
    .gallery-columns-7 .gallery-item,
    .gallery-columns-8 .gallery-item,
    .gallery-columns-9 .gallery-item {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .gallery-columns-9 .gallery-item,
    .gallery-columns-6 .gallery-item,
    .gallery-columns-3 .gallery-item {
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%;
    }
    /* Fix image alignment */
    img.alignleft {
        display: inline;
        float: left;
        margin: 0 1.5em 2rem 0;
    }

    img.alignright {
        display: inline;
        float: right;
        margin: 0 0 2rem 1.5em;
    }
    .wp-block-cover.alignright,
    figure.wp-caption.alignright {
        float: right;
        margin-left: 1.5em;
    }
    .wp-block-cover.alignleft,
    figure.wp-caption.alignleft {
        float: left;
        margin-right: 1.5em;
    }
    .post-content table th,
    .post-content table td {
        padding: 0.75rem;
    }
}
@media only screen and (min-width: 992px) {
    .gallery-columns-4 .gallery-item {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    .gallery-columns-5 .gallery-item {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .gallery-columns-6 .gallery-item {
        -ms-flex: 0 0 16.66%;
        flex: 0 0 16.66%;
        max-width: 16.66%;
    }
    .gallery-columns-9 .gallery-item {
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%;
    }
    .gallery-columns-7 .gallery-item,
    .gallery-columns-8 .gallery-item {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
}
@media only screen and (min-width: 1200px) {
    .gallery-columns-7 .gallery-item {
        -ms-flex: 0 0 14.28%;
        flex: 0 0 14.28%;
        max-width: 14.28%;
    }
    .gallery-columns-8 .gallery-item {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .gallery-columns-9 .gallery-item {
        -ms-flex: 0 0 11.11%;
        flex: 0 0 11.11%;
        max-width: 11.11%;
    }
}


/*----------------------------------------------------
    2. BUTTONS
------------------------------------------------------*/
.btn,
.wp-block-search__input {
    font-weight: bold;
    border-radius: 0;
    padding: .6878rem 1.5rem;
    text-decoration: none;
}
.btn-group-sm>.btn,
.btn-sm {
    padding: 1px 24px;
    font-size: 13px;
    line-height: 18px;
}
.btn.focus, .btn:focus {
    outline: 0;
    box-shadow: none;
}
.wp-block-search__button {
    border: none;
}
.post-password-form input[type=submit] {
    border: 1px solid;
    display: inline-block;
    font-weight: bold;
    border-radius: 0;
    padding: .6878rem 1.5rem;
}
.post-password-form input[type=submit],
.wp-block-search__button,
.btn-primary {
    color: #141414;
    background-color: #F2F2F2;
    border-color: #F2F2F2;
}
.wp-block-search__button:hover,
.btn-primary:hover,
.btn-primary.focus, .btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #666666;
    border-color: #666666;
}
.comment-reply-link,
.btn-secondary {
    color: #fff;
    background: #666666;
    border-color: #666666;
}
.comment-reply-link:hover,
.comment-reply-link:focus,
.btn-secondary:hover,
.btn-secondary.focus, .btn-secondary:focus,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show>.btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: #555;
    border-color: #555;
}
.btn:not(:disabled):not(.disabled).active:focus,
.btn:not(:disabled):not(.disabled):active:focus,
.show>.btn.dropdown-toggle:focus {
    box-shadow: none;
}
.btn-outline-primary {
    color: #666666;
    border-color: #666666;
}
.btn-outline-primary:hover,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle {
    background-color: #666666;
    border-color: #666666;
}
.btn-outline-secondary {
    color: #141414;
    border-color: #141414;
}
.btn-outline-secondary:hover,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.show>.btn-outline-secondary.dropdown-toggle {
    background-color: #141414;
    border-color: #141414;
}
.btn__content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}
.btn__icon {
    line-height: 1;
}
.btn__icon:first-child {
    margin-right: 10px;
}
.btn__icon:last-child {
    margin-left: 10px;
}
.btn-icon {
    padding: 0;
}
.btn-icon > label,
.btn-icon > i {
    content: '';
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 45px;
    font-size: 16px;
    border: 1px solid;
    border-radius: 100%;
    margin-right: 13px;
    text-align: center;
}
.btn-icon > label {
    margin-bottom: 0;
    vertical-align: middle;
}
.btn-icon > label,
.abs-box .btn-icon > i,
.bg-dark .btn-icon > i {
    border-color: #666;
}
.btn__icon_circle {
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 48px;
    font-size: 16px;
    border: 1px solid;
    border-radius: 100%;
    margin-right: 13px;
    text-align: center;
}
.elementor-button-content-wrapper {
    -ms-flex-align: center;
    align-items: center;
}
.icomoon-play {
    padding-left: 6px;
}
.btn-link {
    padding: .6878rem 0;
    font-weight: bold;
    color: #141414;
    text-decoration: none;
}
.btn-link:focus,
.btn-link:hover {
    color: #999;
    text-decoration: none;
}
.post-password-form label {
    display: block;
    width: 100%;
}
.post-password-form label input {
    display: block;
}
.post-password-form p:last-child {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    max-width: 500px;
}
.post-password-form p:last-child label {
    max-width: calc(100% - 160px);
    margin-bottom: 0;
}
.post-password-form p:last-child input[type=submit] {
    width: 150px;
    margin-left: 10px;
    padding: 8px 15px;
}

@media only screen and ( max-width: 768px ) {
    .post-password-form p:last-child label {
        max-width: calc(100% - 110px);
    }
    .post-password-form p:last-child input[type=submit] {
        width: 100px;
    }
}

/*----------------------------------------------------
    3. FORM
------------------------------------------------------*/
input[type=password],
input[type=text] {
    width: 100%;
    display: block;
    border: none;
    border-bottom: 1px solid #CCCCCC;
    font-size: 16px;
    padding: 13px 0;
    line-height: 1.33;
}
.form-group {
    margin-bottom: 30px;
}
select,
.form-control {
    height: auto;
    padding: 12px 0;
    border: none;
    border-bottom: 1px solid #CCCCCC;
    border-radius: 0;
    line-height: 1.45;
    background: none;
}
label.custom-file-label {
    border: none;
    border-bottom: 1px solid #CCCCCC;
    border-radius: 0;
    padding: 10px 0;
    height: auto;
}
.custom-file-label::after {
    height: 44px;
    border-radius: 0;
    padding: 10px 20px;
    cursor: pointer;
}
.custom-file .wpcf7-form-control-wrap {
    position: static;
}
body .custom-file span.wpcf7-not-valid-tip {
    bottom: 4px;
    padding-right: 110px;
    text-align: right;
    z-index: 3;
}

.form-control:focus {
    color: #141414;
    background: none;
    border-color: #6C757D;
    outline: 0;
    box-shadow: none;
}
select {
    padding: 10px 5px;
    border: 1px solid #CCCCCC;
    height: 3em;
}
select:focus {
    border-color: #6C757D;
}
.bg-dark .form-control.wpcf7-not-valid,
.abs-box .form-control.wpcf7-not-valid,
.wpcf7-not-valid {
    border-color: red;
}
::-webkit-input-placeholder {
    color: #000;
}
::-moz-placeholder {
    color: #000;
}
:-ms-input-placeholder {
    color: #000;
}
:-moz-placeholder {
    color: #000;
}
.form-control-sm {
    padding: 10px 0;
    font-size: 13px;
}
.custom-control-label::before {
    border-color: #CCCCCC;
}
.custom-checkbox .custom-control-label::before {
    border-radius: 0;
}
.custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    border-color: #666666;
    background-color: #666666;
}
.custom-control-input:not(:disabled):active~.custom-control-label::before {
    color: #fff;
    background-color: #CCCCCC;
    border-color: #CCCCCC;
}
.custom-control-input:focus:not(:checked)~.custom-control-label::before {
    border-color: #CCCCCC;
}
.custom-control-input:focus~.custom-control-label::before {
    box-shadow: none;
}
label.error {
    color: red;
}
.form-group {
    position: relative;
}
.form-group .wpcf7-form-control-wrap {
    display: block;
}
.form-group label.error {
    position: absolute;
    font-size: 80%;
    line-height: 1.3;
    padding: 2px 0;
    left: 0;
    top: 100%;
}
.form-control.error {
    border-color: red;
}

body span.wpcf7-not-valid-tip {
    position: absolute;
    font-size: 14px;
    width: 100%;
}
div.wpcf7-response-output {
    margin: 10px 0;
    padding: 10px 15px;
    background: #fff;
    border: none;
    border-left: 4px solid #d9534f;;
    line-height: 1.3;
}
.bg-dark div.wpcf7-response-output,
.abs-box div.wpcf7-response-output {
    background: radial-gradient(944.96px at 0% 100%, #EDEDED 0%, #F2F2F2 100%);
    color: initial;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
    border-left-color: #f0ad4e;
}
div.wpcf7-mail-sent-ok {
    border-left-color: #398f14;
}
.dm-ct7-redirect div.wpcf7-mail-sent-ok {
    display: none!important;
}

/*----------------------------------------------------
    4. FIGURE
------------------------------------------------------*/
.figure {
    margin: 0;
    position: relative;
    display: block;
}
.figure-img {
    margin: 0;
    width: 100%;
}
.elementor-image .wp-caption-text,
.figure-caption {
    position: absolute;
    bottom: 15px;
    margin: 0;
    color: #fff;
    font-size: 100%;
    left: 23px;
    font-weight: 600;
    font-size: 16px;
    font-style: normal;
}

/*----------------------------------------------------
    6. SLICK
------------------------------------------------------*/
.slick-dots button {
    display: block;
    text-indent: -100px;
    width: 12px;
    height: 12px;
    border: 1px solid #000000;
    overflow: hidden;
    border-radius: 100%;
    line-height: 12px;
    font-size: 1px;
    background: none;
    padding: 0;
    transition: all 0.2s;
}
.slick-dots button:hover,
.slick-dots .slick-active button {
    background: #000000;
}
.slick-arrow {
    background: none;
    border: none;
    padding: 0;
    width: 48px;
    line-height: 48px;
    height: 48px;
    font-size: 20px;
    color: #fff;
    background: rgba(0,0,0,.5);
    position: absolute;
    z-index: 1;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.slick-prev {
    left: 0;
}
.slick-next {
    right: 0;
}

/*----------------------------------------------------
    8. ICON BOX
------------------------------------------------------*/

@media only screen and ( min-width: 1200px ) {
    .icon-revert .elementor-icon-box-wrapper {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
    .icon-revert .elementor-icon-box-icon {
        margin-bottom: 0 !important;
        margin-top: 25px;
    }
}

/*----------------------------------------------------
    9. ABS BLOCK
------------------------------------------------------*/
.abs-box {
    z-index: 1;
}

.bg-dark,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6,
.bg-dark .h1,
.bg-dark .h2,
.bg-dark .h3,
.bg-dark .h4,
.bg-dark .h5,
.bg-dark .h6,
.abs-box,
.abs-box h1,
.abs-box h2,
.abs-box h3,
.abs-box h4,
.abs-box h5,
.abs-box h6,
.abs-box .h1,
.abs-box .h2,
.abs-box .h3,
.abs-box .h4,
.abs-box .h5,
.abs-box .h6  {
    color: #fff;
}
.bg-dark .btn,
.bg-dark a,
.abs-box .btn,
.abs-box a {
    color: inherit;
}
.bg-dark a:hover,
.abs-box a:hover {
    color: inherit;
}
.bg-dark .form-control,
.abs-box .form-control {
    border-bottom-color: #666666;
    color: #fff;
}
.bg-dark .btn__icon_circle,
.abs-box .btn__icon_circle {
    border-color: #666666;
}
.abs-box .form-control:focus,
.bg-dark .form-control:focus {
    color: #fff;
    border-color: #888888;
}
.abs-box form {
    padding-right: 60px;
    margin-top: 30px;
}
.abs-box-bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    right: 0;
    background: radial-gradient(854.92px at 0% 100%, #333333 0%, #2B2B2B 100%);
    z-index: -1;
}
.elementor-column-gap-default .abs-box-bg {
    left: 10px;
    right: 10px;
}
.elementor-column-gap-narrow .abs-box-bg {
    left: 5px;
    right: 5px;
}
.elementor-column-gap-wide .abs-box-bg {
    left: 20px;
    right: 20px;
}
.elementor-column-gap-wider .abs-box-bg {
    right: 30px;
    left: 30px;
}
.abs-box__title {
    margin: 0 0 30px;
}
.abs-box__text {
    margin: 0 0 45px;
    line-height: 28px;
}
.abs-box__text p:last-child {
    margin-bottom: 0;
}


@media only screen and ( max-width: 1200px ) {
    .abs-box .elementor-column-wrap {
        padding: 60px 75px 60px 15px;
    }
    .abs-box-right .elementor-column-wrap {
        padding-left: 60px;
        padding-right: 15px;
    }
}

@media only screen and ( max-width: 992px ) {
    .abs-box .elementor-column-wrap {
        padding: 60px 45px 60px 30px;
    }
    .abs-box-right .elementor-column-wrap {
        padding: 60px 35px 60px 50px;
    }
    .abs-box form {
        padding-right: 0;
        width: 100%;
    }
}

@media only screen and ( max-width: 576px ) {
    .abs-box {
        background: radial-gradient(854.92px at 0% 100%, #333333 0%, #2B2B2B 100%);
        margin: 0 15px;
    }
    .abs-box > .elementor-column-wrap {
        padding: 30px 25px;
    }
}
@media only screen and ( min-width: 992px ) {
    .abs-box > .elementor-column-wrap {
        min-height: 430px;
    }
    .image-full-box {
        padding: 0;
        position: absolute !important;
        top: 0;
        height: 100%;
        right: 0;
        width: initial!important;
    }
    .image-full-box img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
@media only screen and ( min-width: 1200px ) {
    .image-full-box {
        left: calc((100% - 1140px) / 2);
    }
    .abs-box > .elementor-column-wrap {
        min-height: 510px;
    }
}
/*----------------------------------------------------
    10. HEADER
------------------------------------------------------*/
.site-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1020;
    padding: 8px 0;
    background: #fff;
    opacity: 0;
    transition: transform 0.3s ease-out, opacity 0.3s ease-out;
}
.site-header.loaded {
    opacity: 1;
}
.admin-bar .site-header.sticky,
.admin-bar .site-header {
    top: 32px;
}
.site-header.mob-menu-active {
    transform: none !important;
    transition: none !important;
}
.site-header.home-absolute:not(.header-home) + .site-content-wrap,
.site-header.all-static + .site-content-wrap {
    padding-top: 70px;
}
.site-header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1020;
    width: 100%;
    background: #F2F2F2;
    background: radial-gradient(944.96px at 0% 100%, #EDEDED 0%, #F2F2F2 100%);
    transition: transform 0.3s ease-out, opacity 0.3s ease-out;
}
.site-header.sticky-down {
    transform: translateY(-100%);
    opacity: 0;
}
.site-header.sticky-up {
    transform: translateY(0);
    opacity: 1;
}
.no-animate {
    transition: none !important;
}
.header-home,
.all-absolute {
    background: none;
    top: 0;
}
.site-header.header-home + #main-content {
    padding-top: 0;
}
.custom-logo-link {
    display: block;
    color: inherit;
    text-decoration: none;
}
.custom-logo-link:hover {
    text-decoration: none;
}
.custom-logo-link img {
    display: block;
}
.logo-as-text {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 1.3rem;
}
.header-phone,
.callback-btn {
    margin-left: 2em;
}
.header-phone a {
    color: inherit;
    font-weight: bold;
}

@media only screen and (max-width: 1200px) {
    .site-header {
        padding: 17px 0;
    }
    .admin-bar .main-menu-wrap {
        top: 32px;
    }
}
@media only screen and (max-width: 800px) {
    .header-home + .site-content .hero-slide-inner {
        padding-top: 120px;
    }
}
@media screen and (max-width: 782px) {
    .admin-bar .site-header,
    .admin-bar .main-menu-wrap {
        top: 46px;
    }
    .admin-bar .site-header.sticky,
    .admin-bar .sticky .main-menu-wrap  {
        top: 0;
    }
    .header-phone, .callback-btn {
        display: none;
    }
}
@media screen and (max-width: 576px) {
    .custom-logo {
        max-width: 150px;
    }
}
@media only screen and (min-width: 576px) {
    .header-home.home-absolute,
    .header-home.all-absolute {
        top: 30px;
    }
    .admin-bar .header-home.home-absolute,
    .admin-bar .header-home.all-absolute {
        top: 52px;
    }
    .site-header.header-home.home-absolute.sticky,
    .site-header.header-home.all-absolute.sticky {
        top: 0;
    }
    .admin-bar .site-header.header-home.home-absolute.sticky,
    .admin-bar .site-header.header-home.all-absolute.sticky {
        top: 32px;
    }
}
/*----------------------------------------------------
    10. NAVIGATION
------------------------------------------------------*/
.menu > ul,
.menu {
    padding: 0;
    margin: 0;
    list-style: none;
}
.main-navigation .menu > ul > li,
.main-navigation ul.menu > li {
    display: block;
}
.menu a,
.nav-link {
    text-decoration: none;
}
.main-navigation ul.menu,
.main-navigation .menu > ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
}
.main-navigation .menu li {
    position: relative;
}
.main-navigation li a {
    display: block;
    padding: 10px 0;
    color: #000;
    font-weight: 600;
    transition: all 0.2s;
}
.main-navigation .menu li > a:hover,
.main-navigation .menu li.current-menu-item > a {
    color: #666666;
}
.menu-toggle {
    display: none;
    border: none;
    background: none;
    font-size: 24px;
    padding: 0;
}
.menu-toggle.menu-close {
    width: 100%;
    padding: 10px 20px;
    text-align: left;
    font-weight: bold;
    margin-left: 0;
}
.main-navigation .sub-menu,
.main-navigation .children {
    margin: 0;
    list-style: none;
    padding: 10px 0;
}
.main-navigation .children > li > a,
.main-navigation .sub-menu > li > a {
    display: block;
    padding: 10px 15px;
    line-height: 1.2;
}
.main-navigation .children > li > a:hover,
.main-navigation .sub-menu > li > a:hover {
    background: #F2F2F2;
}

@media only screen and (max-width: 1200px) {
    .toggle-sub-menu {
        color: #222;
        position: absolute;
        right: 0;
        height: 40px;
        top: 0;
        font-size: 18px;
        z-index: 10;
        width: 40px;
        display: block;
        line-height: 40px;
        background: #ddd;
        text-align: center;
    }
    .toggle-sub-menu.active:after {
        content: '-';
    }
    .toggle-sub-menu:after {
        content: '+';
    }
    .main-navigation .children,
    .main-navigation .sub-menu {
        display: none;
        padding: 0;
    }
    .main-navigation .menu li.current-menu-item a,
    .main-navigation .menu li.page_item_has_children a {
        padding-right: 50px;
    }
    .main-navigation .children > li > a,
    .main-navigation .sub-menu > li > a {
        padding-left: 30px;
    }
    .main-navigation .children .children > li > a,
    .main-navigation .sub-menu .sub-menu > li > a {
        padding-left: 50px;
    }
    .main-navigation .menu li.current-menu-item a:after {
        bottom: 50%;
        left: 17px;
        margin-bottom: -2px;
        margin-left: 0;
    }
    .main-menu-wrap {
        position: fixed;
        top: 0;
        left: -320px;
        width: 300px;
        background: #F2F2F2;
        bottom: 0;
        overflow-y: auto;
        -webkit-transition: left 0.3s;
        -moz-transition: left 0.3s;
        -o-transition: left 0.3s;
        transition: left 0.3s;
        z-index: 1020;
        box-shadow: 10px 10px #2E2E2E;
    }
    .custom-logo-link img {
        padding-bottom: 6px;
    }
    .main-menu-wrap.active {
        left: 0;
    }
    .main-navigation ul.menu,
    .main-navigation .menu > ul {
        -ms-flex-direction: column;
        flex-direction: column;
        border-top: 1px solid #DDDDDD;
    }
    .main-navigation ul.menu > li,
    .main-navigation .menu > ul > li {
        display: block;
        width: 100%;
    }
    .main-navigation ul.menu > li > a,
    .main-navigation .menu > ul > li > a {
        padding: 4px 15px;
        position: relative;

    }
    .main-navigation .menu a {
        height: 40px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 300px;
        border-bottom: 1px solid #DDDDDD;
    }
    .menu-toggle {
        display: block;
        margin-left: 2rem;
    }
}
@media only screen and (min-width: 992px) {
    .main-navigation ul ul {
        position: absolute;
        z-index: 1030;
        left: 0;
        top: 100%;
        width: 200px;
        opacity: 0;
        visibility: hidden;
        background: #FFFFFF;
        border-top: 4px solid #F2F2F2;
        box-shadow: -5px 5px 10px 0 rgba(0,0,0,0.05);
        transform: translateY(10px);
        -webkit-transition: all 0.2s;
        -moz-transition: all 0.2s;
        -o-transition: all 0.2s;
        transition: all 0.2s;
    }
    .main-navigation li a:focus > ul,
    .main-navigation li:hover > ul {
        opacity: 1;
        visibility: visible;
        transform: translate(0, 0);
    }
    .main-navigation .menu > ul ul ul,
    .main-navigation ul.menu ul ul {
        left: 100%;
        margin-left: 1px;
        top: 0;
        box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.05);
    }
    .main-navigation .menu > ul ul ul.on-right,
    .main-navigation ul.menu ul ul.on-right {
        margin-right: 1px;
        box-shadow: -5px 5px 10px 0 rgba(0,0,0,0.05);
    }
    .main-navigation ul.on-right,
    .main-navigation .menu > ul >li:last-child ul,
    .main-navigation ul.menu >li:last-child ul,
    .main-navigation .menu > ul >li:last-child ul ul,
    .main-navigation ul.menu >li:last-child ul ul {
        right: 0;
        left: auto;
    }
    .main-navigation .menu ul ul.on-right,
    .main-navigation ul.menu ul ul.on-right,
    .main-navigation .menu > ul >li:last-child ul ul,
    .main-navigation ul.menu >li:last-child ul ul,
    .main-navigation .menu > ul >li:last-child ul ul ul,
    .main-navigation ul.menu >li:last-child ul ul ul {
        right: 100%;
        left: auto;
    }
}

@media only screen and (min-width: 1200px) {
    .main-navigation .menu > ul > li + li,
    .main-navigation ul.menu > li + li {
        margin-left: 30px;
    }
    .main-navigation .menu.to-many-items > ul > li + li,
    .main-navigation .menu.to-many-items > li + li {
        margin-left: 20px;
    }
    .main-navigation #primary-menu > li.current_page_parent > a:after,
    .main-navigation #primary-menu > li.current-menu-item > a:after {
        content: '';
        display: block;
        width: 6px;
        height: 6px;
        position: absolute;
        bottom: 5px;
        left: 50%;
        margin-left: -3px;
        background: #000000;
        border-radius: 100%;
    }
}

@media only screen and (min-width: 1440px) {
    .main-navigation .menu > ul > li + li,
    .main-navigation ul.menu > li + li {
        margin-left: 48px;
    }
    .main-navigation .menu.to-many-items > ul > li + li,
    .main-navigation .menu.to-many-items > li + li {
        margin-left: 30px;
    }
}

/*----------------------------------------------------
    11. CONTENT
------------------------------------------------------*/
.container-elementor .edit-link {
    display: block;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}
.elementor-container.elementor-column-gap-default {
    padding-left: 10px;
    padding-right: 10px;
}
.elementor-section > .elementor-column-gap-default > .elementor-row {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
}

.elementor-container.elementor-column-gap-narrow {
    padding-left: 5px;
    padding-right: 5px;
}
.elementor-section > .elementor-column-gap-narrow > .elementor-row {
    width: calc(100% + 10px);
    margin-left: -5px;
    margin-right: -5px;
}

.elementor-container.elementor-column-gap-extended {
    padding-left: 15px;
    padding-right: 15px;
}
.elementor-section > .elementor-column-gap-extended > .elementor-row {
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-right: -15px;
}

.elementor-container.elementor-column-gap-wide {
    padding-left: 20px;
    padding-right: 20px;
}
.elementor-section > .elementor-column-gap-wide > .elementor-row {
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-right: -20px;
}
.elementor-container.elementor-column-gap-wider {
    padding-left: 30px;
    padding-right: 30px;
}
.elementor-section > .elementor-column-gap-wider > .elementor-row {
    width: calc(100% + 60px);
    margin-left: -30px;
    margin-right: -30px;
}

@media only screen and (max-width: 1359px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 1140px !important;
    }
}

@media only screen and (max-width: 1199px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 960px !important;
    }
}

@media only screen and (max-width: 991px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 720px !important;
    }
}

@media only screen and (max-width: 767px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 540px !important;
    }
}

@media only screen and (max-width: 575px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 100% !important;
    }
}

@media only screen and (min-width : 1370px) {
    .container,
    .container-elementor .edit-link,
    body .elementor-section.elementor-section-boxed > .elementor-container,
    .wp-block-cover__inner-container {
        max-width: 1340px;
    }
}

/*----------------------------------------------------
    11. LINES ON BACKGROUND
------------------------------------------------------*/
.bg-lines {
    position: relative;
    overflow: hidden;
}
.bg-lines__line {
    position: absolute;
    left: 50%;
    top: 530px;
    bottom: 0;
    transform: translateX(-50%);
    z-index: -1;
}
.bg-lines__line b {
    display: block;
    width: 0;
    height: 100%;
    position: absolute;
    left: 30px;
    top: 0;
    border-right: 1px solid;
}
.bg-lines__line b:nth-child(2) {
    left: calc(25% + 15px);
}
.bg-lines__line b:nth-child(3) {
    left: 50%;
}
.bg-lines__line b:nth-child(4) {
    left: calc(75% - 15px);
}
.bg-lines__line b:last-child {
    right: 30px;
    left: auto;
}
.bg-lines__circle {
    position: absolute;
    right: 30px;
    height: 500px;
    width: calc(100% - 60px);
    top: -40px;
    z-index: -1;
    border-top: 1px solid;
    border-right: 1px solid;
    border-radius: 0 100% 0 0;
}
.bg-lines__circle b {
    display: block;
    position: absolute;
    bottom: 0;
    width: 75%;
    height: 75%;
    border-top: 1px solid;
    border-right: 1px solid;
    border-radius: 0 100% 0 0;
    z-index: -1;
}
.bg-lines__circle b:first-child {
    right: calc(25% - 2px);
    width: 80%;
    height: 80%;
}
.bg-lines__circle b:nth-child(2) {
    right: calc(50% - 1px);
    width: 60%;
    height: 60%;
}
.bg-lines__circle b:nth-child(3) {
    right: calc(75% - 1px);
    width: 40%;
    height: 40%;
}
.bg-lines__circle b:last-child {
    right: 100%;
    width: 20%;
    height: 20%;
}
.bg-lines__line b,
.bg-lines__circle,
.bg-lines__circle b {
    border-color: rgba(45, 45, 45,.05);
}
.page-backdrop {
    position: fixed;
    top: 0;
    left: -100%;
    width: 100%;
    background: #F2F2F2;
    bottom: 0;
    background: radial-gradient(854.92px at 0% 100%, #333333 0%, #2B2B2B 100%);
    opacity: 0;
    visibility: hidden;
    z-index: 1019;
    transition: all 0.4s;
}
.page-backdrop.active {
    left: 0;
    opacity: 0.8;
    visibility: visible;
}
.page-content {
    padding-top: 40px;
    padding-bottom: 40px;
    z-index: 1;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .bg-lines__line b:nth-child(4),
    .bg-lines__line b:nth-child(2),
    .bg-lines__circle b:first-child,
    .bg-lines__circle b:nth-child(3) {
        display: none;
    }
    .btn-icon i {
        width: 40px;
        height: 40px;
        line-height: 38px;
    }
    .section {
        padding-top: 45px;
        padding-bottom: 45px;
    }
}
@media only screen and (min-width: 576px) {
    .page-content {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .single .page-content {
        padding-bottom: 120px;
    }
    .bg-lines__line {
        top: 431px;
    }
    .bg-lines__circle {
        top: -422px;
        width: 800px;
        height: 800px;
        right: calc(50% - 240px);
    }
    .bg-lines__circle b:first-child {
        right: 118px;
    }
    .bg-lines__circle b:nth-child(2) {
        right: 238px;
    }
    .bg-lines__circle b:nth-child(3) {
        right: 358px;
    }
    .bg-lines__circle b:last-child {
        right: 478px;
    }
}

@media only screen and (min-width: 768px) {
    .bg-lines__line {
        top: 632px;
    }
    .bg-lines__circle {
        width: 1000px;
        height: 1000px;
        right: calc(50% - 330px);
    }
    .bg-lines__circle b:first-child {
        right: 163px;
    }
    .bg-lines__circle b:nth-child(2) {
        right: 328px;
    }
    .bg-lines__circle b:nth-child(3) {
        right: 493px;
    }
    .bg-lines__circle b:last-child {
        right: 658px;
    }
}

@media only screen and (min-width: 992px) {
    .bg-lines__line {
        top: 811px;
    }
    .bg-lines__circle {
        width: 1200px;
        height: 1200px;
        right: calc(50% - 450px);
    }
    .bg-lines__circle b:first-child {
        right: 223px;
    }
    .bg-lines__circle b:nth-child(2) {
        right: 448px;
    }
    .bg-lines__circle b:nth-child(3) {
        right: 673px;
    }
    .bg-lines__circle b:last-child {
        right: 898px;
    }
}

@media only screen and (min-width: 1200px) {
    .bg-lines__line {
        top: 1031px;
    }
    .bg-lines__circle {
        right: calc(50% - 540px);
        width: 1400px;
        height: 1400px;
    }
    .bg-lines__circle b:first-child {
        right: 268px;
    }
    .bg-lines__circle b:nth-child(2) {
        right: 538px;
    }
    .bg-lines__circle b:nth-child(3) {
        right: 808px;
    }
    .bg-lines__circle b:last-child {
        right: 1078px;
    }
}

@media only screen and (min-width: 1360px) {
    .bg-lines__circle {
        right: calc(50% - 640px);
        width: 1600px;
        height: 1600px;
    }
    .bg-lines__circle b:first-child {
        right: 318px;
    }
    .bg-lines__circle b:nth-child(2) {
        right: 638px;
    }
    .bg-lines__circle b:nth-child(3) {
        right: 958px;
    }
    .bg-lines__circle b:last-child {
        right: 1278px;
    }
    .bg-lines__line {
        top: 1231px;
    }
}

/*----------------------------------------------------
    12. PAGE TITLE
------------------------------------------------------*/
.page-title {
    padding: 106px 0 116px;
    position: relative;
    background: #F2F2F2;
    background: radial-gradient(944.96px at 0% 100%, #EDEDED 0%, #F2F2F2 100%);
}
.page-title__heading {
    font-size: 30px;
    line-height: 1.18;
    letter-spacing: -0.03em;
    font-weight: bold;
}
.page-title__text {
    font-size: 20px;
    line-height: 32px;
    margin: 20px 0 0;
}
.page-title__counter {
    margin: 5px 8px;
    float: right;
}
.section {
    padding-top: 65px;
    padding-bottom: 65px;
}
.counter-num {
    font-size: 48px;
    line-height: 1;
}

@media only screen and (max-width: 992px) {
    .page-title {
        padding: 70px 0;
        background: radial-gradient(100px at 0% 100%, #EDEDED 0%, #F2F2F2 100%);
    }
    .page-title__counter {
        float: none;
        margin-top: 30px;
    }
}
@media only screen and (max-width: 768px) {
    .page-title {
        padding: 50px 0;
    }

    .header-home ~ .site-content-wrap .page-title {
        padding-top: 110px;
    }
    .page-title__text {
        font-size: 18px;
        line-height: 1.3;
    }
}

@media only screen and (min-width: 768px) {
    .page-title__text {
        max-width: 80%;
    }
    .page-title__heading {
        font-size: 40px;
    }
}

@media only screen and (min-width: 992px) {
    .page-title__heading {
        max-width: 80%;
        font-size: 61px;
    }
    .page-title__text {
        max-width: 50%;
    }
}



/*----------------------------------------------------
    12. HOME
------------------------------------------------------*/
.dm-hero {
    opacity: 0;
}
.page .page-content {
    padding: 65px 0;
}
#trans-layer {
    position: fixed;
    left: 0;
    right: 0;
    overflow-x: hidden;
    background: #fff;
    opacity: 1;
    z-index: 99999;
    top: 0;
    background: linear-gradient(40deg, rgb(204, 179, 157) 0%, rgb(209, 209, 209) 100%);
}

@media only screen and (max-width: 768px) {
    .home-about__image {
        position: static!important;
    }
}
@media only screen and (max-width: 576px) {
    .page .page-content {
        padding: 45px 0;
    }
}

/*----------------------------------------------------
    12. PAGINATION
------------------------------------------------------*/
.pagination .page-numbers {
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 48px;
    margin-right: 1rem;
    background: #F2F2F2;
    text-align: center;
    font-weight: bold;
    font-size: 1rem;
    color: #999999;
    vertical-align: top;
}
.pagination .page-numbers.current,
.pagination .page-numbers:hover {
    color: #141414;
}
.pagination .page-numbers.next {
    margin-right: 0;
}
.pagination .page-numbers.prev,
.pagination .page-numbers.next {
    width: 80px;
    font-size: 1.5rem;
    line-height: 50px;
}
.short-mode.pagination .page-numbers.prev,
.short-mode.pagination .page-numbers.next{
    width: 48px;
}
.page-links a {
    text-decoration: none;
}
@media only screen and (max-width: 576px) {
    .pagination .page-numbers {
        width: 38px;
        height: 38px;
        line-height: 38px;
        margin-right: 0;
        font-size: 14px;
    }
    .pagination .page-numbers.prev,
    .pagination .page-numbers.next {
        width: 38px;
        line-height: 40px;
        font-size: 16px;
    }
    .short-mode.pagination .page-numbers.prev,
    .short-mode.pagination .page-numbers.next {
        width: 38px;
    }
    .short-mode .page-numbers.dots {
        padding: 0 5px;
        width: auto;
        background: none;
        line-height: 30px;
    }
}

/*----------------------------------------------------
    13. COMMENTS
------------------------------------------------------*/
.comment-content a {
    word-wrap: break-word;
}
.bypostauthor {
    display: block;
}
.post-comments {
    padding: 55px 0;
    background: #EDEDED;
    background: radial-gradient(100% 160% at 0% 100%, #EDEDED 0%, #F2F2F2 100%);
}
.post-comments .comment-notes {
    display: none;
}
.comment-form .form-submit {
    margin-bottom: 0;
}
.comment-form .form-submit .btn {
    padding: 0;
}
.comments-title {
    margin-bottom: 0;
}
.comment-list,
.comment-list .children {
    list-style: none;
    padding: 0;
    margin: 0;
}
.depth-2 .comment-body {
    padding-left: 25px;
}
.depth-3 .comment-body {
    padding-left: 50px;
}
.depth-4 .comment-body {
    padding-left: 75px;
}
.depth-5 .comment-body {
    padding-left: 90px;
}
.depth-6 .comment-body {
    padding-left: 105px;
}
.children .comment-respond {
    padding-left: 25px;
    padding-bottom: 25px;
    max-width: 100%;
    border-bottom: 1px solid #D9D9D9;
}
.comment-body__avatar {
    position: relative;
}
.children .comment-body__avatar:after,
.children .comment-body__avatar:before {
    content: '\e901';
    font-family: 'icomoon';
    position: absolute;
    left: -24px;
    top: 26px;
    margin-top: -12px;
    color: #999;
    font-size: 13px;
}
.children .comment-body__avatar:after {
    content: '';
    background: #999;
    height: 8px;
    width: 1px;
    opacity: 0.7;
    margin-top: -10px;
}
.comment {
    position: relative;
}
.comment-body {
    border-bottom: 1px solid #D9D9D9;
    padding: 32px 0 25px;
    position: relative;
}
.comment-list > li:last-child .comment-body {
    border-bottom: none;
}
.comment-body__avatar {
    -ms-flex: 0 0 65px;
    flex: 0 0 65px;
    max-width: 65px;
}
.comment-body__content {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
    position: relative;
}
.comment-body__avatar + .comment-body__content {
    max-width: calc(100% - 65px);
}
.comment-author .says {
    display: none;
}
.comment-author .fn {
    vertical-align: top;
}
.comment-author .fn a {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}
.comment-content {
    margin-top: 10px;
    line-height: 1.5;
}
.comment-content > ul,
.comment-content > ol {
    margin-bottom: 1rem;
}
.comment-meta img {
    vertical-align: top;
}
.comment-meta {
    line-height: 1.3;
}
.comment-btns .edit-link {
    vertical-align: top;
}
.comment-btns .reply {
    display: inline-block;
    vertical-align: top;
}
.comment .edit-link {
    margin-right: 5px;
    vertical-align: top;
}
.comment-respond a,
.comment-btns a,
.comment-meta a {
    text-decoration: none;
}
.comment-reply-link {
    display: inline-block;
    padding: 0 15px;
    font-size: 13px;
    font-weight: bold;
    vertical-align: top;
}
.comment-respond {
    margin-top: 25px;
}
.comment-form {
    margin-top: 25px;
}
.comment-form .form-group {
    margin-bottom: 25px;
}
.comment-form .comment-form-email.form-group {
    margin-bottom: 20px;
}
.comment-form .comment-form-cookies-consent {
    font-size: 13px;
    line-height: 16px;
    color: #666666;
    margin-bottom: 20px;
}
.comment-form-cookies-consent .custom-control-label::after,
.comment-form-cookies-consent .custom-control-label::before {
    width: 12px;
    height: 12px;
    top: 1px;
}
.comment-awaiting-moderation {
    line-height: 1.2;
    display: block;
    margin-top: 10px;
    color: #999;
}


@media only screen and (max-width: 576px) {
    .comment-metadata {
        margin-top: 8px;
    }
}
@media only screen and (min-width: 992px) {
    .comments-area {
        max-width: 800px;
        margin: 0 auto;
    }
}
@media only screen and (min-width: 720px) {

    .comment-respond {
        max-width: 528px;
    }
}

@media only screen and (min-width: 576px) {
    .comment-btns {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1;
    }
}

/*----------------------------------------------------
    12. BLOG
------------------------------------------------------*/
.dm-accordion-date,
.post .date,
.post-date,
.post time,
.rss-date {
    color: #999999;
}
.location {
    color: #333333;
}
.location:before,
.dm-accordion-meta:before {
    content: "\e908";
    font-family: 'icomoon';
    display: inline-block;
    font-size: 20px;
    color: #999;
    margin: 0 8px 5px 0;
    vertical-align: middle;
}
.post-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
    transition: opacity 0.2s;
}
.post-list.loading {
    opacity: 0.5;
}
.post-list .post-item {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 15px;
    margin-bottom: 48px;
}
.post-item.sticky .post-item-inner {
    padding: 20px 30px;
    background: #F2F2F2;
    background: radial-gradient(944.96px at 0% 100%, #EDEDED 0%, #F2F2F2 100%);
}
.post-title {
    line-height: 1.23;
    margin: 0 0 20px;
    font-weight: bold;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}
.post-title a {
    text-decoration: none;
}
.single .post-meta {
    margin-bottom: 30px;
}
.dm-social-sharing + .post-content {
    margin-top: 30px;
}
.single .post-content {
    position: relative;
}
.blocks-gallery-caption, .wp-block-embed figcaption, .wp-block-image figcaption {
    color: #999999;
    font-size: 14px;
}
.single .event-single__content  {
    padding-bottom: 0;
}
.post-thumbnail {
    display: block;
    margin: 0 0 20px;
}
.post-thumbnail img {
    width: 100%;
}
.post-title a {
    color: inherit;
}
.post-excerpt {
    margin: 10px 0 10px;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}
article .post-content {
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}
.post-more {
    display: inline-block;
    font-weight: 700;
    color: inherit;
    text-transform: capitalize;
}
.posted-by {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}
.posted-by .author {
    margin-left: 5px;
}
.posted-by i {
    font-size: 20px;
    color: #999999;
    margin-right: 7px;
}
.post-meta > * {
    margin: 0 2rem 1rem 0;
}
.post-meta .post-date {
    margin-top: 2px;
}
.post-date .updated {
    display: none;
}
.post-cats-link a {
    color: inherit;
    text-decoration: none;
}
.post-cats-link a:hover {
    color: #666666;
}
.post-list .post-item.post-item-featured {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
.post-item-featured-inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}
.post-item-featured__left,
.post-item-featured__right {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 15px;
}
.post-item-featured__right {
    margin-bottom: 1rem;
}
.post-item-featured .post-title {
    margin-bottom: 17px;
}
.archive .page-content {
    padding-top: 65px;
}
.page-with-sidebar .page-content-inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
    -ms-flex-pack: center;
    justify-content: center;
}
.page-with-sidebar .site-main,
.page-with-sidebar .sidebar {
    padding: 0 15px;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
.page-with-sidebar .sidebar {
    margin-top: 40px;
}
.single-navigation {
    padding: 54px 0 96px;
}
.navigation-item {
    margin-bottom: 2rem;
}
.post-tags {
    color: #666666;
    margin-top: 25px;
}
.post-tags a {
    text-decoration: none;
}
.post-tags a:hover {
    color: #222;
}
.post-tags a + a {
    margin-left: 5px;
}
.post-tags a:before {
    content: '\0023';
}

@media only screen and (min-width: 1200px) {
    .page-with-sidebar .site-main {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .page-with-sidebar.empty-sidebar .site-main {
        -ms-flex: 0 0 70%;
        flex: 0 0 70%;
        max-width: 70%;
    }
    .page-with-sidebar .template-column-right + .sidebar {
        margin-left: 8%;
    }
    .page-with-sidebar .template-column-left {
        -ms-flex-order: 2;
        order: 2;
    }
    .page-with-sidebar .template-column-left + .sidebar {
        margin-right: 8%;
    }
    .page-with-sidebar .sidebar {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
        margin-top: 0;
    }
}

@media only screen and (min-width: 992px) {
    .post-per-row-2 .post-item,
    .post-per-row-3 .post-item,
    .post-per-row-3 .post-item,
    .post-per-row-5 .post-item  {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .blog .post-thumbnail img {
        max-height: 400px;
        object-fit: cover;
    }
    .post-list .post-excerpt {
        max-width: 80%;
    }
    .event .post-excerpt {
        max-width: 100%;
    }
    .post-item-featured__left {
        padding-right: 50px;
    }
    .navigation-item {
        margin-bottom: 3rem;
    }
    .post-meta > * {
        margin: 0 2rem 0 0;
    }

    .post-per-row-4 .post-title {
        font-size: 30px;
    }
    .post-excerpt {
        margin: 30px 0 10px;
    }
}

@media only screen and (min-width: 1200px) {
    .post-per-row-3 .post-item {
        -ms-flex: 0 0 33.33%;
        flex: 0 0 33.33%;
        max-width: 33.33%;
    }
    .post-per-row-4 .post-item {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    .post-per-row-5 .post-item {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .post-list .post-item.post-item-featured {
        margin-bottom: 77px;
    }
    .post-item-featured__left {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }
    .post-item-featured__right {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
        -ms-flex-order: 2;
        order: 2;
        margin-bottom: 0;
    }
    .post-item-featured .post-title {
        font-weight: normal;
        margin-bottom: 17px;
    }
    .post-item-featured .post-text {
        margin: 27px 0 24px;
    }
}

/*----------------------------------------------------
    13. PROJECTS
------------------------------------------------------*/
.project-filter {
    padding: 7px 0;
}
.project-filter__btn {
    display: inline-block;
    border: none;
    padding: 13px 0;
    margin: 0 80px 22px 0;
    position: relative;
    background: none;
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
}
.project-filter__btn .count {
    position: absolute;
    font-size: 13px;
    line-height: 16px;
    color: #999999;
    left: 100%;
    top: 12px;
    margin-left: 9px;
}
.projects-load {
    opacity: 0;
    transition: all 0.2s;
}
.projects-load.loading {
    opacity: 1;
}
.projects-load .icomoon-refresh {
    display: inline-block;
    font-size: 24px;
    line-height: 1rem;
    vertical-align: middle;
    margin-left: 8px;
}
.projects-load.loading .icomoon-refresh {
    display: inline-block;
    -webkit-animation:spin 1s linear infinite;
    -moz-animation:spin 1s linear infinite;
    animation:spin 1s linear infinite;
}

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

.post-type-archive-project .page-content {
    padding-bottom: 110px;
}
.post-type-archive-project .page-title {
    padding-bottom: 445px;
}
.post-type-archive-project .page-content {
    margin-top: -342px;
}
.project .post-item {
    margin-bottom: 50px;
}
.project .post-thumbnail {
    background: radial-gradient(1453.82px at 0% 100%, #333333 0%, #2B2B2B 100%);
}
.project .post-thumbnail img {
    width: 100%;
    transition: opacity 0.3s;
}
.project .post-thumbnail:hover img {
    opacity: 0.8;
}
.navigation-item .post-title,
.project .post-title {
    font-size: 18px;
    text-transform: capitalize;
    margin-bottom: 6px;
}
.navigation-item.event .post-title {
    font-weight: bold;
}
.projects-contacts__img {
    margin-top: 40px;
}
.project-single__gallery {
    margin: 60px -15px 0;
    opacity: 0;
    top: 50px;
    transition: all 0.4s;
}
.project-single__gallery.is-visible {
    top: 0;
    opacity: 1;
}
.project-single__gallery.slick-slider {
    margin-left: 0;
    margin-right: 0;
    position: relative;
}
.project-single__gallery_nav {
    overflow: hidden;
}
.project-single__gallery_nav .slick-list {
    margin: 5px -5px 0;
}
.project-single__gallery_nav .grid-item {
    padding: 5px;
}
.project-single__gallery_nav .grid-item .slide-image-wrap {
    background: #999999;
}
.project-single__gallery_nav .grid-item img {
    cursor: pointer;
    opacity: 0.5;
    transition: opacity 0.3s;
}
.project-single__gallery_nav .slick-current.grid-item img,
.project-single__gallery_nav .grid-item:hover img {
    opacity: 1;
}
.project-single__gallery:after {
    content: '';
    display: table;
    clear: both;
}
.gallery-layout-masonry .grid-item,
.gallery-layout-grid .grid-item {
    display: block;
    padding: 0 15px;
    margin-bottom: 30px;
    float: left;
}
.single-projects .page-content {
    padding: 63px 0;
}
.project-single__content-title {
    margin: 30px 0 16px;
}
.project-single__content {
    line-height: 28px;
}
.project-single__table {
    padding: 34px 30px;
    background: #FFFFFF;
    border: 1px solid #D9D9D9;
    font-size: 20px;
}
.project-single__table th,
.project-single__table td {
    padding: 6px 0;
    vertical-align: middle;
    border: none;
}
.project-single__table th {
    color: #000000;
    padding-right: 35px;
}
.sl-overlay {
    background: radial-gradient(1453.82px at 0% 100%, #333333 0%, #2B2B2B 100%);
}
.sl-wrapper .sl-close, .sl-wrapper .sl-counter,
.sl-wrapper .sl-navigation button {
    color: #fff;
}
.grid-item {
    width: 100%;
}
.gallery-columns-auto .grid-item {
    width: auto;
}
.grid-item img {
    width: 100%;
}

.gallery-image-size-1_1 .slide-image-wrap {
    padding-top: 100%;
}
.gallery-image-size-16_9 .slide-image-wrap {
    padding-top: 66.66%;
}
.gallery-image-size-4_3 .slide-image-wrap {
    padding-top: 75%;
}
.gallery-image-size-3_4 .slide-image-wrap {
    padding-top: 133.33%;
}
.gallery-image-size-1_1 img,
.gallery-image-size-16_9 img,
.gallery-image-size-4_3 img,
.gallery-image-size-3_4 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

@media only screen and (max-width: 1024px) {
    .gallery-columns-auto .grid-item {
        width: 50%;
    }
}

@media only screen and (max-width: 992px) {

    .projects-title + .projects {
        margin-top: -140px;
    }
    .post-type-archive-project .page-title {
        padding-bottom: 200px;
    }
    .project-filter__btn {
        font-size: 16px;
        line-height: 1.2;
        margin: 0 54px 0 0;
        padding: 0 0 13px;
    }
    .project-filter {
        padding: 7px 0 20px;
    }
    .project-filter__btn.active {
        font-weight: 800;
    }
    .project-filter__btn.active .count{
        font-weight: normal;
    }
    .project-filter__btn .count {
        top: 0;
    }
    .project-single__content-title {
        margin: 0 0 16px;
    }
}

@media only screen and (max-width: 768px) {
    .project-single__gallery {
        margin: 40px -5px 0;
    }
    .project-single__gallery a {
        padding: 0 5px;
        margin-bottom: 10px;
    }
    .projects-title {
        padding-bottom: 220px;
    }
    .projects-title + .projects {
        margin-top: -200px;
    }
    .projects {
        padding-bottom: 70px;
    }
    .project-single__table th,
    .project-single__table td {
        padding: 5px 0;
    }
    .project-single__table th {
        padding-right: 35px;
    }
    .project-single__table {
        padding: 25px;
        font-size: 1em;
    }
    .project-single {
        padding: 40px 0;
    }
    .project-nav {
        padding: 20px 0;
    }
}

@media only screen and (max-width: 576px) {
    .project-single__table {
        padding: 15px;
        margin-top: 20px;
    }
    .project-nav .project-item__title {
        font-size: 18px;
    }
    .project-nav .project-item__loc {
        font-size: 14px;
    }
}

@media only screen and (max-width: 320px) {
    .project-single__table,
    .project-single__table td,
    .project-single__table th {
        display: block;
        width: 100%;
    }
    .project-single__table th {
        padding: 7px 10px 0;
    }
    .project-single__table td {
        padding: 4px 10px 7px;
    }
    .project-single__table {
        padding: 10px 0;
    }
}

@media only screen and (min-width: 576px) {
    .gallery-columns-2 .grid-item,
    .gallery-columns-4 .grid-item,
    .gallery-columns-5 .grid-item,
    .gallery-columns-6 .grid-item {
        width: 50%;
    }
    .gallery-columns-3 .grid-item {
        width: 33.33%;
    }
}
@media only screen and (min-width: 992px) {
    .gallery-columns-4 .grid-item {
        width: 25%;
    }
    .gallery-columns-5 .grid-item {
        width: 20%;
    }
    .gallery-columns-6 .grid-item {
        width: 16.66%;
    }
    .project-filter__btn.active:after {
        content: '';
        display: block;
        width: 6px;
        height: 6px;
        position: absolute;
        bottom: 0;
        left: 50%;
        margin-left: -3px;
        background: #000000;
        border-radius: 100%;
    }
    .navigation-item .post-title,
    .project .post-title {
        font-size: 25px;
    }
    .project-single__content {
        max-width: 86%;
    }
}

/*----------------------------------------------------
    15. EVENTS
------------------------------------------------------*/
.type-event .post-title,
.event .post-title {
    font-weight: normal;
    margin-bottom: 11px;
}
.event .post-date {
    margin: 10px 0;
}
.event .post-excerpt {
    margin: 22px 0;
}
.event .post-more {
    margin-bottom: 30px;
}
.event-single__content {
    margin-bottom: 50px;
}
.event-single__loc-date {
    margin-bottom: 25px;
}
.event-single .post-date {
    margin-right: 30px;
}

.event-single {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
@media only screen and (max-width: 1200px) {
    .event-single {
        padding: 40px 0;
    }
    .event-single__content > *, .event-single__box {
        padding: 0;
    }
}
@media only screen and (max-width: 992px) {
    .post-list .event {
        margin-bottom: 40px;
    }
    .event .post-date {
        margin: 0 0 5px;
    }
    .event .post-title  {
        margin-bottom: 10px;
    }
    .post-item.event:last-child {
        margin-bottom: 0;
    }
}
@media only screen and (max-width: 768px) {
    .event-single__content > img {
        margin: 15px 0 45px;
    }
}
@media only screen and (min-width: 1200px) {
    .event-single-wrap {
        position: relative;
    }
    .event-single-back {
        position: absolute;
        left: 0;
        top: 0;
    }
    .event-single {
        max-width: 640px;
    }
    .post-list .event {
        margin-bottom: 80px;
    }
    .event-single__content > .gallery,
    .event-single__content > p > img {
        padding: 0;
        margin: 25px 0 65px;
        width: calc(100% + 200px);
        max-width: initial;
        margin-left: -100px;
    }
}

/*----------------------------------------------------
    18. CAREER
------------------------------------------------------*/
.dm-accordion-item__header:after {
    content: "\e903";
    font-family: 'icomoon';
    position: absolute;
    right: 22px;
    top: 50%;
    margin-top: -14px;
    color: #000;
}
.dm-accordion-item__header.collapsed:after {
    content: "\e904";
}
.job-table .btn {
    min-width: 128px;
    margin: 0 15px 15px 0;
}
.dm-event__loc:before,
.dm-accordion-meta:before {
    content: "\e908";
    font-family: 'icomoon';
    margin-right: 0.5rem;
}
.job-table {
    border: none;
    border-collapse: separate;
    border-spacing: 0;
}
.job-table ul {
    padding: 0 0 0 0.5em;
    margin: 0;
}
.job-table ul li {
    display: block;
    position: relative;
    margin-bottom: 12px;
    padding: 0 0 0 15px;
}
.job-table ul li:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0.65em;
    border-radius: 100%;
    width: 6px;
    height: 6px;
    background: #000;
}
.dm-accordion-item__content .job-table {
    width: 100%;
    margin: 0;
}
.dm-accordion-item__content .job-table td,
.dm-accordion-item__content .job-table th {
    border: none;
}
.dm-accordion-item__content .job-table th {
    font-weight: bold;
    font-size: 20px;
    line-height: 1.3;
    vertical-align: top;
    text-align: left;
}
.dm-accordion-item__content .job-table th:empty {
    padding: 0;
}

.dm-accordion-item__content .job-table tr:last-child td {
    padding: 5px 0;
}

@media only screen and (max-width: 1200px) {
    .job-table {
        width: 100%;
    }
    .job-table th {
        font-size: 20px;
        line-height: 1.35;
        width: 25%;
    }
    .job-table td {
        padding: 20px 0;
    }
}

@media only screen and (max-width: 992px) {
    .job-table,
    .job-table tr,
    .job-table td,
    .job-table th {
        display: block;
        width: 100%;
    }
}

@media only screen and (min-width: 992px) {
    .dm-accordion-item__content .job-table {
        width: 76%;
    }
    .dm-accordion-item__content .job-table th {
        width: 33%;
        padding: 17px 30px 10px 0;
        font-size: 25px;
        line-height: 40px;
    }
    .job-table ul {
        padding: 0;
    }
    .dm-accordion-item__content .job-table td {
        padding: 25px 0;
        vertical-align: top;
    }
}


/*----------------------------------------------------
    21. WIDGETS
------------------------------------------------------*/
.widget + .widget {
    margin-top: 40px;
}
.widget.dymix-widget-option + .widget.dymix-widget-option {
    margin-top: 10px;
}
.widget-title {
    margin-bottom: 1rem;
}
.widget-logo {
    padding-top: 0;
}
.widget_text p {
    margin-bottom: 15px;
}
.widget_text strong + br + img {
    display: block;
    margin-top: 15px;
}
.wp-block-latest-posts a,
.wp-block-latest-comments a,
.wp-block-rss__item,
.wp-block-archives li a,
.widget a {
    color: #141414;
    text-decoration: none;
}
.wp-block-latest-comments__comment-link {
    text-decoration: underline;
}
a.dm-social-link,
a.dm-social-share,
.tagcloud,
.tagcloud a {
    color: #666666;
    text-decoration: none;
}
a.dm-social-link:hover,
a.dm-social-share:hover,
.tagcloud a:hover {
    color: #333333;
}
.wp-block-archives li,
.widget ul li,
.widget ol li {
    color: #666666;
    padding: 0.2em 0;
}
.wp-block-tag-cloud a,
.widget_tag_cloud a {
    font-size: 1rem !important;
}
.wp-block-tag-cloud .sep,
.tagcloud .sep {
    color: #999;
}
.post-content .wp-block-archives,
.widget ul {
    padding: 0;
    margin: 0;
    list-style: none;
}
.post-content .wp-block-archives {
    margin-bottom: 2rem;
}
.wp-block-archives ul li ul,
.widget ul li ul {
    padding-left: 15px;
    border-left: 1px solid #DDDDDD;
}
.widget ul.sub-menu li:last-child {
    padding-bottom: 0;
}
.col-lg-2 .widget ul li ul {
    padding-left: 10px;
}
.wp-block-search__input,
.widget_search input[type=text] {
    width: 100%;
    display: block;
    border: none;
    border-bottom: 1px solid #CCCCCC;
    font-size: 16px;
    padding: 13px 0;
    line-height: 1.33;
    border-radius: 0;
    background: none;
}
#searchform {
    position: relative;
    overflow: hidden;
}
.widget_search #searchsubmit {
    background: none;
    border: none;
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
}
.wp-block-search__input {
    width: calc(100% - 100px);
}
.wp-block-search__button {
    width: 90px;
}
.searchsubmit-icon {
    color: #000;
    position: absolute;
    right: 0;
    top: 50%;
    width: auto;
    margin-top: -6px;
}
.widget .wpmi-list {
    margin: 0 -4px;
}
.wpmi-list .wpmi-item {
    padding: 4px;
}
.widget-post {
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 14px;
}
.widget-post__image {
    -ms-flex: 0 0 112px;
    flex: 0 0 112px;
    max-width: 112px;
}
.widget-post__image {
    width: 100%;
    height: auto;
}
.widget-post__content {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width:100%;
    position: relative;
}
.widget-post__image + .widget-post__content {
    max-width: calc(100% - 112px);
    padding-left: 24px;
}
.widget-post .post-title {
    font-weight: normal;
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 5px;
}
.widget select {
    width: 100%;
}
.wp-block-categories-dropdown select,
.wp-block-archives-dropdown select {
    width: 400px;
    max-width: 100%;
}
.wp-block-latest-posts.wp-block-latest-posts__list {
    padding: 0;
}
.wp-block-latest-posts li {
    margin-bottom: 1rem;
}

/* RSS */
.widget li a.rsswidget {
    display: block;
    color: inherit;
    font-size: 1.1em;
}
.rss-widget-icon {
    display: none;
}
.widget_rss ul li {
    color: inherit;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #ddd;
}
.rss-date {
    display: block;
    margin: 0 0 5px;
    font-size: 14px;
    font-weight: 600;
}
.rssSummary {
    line-height: 1.4;
}

/* Calendar */
.wp-block-calendar {
    max-width: 400px;
}
.wp-block-calendar table,
.widget_calendar table {
    width: 100%;
    font-family: inherit;
}
.wp-block-calendar table caption,
.widget_calendar table caption {
    text-align: center;
    margin-bottom: 10px;
    color: inherit;
    caption-side: top;
    padding: 0;
}
.wp-block-calendar table thead th,
.widget_calendar table thead th {
    padding: 5px;
    text-align: center;
    border: 1px solid #ddd;
    background: #fff;
}
.col-lg-2 .widget_calendar table thead th,
.col-lg-2 .widget_calendar table tbody td {
    padding: 3px;
    font-size: 12px;
}
.wp-block-calendar table tbody,
.widget_calendar table tbody {
    color: #666;
}
.wp-block-calendar table tbody td,
.widget_calendar table tbody td {
    background: #fff;
    border: 1px solid #ddd;
    text-align: center;
    padding: 5px;
    cursor: default;
}
.wp-block-calendar table tbody td#today,
.widget_calendar table tbody td#today {
    color: #000;
    font-weight: bold;
    background: #f6f6f6;
}
.wp-block-calendar table tbody td:hover,
.widget_calendar table tbody td:hover {
    background: #f6f6f6;
}
.wp-block-calendar table tbody .pad,
.widget_calendar table tbody .pad {
    background: #fff;
    border: 1px solid #ddd;
}
.wp-block-calendar table tfoot td {
    border: none;
    padding: 0;
}
.wp-block-calendar table tfoot #next,
.widget_calendar table tfoot #next {
    text-transform: uppercase;
    text-align: right;
}
.wp-block-calendar table tfoot #prev,
.widget_calendar table tfoot #prev {
    text-transform: uppercase;
    padding-top: 10px;
}
.wp-block-calendar tfoot a {
    color: inherit;
    text-decoration: none;
}

/* Pages */
.widget_pages li.current_page_item a {
    font-weight: bold;
}

.clearfix-table:after {
    display: table;
    clear: both;
    content: "";
}

/*----------------------------------------------------
    20. MODAL
------------------------------------------------------*/
.modal-content {
    border: none;
    border-radius: 0;
}
.modal-header {
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

/*----------------------------------------------------
    21. PRELOADER
------------------------------------------------------*/
.page-preloader {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(40deg, rgb(204, 179, 157) 0%, rgb(209, 209, 209) 100%);
    z-index: 100500;
}
.page-preloader__img,
.page-preloader__spinner {
    width: 80px;
    height: 80px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}
.page-preloader__spinner:after {
    content: " ";
    display: block;
    width: 64px;
    height: 64px;
    margin: 8px;
    border-radius: 50%;
    border: 6px solid #000;
    border-color: #000 transparent #000 transparent;
    animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/*----------------------------------------------------
    22. FOOTER
------------------------------------------------------*/
.site-footer {
    background: radial-gradient(1453.82px at 0% 100%, #333333 0%, #2B2B2B 100%);
    color: #fff;
    padding: 90px 0;
}
.site-footer .wp-caption,
.site-footer .gallery-caption {
    color: #999;
}
.site-footer .widget-title {
    color: #fff;
    margin-bottom: 10px;
}
.site-footer a:hover {
    color: #ccc;
}
.site-footer a,
.site-footer .widget a  {
    color: inherit;
}
.site-footer .widget-col {
    padding-top: 0;
    margin-bottom: 40px;
}
.site-footer .widget-col:empty {
    padding: 0;
    margin: 0;
}
.site-footer .widget {
    padding: 0;
}
.dm-customize-company-address {
    line-height: 1.88;
}
.footer-menu a {
    padding: 0;
    text-transform: capitalize;
}
.site-footer .form-control {
    border-color: #6C757D;
    color: #fff;
}
.site-footer .widget_media_image img {
    max-width: 142px !important;
}
.site-footer .widget ul li,
.site-footer .widget ol li,
.site-footer .widget select {
    color: #fff;
}
.site-footer .widget select option {
    color: #000;
}
.site-footer .widget_calendar table tbody td#today,
.site-footer .widget_calendar table thead th,
.site-footer .widget_calendar table tbody td {
    background: #666666;
    color: #ddd;
    border-color: #2B2B2B;
}
.site-footer .widget_calendar table tbody td#today {
    color: #fff;
}
.site-footer .widget_rss ul li,
.site-footer .widget ul li ul {
    border-color: #6C757D;
}
.site-footer .wp-block-search__input,
.site-footer .widget_search input[type=text] {
    background: none;
    color: #fff;
}
.site-footer .widget_search input[type=text]::-webkit-input-placeholder {
    color: #ddd;
}
.site-footer .widget_search input[type=text]::-moz-placeholder {
    color: #ddd;
}
.site-footer .widget_search input[type=text]:-ms-input-placeholder {
    color: #ddd;
}
.site-footer .widget_search input[type=text]:-moz-placeholder {
    color: #ddd;
}
.site-footer a.dm-social-link,
.site-footer a.dm-social-share,
.site-footer .tagcloud,
.site-footer .tagcloud a {
    color: #fff;
}
.site-footer .searchsubmit-icon {
    color: #fff;
}
@media only screen and (max-width: 992px) {
    .footer-nav {
        margin-top: 10px;
    }
    .site-footer {
        padding: 50px 0;
    }
}
@media only screen and (min-width: 992px) {
    .footer-menu li {
        display: inline-block;
    }
    .footer-menu li + li {
        margin-left: 30px;
    }
}
@media only screen and (min-width: 1200px) {
    .site-footer .widget-col {
        padding-top: 53px;
        margin-bottom: 65px;
    }
    .site-footer .widget_media_image {
        position: relative;
        top: -55px;
    }
}

/* Styles for IE 10/11 */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    body .dm-hero-slide-inner {
        padding-top: 300px!important;
    }
    body .wpmi-list {
        display: block;
    }
    .wpmi-list:after {
        content: '';
        display: table;
        clear: both;
    }
    .wpmi-list.wpmi-layout-3 .wpmi-item,
    .wpmi-list.wpmi-layout-6 .wpmi-item {
        display: block;
        float: left;
    }
    .wpmi-list.wpmi-layout-3 .wpmi-item:nth-child(3n+3),
    .wpmi-list.wpmi-layout-6 .wpmi-item:nth-child(3n+3) {
        clear: right;
    }
}