.paraxify {
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
}
/* ############################
## LOGO
############################ */
.c-logo {
    position: relative;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    height: 96px;
    box-sizing: border-box;
    transition: max-height .3s ease-in-out;
}

.l-center--header--layout-2 .c-logo {
    background-position: center;
}

.c-logo a {
    display: block;
    line-height: 0;
}

.c-logo img {
    max-width: unset;
    opacity: 0;
    height: 100%;
    max-height: 0;
    transition: max-height .3s ease-in-out;
}

.l-header-desktop--layout-1 .c-logo {
    margin: 0 16px 0 0;
}

.l-header-desktop--layout-2 .c-logo {
    margin: 8px 16px;
}

.l-header-mobile .c-logo {
    background-position: left;
}

.c-logo-404 {
    margin-top: 64px
}

/* ############################
## BLOCKS
############################ */
/* ----------------------------
-- hero
---------------------------- */
.c-hero-background {
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: scroll;
    background-position: center;
    overflow: hidden;
}

.c-hero-background::after,
.c-hero-background::before {
    content: '';
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    position: absolute;
}

@media all and (min-width:1200px) {
    .c-hero-background {
        background-attachment: fixed;
    }
}

.e-hero__media-image {
    width: 100%;
    max-width: 768px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/* ----------------------------
-- text column
---------------------------- */
.e-text-column {
    width: 100%;
    margin-bottom: 32px;
}

@media all and (min-width:1024px) {
    .e-text-column {
        margin-bottom: 0;
        padding-right: 32px;
    }

    .e-text-column:last-of-type {
        padding-right: 0;
    }
}

/* ----------------------------
-- side by side
---------------------------- */
.c-block-side {
    display: grid;
    grid-template-columns: 1fr;
    grid-row-gap: 16px;
}

@media all and (min-width:768px) {
    .c-block-side {
        display: grid;
        grid-row-gap: 0;
        grid-column-gap: 32px;
    }
}

.c-block-side:last-child {
    margin-bottom: 0;
}

@media all and (min-width:768px) {
    .l-block-side-by-side-wrapper:nth-child(2n) .e-block-side__item--image {
        order: 2;
    }
}

.c-block-side article h2 {
    margin-top: 0;
}

@media all and (min-width:768px) {
    .e-block-side__item--content {
        margin-top: 0
    }
}

.e-block-side__item--image {
    position: relative;
}

.e-block-side__item--image picture {
    width: 100%;
    display: none;
}

.e-block-side__item--image picture:first-child {
    display: block;
}

.e-block-side__item--image picture img {
    width: 100%;
    display: flex;
}

.e-block-side__item--image picture svg {
    width: 100%;
    display: flex;
}

.e-block-side__item-image {
    display: none;
}

.e-block-side__item-image:first-child {
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    overflow: hidden;
    position: relative;
}

.e-block-side__item-image img {
    width: 100%;
    height: auto;
    opacity: 0;
}

.e-block-side__item__loop-link {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.32);
    transform: scale(1.2);
    opacity: 0;
    transition: transform .3s, opacity .3s;
}

.e-block-side__item__loop-link__icon {
    font-size: 48px;
    color: white;
}

.e-block-side__item-image:hover .e-block-side__item__loop-link {
    opacity: 1;
    transform: scale(1);
}

.c-block-side article {
    display: flex;
    flex-direction: column
}

/* ----------------------------
-- accordion
---------------------------- */
.c-accordion {
    list-style-type: none;
    width: 100%;
    margin-bottom: 16px;
}

.e-accordion__element {
    position: relative;
    margin-bottom: 28px
}

.e-accordion__element:last-child {
    margin-bottom: 0
}

.e-accordion__element-title {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 4px;
}

h3.e-accordion__element-header {
    transition: color .3s;
}

@media all and (min-width:768px) {
    .e-accordion__element-title {
        flex-direction: row;
        justify-content: space-between;
    }
}

.e-accordion__element-title--price {
    width: 100%;
}

.e-accordion__element-title h3 {
    margin-right: 32px;
    text-transform: uppercase;
    font-weight: 800;
}

@media all and (min-width:768px) {
    .e-accordion__element-title h3 {
        max-width: calc(100% - 64px);
    }
}

.e-accordion__element-price {
    margin-top: 8px;
}

@media all and (min-width:768px) {
    .e-accordion__element-price {
        margin-top: 0;
    }
}

.e-accordion__tab-caret {
    min-width: 16px;
    min-height: 16px;
    max-width: 16px;
    max-height: 16px;
    margin-left: 16px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4px;
    transition: background-color .3s, transform.3s;
}

.e-accordion__tab-caret i {
    font-size: 16px;
    transition: transform .3s;
}

.js-accordion__tab-button--active .e-accordion__tab-caret i {
    transform: rotate(45deg)
}

.e-accordion__tab-button,
.e-accordion__tab-no-button {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 0 8px 0;
    cursor: pointer;
    width: 100%;
    text-align: left;
    outline: none;
    border-bottom: 1px solid;
    transition: color .3s, border-bottom .3s;
}

.e-accordion__tab-no-button {
    cursor: unset;
}

.e-accordion__content {
    max-height: 0;
    opacity: 0;
    height: auto;
    overflow: hidden;
    margin-top: 8px;
    transition: max-height .3s .3s ease-in-out, opacity .3s .1s;
}

.js-accordion__tab-button--active~.e-accordion__content {
    opacity: 1;
    transition: max-height .3s ease-in-out, opacity .3s .3s;
}

/* ----------------------------
-- tiles
---------------------------- */
.c-tiles {
    display: grid;
}

.l-section-tiles h3.e-tiles__header {
    position: relative;
    width: 100%;
    z-index: 10;
    transition: color .3s;
}

.e-tiles__element {
    width: 100%;
    height: 100%;
    padding: 32px 32px 32px 32px;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.e-tiles__content {
    z-index: 20;
    position: relative;
    display: flex;
    flex-direction: column;
}

.e-tiles__tile-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-size: cover;
    background-position: center;
    transition: transform .3s, background-color .3s;
}

.e-tiles__element:hover .e-tiles__tile-background,
.e-tiles__element:active .e-tiles__tile-background {
    transform: scale(1.05);
}

/* ----------------------------
-- icons
---------------------------- */
.c-icon {
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-self: center;
    box-sizing: border-box;
    border-style: solid;
    transition: box-shadow .3s, background-color .3s;
}

@media all and (max-width:768px) {
    .c-icon {
        max-width: 320px;
    }
}

@media all and (min-width:1024px) {
    .c-icon:last-child {
        margin-bottom: 0;
    }
}

.e-icon__order {
    display: flex;
    justify-content: center
}

.e-icon__order span {
    fill: black;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2px;
    font-size: 32px;
    box-sizing: border-box;
    border-style: solid;
}

.e-icon__order span svg {
    height: 32px;
}

@media all and (min-width:768px) {
    .e-icon__order span {
        font-size: 48px;
    }

    .e-icon__order span svg {
        height: 48px;
    }
}

@media all and (min-width:1204px) {
    .e-icon__order span {
        font-size: 54px;
    }

    .e-icon__order span svg {
        height: 54px;
    }
}

.e-icon__content-header {
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
    margin-top: 14px;
    font-weight: 800;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    text-align: center !important
}

.e-icon__text {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* ----------------------------
-- price table
---------------------------- */
.c-price-table {
    display: grid;
    width: 100%;
    justify-items: center;
    grid-gap: 32px;
}

.e-price-table {
    width: 100%;
    max-width: 420px;
    border-width: 1px;
    border-style: solid;
    padding-bottom: 0;
}

.l-price-table .e-price-table__header {
    position: relative;
    text-align: center;
    padding: 16px 16px 0 16px;
    box-sizing: border-box;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.l-price-table .e-price-table__header:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 32px;
    left: 0;
    bottom: -30px;
    -webkit-clip-path: polygon(0 0, 100% 1%, 100% 5%, 50% 99%, 0 5%);
    clip-path: polygon(0 0, 100% 1%, 100% 5%, 50% 99%, 0 5%);
}

.e-price-table__features {
    margin-top: 48px;
}

.l-price-table .e-price-table__features sup,
.l-price-table .e-price-table__features sub {
    font-size: smaller;
    position: absolute;
    right: 8px;
}

.l-price-table .e-price-table__features sup {
    top: 8px;
}

.l-price-table .e-price-table__features sub {
    bottom: 8px;
}

.l-price-table .e-price-table__features a {
    display: inline;
}

.l-price-table .e-price-table__features li {
    list-style: none;
    position: relative;
    padding: 12px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    display: block;
    box-sizing: border-box;
    padding-left: 48px;
}

.l-price-table .e-price-table__features li:last-of-type {
    border-bottom: none;
}

.l-price-table .e-price-table__features ol+ul li:first-child {
    border-top-width: 1px;
    border-top-style: solid;
}

.l-price-table .e-price-table__features ol+ul li:last-child {
    border-bottom: none;
}

.l-price-table .e-price-table__features li::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 18px;
    position: absolute;
    display: block;
    margin-left: -26px;
    width: 18px;
}

.l-price-table .e-price-table__features ol li::before {
    content: '\f00c';
}

.l-price-table .e-price-table__features ul li::before {
    content: '\f00d';
}

.e-price-table:last-child {
    margin-right: 0;
}

.e-price-table__price {
    margin: 16px 0 0 0;
    padding: 16px;
    text-align: center;
    display: flex;
    flex-direction: column-reverse;
}

.l-price-table-extras {
    margin-top: 32px;
}

/* ----------------------------
-- maps
---------------------------- */
.c-contact-map {
    position: relative;
}

.e-contact-map__iframe iframe {
    width: 100%;
}

.e-contact-map__iframe p {
    line-height: 0;
}

.c-localisation {
    position: relative;
    display: flex;
    flex-direction: column
}

@media all and (min-width:1024px) {
    .c-localisation {
        flex-direction: row
    }
}

.c-map-markers {
    z-index: 20;
    position: relative
}

.e-map-markers__item {
    height: auto;
    overflow: hidden;
    padding-right: 8px
}

.e-map-marker {
    padding: 8px 0 8px 0;
    border-bottom: 1px solid #000
}

@media all and (min-width:1024px) {
    .gm-style .gm-style-iw-c {
        min-width: 128px;
        max-width: 420px !important;
        max-height: 320px !important;
    }
}

.e-map-marker:last-child {
    border-bottom: none
}

.e-map-marker article {
    display: none
}

.e-map-marker p {
    margin-bottom: 0
}

.e-marker-link {
    cursor: pointer
}

h3.e-map-markers__item-header {
    font-size: 14px;
    text-transform: uppercase
}

h4.e-marker-header {
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 4px
}

.l-map-markers h4.e-marker-header {
    font-size: 12px
}

.l-section-map p.e-map-markers__adress {
    font-size: 12px;
    color: black;
}

.l-section-map div.c-localisation article * {
    color: black;
}

h4.e-marker-header i {
    margin: 0 8px 0 1px;
    font-size: 14px
}

.e-map-marker-color {
    color: #00f
}

.acf-map {
    width: 100%;
    position: relative;
}

.acf-map img {
    max-width: inherit !important;
}

.acf-map .marker {
    display: none
}

.acf-map h4.e-marker-header {
    color: black;
}

.marker {
    display: none
}

/* ----------------------------
-- contacts
---------------------------- */
.c-contacts {
    display: flex;
    width: 100%;
}

.l-footer .c-contacts {
    flex-direction: column;
}

/* ----------------------------
-- contacts simple
---------------------------- */
.c-contacts-simple {
    width: 100%;
    display: flex;
    justify-content: flex-start;
}

@media all and (min-width:768px) {
    .c-contacts-simple {
        justify-content: center;
    }
}

.c-contacts--simple {
    flex-direction: column;
    justify-content: flex-start;
    max-width: 640px;
}

@media all and (min-width:768px) {
    .c-contacts--simple {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        max-width: 100%;
    }
}

/* ----------------------------
-- contacts details
---------------------------- */
.c-contacts-details {
    display: grid;
    width: 100%;
}

.c-contact-colum:last-child {
    margin-bottom: 0;
}

.e-text-column {
    width: 100%;
    margin-bottom: 32px;
}

@media all and (min-width:768px) {
    .e-text-column {
        max-width: calc(100% - 16px);
        margin-bottom: 0;
    }
}

.c-contacts--details {
    flex-direction: column;
}

.l-header .c-contacts {
    display: flex;
    flex-direction: row;
}

.l-mobile-menu-element .c-contacts {
    align-items: flex-start
}

.l-footer .e-contact__item {
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.l-footer .e-contact__item,
.l-mobile-menu-element .e-contact__item {
    flex-direction: row;
    margin-bottom: 16px;
    align-items: flex-start;
    align-items: center;
}

.l-footer .e-contact__item:last-child {
    margin-bottom: 0
}

.l-section-contacts .e-contact__icon {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 16px;
    border-style: solid;
}

.l-mobile-menu-element .e-contact__icon {
    font-size: 18px;
    width: 18px;
    margin-bottom: 0;
    display: flex
}

.l-footer .e-contact__icon {
    margin-right: 16px;
}

@media all and (min-width:425px) {
    nav.l-nav-top-bar .c-contacts {
        flex-direction: row
    }
}

.e-contact__item {
    display: flex;
    align-items: flex-start;
    align-items: center;
    margin-bottom: 12px
}

.l-header .e-contact__item {
    margin: 0;
    display: none;
}

@media all and (min-width:512px) {
    .l-header .e-contact__item {
        align-items: center;
    }

    .l-header .e-contact__item:nth-child(1) {
        display: flex;
    }
}

@media all and (min-width:768px) {
    .l-header .e-contact__item {
        margin-right: 16px;
    }
    .l-header .e-contact__item:nth-child(2) {
        display: flex;
    }
    .l-header .e-contact__item:last-child {
        margin-right: unset
    }
}

@media all and (min-width:1200px) {
    .l-header .e-contact__item {
        display: flex;
    }
}

h3.e-contacts__header {
    margin-bottom: 16px;
}

.l-section-contacts .e-contact__item {
    padding: 0;
}

.l-section-contacts .e-contact__item--simple {
    align-items: center;
}

@media all and (min-width:768px) {
    .e-contact__item--simple {
        margin-right: 32px;
    }
}

.l-section-contacts .e-contact__item-details {
    padding: 0;
    align-items: flex-start;
}

.l-section-contacts .e-contact__icon {
    margin-top: 2px;
}

.l-section-contacts .e-contact__data--mobile-phone {
    display: flex;
    flex-direction: column;
}

.e-contact__data a:hover,
.e-contact__data a:active {
    transition: color .3s;
}

@media all and (min-width:768px) {
    .e-contact__data--mobile-phone a {
        margin-right: 8px;
    }
}

header .e-contact__data a {
    margin-right: 0;
}

@media all and (min-width:768px) {
    .e-contact__item {
        flex-direction: row
    }
}

@media all and (min-width:1200px) {
    .l-header .e-contact__item {
        display: flex;
    }
}

.e-contact__icon {
    margin-right: 8px;
    display: flex;
    justify-content: center;
    align-items: flex-start
}

.e-contact__icon--details {
    font-size: 18px;
    width: 18px;
}

.e-contact__icon--simple {
    width: 32px;
    height: 32px;
    border-style: solid;
}

.l-nav-top-bar .e-contact__icon {
    align-content: center;
    margin-bottom: 0;
    margin-right: 8px
}

@media all and (min-width:768px) {
    .l-nav-top-bar .e-contact__icon {
        transition: color .3s
    }
}

/* ----------------------------
-- social media
---------------------------- */
.c-social-media--style-2 .e-social-media__item,
.c-social-media--style-3 .e-social-media__item {
    display: flex;
    justify-self: center;
    align-items: center;
    border-style: solid;
    width: 99px;
    height: 99px;
}

.c-social-media-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

@media all and (min-width:480px) {
    .c-social-media-block {
        display: grid;
        grid-gap: 16px;
    }
}

.e-social-media-block__item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.e-social-media-block__link {
    display: flex;
    justify-content: center;
    align-items: center;
    border-style: solid;
    border-radius: 100%;
    transition: background-color .3s, border-color .3s;
}

@media all and (min-width:768px) {
    .e-social-media-block__item {
        margin-bottom: 0;
    }
}

.e-social-media-block__link i {
    transition: color .3s;
}

.e-social-media-block__title {
    margin-top: 16px;
    text-align: center;
}

/* ----------------------------
-- wideo
---------------------------- */

.c-video iframe {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute
}

.c-video,
.e-video__modal-thumb {
    width: 100%;
    padding-top: 60%;
    position: relative;
}

.e-video__modal-thumb {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
    background-color: #000;
}

.e-video__modal-thumb {
    width: 100%;
    padding-top: 60%;
}

.e-video__modal-thumb i {
    position: absolute;
    font-size: 64px;
    top: calc(50% - 32px);
    left: calc(50% - 32px);
    color: white;
    border-radius: 100%;
    box-shadow: 0px 0px 15px 4px rgba(0, 0, 0, 0.32);
    transition: color .3s;
}

.e-video__item {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.e-video__modal-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.e-video__item iframe {
    width: 100% !important;
    height: 100% !important;
}

.fb-video {
    position: absolute;
    top: 0;
    left: 0;
}

.fb-video>span {
    width: 100% !important;
}

.fb-video>span>iframe {
    width: 100% !important;
}

.e-video__item--video-modal {
    width: calc(100% - 128px);
    height: 100%;
    max-height: 768px;
    display: none;
}

.e-video__item--video-modal .fb-video {
    position: unset;
    top: unset;
    left: unset;
}

/* ----------------------------
-- logotypes
---------------------------- */
.c-logotypes--regular {
    display: grid;
    grid-gap: 16px;
}

.e-logotypes__item {
    display: flex;
    justify-content: center;
}

.e-logotypes__item>div {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: opacity .3s, -webkit-filter .3s;
    transition: opacity .3s, filter .3s;
    transition: opacity .3s, filter .3s, -webkit-filter .3s;
}

.c-logotypes--regular .e-logotypes__item {
    position: relative;
    justify-content: center;
    width: 100%;
    padding-top: 64%;
    align-items: center;
}

.c-logtypes--masonry .e-logotypes__item {
    justify-content: center;
    width: 100%;
    padding-top: 15%;
}

.c-logotypes--masonry .e-logotypes__item>div {
    display: inline-block;
}

.c-logotypes--regular .e-logotypes__item>div,
.c-logotypes--regular .e-logotypes__item>a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.e-logotypes__item img {
    opacity: 0;
    width: 100%;
}

/* ----------------------------
-- countdown
---------------------------- */
.e-countdown-elements {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-gap: 16px;
    width: 100%;
    max-width: 768px;
    padding: 0 32px;
}

.e-countdown-element {
    display: block;
    position: relative;
    box-sizing: border-box;
    width: 100%;
    font-size: 22px;
    padding-top: 100%;
}

@media (min-width: 425px) {
    .e-countdown-element {
        font-size: 32px;
    }
}

@media (min-width: 640px) {
    .e-countdown-element {
        font-size: 48px;
    }
}

@media (min-width: 1024px) {
    .l-section-grid--1_1 .e-countdown-element {
        font-size: 32px;
    }

    .l-section-grid--1_1_1 .e-countdown-element {
        font-size: 26px;
    }
}

@media (min-width: 1200px) {
    .e-countdown-element {
        font-size: 64px;
    }

    .l-section-grid--1_1 .e-countdown-element {
        font-size: 64px;
    }

    .l-section-grid--1_1_1 .e-countdown-element {
        font-size: 32px;
    }
}

.e-countdown-element:last-child {
    margin: 0;
}

.e-countdown-element span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    box-sizing: border-box;
}

/* ----------------------------
-- team
---------------------------- */

.l-team-member .e-post__details {
    margin-top: 0;
}

.l-team-member .e-post {
    margin: 0 0 32px 0;
}

.l-team-member .e-post__details {
    margin-top: 0;
}

/* ----------------------------
-- grid
---------------------------- */
.c-grid {
    display: grid;
}

.e-grid__item {
    position: relative;
    overflow: hidden;
    padding: 32px;
    min-height: 192px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    transition: box-shadow .3s;
}

.e-grid__item:last-of-type {
    margin-bottom: 0;
}

.e-grid__content {
    z-index: 100;
    margin-top: 16px;
    width: 100%;
}

@media (min-width: 1024px) {
    .e-grid__item {
        min-height: unset;
        margin: unset;
        /* min-height: 96px; */
    }
}

.e-grid__item article {
    z-index: 100;
    transition: color .3s;
}

.e-grid__item--background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 16px;
    box-sizing: border-box;
    background-position: center;
    background-size: cover;
    z-index: 10;
    transition: transform .3s, background-color .3s;
}

.e-grid__item:hover .e-grid__item--background-image,
.e-grid__item:active .e-grid__item--background-image {
    transform: scale(1.1);
}

.e-grid__item--background-color {
    z-index: 15;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.8);
    transition: .3s;
}

.c-grid h3.e-image-links__header {
    z-index: 20;
    width: 100%;
    transition: color .3s;
}

/* ----------------------------
-- gallery
---------------------------- */
.l-cta+.c-gallery {
    margin-top: 96px;
}

.c-gallery {
    margin-top: 96px;
    width: 100%;
}

.c-gallery:first-child {
    margin-top: 0;
}

.c-gallery--grid {
    display: grid;
}

.e-gallery--grid__item {
    background-size: cover;
    background-position: center;
    display: flex;
    width: 100%;
}

.e-gallery--masonry__item {
    background-size: cover;
    background-repeat: no-repeat;
    display: inline;
    line-height: 0;
}

.e-gallery--masonry__item img {
    opacity: 0;
    width: 100%;
}

/* ############################
## POSTS THUMBNAILS
############################ */
.c-posts {
    display: grid;
}

.c-posts--search+.woocommerce {
    margin-top: 64px;
}

@media all and (min-width: 768px) {

    .l-section-page--other-posts .c-posts,
    .l-archive .c-posts,
    .l-archive--search .c-posts {
        grid-template-columns: repeat(3, 1fr);
    }

    .l-archive--blog .c-posts {
        grid-template-columns: 1fr;
    }

    .l-archive--testimonials .c-posts {
        grid-template-columns: 1fr;
    }
}

.c-post-details {
    display: grid;
    grid-gap: 8px;
    z-index: 20
}

/* ----------------------------
-- post
---------------------------- */
.e-post {
    position: relative;
    overflow: hidden;
    transition: box-shadow .3s, transform .3s;
    display: flex;
    flex-direction: column;
}

.e-post__thumbnail {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 52.75%;
    background-position: center;
    background-size: 100%;
    background-repeat: no-repeat;
    transition: transform .3s ease-in-out;
}

.e-post__thumbnail-gradient {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.48)));
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.48) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000', GradientType=0);
}

.e-post__permalink {
    display: block;
    line-height: 0;
    position: relative;
    overflow: hidden;
}

.e-post__permalink:hover .e-post__thumbnail,
.e-post__permalink:active .e-post__thumbnail {
    transform: scale(1.05);
}

.l-posts--team .e-post__permalink:hover .e-post__thumbnail,
.l-posts--team .e-post__permalink:active .e-post__thumbnail {
    transform: unset
}

.e-post__details__item {
    margin-top: 8px;
}

.e-post__details__info {
    display: flex;
}

.e-post__details__info__item {
    margin-right: 16px;
    display: flex;
    align-items: center;
}

.e-post__details__icon {
    margin-right: 8px;
}

.e-post__detaiils-item--social-media>a:last-child>.e-post__details__icon {
    margin: 0;
}

.e-post__details__taxonomy {
    display: flex;
    flex-direction: column;
}

.l-team-info .e-post__details__taxonomy {
    margin-bottom: 16px;
}

.e-post__details__taxonomy__item {
    margin-top: 4px;
}

/* ----------------------------
-- blog post
---------------------------- */
.e-post__thumbnail--blog {
    padding-top: 52.75%;
}

.e-post--blog--layout-1 .e-post__details {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.e-post--blog--layout-1 .e-post__details__date,
.e-post--blog--layout-2 .e-post__details__date,
.e-post--event--layout-1 .e-post__details__date,
.e-post--event--layout-2 .e-post__details__date {
    min-width: 56px;
    min-height: 56px;
    max-width: 56px;
    max-height: 56px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 8px;
    padding: 8px;
    box-sizing: border-box;
}

.e-post--blog--layout-1 .e-post__details__date {
    top: 8px;
    left: 8px;
    position: absolute;
    margin-top: 0;
}

.e-post--blog--layout-2 .e-post__details__date {
    margin-right: 8px;
}

.e-post--blog--layout-1 .e-post__details__info {
    flex-wrap: wrap;
}

.e-post--blog--layout-1 .e-post__details__info__item {
    margin-right: 8px;
}

.e-post--blog--layout-1 .e-post__details__info {
    position: absolute;
    left: 8px;
    bottom: 8px;
}

.e-post--blog--layout-1 .e-post__details__info {
    color: white;
}

.e-post--blog--layout-1 .e-post__details__title,
.e-post--blog--layout-2 .e-post__details__title {
    display: flex;
}

.e-post--event .c-cta {
    align-self: flex-start;
}

.c-sidebar {
    max-width: 420px;
    margin-top: 64px;
    box-sizing: border-box;
}

.c-sidebar > ul > li {
    box-sizing: border-box;
}

@media all and (min-width: 1024px) {
    .c-sidebar {
        margin-top: 0;
    }
}

/* ############################
## TEAM
############################ */
/* ----------------------------
-- team post
---------------------------- */

.e-team-member__image {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.l-team-member--single-view {
    flex-direction: column;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.l-team-member--single-view .e-post--team {
    flex-direction: row;
    width: 100%;
}


.l-team-member--single-view .e-post--team {
    display: flex;
    flex-direction: column;
}

@media all and (min-width: 768px) {
    .l-team-member--single-view .e-post--team {
        display: grid;
        grid-template-columns: minmax(256px, auto) 1fr;
    }
}

.l-team-member--single-view .l-team-image {
    position: relative;
    align-self: center;
    width: 100%;
    max-width: 280px;
}

.l-team-member--layout-2 .l-team-image {
    position: relative;
}

@media all and (min-width: 1024px) {
    .l-team-member--layout-2 .l-team-image {
        align-self: center;
    }
}

.l-team-member--layout-1 .e-team-member__image {
    width: 100%;
    padding-top: 116%;
}

.l-team-member--layout-2 .e-team-member__image {
    width: 100%;
    padding-top: 100%;
    border-radius: 100%;
}

.l-team-member--single-view .l-team-image + div {
    position: relative;
    align-self: center;
}

@media all and (min-width: 768px) {
    .l-team-member--single-view .l-team-image + div {
        margin-left: 32px;
        /* width: 60%; */
    }
    .l-team-member--layout-1 .l-team-image + div {
        align-self: flex-start;
    }
}

.l-team-member--single-view .c-page-header1,
.l-team-member--single-view .l-team-info__job-position {
    text-align: center;
}

@media all and (min-width: 768px) {
    .l-team-member--single-view .c-page-header1,
    .l-team-member--single-view .l-team-info__job-position {
        text-align: left;
    }
}

.l-team-member--single-view .e-post__details {
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media all and (min-width: 768px) {
    .l-team-member--single-view .e-post__details {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
}

.l-team-member--single-view .e-post__details__info {
    justify-content: center;
    flex-wrap: wrap;
    max-width: 60vw;
}

@media all and (min-width: 768px) {
    .l-team-member--single-view .e-post__details__info {
        flex-direction: column;
        max-width: unset;
    }
}


/* ----------------------------
-- team thumbnails
---------------------------- */

.e-post--team .e-post__details__short-info {
    margin-top: 16px;
}

.e-post--team--layout-1 .e-post__thumbnail--team {
    width: 100%;
    padding-top: 116%;
}

.e-post--team--layout-1 .e-post__details__info {
    flex-direction: column;
}

.e-post.e-post--team--layout-2  {
    align-items: center;
}

.e-post--team--layout-2 .e-post__permalink {
    max-width: 256px;
}

.e-post--team--layout-2 .e-post__thumbnail--team {
    width: 220px;
    padding-top: 220px;
    border-radius: 100%;
}

.e-post--team--layout-2 .e-post__details__info {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}
.e-post--team--layout-2 .e-post__details__title,
.e-post--team--layout-2 .e-post__details__taxonomy,
.e-post--team--layout-2 .e-post__details__social-media {
    text-align: center;
}

/* ############################
## EVENTS
############################ */
/* ----------------------------
-- events thumbnails
---------------------------- */
.e-post--event--layout-2 {
    width: 100%;
    padding-bottom: 32px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.e-post--event--layout-2:last-child {
    border-bottom: 0;
}

@media all and (min-width:768px) {
    .e-post--event--layout-2 {
        flex-direction: row;
        margin-right: 0;
    }
}

.e-post--event--layout-2>div:first-child {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
}

@media all and (min-width:768px) {
    .e-post--event--layout-2>div:first-child {
        max-width: 234.3px;
    }

    .e-post--event--layout-2>div:last-child {
        width: 100%;
        display: flex;
        justify-content: space-between;
        margin-left: 8px;
    }

    .e-post--event--layout-2>div:last-child>div:last-child {
        min-width: 256px;
    }

    .e-post--event--layout-2 .e-post__details__title,
    .e-post--event--layout-2 .e-post__details>.e-post__details__item:first-child {
        margin-top: 0;
    }

    .e-post--event--layout-2 .e-post__details__taxonomy,
    .e-post--event--layout-2 .e-post__details__info {
        margin-top: 6px;
    }

    .e-post--event--layout-2 .e-post__details--buy {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
    }

    .e-post--event--layout-2 .e-post__details__info__item--price {
        margin: 0;
    }

    .e-post--event.e-post--event--layout-2 .l-cta {
        flex-direction: column;
        align-items: flex-end;
    }

    .e-post--event--layout-2 .e-post__event-stock-status {
        margin: 8px 0 8px 0;
    }

    .e-post--event--layout-2 .e-post__details__info--buy {
        margin-top: 0;
    }
}

@media all and (min-width:1024px) {
    .e-post--event--layout-2>div:first-child {
        max-width: 319.63px;
    }
}

@media all and (min-width:1200px) {
    .e-post--event--layout-2>div:first-child {
        max-width: 378.28px;
    }
}

.e-post--event--layout-1 .e-post__thumbnail--event {
    padding-top: 52.75%;
}

.e-post--event--layout-2 .e-post__permalink {
    width: 100%;
}

.e-post--event--layout-2 .e-post__thumbnail--event {
    width: 100%;
    margin: 0;
}

.e-post--event--layout-1 .e-post__details__title,
.e-post--event--layout-2 .e-post__details__title {
    display: flex;
}

.e-post__thumbnail--event {
    padding-top: 52.75%;
}

.e-post--event .e-post__details__icon {
    font-size: 18px;
}

.e-post--event .l-cta {
    justify-content: flex-start;
    align-items: center;
    margin-top: 8px;
}

.e-post--event--layout-1 .l-cta {
    align-items: flex-start;
}

.c-event-details {
    display: flex;
    flex-direction: column;
    margin-bottom: 24px;
    padding: 32px;
}

@media all and (min-width: 768px) {
    .c-event-details {
        flex-direction: row;
        justify-content: flex-start;
    }
}

.e-event-details {
    margin-bottom: 32px;
    width: 100%;
    display: grid;
}

.e-events-details__info {
    display: flex;
    flex-direction: column;
}

@media all and (min-width: 1280px) {
    .e-events-details__info {
        flex-direction: row;
        justify-content: flex-start;
    }
}

.e-event-details__item {
    display: flex;
    align-items: center;
    margin: 0 32px 16px 0;
}

@media all and (min-width: 1280px) {
    .e-event-details__item {
        margin-bottom: 0;
    }
}

.e-event-details__item:nth-last-child(1) {
    margin-bottom: 0;
}

.e-event-details__item:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    display: inline-flex;
    margin-right: 4px;
    margin-right: 8px;
}

.e-event-details__item--place {
    padding-right: 0;
}

.e-event-details__item--place:before {
    content: '\f3c5';
}

.e-event-details__item--start-date:before {
    content: '\f274';
}

.e-event-details__item--start-time:before {
    content: '\f017';
}

.e-event-details__item--map {
    width: 100%;
    padding-right: 0;
    padding-top: 32px;
    margin-top: 16px;
    border-top: 1px solid;
}

.e-event-details__item--map .acf-map {
    height: 320px
}

.single-behold_events .c-event-details form label {
    display: inline-block;
}

/* ----------------------------
-- Woo elements
---------------------------- */
@media all and (min-width: 769px) {

    .woocommerce .col2-set,
    .woocommerce-page .col2-set {
        width: 100%;
        display: flex;
        flex-direction: column;
    }

    .woocommerce .col2-set .col-1,
    .woocommerce-page .col2-set .col-1,
    .woocommerce .col2-set .col-2,
    .woocommerce-page .col2-set .col-2 {
        width: 100%;
    }
}

.woocommerce td.product-name dl.variation dt {
    margin-top: 3px;
}

.wc-deposits-wrapper {
    margin-top: 16px;
}

.single-behold_events .summary.entry-summary .product_meta,
.single-behold_events .sold-individually .quantity.buttons_added {
    display: none;
}

.single-behold_events .woocommerce div.product {
    grid-template-columns: 1fr;
}

.single-behold_events .woocommerce div.product form.cart .group_table td:first-child {
    width: unset;
}

.single-behold_events .woocommerce div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox {
    min-width: 12px;
    max-width: 12px;
    min-height: 12px;
    max-height: 12px;
}

.single-behold_events .woocommerce-grouped-product-list-item .woocommerce-grouped-product-list-item__label label {
    font-size: 14px;
}

/* ############################
## PORTFOLIO
############################ */
/* ----------------------------
-- portfolio thumbnails
---------------------------- */
.e-post__thumbnail--portfolio {
    padding-top: 100%;
    background-size: cover;
}

/* ############################
## TESTIMONIALS
############################ */
.e-post--testimonials {
    width: 100%;
    max-width: 768px;
    justify-self: center;
}

.e-post--testimoial__item {
    display: flex;
}

.e-post--testimonials--layout-2 .e-post--testimoial__item,
.e-post--testimonials--layout-3 .e-post--testimoial__item {
    flex-direction: column;
    align-items: center;
}

.e-post--testimonials--layout-2 .e-post--testimoial__item {
    flex-direction: column;
    align-items: center;
}

.e-post--testimonials--layout-3 .e-post--testimoial__item {
    padding: 16px;
    box-sizing: border-box;
}

.e-post--testimonials__content-wrapper {
    width: 100%;
}

.e-post--testimoial__icon img {
    border-radius: 100%;
}

.e-post--testimonials--layout-1 .e-post--testimoial__icon {
    margin-right: 16px;
}

.e-post--testimonials--layout-2 .e-post--testimoial__icon,
.e-post--testimonials--layout-3 .e-post--testimoial__icon {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    overflow: hidden;
}

.e-post--testimonials--layout-1 .e-post--testimonials__content {
    margin-top: 8px;
}

.e-post--testimonials__subtitle {
    margin-top: 16px;
}

/* ############################
## SERVICES
############################ */
/* ----------------------------
-- services thumbnails
---------------------------- */
.e-post--services .e-post__thumbnail .e-post__details__title {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 8px;
    box-sizing: border-box;
    width: 100%;
    transition: transform .3s ease-in-out, padding-bottom .3s ease-in-out;
}

.e-post--services .e-post__permalink:hover .e-post__details__title {
    transform: scale(.95);
    padding-bottom: 32px;
}

.c-service-price-amout {
    transition: color .3s;
}

@media all and (min-width: 768px) {
    .c-service-price-amout {
        width: 100%;
        max-width: 128px;
        text-align: right;
    }
}

/* ############################
## SOCIAL MEDIA
############################ */
.c-social-media {
    display: flex
}

.l-section-social-media .c-social-media {
    justify-content: center;
    flex-wrap: wrap;
}

.e-social-media__item {
    margin-right: 16px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: border .3s, background-color .3s, color .3s;
}

.c-mobile-menu-wrapper .e-social-media__item {
    margin: 0 0 16px 0;
}

.c-mobile-menu-wrapper .e-social-media__item:last-child {
    margin-bottom: 0
}

header.l-header .l-mobile-menu-additional-menu .c-social-media .e-social-media__item {
    background-color: unset;
}

.l-page .l-mobile-menu .c-social-media .e-social-media__item {
    background-color: transparent;
    border: none;
}

@media all and (min-width: 768px) {
    .l-header .c-social-media {
        display: flex;
    }
}

.l-section-social-media .e-social-media__item {
    margin: 0 16px 16px 16px;
    width: auto;
    height: auto;
}

.l-footer .e-social-media__item {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
}

.l-footer .l-section-footer .post-date {
    text-transform: none;
    font-weight: normal
}

.e-social-media__item:last-child {
    margin-right: 0
}

.widget .e-social-media__item {
    margin-bottom: 8px
}

.l-mobile-menu-element .c-social-media {
    display: flex;
}

.l-mobile-menu-element .e-social-media__item {
    font-size: 18px;
    margin-bottom: 8px;
    display: flex;
    justify-content: center;
    width: 100%;
}

/* ############################
## LANGUAGES
############################ */
@media all and (min-width:425px) {
    .c-languages {
        display: flex;
        font-size: 12px
    }

    .e-language {
        margin-right: 16px
    }

    .e-language:last-child {
        margin-right: 0
    }
}

/* ############################
## HEADERS
############################ */
/* ----------------------------
-- header h1 (hero)
---------------------------- */
.c-header-1 {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    hyphens: auto;
}

@media all and (min-width:1024px) {
    .c-header-1 {
        hyphens: none;
    }
}

.e-header-1--hero__big {
    width: 100%;
}

.c-header-1 span {
    display: inline-block;
    width: 100%;
}

.e-header-1--hero__small {
    margin-top: 16px;
}

.e-header-1__small-wrapper {
    display: flex;
    justify-content: center
}

.e-header-1__small {
    display: inline-block
}

.c-header1--404 {
    font-size: 48px;
    text-transform: uppercase;
    margin-bottom: 64px
}

.c-page-header1 {
    z-index: 20;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

@media all and (min-width:1024px) {
    .c-page-header1 {
        -webkit-hyphens: none;
        -ms-hyphens: none;
        hyphens: none;
    }
}

.c-page-header1 i {
    display: inline-block
}

.c-page-header1 i.fas.fa-lock {
    display: inline-flex;
    align-items: center;
    font-size: 28px;
    margin-right: 8px
}

.c-page-header1 span {
    margin-right: 8px;
}

/* ----------------------------
-- header h2 (blocks)
---------------------------- */
.c-header-icon {
    align-self: center;
    display: flex;
    justify-content: center;
    align-items: center;
    border-style: solid;
}

.c-header-icon--image {
    overflow: hidden;
}

.c-header-2 {
    z-index: 10;
    display: flex;
    flex-direction: column;
}

.l-section-block h2.c-header-2 .c-header-2-icon {
    font-weight: initial;
}

.c-header-2:after {
    display: none;
    content: '';
    position: relative;
    align-self: center;
}

.e-header-icon__image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* ############################
## CTA
############################ */
.c-cta,
.woocommerce #review_form #respond .form-submit input,
.tax-product_cat div.c-child-terms a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    border-style: solid;
    transition: background-color .3s, padding .3s, border .3s;
    box-sizing: content-box;
    text-align: center;
    padding-top: 8px;
    padding-bottom: 8px;
    box-sizing: border-box;
    cursor: pointer;
    z-index: 10;
    text-decoration: none;
    border-style: solid;
}

.e-cta__text,
.e-cta__icon i {
    transition: color .3s;
}

@media all and (min-width:768px) {

    .c-cta:nth-of-type(2),
    .c-cta:nth-of-type(3) {
        margin-left: 32px;
    }
}

.e-cta__icon {
    margin-top: 2px;
    font-weight: initial;
}

.e-cta__icon--before--rotate {
    transform: rotate(180deg);
}

.e-cta__icon--after--rotate {
    transform: rotate(-180deg);
}

.c-grid .c-cta {
    margin-bottom: 0;
}

/* ############################
## MENU FOOTER
############################ */
.c-menu-footer li {
    margin-bottom: 8px;
    text-align: center
}

.c-menu-footer a {
    text-transform: uppercase;
    font-size: 12px;
    line-height: 16px;
    font-weight: 800
}

@media all and (min-width:768px) {
    .c-menu-footer li {
        text-align: left
    }
}

/* ############################
## SEARCH
############################ */
.c-search {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

.l-search-top-field button.fancybox-close-small {
    width: 48px;
    height: 48px;
    padding: 0;
}

.l-mobile-menu-element .c-search {
    max-width: 420px
}

.e-search__field {
    display: flex;
    width: 100%;
}

.l-search-top-field .e-search-type-field {
    background-color: transparent;
    border-radius: 0;
    border: none;
    border-bottom-style: solid;
}

.l-search-top-field .e-search-type-field:focus {
    border-color: none;
    outline: none;
}

@media all and (min-width:768px) {
    .c-search-top {
        position: relative;
        min-width: 26px;
        min-height: 26px;
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
    }

    .e-search-top__icon {
        width: 26px;
        height: 26px;
        position: relative;
    }

    .e-search-top__enable-icon {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 26px;
        height: 26px;
        cursor: pointer;
        font-size: 18px;
        position: absolute;
        top: 0;
        transition: background-color .3s, color .3s
    }
}

.l-footer input.e-search-type-field {
    width: 100%;
}

.l-footer .e-search__field>div {
    width: 100%;
}

.e-search__field>div {
    position: relative;
}

.e-search-submit {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    min-width: unset;
    transition: background-color .3s, color .3s
}

.e-post-details__reading-time {
    margin: 16px 0
}

/* ############################
## SINGLE
############################ */

/* .c-header-title {
    position: absolute;
    left: 0;
    bottom: 0;
} */

.c-header-title {
    width: 100%;
    display: flex;
    justify-content: center;
    align-self: center;
    position: relative;
    padding: 32px 0;
}
@media all and (min-width:1100px) {
    .c-header-title {
        padding: 32px;
    }
}

.c-header-title--align-center {
    align-items: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

.c-header-title--align-center .c-page-header1,
.c-header-title--align-center .c-post-details,
.c-header-title--align-center .c-breadcrumbs {
    text-align: center;
}
@media all and (min-width:1024px) {
    .c-header-title--align-center {
        padding: 32px 80px;
    }
}

.e-single-details__counter {
    margin-bottom: 16px;
}

.e-post-details__categories--woo {
    display: unset;
}

.e-single-details__categories__item {
    margin-bottom: 4px;
}

.e-post__header {
    width: 100%;
    display: flex;
    justify-content: center;
    min-height: 64vh;
    z-index: 20
}

.e-post__header--thumbnail {
    padding: 48px 0
}

.e-post__header--no-thumbnail {
    min-height: 0
}

.e-post__header--no-min-height {
    min-height: auto
}

.e-post__header-center {
    justify-content: flex-end;
    z-index: 20
}

/* ############################
## MAIN SECTION
############################ */
.e-article-content {
    width: 100%;
}

.woocommerce .l-section-default .e-article-content {
    max-width: 100%;
}

.l-hero-content .e-article-content a {
    text-decoration: none;
}

.e-article-content p {
    transition: color .3s;
}

.e-article-content p:last-child {
    margin-bottom: 0;
}

.e-article-content h2 + p,
.e-article-content h3 + p,
.e-article-content h4 + p,
.e-article-content h5 + p,
.e-article-content h6 + p,
.e-article-content p:first-child {
    margin-top: 0;
}

.l-hero-content .e-article-content p:last-child {
    margin-bottom: 0;
}

article h2 {
    width: 100%;
}

article h2:first-child {
    margin-top: 0
}

article h3 {
    width: 100%;
}

article h3:first-child {
    margin-top: 0
}

article h4 {
    width: 100%;
}

article h4:first-child {
    margin-top: 0
}

article h5 {
    width: 100%;
}

article h5:first-child {
    margin-top: 0
}

article h6 {
    width: 100%;
}

article h6:first-child {
    margin-top: 0
}

article ol,
article ul {
    margin-left: 32px;
}

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

article iframe {
    width: 1200px;
    max-width: 100%;
}

.onlycenter {
    display: block;
    max-width: 100%;
    margin: 5px auto 16px auto
}

.alignnone {
    max-width: 100%;
    margin: 4px 0;
}

@media all and (min-width:768px) {
    .alignnone,
    a .alignnone {
        max-width: unset;
        margin: 4px 0;
    }
}

.aligncenter,
a .aligncenter {
    max-width: 100%;
    display: block;
    margin: 4px auto 16px auto
}

.alignright,
a .alignright {
    max-width: 100%;
    margin: 0 0 16px 0;
}

@media all and (min-width:768px) {
    .alignright,
    a .alignright {
        float: right;
        margin: 0 0 16px 16px;
    }
}

.alignleft,
a .alignleft {
    max-width: 100%;
    margin: 0 4px 0 0;
}

@media all and (min-width:768px) {
    .alignleft,
    a .alignleft {
        float: left;
        margin: 4px 16px 16px 0;
    }
}

.wp-caption {
    background: unset;
    border: none;
    padding: unset;
}

.wp-caption .wp-caption-text {
    margin: 0;
    padding: 0;
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important
}

.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000
}

/* ############################
## WP GALLERY
############################ */
.c-gallery-wp-wrapper {
    position: relative;
    display: block;
    width: 100%;
}

.c-gallery-wp {
    display: grid;
    grid-gap: 4px 4px;
}

.c-gallery-wp--one-col {
    grid-template-columns: 1fr;
    grid-gap: unset;
}

.c-gallery-wp--two-cols {
    grid-template-columns: 1fr 1fr;
}

.c-gallery-wp--three-cols {
    grid-template-columns: 1fr 1fr 1fr;
}

.c-gallery-wp--four-cols {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

.e-gallery__item--image {
    width: 100%;
    padding-top: 64%;
    display: block;
    background-size: cover;
}

/* ############################
## PAGE THUMBNAILS
############################ */
.c-header__thumbnail {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

@media all and (min-width: 1100px) {
    .l-page-header-style-1 .c-header__thumbnail {
        width: calc(100% - 32px);
        left: 16px;
    }
}

.c-header__thumbnail::after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0
}

.e-header__thumbnail {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll;
    justify-content: flex-end;
    position: absolute;
    left: 0;
    top: 0
}

.e-header__thumbnail--top {
    background-position: top;
}

.e-header__thumbnail--center {
    background-position: center;
}

.e-header__thumbnail--bottom {
    background-position: bottom;
}

/* ############################
## WIDGETS
############################ */
.c-widgets ul {
    margin: 0
}

.widget select {
    width: 100%
}

.widget {
    width: 100%;
    list-style: none
}

.widget:last-child {
    margin-bottom: 0
}

.widget ul li {
    margin-bottom: 4px;
    line-height: 1.3
}

.widget_archive ul,
.widget_categories ul,
.widget_meta ul,
.widget_nav_menu ul,
.widget_pages ul,
.widget_recent_comments ul,
.widget_recent_entries ul {
    list-style: none
}

.widget_calendar {
    max-width: 420px;
}

.widget_media_image {
    display: flex;
    flex-direction: column;
    align-items: center
}

.widget_media_image h2 {
    justify-self: flex-start;
    align-self: stretch
}

.widget_recent_comments .comment-author-link,
.widget_recent_entries a,
.c-sidebar .widget_recent_entries a {
    font-weight: 700
}

.widget_nav_menu .sub-menu {
    margin: 4px 0 0 16px
}

li.widget_recent_entries li {
    display: flex;
    flex-direction: column;
    margin-bottom: 16px;
}

.wp-calendar-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 16px;
}
.wp-calendar-table thead,
.wp-calendar-table tbody {
    transform: translateX(-16px);
}
.wp-calendar-table td,
.wp-calendar-table th {
    text-align: right;
}
.wp-calendar-table tr a {
    text-decoration: underline;
}
.wp-calendar-table tbody tr:last-child td {
    padding: unset;
}
.wp-calendar-nav {
    width: 100%;
    display: grid;
    grid-template-columns: 3fr 1fr 3fr
}
.wp-calendar-nav-prev {
    text-align: right;
}
.wp-calendar-nav-next {
    text-align: left;
}
.widget_categories li > ul {
    margin: 4px 0 0 16px
}
.c-footer-social-media {
    display: flex;
}
.c-cta--footer {
    margin: 0 !important;
}
/* ----------------------------
-- partnership
---------------------------- */
.c-logotypes-widget {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}

@media all and (min-width:425px) {
    .c-logotypes-widget {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
}

@media all and (min-width:425px) {
    .c-logotypes-widget {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
}

.e-logotypes__item-widget__item {
    margin-bottom: 16px;
    display: flex;
    justify-content: center;
    margin-right: 32px;
}

@media all and (min-width:425px) {
    .e-logotypes__item-widget__item {
        justify-content: center;
    }
}

.e-logotypes__item-widget__item img {
    max-width: 100%;
    max-height: 64px;
    height: auto;
    width: auto;
}

.e-logotypes__item-widget__item:last-child {
    margin-right: 0;
}

/* ############################
## PAGINATION
############################ */
.c-pagination {
    display: flex;
    justify-content: center
}

.page-numbers {
    width: 24px;
    height: 24px;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 8px;
    transition: background-color .3s, color .3s;
    background-color: red;
}

.page-numbers:first-child {
    margin-left: 0;
}

.pagination .next i {
    margin-left: 3px;
}

.pagination-1 .page-numbers {
    border-radius: 100%;
}

.page .c-pagination {
    margin-top: 32px;
}

/* ############################
## PASSWORDS
############################ */
.c-password-protect {
    width: 100%;
    max-width: 420px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.c-password-protect br {
    display: none
}

.post-password-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 30vh;
    z-index: 10;
}

.post-password-form p {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%
}

.post-password-form p:first-child {
    display: none
}

.post-password-form p label {
    width: 100%;
    max-width: 512px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 800
}

.post-password-form p label input {
    margin: 16px 0;
    text-align: center
}

/* ############################
## COMMENTS
############################ */
.c-comment-list {
    width: 100%;
    margin: 0;
    box-sizing: border-box;
    list-style: none;
}

.c-comment-list .comment {
    margin-top: 16px;
    padding-left: 16px;
    border-left-width: 1px;
    border-style: solid;
}

.e-comments-title,
.reply-title {
    margin-bottom: 32px;
}

.comment-author {
    font-size: 16px;
}

.comment-author cite.fn {
    font-weight: 700;
    margin-bottom: 4px;
    font-style: normal;
}

.comment-author .says {
    display: none;
}

.c-comment-list .reply {
    text-transform: uppercase;
    font-size: 10px;
    font-weight: 800;
}

.c-comment-list .children {
    margin-left: 32px;
    list-style: none;
    margin-top: 16px;
    padding-left: 32px;
    border-left-width: 1px;
    border-style: dashed;
}

.c-comment-list .children .comment {
    border-left: none;
    padding-left: 0;
}

.c-comment-list .commentmetadata {
    margin-bottom: 16px;
}

.c-comment-list .children li {
    margin-bottom: 16px;
}

.c-comment-list .comment-body p {
    font-size: 14px;
    line-height: 1.4;
}

.comment-notes {
    margin: 16px 0 16px 0;
    font-size: 14px;
}

.c-comment-list+.c-pagination+.comment-respond,
.comment-body+.comment-respond {
    margin: 32px 0 32px 0;
}

@media all and (min-width:768px) {

    .c-comment-list+.c-pagination+.comment-respond,
    .comment-body+.comment-respond {
        margin: 32px 0 0 0;
    }
}

.comment-reply-link {
    margin-top: 16px;
    display: block;
}

.comment-reply-title {
    margin-top: 32px;
}

.comment-reply-title small {
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    margin-top: 4px;
}

.comment-form-cookies-consent {
    display: flex;
    margin-top: 32px;
}

.comment-form label {
    display: inline-block;
    width: 100%;
}

@media all and (min-width:768px) {
    .comment-form .l-form-row:last-child .l-form-field {
        margin-bottom: 0;
    }
}

.form-submit {
    display: flex;
    justify-content: center;
}

.form-submit input {
    transition: background-color .3s, color .3s;
}

em.comment-awaiting-moderation {
    font-size: 12px;
    line-height: 1.4px;
    margin: 8px 0;
}

input[name="wp-comment-cookies-consent"] {
    margin-right: 8px;
}

p.no-comments {
    text-transform: uppercase;
    font-weight: 900;
    color: red;
    margin-top: 16px;
    font-size: 14px;
}

/* ############################
## WPML
############################ */
.wpml-ls-legacy-dropdown-click {
    width: auto
}

.wpml-ls-legacy-list-horizontal {
    padding: 0
}

.wpml-ls-legacy-list-horizontal>ul {
    display: flex
}

.wpml-ls-legacy-list-horizontal a {
    padding: 0
}

.wpml-ls-legacy-list-horizontal a {
    margin-right: 16px;
}

.c-mobile-menu-wrapper .wpml-ls-legacy-list-horizontal a {
    margin: 0 0 16px 0;
}

.wpml-ls-legacy-list-horizontal .wpml-ls-item:last-child a {
    margin-right: 0
}

.wpml-ls-legacy-list-horizontal .wpml-ls-flag {
    max-width: unset
}

/* ############################
## AUTHOR
############################ */
.c-author {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 16px;
}

.e-author__image img {
    border-radius: 100%;
}

.e-author__description {
    margin-top: 16px;
}

.e-author__socia-media {
    margin-top: 8px;
}

.e-author__socia-media-item {
    margin-right: 8px;
}

@media all and (min-width:425px) {
    .c-author {
        grid-template-columns: minmax(96px, 1fr) 10fr;
    }

    .e-author__description {
        max-width: 768px;
    }
}

/* ############################
## SHARE ICONS
############################ */
.c-share-icons {
    display: flex;
    flex-direction: column;
}

.e-share-icons__share-icon {
    font-size: 14px;
    margin-right: 8px;
}

.e-share-icons__header {
    margin-bottom: 22px;
    font-size: 18px;
    line-height: 1;
}

.e-share-icons__items {
    display: flex;
}

.e-share-icon__item {
    display: flex;
    justify-content: flex-start;
    width: 64px;
    font-size: 24px;
    cursor: pointer;
}

@media all and (min-width:425px) {

    /* .e-share-icon__item {
        font-size: 32px;
    } */
    .e-share-icon__item:last-child {
        border-right: none;
    }
}

/* ############################
## WP REVIEWS SLIDER
############################ */
.w3_wprs-row-padding {
    padding: 0
}

.wprevpro_t1_DIV_1 {
    padding: 0;
    box-sizing: border-box
}

.wprevpro_t1_outer_div {
    margin: 0
}

@media all and (min-width:768px) {
    .wprevpro_t1_outer_div {
        display: flex;
        align-items: flex-start
    }

    .wprevpro_t1_DIV_1 {
        margin: 0 48px 0 0
    }

    .wprevpro_t1_DIV_1:last-child {
        margin: 0
    }
}

.w3_wprs-col .wprev_preview_bradius_T1 {
    padding: 16px
}

.wprevpro_t1_DIV_2 {
    box-shadow: none;
    border: none;
    padding: 0;
    background-color: unset
}

.l-section-testimonials p.wprevpro_t1_P_3 {
    font-weight: 700;
    font-style: italic !important;
    line-height: 1.4;
    font-style: normal
}

.wprevpro_t1_DIV_2:after,
.wprevpro_t1_DIV_2:before {
    display: none
}

.wprevpro_t1_SPAN_5 {
    text-align: center;
    font-weight: 700;
    text-transform: none
}

.wprevpro_t1_A_8>img {
    margin: 0
}

span.wprevpro_t1_A_8 {
    display: flex;
    justify-content: center
}

.wprevpro_star_imgs_T1,
.wprevpro_star_imgs_T1_widget {
    display: block;
    width: 100%
}

.wprs_unslider {
    width: calc(100% - 16px);
}

@media all and (min-width: 768px) {
    .wprs_unslider {
        width: calc(100% - 96px);
        display: flex;
        flex-direction: column;
        align-self: center;
    }
}

.wprs_unslider-nav {
    margin-top: 32px;
    justify-content: center
}

/* ############################
## FONT AWESOME
############################ */
.fa,
.far,
.fas {
    display: inline-flex;
    justify-content: center;
}

.e-header-1__small .fa,
.e-header-1__small .far,
.e-header-1__small .fas {
    display: inline-flex
}

.js-search-field-show {
    max-width: 352px;
    margin-right: 16px;
    transition: max-width .3s, margin .3s;
}

/* ############################
## COPYRIGHTS
############################ */
.c-copyrights {
    text-align: center;
}

p.c-privacy-policy-link {
    margin-top: 8px;
}

/* ############################
## WOOCOOMMERCE
############################ */
.c-woocommerce-items {
    display: flex;
}

.e-woocommerce-icons__item {
    margin-right: 16px;
    display: flex;
}

.e-woocommerce-icons__item a {
    transition: color .3s;
}

.e-woocommerce-icons__item:last-child {
    margin-right: 0;
}

.c-woocommerce-icons {
    display: flex;
}

.c-woocommerce-icons--mobile-menu {
    flex-direction: column;
    align-items: center;
}

.c-woocommerce-icons--mobile-menu .e-woocommerce-icons__icon {
    margin: 0 0 16px 0;
    font-size: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.e-woocommerce-icons__count {
    margin-left: 4px;
}

.c-woocommerce-icons--mobile-menu .e-woocommerce-icons__icon .e-woocommerce-icons__count {
    font-size: 14px;
}

/* ############################
## FANCYBOX
############################ */
@media all and (min-width: 768px) {
    .fancybox-container .fancybox-thumbs {
        top: auto;
        width: auto;
        bottom: 0;
        left: 0;
        right: 0;
        height: 95px;
        padding: 10px 10px 5px 10px;
        box-sizing: border-box;
        background: rgba(0, 0, 0, 0.3);
    }

    .fancybox-container .fancybox-thumbs__list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .fancybox-show-thumbs .fancybox-inner {
        right: 0 !important;
        bottom: 95px;
    }
}

/* ############################
## BREADCRUMBS
############################ */
.c-breadcrumbs {
    list-style: none;
    margin-bottom: 32px;
    z-index: 40
}

.single-team .c-breadcrumbs {
    margin-bottom: 0;
}

.c-breadcrumbs>span {
    margin: 0 8px 0 8px;
}

.c-breadcrumbs>span:first-child {
    margin-left: 0;
}

.l-breadcrumbs--team-header-layout-1 .c-breadcrumbs {
    justify-content: flex-start;
}

/* .l-breadcrumbs--team-header-layout-2 .c-breadcrumbs {
    justify-content: center;
} */

/* ############################
## SEARCH
############################ */
.l-archive--search .e-article--search {
    width: 100%;
    margin: 0;
    padding: 16px 0;
    border-bottom: 1px dashed lightgray;
}

.l-archive--search .e-article--search:last-child {
    margin-bottom: 64px;
}

.l-archive--search .e-post__header-3 {
    margin-top: 0;
}

/* ############################
## O-EMBEDS
############################ */
.fb_iframe_widget {
    display: flex !important;
    justify-content: center;
    width: 100%;
}

.instagram-media {
    padding: 0 !important;
    margin: 0 auto 0 auto !important;
}

twitter-widget {
    margin: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center;
}
/* ############################
## UP BUTTON
############################ */
.c-top {
    position: fixed;
    right: 0;
    bottom: 64px;
    border-radius: 32px 0 0 32px;
    z-index: 100;
    transform: translateX(156px);
    transition: transform .3s, background-color .3s, bottom .3s;
}
@media all and (min-width: 768px) {
    .c-top {
        bottom: 96px;
    }
}
@media all and (min-width: 1100px) {
    .c-top {
        bottom: 128px;
    }
}
@media all and (min-width: 1100px) {
    .c-top:hover,
    .c-top:active {
        transform: translateX(0px);
    }
}
.c-top--show {
    transform: translateX(100px);
}
.e-top__link {
    display: flex;
    align-content: center;
    padding: 16px;
    transition: color .3s;
}

.e-top__link__text {
    text-transform: uppercase;
    font-size: 18px;
}

.e-top__link i {
    font-size: 26px;
    margin-right: 16px;
}