@font-face {
    font-family: "Lato";
    font-display: swap;
    src: url(fonts/lato-regular.eot);
    src: url(fonts/lato-regular.eot?#iefix) format("embedded-opentype"), url(fonts/lato-regular.woff2) format("woff2"), url(fonts/lato-regular.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: "Lato";
    font-display: swap;
    src: url(fonts/lato-italic.eot);
    src: url(fonts/lato-italic.eot?#iefix) format("embedded-opentype"), url(fonts/lato-italic.woff2) format("woff2"), url(fonts/lato-italic.woff) format("woff");
    font-weight: 400;
    font-style: italic
}

@font-face {
    font-family: "Lato";
    font-display: swap;
    src: url(fonts/lato-bold.eot);
    src: url(fonts/lato-bold.eot?#iefix) format("embedded-opentype"), url(fonts/lato-bold.woff2) format("woff2"), url(fonts/lato-bold.woff) format("woff");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: 'system';
    font-style: normal;
    font-weight: 400;
    src: local(".SFNSText-Regular"), local(".HelveticaNeueDeskInterface-Regular"), local(".LucidaGrandeUI"), local("Segoe UI"), local("Ubuntu"), local("Roboto-Regular"), local("DroidSans"), local("Tahoma")
}

@font-face {
    font-family: 'system';
    font-style: italic;
    font-weight: 400;
    src: local(".SFNSText-Italic"), local(".HelveticaNeueDeskInterface-Italic"), local(".LucidaGrandeUI"), local("Segoe UI Italic"), local("Ubuntu Italic"), local("Roboto-Italic"), local("DroidSans"), local("Tahoma")
}

@font-face {
    font-family: 'system';
    font-style: normal;
    font-weight: 500;
    src: local(".SFNSText-Medium"), local(".HelveticaNeueDeskInterface-MediumP4"), local(".LucidaGrandeUI"), local("Segoe UI Semibold"), local("Ubuntu Medium"), local("Roboto-Medium"), local("DroidSans-Bold"), local("Tahoma Bold")
}

@font-face {
    font-family: 'system';
    font-style: italic;
    font-weight: 500;
    src: local(".SFNSText-MediumItalic"), local(".HelveticaNeueDeskInterface-MediumItalicP4"), local(".LucidaGrandeUI"), local("Segoe UI Semibold Italic"), local("Ubuntu Medium Italic"), local("Roboto-MediumItalic"), local("DroidSans-Bold"), local("Tahoma Bold")
}

@font-face {
    font-family: 'system';
    font-style: normal;
    font-weight: 700;
    src: local(".SFNSText-Bold"), local(".HelveticaNeueDeskInterface-Bold"), local(".LucidaGrandeUI"), local("Segoe UI Bold"), local("Ubuntu Bold"), local("Roboto-Bold"), local("DroidSans-Bold"), local("Tahoma Bold")
}

@font-face {
    font-family: 'system';
    font-style: italic;
    font-weight: 700;
    src: local(".SFNSText-BoldItalic"), local(".HelveticaNeueDeskInterface-BoldItalic"), local(".LucidaGrandeUI"), local("Segoe UI Bold Italic"), local("Ubuntu Bold Italic"), local("Roboto-BoldItalic"), local("DroidSans-Bold"), local("Tahoma Bold")
}

.navigation-prev-next:after, .page-section .prev-next:after {
    content: "";
    display: block;
    clear: both
}

html {
    box-sizing: border-box;
    -ms-overflow-style: scrollbar
}

*, *::before, *::after {
    box-sizing: inherit
}

.text-center {
    text-align: center;
}

.container {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    margin-right: auto;
    margin-left: auto
}

@media (min-width: 480px) {
    .container {
        max-width: 440px
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 728px
    }
}

@media (min-width: 1024px) {
    .container {
        max-width: 984px
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1160px
    }
}

@media (min-width: 1500px) {
    .container {
        max-width: 1460px
    }
}

.container-fluid {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    margin-right: auto;
    margin-left: auto
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters > .col, .no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-nt-1, .col-nt-2, .col-nt-3, .col-nt-4, .col-nt-5, .col-nt-6, .col-nt-7, .col-nt-8, .col-nt-9, .col-nt-10, .col-nt-11, .col-nt-12, .col-nt, .col-nt-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.col-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.col-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.col-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.col-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.col-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    order: -1
}

.order-last {
    order: 13
}

.order-0 {
    order: 0
}

.order-1 {
    order: 1
}

.order-2 {
    order: 2
}

.order-3 {
    order: 3
}

.order-4 {
    order: 4
}

.order-5 {
    order: 5
}

.order-6 {
    order: 6
}

.order-7 {
    order: 7
}

.order-8 {
    order: 8
}

.order-9 {
    order: 9
}

.order-10 {
    order: 10
}

.order-11 {
    order: 11
}

.order-12 {
    order: 12
}

.offset-1 {
    margin-left: 8.33333%
}

.offset-2 {
    margin-left: 16.66667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.33333%
}

.offset-5 {
    margin-left: 41.66667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.33333%
}

.offset-8 {
    margin-left: 66.66667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.33333%
}

.offset-11 {
    margin-left: 91.66667%
}

@media (min-width: 480px) {
    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-sm-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-sm-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-sm-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-sm-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-sm-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-sm-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-sm-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-sm-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-sm-first {
        order: -1
    }

    .order-sm-last {
        order: 13
    }

    .order-sm-0 {
        order: 0
    }

    .order-sm-1 {
        order: 1
    }

    .order-sm-2 {
        order: 2
    }

    .order-sm-3 {
        order: 3
    }

    .order-sm-4 {
        order: 4
    }

    .order-sm-5 {
        order: 5
    }

    .order-sm-6 {
        order: 6
    }

    .order-sm-7 {
        order: 7
    }

    .order-sm-8 {
        order: 8
    }

    .order-sm-9 {
        order: 9
    }

    .order-sm-10 {
        order: 10
    }

    .order-sm-11 {
        order: 11
    }

    .order-sm-12 {
        order: 12
    }

    .offset-sm-0 {
        margin-left: 0
    }

    .offset-sm-1 {
        margin-left: 8.33333%
    }

    .offset-sm-2 {
        margin-left: 16.66667%
    }

    .offset-sm-3 {
        margin-left: 25%
    }

    .offset-sm-4 {
        margin-left: 33.33333%
    }

    .offset-sm-5 {
        margin-left: 41.66667%
    }

    .offset-sm-6 {
        margin-left: 50%
    }

    .offset-sm-7 {
        margin-left: 58.33333%
    }

    .offset-sm-8 {
        margin-left: 66.66667%
    }

    .offset-sm-9 {
        margin-left: 75%
    }

    .offset-sm-10 {
        margin-left: 83.33333%
    }

    .offset-sm-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 768px) {
    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-md-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-md-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-md-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-md-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-md-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-md-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-md-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-md-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-md-first {
        order: -1
    }

    .order-md-last {
        order: 13
    }

    .order-md-0 {
        order: 0
    }

    .order-md-1 {
        order: 1
    }

    .order-md-2 {
        order: 2
    }

    .order-md-3 {
        order: 3
    }

    .order-md-4 {
        order: 4
    }

    .order-md-5 {
        order: 5
    }

    .order-md-6 {
        order: 6
    }

    .order-md-7 {
        order: 7
    }

    .order-md-8 {
        order: 8
    }

    .order-md-9 {
        order: 9
    }

    .order-md-10 {
        order: 10
    }

    .order-md-11 {
        order: 11
    }

    .order-md-12 {
        order: 12
    }

    .offset-md-0 {
        margin-left: 0
    }

    .offset-md-1 {
        margin-left: 8.33333%
    }

    .offset-md-2 {
        margin-left: 16.66667%
    }

    .offset-md-3 {
        margin-left: 25%
    }

    .offset-md-4 {
        margin-left: 33.33333%
    }

    .offset-md-5 {
        margin-left: 41.66667%
    }

    .offset-md-6 {
        margin-left: 50%
    }

    .offset-md-7 {
        margin-left: 58.33333%
    }

    .offset-md-8 {
        margin-left: 66.66667%
    }

    .offset-md-9 {
        margin-left: 75%
    }

    .offset-md-10 {
        margin-left: 83.33333%
    }

    .offset-md-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 1024px) {
    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-lg-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-lg-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-lg-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-lg-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-lg-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-lg-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-lg-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-lg-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-lg-first {
        order: -1
    }

    .order-lg-last {
        order: 13
    }

    .order-lg-0 {
        order: 0
    }

    .order-lg-1 {
        order: 1
    }

    .order-lg-2 {
        order: 2
    }

    .order-lg-3 {
        order: 3
    }

    .order-lg-4 {
        order: 4
    }

    .order-lg-5 {
        order: 5
    }

    .order-lg-6 {
        order: 6
    }

    .order-lg-7 {
        order: 7
    }

    .order-lg-8 {
        order: 8
    }

    .order-lg-9 {
        order: 9
    }

    .order-lg-10 {
        order: 10
    }

    .order-lg-11 {
        order: 11
    }

    .order-lg-12 {
        order: 12
    }

    .offset-lg-0 {
        margin-left: 0
    }

    .offset-lg-1 {
        margin-left: 8.33333%
    }

    .offset-lg-2 {
        margin-left: 16.66667%
    }

    .offset-lg-3 {
        margin-left: 25%
    }

    .offset-lg-4 {
        margin-left: 33.33333%
    }

    .offset-lg-5 {
        margin-left: 41.66667%
    }

    .offset-lg-6 {
        margin-left: 50%
    }

    .offset-lg-7 {
        margin-left: 58.33333%
    }

    .offset-lg-8 {
        margin-left: 66.66667%
    }

    .offset-lg-9 {
        margin-left: 75%
    }

    .offset-lg-10 {
        margin-left: 83.33333%
    }

    .offset-lg-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 1200px) {
    .col-nt {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-nt-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-nt-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-nt-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-nt-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-nt-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-nt-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-nt-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-nt-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-nt-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-nt-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-nt-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-nt-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-nt-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-nt-first {
        order: -1
    }

    .order-nt-last {
        order: 13
    }

    .order-nt-0 {
        order: 0
    }

    .order-nt-1 {
        order: 1
    }

    .order-nt-2 {
        order: 2
    }

    .order-nt-3 {
        order: 3
    }

    .order-nt-4 {
        order: 4
    }

    .order-nt-5 {
        order: 5
    }

    .order-nt-6 {
        order: 6
    }

    .order-nt-7 {
        order: 7
    }

    .order-nt-8 {
        order: 8
    }

    .order-nt-9 {
        order: 9
    }

    .order-nt-10 {
        order: 10
    }

    .order-nt-11 {
        order: 11
    }

    .order-nt-12 {
        order: 12
    }

    .offset-nt-0 {
        margin-left: 0
    }

    .offset-nt-1 {
        margin-left: 8.33333%
    }

    .offset-nt-2 {
        margin-left: 16.66667%
    }

    .offset-nt-3 {
        margin-left: 25%
    }

    .offset-nt-4 {
        margin-left: 33.33333%
    }

    .offset-nt-5 {
        margin-left: 41.66667%
    }

    .offset-nt-6 {
        margin-left: 50%
    }

    .offset-nt-7 {
        margin-left: 58.33333%
    }

    .offset-nt-8 {
        margin-left: 66.66667%
    }

    .offset-nt-9 {
        margin-left: 75%
    }

    .offset-nt-10 {
        margin-left: 83.33333%
    }

    .offset-nt-11 {
        margin-left: 91.66667%
    }
}

@media (min-width: 1500px) {
    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xl-1 {
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }

    .col-xl-2 {
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }

    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xl-4 {
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }

    .col-xl-5 {
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }

    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xl-7 {
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }

    .col-xl-8 {
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }

    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xl-10 {
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }

    .col-xl-11 {
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }

    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xl-first {
        order: -1
    }

    .order-xl-last {
        order: 13
    }

    .order-xl-0 {
        order: 0
    }

    .order-xl-1 {
        order: 1
    }

    .order-xl-2 {
        order: 2
    }

    .order-xl-3 {
        order: 3
    }

    .order-xl-4 {
        order: 4
    }

    .order-xl-5 {
        order: 5
    }

    .order-xl-6 {
        order: 6
    }

    .order-xl-7 {
        order: 7
    }

    .order-xl-8 {
        order: 8
    }

    .order-xl-9 {
        order: 9
    }

    .order-xl-10 {
        order: 10
    }

    .order-xl-11 {
        order: 11
    }

    .order-xl-12 {
        order: 12
    }

    .offset-xl-0 {
        margin-left: 0
    }

    .offset-xl-1 {
        margin-left: 8.33333%
    }

    .offset-xl-2 {
        margin-left: 16.66667%
    }

    .offset-xl-3 {
        margin-left: 25%
    }

    .offset-xl-4 {
        margin-left: 33.33333%
    }

    .offset-xl-5 {
        margin-left: 41.66667%
    }

    .offset-xl-6 {
        margin-left: 50%
    }

    .offset-xl-7 {
        margin-left: 58.33333%
    }

    .offset-xl-8 {
        margin-left: 66.66667%
    }

    .offset-xl-9 {
        margin-left: 75%
    }

    .offset-xl-10 {
        margin-left: 83.33333%
    }

    .offset-xl-11 {
        margin-left: 91.66667%
    }
}

.d-none {
    display: none !important
}

.d-inline {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-block {
    display: block !important
}

.d-table {
    display: table !important
}

.d-table-row {
    display: table-row !important
}

.d-table-cell {
    display: table-cell !important
}

.d-flex {
    display: flex !important
}

.d-inline-flex {
    display: inline-flex !important
}

@media (min-width: 480px) {
    .d-sm-none {
        display: none !important
    }

    .d-sm-inline {
        display: inline !important
    }

    .d-sm-inline-block {
        display: inline-block !important
    }

    .d-sm-block {
        display: block !important
    }

    .d-sm-table {
        display: table !important
    }

    .d-sm-table-row {
        display: table-row !important
    }

    .d-sm-table-cell {
        display: table-cell !important
    }

    .d-sm-flex {
        display: flex !important
    }

    .d-sm-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 768px) {
    .d-md-none {
        display: none !important
    }

    .d-md-inline {
        display: inline !important
    }

    .d-md-inline-block {
        display: inline-block !important
    }

    .d-md-block {
        display: block !important
    }

    .d-md-table {
        display: table !important
    }

    .d-md-table-row {
        display: table-row !important
    }

    .d-md-table-cell {
        display: table-cell !important
    }

    .d-md-flex {
        display: flex !important
    }

    .d-md-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 1024px) {
    .d-lg-none {
        display: none !important
    }

    .d-lg-inline {
        display: inline !important
    }

    .d-lg-inline-block {
        display: inline-block !important
    }

    .d-lg-block {
        display: block !important
    }

    .d-lg-table {
        display: table !important
    }

    .d-lg-table-row {
        display: table-row !important
    }

    .d-lg-table-cell {
        display: table-cell !important
    }

    .d-lg-flex {
        display: flex !important
    }

    .d-lg-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 1200px) {
    .d-nt-none {
        display: none !important
    }

    .d-nt-inline {
        display: inline !important
    }

    .d-nt-inline-block {
        display: inline-block !important
    }

    .d-nt-block {
        display: block !important
    }

    .d-nt-table {
        display: table !important
    }

    .d-nt-table-row {
        display: table-row !important
    }

    .d-nt-table-cell {
        display: table-cell !important
    }

    .d-nt-flex {
        display: flex !important
    }

    .d-nt-inline-flex {
        display: inline-flex !important
    }
}

@media (min-width: 1500px) {
    .d-xl-none {
        display: none !important
    }

    .d-xl-inline {
        display: inline !important
    }

    .d-xl-inline-block {
        display: inline-block !important
    }

    .d-xl-block {
        display: block !important
    }

    .d-xl-table {
        display: table !important
    }

    .d-xl-table-row {
        display: table-row !important
    }

    .d-xl-table-cell {
        display: table-cell !important
    }

    .d-xl-flex {
        display: flex !important
    }

    .d-xl-inline-flex {
        display: inline-flex !important
    }
}

@media print {
    .d-print-none {
        display: none !important
    }

    .d-print-inline {
        display: inline !important
    }

    .d-print-inline-block {
        display: inline-block !important
    }

    .d-print-block {
        display: block !important
    }

    .d-print-table {
        display: table !important
    }

    .d-print-table-row {
        display: table-row !important
    }

    .d-print-table-cell {
        display: table-cell !important
    }

    .d-print-flex {
        display: flex !important
    }

    .d-print-inline-flex {
        display: inline-flex !important
    }
}

.flex-row {
    flex-direction: row !important
}

.flex-column {
    flex-direction: column !important
}

.flex-row-reverse {
    flex-direction: row-reverse !important
}

.flex-column-reverse {
    flex-direction: column-reverse !important
}

.flex-wrap {
    flex-wrap: wrap !important
}

.flex-nowrap {
    flex-wrap: nowrap !important
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important
}

.flex-fill {
    flex: 1 1 auto !important
}

.flex-grow-0 {
    flex-grow: 0 !important
}

.flex-grow-1 {
    flex-grow: 1 !important
}

.flex-shrink-0 {
    flex-shrink: 0 !important
}

.flex-shrink-1 {
    flex-shrink: 1 !important
}

.justify-content-start {
    justify-content: flex-start !important
}

.justify-content-end {
    justify-content: flex-end !important
}

.justify-content-center {
    justify-content: center !important
}

.justify-content-between {
    justify-content: space-between !important
}

.justify-content-around {
    justify-content: space-around !important
}

.align-items-start {
    align-items: flex-start !important
}

.align-items-end {
    align-items: flex-end !important
}

.align-items-center {
    align-items: center !important
}

.align-items-baseline {
    align-items: baseline !important
}

.align-items-stretch {
    align-items: stretch !important
}

.align-content-start {
    align-content: flex-start !important
}

.align-content-end {
    align-content: flex-end !important
}

.align-content-center {
    align-content: center !important
}

.align-content-between {
    align-content: space-between !important
}

.align-content-around {
    align-content: space-around !important
}

.align-content-stretch {
    align-content: stretch !important
}

.align-self-auto {
    align-self: auto !important
}

.align-self-start {
    align-self: flex-start !important
}

.align-self-end {
    align-self: flex-end !important
}

.align-self-center {
    align-self: center !important
}

.align-self-baseline {
    align-self: baseline !important
}

.align-self-stretch {
    align-self: stretch !important
}

@media (min-width: 480px) {
    .flex-sm-row {
        flex-direction: row !important
    }

    .flex-sm-column {
        flex-direction: column !important
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-sm-fill {
        flex: 1 1 auto !important
    }

    .flex-sm-grow-0 {
        flex-grow: 0 !important
    }

    .flex-sm-grow-1 {
        flex-grow: 1 !important
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-sm-start {
        justify-content: flex-start !important
    }

    .justify-content-sm-end {
        justify-content: flex-end !important
    }

    .justify-content-sm-center {
        justify-content: center !important
    }

    .justify-content-sm-between {
        justify-content: space-between !important
    }

    .justify-content-sm-around {
        justify-content: space-around !important
    }

    .align-items-sm-start {
        align-items: flex-start !important
    }

    .align-items-sm-end {
        align-items: flex-end !important
    }

    .align-items-sm-center {
        align-items: center !important
    }

    .align-items-sm-baseline {
        align-items: baseline !important
    }

    .align-items-sm-stretch {
        align-items: stretch !important
    }

    .align-content-sm-start {
        align-content: flex-start !important
    }

    .align-content-sm-end {
        align-content: flex-end !important
    }

    .align-content-sm-center {
        align-content: center !important
    }

    .align-content-sm-between {
        align-content: space-between !important
    }

    .align-content-sm-around {
        align-content: space-around !important
    }

    .align-content-sm-stretch {
        align-content: stretch !important
    }

    .align-self-sm-auto {
        align-self: auto !important
    }

    .align-self-sm-start {
        align-self: flex-start !important
    }

    .align-self-sm-end {
        align-self: flex-end !important
    }

    .align-self-sm-center {
        align-self: center !important
    }

    .align-self-sm-baseline {
        align-self: baseline !important
    }

    .align-self-sm-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 768px) {
    .flex-md-row {
        flex-direction: row !important
    }

    .flex-md-column {
        flex-direction: column !important
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-md-wrap {
        flex-wrap: wrap !important
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-md-fill {
        flex: 1 1 auto !important
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-md-start {
        justify-content: flex-start !important
    }

    .justify-content-md-end {
        justify-content: flex-end !important
    }

    .justify-content-md-center {
        justify-content: center !important
    }

    .justify-content-md-between {
        justify-content: space-between !important
    }

    .justify-content-md-around {
        justify-content: space-around !important
    }

    .align-items-md-start {
        align-items: flex-start !important
    }

    .align-items-md-end {
        align-items: flex-end !important
    }

    .align-items-md-center {
        align-items: center !important
    }

    .align-items-md-baseline {
        align-items: baseline !important
    }

    .align-items-md-stretch {
        align-items: stretch !important
    }

    .align-content-md-start {
        align-content: flex-start !important
    }

    .align-content-md-end {
        align-content: flex-end !important
    }

    .align-content-md-center {
        align-content: center !important
    }

    .align-content-md-between {
        align-content: space-between !important
    }

    .align-content-md-around {
        align-content: space-around !important
    }

    .align-content-md-stretch {
        align-content: stretch !important
    }

    .align-self-md-auto {
        align-self: auto !important
    }

    .align-self-md-start {
        align-self: flex-start !important
    }

    .align-self-md-end {
        align-self: flex-end !important
    }

    .align-self-md-center {
        align-self: center !important
    }

    .align-self-md-baseline {
        align-self: baseline !important
    }

    .align-self-md-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 1024px) {
    .flex-lg-row {
        flex-direction: row !important
    }

    .flex-lg-column {
        flex-direction: column !important
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-lg-fill {
        flex: 1 1 auto !important
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-lg-start {
        justify-content: flex-start !important
    }

    .justify-content-lg-end {
        justify-content: flex-end !important
    }

    .justify-content-lg-center {
        justify-content: center !important
    }

    .justify-content-lg-between {
        justify-content: space-between !important
    }

    .justify-content-lg-around {
        justify-content: space-around !important
    }

    .align-items-lg-start {
        align-items: flex-start !important
    }

    .align-items-lg-end {
        align-items: flex-end !important
    }

    .align-items-lg-center {
        align-items: center !important
    }

    .align-items-lg-baseline {
        align-items: baseline !important
    }

    .align-items-lg-stretch {
        align-items: stretch !important
    }

    .align-content-lg-start {
        align-content: flex-start !important
    }

    .align-content-lg-end {
        align-content: flex-end !important
    }

    .align-content-lg-center {
        align-content: center !important
    }

    .align-content-lg-between {
        align-content: space-between !important
    }

    .align-content-lg-around {
        align-content: space-around !important
    }

    .align-content-lg-stretch {
        align-content: stretch !important
    }

    .align-self-lg-auto {
        align-self: auto !important
    }

    .align-self-lg-start {
        align-self: flex-start !important
    }

    .align-self-lg-end {
        align-self: flex-end !important
    }

    .align-self-lg-center {
        align-self: center !important
    }

    .align-self-lg-baseline {
        align-self: baseline !important
    }

    .align-self-lg-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 1200px) {
    .flex-nt-row {
        flex-direction: row !important
    }

    .flex-nt-column {
        flex-direction: column !important
    }

    .flex-nt-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-nt-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-nt-wrap {
        flex-wrap: wrap !important
    }

    .flex-nt-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-nt-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-nt-fill {
        flex: 1 1 auto !important
    }

    .flex-nt-grow-0 {
        flex-grow: 0 !important
    }

    .flex-nt-grow-1 {
        flex-grow: 1 !important
    }

    .flex-nt-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-nt-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-nt-start {
        justify-content: flex-start !important
    }

    .justify-content-nt-end {
        justify-content: flex-end !important
    }

    .justify-content-nt-center {
        justify-content: center !important
    }

    .justify-content-nt-between {
        justify-content: space-between !important
    }

    .justify-content-nt-around {
        justify-content: space-around !important
    }

    .align-items-nt-start {
        align-items: flex-start !important
    }

    .align-items-nt-end {
        align-items: flex-end !important
    }

    .align-items-nt-center {
        align-items: center !important
    }

    .align-items-nt-baseline {
        align-items: baseline !important
    }

    .align-items-nt-stretch {
        align-items: stretch !important
    }

    .align-content-nt-start {
        align-content: flex-start !important
    }

    .align-content-nt-end {
        align-content: flex-end !important
    }

    .align-content-nt-center {
        align-content: center !important
    }

    .align-content-nt-between {
        align-content: space-between !important
    }

    .align-content-nt-around {
        align-content: space-around !important
    }

    .align-content-nt-stretch {
        align-content: stretch !important
    }

    .align-self-nt-auto {
        align-self: auto !important
    }

    .align-self-nt-start {
        align-self: flex-start !important
    }

    .align-self-nt-end {
        align-self: flex-end !important
    }

    .align-self-nt-center {
        align-self: center !important
    }

    .align-self-nt-baseline {
        align-self: baseline !important
    }

    .align-self-nt-stretch {
        align-self: stretch !important
    }
}

@media (min-width: 1500px) {
    .flex-xl-row {
        flex-direction: row !important
    }

    .flex-xl-column {
        flex-direction: column !important
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important
    }

    .flex-xl-fill {
        flex: 1 1 auto !important
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important
    }

    .justify-content-xl-start {
        justify-content: flex-start !important
    }

    .justify-content-xl-end {
        justify-content: flex-end !important
    }

    .justify-content-xl-center {
        justify-content: center !important
    }

    .justify-content-xl-between {
        justify-content: space-between !important
    }

    .justify-content-xl-around {
        justify-content: space-around !important
    }

    .align-items-xl-start {
        align-items: flex-start !important
    }

    .align-items-xl-end {
        align-items: flex-end !important
    }

    .align-items-xl-center {
        align-items: center !important
    }

    .align-items-xl-baseline {
        align-items: baseline !important
    }

    .align-items-xl-stretch {
        align-items: stretch !important
    }

    .align-content-xl-start {
        align-content: flex-start !important
    }

    .align-content-xl-end {
        align-content: flex-end !important
    }

    .align-content-xl-center {
        align-content: center !important
    }

    .align-content-xl-between {
        align-content: space-between !important
    }

    .align-content-xl-around {
        align-content: space-around !important
    }

    .align-content-xl-stretch {
        align-content: stretch !important
    }

    .align-self-xl-auto {
        align-self: auto !important
    }

    .align-self-xl-start {
        align-self: flex-start !important
    }

    .align-self-xl-end {
        align-self: flex-end !important
    }

    .align-self-xl-center {
        align-self: center !important
    }

    .align-self-xl-baseline {
        align-self: baseline !important
    }

    .align-self-xl-stretch {
        align-self: stretch !important
    }
}

.m-0 {
    margin: 0 !important
}

.mt-0, .my-0 {
    margin-top: 0 !important
}

.mr-0, .mx-0 {
    margin-right: 0 !important
}

.mb-0, .my-0 {
    margin-bottom: 0 !important
}

.ml-0, .mx-0 {
    margin-left: 0 !important
}

.m-1 {
    margin: .25rem !important
}

.mt-1, .my-1 {
    margin-top: .25rem !important
}

.mr-1, .mx-1 {
    margin-right: .25rem !important
}

.mb-1, .my-1 {
    margin-bottom: .25rem !important
}

.ml-1, .mx-1 {
    margin-left: .25rem !important
}

.m-2 {
    margin: .5rem !important
}

.mt-2, .my-2 {
    margin-top: .5rem !important
}

.mr-2, .mx-2 {
    margin-right: .5rem !important
}

.mb-2, .my-2 {
    margin-bottom: .5rem !important
}

.ml-2, .mx-2 {
    margin-left: .5rem !important
}

.m-3 {
    margin: 1rem !important
}

.mt-3, .my-3 {
    margin-top: 1rem !important
}

.mr-3, .mx-3 {
    margin-right: 1rem !important
}

.mb-3, .my-3 {
    margin-bottom: 1rem !important
}

.ml-3, .mx-3 {
    margin-left: 1rem !important
}

.m-4 {
    margin: 1.5rem !important
}

.mt-4, .my-4 {
    margin-top: 1.5rem !important
}

.mr-4, .mx-4 {
    margin-right: 1.5rem !important
}

.mb-4, .my-4 {
    margin-bottom: 1.5rem !important
}

.ml-4, .mx-4 {
    margin-left: 1.5rem !important
}

.m-5 {
    margin: 3rem !important
}

.mt-5, .my-5 {
    margin-top: 3rem !important
}

.mr-5, .mx-5 {
    margin-right: 3rem !important
}

.mb-5, .my-5 {
    margin-bottom: 3rem !important
}

.ml-5, .mx-5 {
    margin-left: 3rem !important
}

.p-0 {
    padding: 0 !important
}

.pt-0, .py-0 {
    padding-top: 0 !important
}

.pr-0, .px-0 {
    padding-right: 0 !important
}

.pb-0, .py-0 {
    padding-bottom: 0 !important
}

.pl-0, .px-0 {
    padding-left: 0 !important
}

.p-1 {
    padding: .25rem !important
}

.pt-1, .py-1 {
    padding-top: .25rem !important
}

.pr-1, .px-1 {
    padding-right: .25rem !important
}

.pb-1, .py-1 {
    padding-bottom: .25rem !important
}

.pl-1, .px-1 {
    padding-left: .25rem !important
}

.p-2 {
    padding: .5rem !important
}

.pt-2, .py-2 {
    padding-top: .5rem !important
}

.pr-2, .px-2 {
    padding-right: .5rem !important
}

.pb-2, .py-2 {
    padding-bottom: .5rem !important
}

.pl-2, .px-2 {
    padding-left: .5rem !important
}

.p-3 {
    padding: 1rem !important
}

.pt-3, .py-3 {
    padding-top: 1rem !important
}

.pr-3, .px-3 {
    padding-right: 1rem !important
}

.pb-3, .py-3 {
    padding-bottom: 1rem !important
}

.pl-3, .px-3 {
    padding-left: 1rem !important
}

.p-4 {
    padding: 1.5rem !important
}

.pt-4, .py-4 {
    padding-top: 1.5rem !important
}

.pr-4, .px-4 {
    padding-right: 1.5rem !important
}

.pb-4, .py-4 {
    padding-bottom: 1.5rem !important
}

.pl-4, .px-4 {
    padding-left: 1.5rem !important
}

.p-5 {
    padding: 3rem !important
}

.pt-5, .py-5 {
    padding-top: 3rem !important
}

.pr-5, .px-5 {
    padding-right: 3rem !important
}

.pb-5, .py-5 {
    padding-bottom: 3rem !important
}

.pl-5, .px-5 {
    padding-left: 3rem !important
}

.m-n1 {
    margin: -.25rem !important
}

.mt-n1, .my-n1 {
    margin-top: -.25rem !important
}

.mr-n1, .mx-n1 {
    margin-right: -.25rem !important
}

.mb-n1, .my-n1 {
    margin-bottom: -.25rem !important
}

.ml-n1, .mx-n1 {
    margin-left: -.25rem !important
}

.m-n2 {
    margin: -.5rem !important
}

.mt-n2, .my-n2 {
    margin-top: -.5rem !important
}

.mr-n2, .mx-n2 {
    margin-right: -.5rem !important
}

.mb-n2, .my-n2 {
    margin-bottom: -.5rem !important
}

.ml-n2, .mx-n2 {
    margin-left: -.5rem !important
}

.m-n3 {
    margin: -1rem !important
}

.mt-n3, .my-n3 {
    margin-top: -1rem !important
}

.mr-n3, .mx-n3 {
    margin-right: -1rem !important
}

.mb-n3, .my-n3 {
    margin-bottom: -1rem !important
}

.ml-n3, .mx-n3 {
    margin-left: -1rem !important
}

.m-n4 {
    margin: -1.5rem !important
}

.mt-n4, .my-n4 {
    margin-top: -1.5rem !important
}

.mr-n4, .mx-n4 {
    margin-right: -1.5rem !important
}

.mb-n4, .my-n4 {
    margin-bottom: -1.5rem !important
}

.ml-n4, .mx-n4 {
    margin-left: -1.5rem !important
}

.m-n5 {
    margin: -3rem !important
}

.mt-n5, .my-n5 {
    margin-top: -3rem !important
}

.mr-n5, .mx-n5 {
    margin-right: -3rem !important
}

.mb-n5, .my-n5 {
    margin-bottom: -3rem !important
}

.ml-n5, .mx-n5 {
    margin-left: -3rem !important
}

.m-auto {
    margin: auto !important
}

.mt-auto, .my-auto {
    margin-top: auto !important
}

.mr-auto, .mx-auto {
    margin-right: auto !important
}

.mb-auto, .my-auto {
    margin-bottom: auto !important
}

.ml-auto, .mx-auto {
    margin-left: auto !important
}

@media (min-width: 480px) {
    .m-sm-0 {
        margin: 0 !important
    }

    .mt-sm-0, .my-sm-0 {
        margin-top: 0 !important
    }

    .mr-sm-0, .mx-sm-0 {
        margin-right: 0 !important
    }

    .mb-sm-0, .my-sm-0 {
        margin-bottom: 0 !important
    }

    .ml-sm-0, .mx-sm-0 {
        margin-left: 0 !important
    }

    .m-sm-1 {
        margin: .25rem !important
    }

    .mt-sm-1, .my-sm-1 {
        margin-top: .25rem !important
    }

    .mr-sm-1, .mx-sm-1 {
        margin-right: .25rem !important
    }

    .mb-sm-1, .my-sm-1 {
        margin-bottom: .25rem !important
    }

    .ml-sm-1, .mx-sm-1 {
        margin-left: .25rem !important
    }

    .m-sm-2 {
        margin: .5rem !important
    }

    .mt-sm-2, .my-sm-2 {
        margin-top: .5rem !important
    }

    .mr-sm-2, .mx-sm-2 {
        margin-right: .5rem !important
    }

    .mb-sm-2, .my-sm-2 {
        margin-bottom: .5rem !important
    }

    .ml-sm-2, .mx-sm-2 {
        margin-left: .5rem !important
    }

    .m-sm-3 {
        margin: 1rem !important
    }

    .mt-sm-3, .my-sm-3 {
        margin-top: 1rem !important
    }

    .mr-sm-3, .mx-sm-3 {
        margin-right: 1rem !important
    }

    .mb-sm-3, .my-sm-3 {
        margin-bottom: 1rem !important
    }

    .ml-sm-3, .mx-sm-3 {
        margin-left: 1rem !important
    }

    .m-sm-4 {
        margin: 1.5rem !important
    }

    .mt-sm-4, .my-sm-4 {
        margin-top: 1.5rem !important
    }

    .mr-sm-4, .mx-sm-4 {
        margin-right: 1.5rem !important
    }

    .mb-sm-4, .my-sm-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-sm-4, .mx-sm-4 {
        margin-left: 1.5rem !important
    }

    .m-sm-5 {
        margin: 3rem !important
    }

    .mt-sm-5, .my-sm-5 {
        margin-top: 3rem !important
    }

    .mr-sm-5, .mx-sm-5 {
        margin-right: 3rem !important
    }

    .mb-sm-5, .my-sm-5 {
        margin-bottom: 3rem !important
    }

    .ml-sm-5, .mx-sm-5 {
        margin-left: 3rem !important
    }

    .p-sm-0 {
        padding: 0 !important
    }

    .pt-sm-0, .py-sm-0 {
        padding-top: 0 !important
    }

    .pr-sm-0, .px-sm-0 {
        padding-right: 0 !important
    }

    .pb-sm-0, .py-sm-0 {
        padding-bottom: 0 !important
    }

    .pl-sm-0, .px-sm-0 {
        padding-left: 0 !important
    }

    .p-sm-1 {
        padding: .25rem !important
    }

    .pt-sm-1, .py-sm-1 {
        padding-top: .25rem !important
    }

    .pr-sm-1, .px-sm-1 {
        padding-right: .25rem !important
    }

    .pb-sm-1, .py-sm-1 {
        padding-bottom: .25rem !important
    }

    .pl-sm-1, .px-sm-1 {
        padding-left: .25rem !important
    }

    .p-sm-2 {
        padding: .5rem !important
    }

    .pt-sm-2, .py-sm-2 {
        padding-top: .5rem !important
    }

    .pr-sm-2, .px-sm-2 {
        padding-right: .5rem !important
    }

    .pb-sm-2, .py-sm-2 {
        padding-bottom: .5rem !important
    }

    .pl-sm-2, .px-sm-2 {
        padding-left: .5rem !important
    }

    .p-sm-3 {
        padding: 1rem !important
    }

    .pt-sm-3, .py-sm-3 {
        padding-top: 1rem !important
    }

    .pr-sm-3, .px-sm-3 {
        padding-right: 1rem !important
    }

    .pb-sm-3, .py-sm-3 {
        padding-bottom: 1rem !important
    }

    .pl-sm-3, .px-sm-3 {
        padding-left: 1rem !important
    }

    .p-sm-4 {
        padding: 1.5rem !important
    }

    .pt-sm-4, .py-sm-4 {
        padding-top: 1.5rem !important
    }

    .pr-sm-4, .px-sm-4 {
        padding-right: 1.5rem !important
    }

    .pb-sm-4, .py-sm-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-sm-4, .px-sm-4 {
        padding-left: 1.5rem !important
    }

    .p-sm-5 {
        padding: 3rem !important
    }

    .pt-sm-5, .py-sm-5 {
        padding-top: 3rem !important
    }

    .pr-sm-5, .px-sm-5 {
        padding-right: 3rem !important
    }

    .pb-sm-5, .py-sm-5 {
        padding-bottom: 3rem !important
    }

    .pl-sm-5, .px-sm-5 {
        padding-left: 3rem !important
    }

    .m-sm-n1 {
        margin: -.25rem !important
    }

    .mt-sm-n1, .my-sm-n1 {
        margin-top: -.25rem !important
    }

    .mr-sm-n1, .mx-sm-n1 {
        margin-right: -.25rem !important
    }

    .mb-sm-n1, .my-sm-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-sm-n1, .mx-sm-n1 {
        margin-left: -.25rem !important
    }

    .m-sm-n2 {
        margin: -.5rem !important
    }

    .mt-sm-n2, .my-sm-n2 {
        margin-top: -.5rem !important
    }

    .mr-sm-n2, .mx-sm-n2 {
        margin-right: -.5rem !important
    }

    .mb-sm-n2, .my-sm-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-sm-n2, .mx-sm-n2 {
        margin-left: -.5rem !important
    }

    .m-sm-n3 {
        margin: -1rem !important
    }

    .mt-sm-n3, .my-sm-n3 {
        margin-top: -1rem !important
    }

    .mr-sm-n3, .mx-sm-n3 {
        margin-right: -1rem !important
    }

    .mb-sm-n3, .my-sm-n3 {
        margin-bottom: -1rem !important
    }

    .ml-sm-n3, .mx-sm-n3 {
        margin-left: -1rem !important
    }

    .m-sm-n4 {
        margin: -1.5rem !important
    }

    .mt-sm-n4, .my-sm-n4 {
        margin-top: -1.5rem !important
    }

    .mr-sm-n4, .mx-sm-n4 {
        margin-right: -1.5rem !important
    }

    .mb-sm-n4, .my-sm-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-sm-n4, .mx-sm-n4 {
        margin-left: -1.5rem !important
    }

    .m-sm-n5 {
        margin: -3rem !important
    }

    .mt-sm-n5, .my-sm-n5 {
        margin-top: -3rem !important
    }

    .mr-sm-n5, .mx-sm-n5 {
        margin-right: -3rem !important
    }

    .mb-sm-n5, .my-sm-n5 {
        margin-bottom: -3rem !important
    }

    .ml-sm-n5, .mx-sm-n5 {
        margin-left: -3rem !important
    }

    .m-sm-auto {
        margin: auto !important
    }

    .mt-sm-auto, .my-sm-auto {
        margin-top: auto !important
    }

    .mr-sm-auto, .mx-sm-auto {
        margin-right: auto !important
    }

    .mb-sm-auto, .my-sm-auto {
        margin-bottom: auto !important
    }

    .ml-sm-auto, .mx-sm-auto {
        margin-left: auto !important
    }
}

@media (min-width: 768px) {
    .m-md-0 {
        margin: 0 !important
    }

    .mt-md-0, .my-md-0 {
        margin-top: 0 !important
    }

    .mr-md-0, .mx-md-0 {
        margin-right: 0 !important
    }

    .mb-md-0, .my-md-0 {
        margin-bottom: 0 !important
    }

    .ml-md-0, .mx-md-0 {
        margin-left: 0 !important
    }

    .m-md-1 {
        margin: .25rem !important
    }

    .mt-md-1, .my-md-1 {
        margin-top: .25rem !important
    }

    .mr-md-1, .mx-md-1 {
        margin-right: .25rem !important
    }

    .mb-md-1, .my-md-1 {
        margin-bottom: .25rem !important
    }

    .ml-md-1, .mx-md-1 {
        margin-left: .25rem !important
    }

    .m-md-2 {
        margin: .5rem !important
    }

    .mt-md-2, .my-md-2 {
        margin-top: .5rem !important
    }

    .mr-md-2, .mx-md-2 {
        margin-right: .5rem !important
    }

    .mb-md-2, .my-md-2 {
        margin-bottom: .5rem !important
    }

    .ml-md-2, .mx-md-2 {
        margin-left: .5rem !important
    }

    .m-md-3 {
        margin: 1rem !important
    }

    .mt-md-3, .my-md-3 {
        margin-top: 1rem !important
    }

    .mr-md-3, .mx-md-3 {
        margin-right: 1rem !important
    }

    .mb-md-3, .my-md-3 {
        margin-bottom: 1rem !important
    }

    .ml-md-3, .mx-md-3 {
        margin-left: 1rem !important
    }

    .m-md-4 {
        margin: 1.5rem !important
    }

    .mt-md-4, .my-md-4 {
        margin-top: 1.5rem !important
    }

    .mr-md-4, .mx-md-4 {
        margin-right: 1.5rem !important
    }

    .mb-md-4, .my-md-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-md-4, .mx-md-4 {
        margin-left: 1.5rem !important
    }

    .m-md-5 {
        margin: 3rem !important
    }

    .mt-md-5, .my-md-5 {
        margin-top: 3rem !important
    }

    .mr-md-5, .mx-md-5 {
        margin-right: 3rem !important
    }

    .mb-md-5, .my-md-5 {
        margin-bottom: 3rem !important
    }

    .ml-md-5, .mx-md-5 {
        margin-left: 3rem !important
    }

    .p-md-0 {
        padding: 0 !important
    }

    .pt-md-0, .py-md-0 {
        padding-top: 0 !important
    }

    .pr-md-0, .px-md-0 {
        padding-right: 0 !important
    }

    .pb-md-0, .py-md-0 {
        padding-bottom: 0 !important
    }

    .pl-md-0, .px-md-0 {
        padding-left: 0 !important
    }

    .p-md-1 {
        padding: .25rem !important
    }

    .pt-md-1, .py-md-1 {
        padding-top: .25rem !important
    }

    .pr-md-1, .px-md-1 {
        padding-right: .25rem !important
    }

    .pb-md-1, .py-md-1 {
        padding-bottom: .25rem !important
    }

    .pl-md-1, .px-md-1 {
        padding-left: .25rem !important
    }

    .p-md-2 {
        padding: .5rem !important
    }

    .pt-md-2, .py-md-2 {
        padding-top: .5rem !important
    }

    .pr-md-2, .px-md-2 {
        padding-right: .5rem !important
    }

    .pb-md-2, .py-md-2 {
        padding-bottom: .5rem !important
    }

    .pl-md-2, .px-md-2 {
        padding-left: .5rem !important
    }

    .p-md-3 {
        padding: 1rem !important
    }

    .pt-md-3, .py-md-3 {
        padding-top: 1rem !important
    }

    .pr-md-3, .px-md-3 {
        padding-right: 1rem !important
    }

    .pb-md-3, .py-md-3 {
        padding-bottom: 1rem !important
    }

    .pl-md-3, .px-md-3 {
        padding-left: 1rem !important
    }

    .p-md-4 {
        padding: 1.5rem !important
    }

    .pt-md-4, .py-md-4 {
        padding-top: 1.5rem !important
    }

    .pr-md-4, .px-md-4 {
        padding-right: 1.5rem !important
    }

    .pb-md-4, .py-md-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-md-4, .px-md-4 {
        padding-left: 1.5rem !important
    }

    .p-md-5 {
        padding: 3rem !important
    }

    .pt-md-5, .py-md-5 {
        padding-top: 3rem !important
    }

    .pr-md-5, .px-md-5 {
        padding-right: 3rem !important
    }

    .pb-md-5, .py-md-5 {
        padding-bottom: 3rem !important
    }

    .pl-md-5, .px-md-5 {
        padding-left: 3rem !important
    }

    .m-md-n1 {
        margin: -.25rem !important
    }

    .mt-md-n1, .my-md-n1 {
        margin-top: -.25rem !important
    }

    .mr-md-n1, .mx-md-n1 {
        margin-right: -.25rem !important
    }

    .mb-md-n1, .my-md-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-md-n1, .mx-md-n1 {
        margin-left: -.25rem !important
    }

    .m-md-n2 {
        margin: -.5rem !important
    }

    .mt-md-n2, .my-md-n2 {
        margin-top: -.5rem !important
    }

    .mr-md-n2, .mx-md-n2 {
        margin-right: -.5rem !important
    }

    .mb-md-n2, .my-md-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-md-n2, .mx-md-n2 {
        margin-left: -.5rem !important
    }

    .m-md-n3 {
        margin: -1rem !important
    }

    .mt-md-n3, .my-md-n3 {
        margin-top: -1rem !important
    }

    .mr-md-n3, .mx-md-n3 {
        margin-right: -1rem !important
    }

    .mb-md-n3, .my-md-n3 {
        margin-bottom: -1rem !important
    }

    .ml-md-n3, .mx-md-n3 {
        margin-left: -1rem !important
    }

    .m-md-n4 {
        margin: -1.5rem !important
    }

    .mt-md-n4, .my-md-n4 {
        margin-top: -1.5rem !important
    }

    .mr-md-n4, .mx-md-n4 {
        margin-right: -1.5rem !important
    }

    .mb-md-n4, .my-md-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-md-n4, .mx-md-n4 {
        margin-left: -1.5rem !important
    }

    .m-md-n5 {
        margin: -3rem !important
    }

    .mt-md-n5, .my-md-n5 {
        margin-top: -3rem !important
    }

    .mr-md-n5, .mx-md-n5 {
        margin-right: -3rem !important
    }

    .mb-md-n5, .my-md-n5 {
        margin-bottom: -3rem !important
    }

    .ml-md-n5, .mx-md-n5 {
        margin-left: -3rem !important
    }

    .m-md-auto {
        margin: auto !important
    }

    .mt-md-auto, .my-md-auto {
        margin-top: auto !important
    }

    .mr-md-auto, .mx-md-auto {
        margin-right: auto !important
    }

    .mb-md-auto, .my-md-auto {
        margin-bottom: auto !important
    }

    .ml-md-auto, .mx-md-auto {
        margin-left: auto !important
    }
}

@media (min-width: 1024px) {
    .m-lg-0 {
        margin: 0 !important
    }

    .mt-lg-0, .my-lg-0 {
        margin-top: 0 !important
    }

    .mr-lg-0, .mx-lg-0 {
        margin-right: 0 !important
    }

    .mb-lg-0, .my-lg-0 {
        margin-bottom: 0 !important
    }

    .ml-lg-0, .mx-lg-0 {
        margin-left: 0 !important
    }

    .m-lg-1 {
        margin: .25rem !important
    }

    .mt-lg-1, .my-lg-1 {
        margin-top: .25rem !important
    }

    .mr-lg-1, .mx-lg-1 {
        margin-right: .25rem !important
    }

    .mb-lg-1, .my-lg-1 {
        margin-bottom: .25rem !important
    }

    .ml-lg-1, .mx-lg-1 {
        margin-left: .25rem !important
    }

    .m-lg-2 {
        margin: .5rem !important
    }

    .mt-lg-2, .my-lg-2 {
        margin-top: .5rem !important
    }

    .mr-lg-2, .mx-lg-2 {
        margin-right: .5rem !important
    }

    .mb-lg-2, .my-lg-2 {
        margin-bottom: .5rem !important
    }

    .ml-lg-2, .mx-lg-2 {
        margin-left: .5rem !important
    }

    .m-lg-3 {
        margin: 1rem !important
    }

    .mt-lg-3, .my-lg-3 {
        margin-top: 1rem !important
    }

    .mr-lg-3, .mx-lg-3 {
        margin-right: 1rem !important
    }

    .mb-lg-3, .my-lg-3 {
        margin-bottom: 1rem !important
    }

    .ml-lg-3, .mx-lg-3 {
        margin-left: 1rem !important
    }

    .m-lg-4 {
        margin: 1.5rem !important
    }

    .mt-lg-4, .my-lg-4 {
        margin-top: 1.5rem !important
    }

    .mr-lg-4, .mx-lg-4 {
        margin-right: 1.5rem !important
    }

    .mb-lg-4, .my-lg-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-lg-4, .mx-lg-4 {
        margin-left: 1.5rem !important
    }

    .m-lg-5 {
        margin: 3rem !important
    }

    .mt-lg-5, .my-lg-5 {
        margin-top: 3rem !important
    }

    .mr-lg-5, .mx-lg-5 {
        margin-right: 3rem !important
    }

    .mb-lg-5, .my-lg-5 {
        margin-bottom: 3rem !important
    }

    .ml-lg-5, .mx-lg-5 {
        margin-left: 3rem !important
    }

    .p-lg-0 {
        padding: 0 !important
    }

    .pt-lg-0, .py-lg-0 {
        padding-top: 0 !important
    }

    .pr-lg-0, .px-lg-0 {
        padding-right: 0 !important
    }

    .pb-lg-0, .py-lg-0 {
        padding-bottom: 0 !important
    }

    .pl-lg-0, .px-lg-0 {
        padding-left: 0 !important
    }

    .p-lg-1 {
        padding: .25rem !important
    }

    .pt-lg-1, .py-lg-1 {
        padding-top: .25rem !important
    }

    .pr-lg-1, .px-lg-1 {
        padding-right: .25rem !important
    }

    .pb-lg-1, .py-lg-1 {
        padding-bottom: .25rem !important
    }

    .pl-lg-1, .px-lg-1 {
        padding-left: .25rem !important
    }

    .p-lg-2 {
        padding: .5rem !important
    }

    .pt-lg-2, .py-lg-2 {
        padding-top: .5rem !important
    }

    .pr-lg-2, .px-lg-2 {
        padding-right: .5rem !important
    }

    .pb-lg-2, .py-lg-2 {
        padding-bottom: .5rem !important
    }

    .pl-lg-2, .px-lg-2 {
        padding-left: .5rem !important
    }

    .p-lg-3 {
        padding: 1rem !important
    }

    .pt-lg-3, .py-lg-3 {
        padding-top: 1rem !important
    }

    .pr-lg-3, .px-lg-3 {
        padding-right: 1rem !important
    }

    .pb-lg-3, .py-lg-3 {
        padding-bottom: 1rem !important
    }

    .pl-lg-3, .px-lg-3 {
        padding-left: 1rem !important
    }

    .p-lg-4 {
        padding: 1.5rem !important
    }

    .pt-lg-4, .py-lg-4 {
        padding-top: 1.5rem !important
    }

    .pr-lg-4, .px-lg-4 {
        padding-right: 1.5rem !important
    }

    .pb-lg-4, .py-lg-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-lg-4, .px-lg-4 {
        padding-left: 1.5rem !important
    }

    .p-lg-5 {
        padding: 3rem !important
    }

    .pt-lg-5, .py-lg-5 {
        padding-top: 3rem !important
    }

    .pr-lg-5, .px-lg-5 {
        padding-right: 3rem !important
    }

    .pb-lg-5, .py-lg-5 {
        padding-bottom: 3rem !important
    }

    .pl-lg-5, .px-lg-5 {
        padding-left: 3rem !important
    }

    .m-lg-n1 {
        margin: -.25rem !important
    }

    .mt-lg-n1, .my-lg-n1 {
        margin-top: -.25rem !important
    }

    .mr-lg-n1, .mx-lg-n1 {
        margin-right: -.25rem !important
    }

    .mb-lg-n1, .my-lg-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-lg-n1, .mx-lg-n1 {
        margin-left: -.25rem !important
    }

    .m-lg-n2 {
        margin: -.5rem !important
    }

    .mt-lg-n2, .my-lg-n2 {
        margin-top: -.5rem !important
    }

    .mr-lg-n2, .mx-lg-n2 {
        margin-right: -.5rem !important
    }

    .mb-lg-n2, .my-lg-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-lg-n2, .mx-lg-n2 {
        margin-left: -.5rem !important
    }

    .m-lg-n3 {
        margin: -1rem !important
    }

    .mt-lg-n3, .my-lg-n3 {
        margin-top: -1rem !important
    }

    .mr-lg-n3, .mx-lg-n3 {
        margin-right: -1rem !important
    }

    .mb-lg-n3, .my-lg-n3 {
        margin-bottom: -1rem !important
    }

    .ml-lg-n3, .mx-lg-n3 {
        margin-left: -1rem !important
    }

    .m-lg-n4 {
        margin: -1.5rem !important
    }

    .mt-lg-n4, .my-lg-n4 {
        margin-top: -1.5rem !important
    }

    .mr-lg-n4, .mx-lg-n4 {
        margin-right: -1.5rem !important
    }

    .mb-lg-n4, .my-lg-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-lg-n4, .mx-lg-n4 {
        margin-left: -1.5rem !important
    }

    .m-lg-n5 {
        margin: -3rem !important
    }

    .mt-lg-n5, .my-lg-n5 {
        margin-top: -3rem !important
    }

    .mr-lg-n5, .mx-lg-n5 {
        margin-right: -3rem !important
    }

    .mb-lg-n5, .my-lg-n5 {
        margin-bottom: -3rem !important
    }

    .ml-lg-n5, .mx-lg-n5 {
        margin-left: -3rem !important
    }

    .m-lg-auto {
        margin: auto !important
    }

    .mt-lg-auto, .my-lg-auto {
        margin-top: auto !important
    }

    .mr-lg-auto, .mx-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-auto, .my-lg-auto {
        margin-bottom: auto !important
    }

    .ml-lg-auto, .mx-lg-auto {
        margin-left: auto !important
    }
}

@media (min-width: 1200px) {
    .m-nt-0 {
        margin: 0 !important
    }

    .mt-nt-0, .my-nt-0 {
        margin-top: 0 !important
    }

    .mr-nt-0, .mx-nt-0 {
        margin-right: 0 !important
    }

    .mb-nt-0, .my-nt-0 {
        margin-bottom: 0 !important
    }

    .ml-nt-0, .mx-nt-0 {
        margin-left: 0 !important
    }

    .m-nt-1 {
        margin: .25rem !important
    }

    .mt-nt-1, .my-nt-1 {
        margin-top: .25rem !important
    }

    .mr-nt-1, .mx-nt-1 {
        margin-right: .25rem !important
    }

    .mb-nt-1, .my-nt-1 {
        margin-bottom: .25rem !important
    }

    .ml-nt-1, .mx-nt-1 {
        margin-left: .25rem !important
    }

    .m-nt-2 {
        margin: .5rem !important
    }

    .mt-nt-2, .my-nt-2 {
        margin-top: .5rem !important
    }

    .mr-nt-2, .mx-nt-2 {
        margin-right: .5rem !important
    }

    .mb-nt-2, .my-nt-2 {
        margin-bottom: .5rem !important
    }

    .ml-nt-2, .mx-nt-2 {
        margin-left: .5rem !important
    }

    .m-nt-3 {
        margin: 1rem !important
    }

    .mt-nt-3, .my-nt-3 {
        margin-top: 1rem !important
    }

    .mr-nt-3, .mx-nt-3 {
        margin-right: 1rem !important
    }

    .mb-nt-3, .my-nt-3 {
        margin-bottom: 1rem !important
    }

    .ml-nt-3, .mx-nt-3 {
        margin-left: 1rem !important
    }

    .m-nt-4 {
        margin: 1.5rem !important
    }

    .mt-nt-4, .my-nt-4 {
        margin-top: 1.5rem !important
    }

    .mr-nt-4, .mx-nt-4 {
        margin-right: 1.5rem !important
    }

    .mb-nt-4, .my-nt-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-nt-4, .mx-nt-4 {
        margin-left: 1.5rem !important
    }

    .m-nt-5 {
        margin: 3rem !important
    }

    .mt-nt-5, .my-nt-5 {
        margin-top: 3rem !important
    }

    .mr-nt-5, .mx-nt-5 {
        margin-right: 3rem !important
    }

    .mb-nt-5, .my-nt-5 {
        margin-bottom: 3rem !important
    }

    .ml-nt-5, .mx-nt-5 {
        margin-left: 3rem !important
    }

    .p-nt-0 {
        padding: 0 !important
    }

    .pt-nt-0, .py-nt-0 {
        padding-top: 0 !important
    }

    .pr-nt-0, .px-nt-0 {
        padding-right: 0 !important
    }

    .pb-nt-0, .py-nt-0 {
        padding-bottom: 0 !important
    }

    .pl-nt-0, .px-nt-0 {
        padding-left: 0 !important
    }

    .p-nt-1 {
        padding: .25rem !important
    }

    .pt-nt-1, .py-nt-1 {
        padding-top: .25rem !important
    }

    .pr-nt-1, .px-nt-1 {
        padding-right: .25rem !important
    }

    .pb-nt-1, .py-nt-1 {
        padding-bottom: .25rem !important
    }

    .pl-nt-1, .px-nt-1 {
        padding-left: .25rem !important
    }

    .p-nt-2 {
        padding: .5rem !important
    }

    .pt-nt-2, .py-nt-2 {
        padding-top: .5rem !important
    }

    .pr-nt-2, .px-nt-2 {
        padding-right: .5rem !important
    }

    .pb-nt-2, .py-nt-2 {
        padding-bottom: .5rem !important
    }

    .pl-nt-2, .px-nt-2 {
        padding-left: .5rem !important
    }

    .p-nt-3 {
        padding: 1rem !important
    }

    .pt-nt-3, .py-nt-3 {
        padding-top: 1rem !important
    }

    .pr-nt-3, .px-nt-3 {
        padding-right: 1rem !important
    }

    .pb-nt-3, .py-nt-3 {
        padding-bottom: 1rem !important
    }

    .pl-nt-3, .px-nt-3 {
        padding-left: 1rem !important
    }

    .p-nt-4 {
        padding: 1.5rem !important
    }

    .pt-nt-4, .py-nt-4 {
        padding-top: 1.5rem !important
    }

    .pr-nt-4, .px-nt-4 {
        padding-right: 1.5rem !important
    }

    .pb-nt-4, .py-nt-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-nt-4, .px-nt-4 {
        padding-left: 1.5rem !important
    }

    .p-nt-5 {
        padding: 3rem !important
    }

    .pt-nt-5, .py-nt-5 {
        padding-top: 3rem !important
    }

    .pr-nt-5, .px-nt-5 {
        padding-right: 3rem !important
    }

    .pb-nt-5, .py-nt-5 {
        padding-bottom: 3rem !important
    }

    .pl-nt-5, .px-nt-5 {
        padding-left: 3rem !important
    }

    .m-nt-n1 {
        margin: -.25rem !important
    }

    .mt-nt-n1, .my-nt-n1 {
        margin-top: -.25rem !important
    }

    .mr-nt-n1, .mx-nt-n1 {
        margin-right: -.25rem !important
    }

    .mb-nt-n1, .my-nt-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-nt-n1, .mx-nt-n1 {
        margin-left: -.25rem !important
    }

    .m-nt-n2 {
        margin: -.5rem !important
    }

    .mt-nt-n2, .my-nt-n2 {
        margin-top: -.5rem !important
    }

    .mr-nt-n2, .mx-nt-n2 {
        margin-right: -.5rem !important
    }

    .mb-nt-n2, .my-nt-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-nt-n2, .mx-nt-n2 {
        margin-left: -.5rem !important
    }

    .m-nt-n3 {
        margin: -1rem !important
    }

    .mt-nt-n3, .my-nt-n3 {
        margin-top: -1rem !important
    }

    .mr-nt-n3, .mx-nt-n3 {
        margin-right: -1rem !important
    }

    .mb-nt-n3, .my-nt-n3 {
        margin-bottom: -1rem !important
    }

    .ml-nt-n3, .mx-nt-n3 {
        margin-left: -1rem !important
    }

    .m-nt-n4 {
        margin: -1.5rem !important
    }

    .mt-nt-n4, .my-nt-n4 {
        margin-top: -1.5rem !important
    }

    .mr-nt-n4, .mx-nt-n4 {
        margin-right: -1.5rem !important
    }

    .mb-nt-n4, .my-nt-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-nt-n4, .mx-nt-n4 {
        margin-left: -1.5rem !important
    }

    .m-nt-n5 {
        margin: -3rem !important
    }

    .mt-nt-n5, .my-nt-n5 {
        margin-top: -3rem !important
    }

    .mr-nt-n5, .mx-nt-n5 {
        margin-right: -3rem !important
    }

    .mb-nt-n5, .my-nt-n5 {
        margin-bottom: -3rem !important
    }

    .ml-nt-n5, .mx-nt-n5 {
        margin-left: -3rem !important
    }

    .m-nt-auto {
        margin: auto !important
    }

    .mt-nt-auto, .my-nt-auto {
        margin-top: auto !important
    }

    .mr-nt-auto, .mx-nt-auto {
        margin-right: auto !important
    }

    .mb-nt-auto, .my-nt-auto {
        margin-bottom: auto !important
    }

    .ml-nt-auto, .mx-nt-auto {
        margin-left: auto !important
    }
}

@media (min-width: 1500px) {
    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0, .my-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0, .mx-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0, .my-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0, .mx-xl-0 {
        margin-left: 0 !important
    }

    .m-xl-1 {
        margin: .25rem !important
    }

    .mt-xl-1, .my-xl-1 {
        margin-top: .25rem !important
    }

    .mr-xl-1, .mx-xl-1 {
        margin-right: .25rem !important
    }

    .mb-xl-1, .my-xl-1 {
        margin-bottom: .25rem !important
    }

    .ml-xl-1, .mx-xl-1 {
        margin-left: .25rem !important
    }

    .m-xl-2 {
        margin: .5rem !important
    }

    .mt-xl-2, .my-xl-2 {
        margin-top: .5rem !important
    }

    .mr-xl-2, .mx-xl-2 {
        margin-right: .5rem !important
    }

    .mb-xl-2, .my-xl-2 {
        margin-bottom: .5rem !important
    }

    .ml-xl-2, .mx-xl-2 {
        margin-left: .5rem !important
    }

    .m-xl-3 {
        margin: 1rem !important
    }

    .mt-xl-3, .my-xl-3 {
        margin-top: 1rem !important
    }

    .mr-xl-3, .mx-xl-3 {
        margin-right: 1rem !important
    }

    .mb-xl-3, .my-xl-3 {
        margin-bottom: 1rem !important
    }

    .ml-xl-3, .mx-xl-3 {
        margin-left: 1rem !important
    }

    .m-xl-4 {
        margin: 1.5rem !important
    }

    .mt-xl-4, .my-xl-4 {
        margin-top: 1.5rem !important
    }

    .mr-xl-4, .mx-xl-4 {
        margin-right: 1.5rem !important
    }

    .mb-xl-4, .my-xl-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-xl-4, .mx-xl-4 {
        margin-left: 1.5rem !important
    }

    .m-xl-5 {
        margin: 3rem !important
    }

    .mt-xl-5, .my-xl-5 {
        margin-top: 3rem !important
    }

    .mr-xl-5, .mx-xl-5 {
        margin-right: 3rem !important
    }

    .mb-xl-5, .my-xl-5 {
        margin-bottom: 3rem !important
    }

    .ml-xl-5, .mx-xl-5 {
        margin-left: 3rem !important
    }

    .p-xl-0 {
        padding: 0 !important
    }

    .pt-xl-0, .py-xl-0 {
        padding-top: 0 !important
    }

    .pr-xl-0, .px-xl-0 {
        padding-right: 0 !important
    }

    .pb-xl-0, .py-xl-0 {
        padding-bottom: 0 !important
    }

    .pl-xl-0, .px-xl-0 {
        padding-left: 0 !important
    }

    .p-xl-1 {
        padding: .25rem !important
    }

    .pt-xl-1, .py-xl-1 {
        padding-top: .25rem !important
    }

    .pr-xl-1, .px-xl-1 {
        padding-right: .25rem !important
    }

    .pb-xl-1, .py-xl-1 {
        padding-bottom: .25rem !important
    }

    .pl-xl-1, .px-xl-1 {
        padding-left: .25rem !important
    }

    .p-xl-2 {
        padding: .5rem !important
    }

    .pt-xl-2, .py-xl-2 {
        padding-top: .5rem !important
    }

    .pr-xl-2, .px-xl-2 {
        padding-right: .5rem !important
    }

    .pb-xl-2, .py-xl-2 {
        padding-bottom: .5rem !important
    }

    .pl-xl-2, .px-xl-2 {
        padding-left: .5rem !important
    }

    .p-xl-3 {
        padding: 1rem !important
    }

    .pt-xl-3, .py-xl-3 {
        padding-top: 1rem !important
    }

    .pr-xl-3, .px-xl-3 {
        padding-right: 1rem !important
    }

    .pb-xl-3, .py-xl-3 {
        padding-bottom: 1rem !important
    }

    .pl-xl-3, .px-xl-3 {
        padding-left: 1rem !important
    }

    .p-xl-4 {
        padding: 1.5rem !important
    }

    .pt-xl-4, .py-xl-4 {
        padding-top: 1.5rem !important
    }

    .pr-xl-4, .px-xl-4 {
        padding-right: 1.5rem !important
    }

    .pb-xl-4, .py-xl-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-xl-4, .px-xl-4 {
        padding-left: 1.5rem !important
    }

    .p-xl-5 {
        padding: 3rem !important
    }

    .pt-xl-5, .py-xl-5 {
        padding-top: 3rem !important
    }

    .pr-xl-5, .px-xl-5 {
        padding-right: 3rem !important
    }

    .pb-xl-5, .py-xl-5 {
        padding-bottom: 3rem !important
    }

    .pl-xl-5, .px-xl-5 {
        padding-left: 3rem !important
    }

    .m-xl-n1 {
        margin: -.25rem !important
    }

    .mt-xl-n1, .my-xl-n1 {
        margin-top: -.25rem !important
    }

    .mr-xl-n1, .mx-xl-n1 {
        margin-right: -.25rem !important
    }

    .mb-xl-n1, .my-xl-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-xl-n1, .mx-xl-n1 {
        margin-left: -.25rem !important
    }

    .m-xl-n2 {
        margin: -.5rem !important
    }

    .mt-xl-n2, .my-xl-n2 {
        margin-top: -.5rem !important
    }

    .mr-xl-n2, .mx-xl-n2 {
        margin-right: -.5rem !important
    }

    .mb-xl-n2, .my-xl-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-xl-n2, .mx-xl-n2 {
        margin-left: -.5rem !important
    }

    .m-xl-n3 {
        margin: -1rem !important
    }

    .mt-xl-n3, .my-xl-n3 {
        margin-top: -1rem !important
    }

    .mr-xl-n3, .mx-xl-n3 {
        margin-right: -1rem !important
    }

    .mb-xl-n3, .my-xl-n3 {
        margin-bottom: -1rem !important
    }

    .ml-xl-n3, .mx-xl-n3 {
        margin-left: -1rem !important
    }

    .m-xl-n4 {
        margin: -1.5rem !important
    }

    .mt-xl-n4, .my-xl-n4 {
        margin-top: -1.5rem !important
    }

    .mr-xl-n4, .mx-xl-n4 {
        margin-right: -1.5rem !important
    }

    .mb-xl-n4, .my-xl-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-xl-n4, .mx-xl-n4 {
        margin-left: -1.5rem !important
    }

    .m-xl-n5 {
        margin: -3rem !important
    }

    .mt-xl-n5, .my-xl-n5 {
        margin-top: -3rem !important
    }

    .mr-xl-n5, .mx-xl-n5 {
        margin-right: -3rem !important
    }

    .mb-xl-n5, .my-xl-n5 {
        margin-bottom: -3rem !important
    }

    .ml-xl-n5, .mx-xl-n5 {
        margin-left: -3rem !important
    }

    .m-xl-auto {
        margin: auto !important
    }

    .mt-xl-auto, .my-xl-auto {
        margin-top: auto !important
    }

    .mr-xl-auto, .mx-xl-auto {
        margin-right: auto !important
    }

    .mb-xl-auto, .my-xl-auto {
        margin-bottom: auto !important
    }

    .ml-xl-auto, .mx-xl-auto {
        margin-left: auto !important
    }
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track, .slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:before, .slick-track:after {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir="rtl"] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

h1, h2, h3, h4, h5, h6 {
    color: #555d5f;
    margin-top: 0
}

@media all and (max-width: 480px) {
    h1, h2, h3, h4, h5, h6 {
        text-align: center
    }
}

h1 {
    font: normal normal 2.3rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    margin: 0 0 2.4rem 0;
    letter-spacing: .4rem
}

@media all and (max-width: 768px) {
    h1 {
        font-size: 1.8rem
    }
}

@media all and (max-width: 480px) {
    h1 {
        font-size: 1.4rem;
        margin: 0 0 1.2rem 0;
        letter-spacing: 0
    }
}

h2 {
    font: normal normal 2rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    margin: 0 0 2.4rem 0;
    letter-spacing: .4rem
}

@media all and (max-width: 768px) {
    h2 {
        font-size: 1.6rem
    }
}

@media all and (max-width: 480px) {
    h2 {
        font-size: 1.3rem;
        margin: 0 0 1.2rem 0;
        letter-spacing: 0
    }
}

h3 {
    font: normal normal 1.8rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    margin: 0 0 2.4rem 0;
    letter-spacing: .3rem
}

@media all and (max-width: 768px) {
    h3 {
        font-size: 1.4rem
    }
}

@media all and (max-width: 480px) {
    h3 {
        font-size: 1.1rem;
        margin: 0 0 1.2rem 0;
        letter-spacing: 0
    }
}

h4 {
    font: normal normal 1.4rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    margin: 0 0 1.2rem 0;
    letter-spacing: .2rem
}

@media all and (max-width: 768px) {
    h4 {
        font-size: 1.2rem
    }
}

@media all and (max-width: 480px) {
    h4 {
        font-size: 1rem;
        margin: 0 0 1.2rem 0;
        letter-spacing: 0
    }
}

h5 {
    font: normal normal 1rem/1.6 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    margin: 0 0 1.2rem 0;
    letter-spacing: .2rem
}

@media all and (max-width: 768px) {
    h5 {
        font-size: 1rem
    }
}

@media all and (max-width: 480px) {
    h5 {
        font-size: 1rem;
        margin: 0 0 1.2rem 0;
        letter-spacing: 0
    }
}

h6 {
    font: bold normal .875rem/1.7 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    margin-bottom: 1.25rem
}

@media all and (max-width: 480px) {
    h6 {
        margin: 0 0 .8rem 0
    }
}

p {
    font: normal normal .875rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a
}

p a {
    color: #585D5E;
    font-size: inherit
}

@media all and (max-width: 480px) {
    p {
        font-size: 1rem
    }

    p a {
        font-size: inherit
    }
}

@media all and (max-width: 480px) {
    .page-id-29473 .has-text-align-center, .page-id-29473 h1, .page-id-29473 h2, .page-id-29473 h3, .page-id-29473 h4, .page-id-29473 h5, .page-id-29473 h6, .page-id-30149 .has-text-align-center, .page-id-30149 h1, .page-id-30149 h2, .page-id-30149 h3, .page-id-30149 h4, .page-id-30149 h5, .page-id-30149 h6 {
        text-align: left
    }
}

*[class*=btn-] {
    border-radius: 2px;
    border-style: solid;
    border-width: 1px;
    height: 55px;
    padding: 0 15px;
    transition: 0.2s ease-in-out;
    text-transform: uppercase;
    letter-spacing: .05rem;
    box-sizing: border-box;
    font: normal normal .95rem/55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    display: table;
    text-decoration: none;
    text-align: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

*[class*=btn-]:hover {
    cursor: pointer
}

@media all and (max-width: 480px) {
    *[class*=btn-] {
        height: 35px;
        line-height: 35px;
        font-size: .7rem
    }
}

.btn-primary {
    border-color: #585D5E;
    background-color: #585D5E;
    color: #fff
}

.btn-primary:hover {
    background-color: #666c6d;
    border-color: #666c6d
}

.btn-secondary {
    background-color: #585D5E;
    border-color: #fff;
    color: #fff
}

.btn-secondary:hover {
    background-color: #585D5E;
    border-color: #585D5E
}

button, input[type=submit] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

input[type=search], input[type=tel], input[type=email], input[type=text] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: table;
    margin: 0 0 1rem 0;
    background-color: #fafafa;
    border: 1px solid #e9e9e9;
    padding: 15px 16px;
    transition: 0.2s ease-in-out;
    border-radius: 2px;
    color: #3a3a3a;
    box-sizing: border-box;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

input[type=search]:hover, input[type=tel]:hover, input[type=email]:hover, input[type=text]:hover {
    cursor: text;
    border: 1px solid #585D5E
}

input[type=search]:focus, input[type=tel]:focus, input[type=email]:focus, input[type=text]:focus {
    border: 1px solid #585D5E;
    background-color: #fff
}

input[type=search].error, input[type=tel].error, input[type=email].error, input[type=text].error {
    background-color: #ffa4a4;
    color: #fff
}

input[type=search].error::-webkit-input-placeholder, input[type=tel].error::-webkit-input-placeholder, input[type=email].error::-webkit-input-placeholder, input[type=text].error::-webkit-input-placeholder {
    color: #fff
}

input[type=search].error::-moz-placeholder, input[type=tel].error::-moz-placeholder, input[type=email].error::-moz-placeholder, input[type=text].error::-moz-placeholder {
    color: #fff
}

input[type=search].error:-ms-input-placeholder, input[type=tel].error:-ms-input-placeholder, input[type=email].error:-ms-input-placeholder, input[type=text].error:-ms-input-placeholder {
    color: #fff
}

input[type=search].error:-moz-placeholder, input[type=tel].error:-moz-placeholder, input[type=email].error:-moz-placeholder, input[type=text].error:-moz-placeholder {
    color: #fff
}

@media all and (max-width: 480px) {
    input[type=search], input[type=tel], input[type=email], input[type=text] {
        padding: 7px 16px;
        font-size: 1rem
    }
}

input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-results-button, input[type=search]::-webkit-search-results-decoration {
    -webkit-appearance: none
}

textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #3a3a3a;
    display: table;
    background-color: #fafafa;
    border: 1px solid #e9e9e9;
    border-radius: 2px;
    padding: 16px;
    margin-bottom: 1rem;
    transition: 0.2s ease-in-out;
    min-height: 110px;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

textarea:hover {
    cursor: text;
    border: 1px solid #585D5E
}

textarea:focus {
    border: 1px solid #585D5E;
    background-color: #fff
}

textarea.error {
    background-color: #ffa4a4;
    color: #fff
}

textarea.error::-webkit-input-placeholder {
    color: #fff
}

textarea.error::-moz-placeholder {
    color: #fff
}

textarea.error:-ms-input-placeholder {
    color: #fff
}

textarea.error:-moz-placeholder {
    color: #fff
}

@media all and (max-width: 480px) {
    textarea {
        font-size: 1rem
    }
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #3a3a3a;
    width: 100%;
    background-color: #fafafa;
    border: 1px solid #e9e9e9;
    border-radius: 2px;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    padding: 15px 16px;
    margin: 0 0 1rem 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='9px' viewBox='0 0 16 9'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23555D5F;%7D%0A%3C/style%3E%3Cpath class='st0' d='M8,9C7.7,9,7.5,8.9,7.3,8.7l-7-7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0L8,6.6l6.3-6.3c0.4-0.4,1-0.4,1.4,0 s0.4,1,0,1.4l-7,7C8.5,8.9,8.3,9,8,9z'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: right 15px top 50%;
    transition: 0.2s ease-in-out
}

select:hover {
    cursor: text;
    border: 1px solid #585D5E
}

select option:hover {
    box-shadow: 0 0 10px 100px #a8a8a8 inset
}

@media all and (max-width: 480px) {
    select {
        padding: 7px 16px;
        font-size: 1rem
    }
}

.star-ratings {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' width='21px' height='21px' x='2px' y='2px' viewBox='0 0 25 25'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF33;%7D%0A%3C/style%3E%3Cpath class='st0' d='M10.5,3.2c0.6,1.2,1.3,2.8,1.7,3.9l0.5,1.1l1.2,0.1c1.2,0.1,2.9,0.4,4.3,0.6c-0.9,1-2.3,2.3-3.2,3.1l-0.8,0.8 l0.2,1.1c0.2,1.2,0.6,3,0.8,4.4c-1.1-0.6-2.5-1.5-3.6-2.1l-1-0.7l-1.1,0.6c-1,0.6-2.5,1.5-3.6,2.1c0.2-1.4,0.6-3.2,0.8-4.4l0.2-1.1 l-0.8-0.8c-0.9-0.9-2.3-2.2-3.2-3.2c1.3-0.2,3-0.4,4.2-0.5l1.2-0.1l0.5-1.1C9.2,6.1,9.9,4.5,10.5,3.2 M10.5,0 c-0.4,0-0.7,0.4-0.9,0.6C8.8,1.9,6.9,6.4,6.9,6.4S2.3,6.7,0.8,7.2C-0.4,7.6,0,8.5,0.3,8.9c1,1.3,4.4,4.6,4.4,4.6s-1,4.7-1.1,6.3 c0,0.9,0.5,1.2,0.9,1.2c0.2,0,0.4,0,0.5-0.1c1.4-0.6,5.5-3,5.5-3s4,2.5,5.4,3c0.2,0.1,0.4,0.1,0.5,0.1c0.8,0,0.9-0.8,0.9-1.2 c-0.1-1.6-1-6.4-1-6.4s3.5-3.2,4.4-4.5c0.8-1.1-0.1-1.6-0.5-1.7c-1.5-0.4-6.1-0.9-6.1-0.9c0,0-1.8-4.5-2.7-5.8 C11.1,0.2,10.8,0,10.5,0L10.5,0z'/%3E%3C/svg%3E%0A");
    background-repeat: repeat-x;
    font-size: 0;
    height: 21px;
    line-height: inherit;
    overflow: hidden;
    text-indent: -999em;
    width: 105px;
    margin: 0 auto -4px;
    display: inline-block
}

.star-ratings-rating {
    background-repeat: repeat-x;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21px' height='21px' x='2px' y='2px' viewBox='0 0 25 25'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF;%7D%0A%3C/style%3E%3Cpath class='st0' d='M20.2,7.3c-1.5-0.4-6.1-0.9-6.1-0.9l0,0c0,0-1.8-4.5-2.7-5.8c-0.8-1.1-1.5-0.4-1.7,0C8.8,1.9,6.9,6.4,6.9,6.4 S2.3,6.7,0.8,7.2C-0.4,7.6,0,8.5,0.3,8.9c1,1.3,4.4,4.6,4.4,4.6s-1,4.7-1.1,6.3c0,1.4,1,1.2,1.4,1.1c1.4-0.6,5.5-3,5.5-3 s4,2.5,5.4,3c1.2,0.4,1.4-0.6,1.4-1c-0.1-1.6-1-6.4-1-6.4s3.5-3.2,4.4-4.5C21.5,7.9,20.6,7.4,20.2,7.3z'/%3E%3C/svg%3E%0A");
    float: left;
    height: 21px;
    display: block
}

.hover-image {
    width: 100%;
    height: 0;
    padding-bottom: 92%;
    position: relative;
    background-color: #fafafa
}

.hover-image.vertical {
    padding-bottom: 137%
}

.hover-image-caption, .hover-image-text {
    position: absolute
}

.hover-image-caption {
    left: 0;
    right: 0;
    bottom: 18%;
    padding: 10px 0;
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
    font: normal normal .9rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: uppercase;
    letter-spacing: .2rem;
    text-align: center;
    z-index: 2
}

@media all and (max-width: 480px) {
    .hover-image-caption {
        font-size: .7rem
    }
}

.hover-image-text {
    left: 5%;
    border-left: 5px solid #fff;
    padding: 0;
    padding-left: 30px;
    padding-right: 30px;
    z-index: 5;
    max-height: 0;
    overflow: hidden;
    transition: 0.2s ease-in-out
}

.hover-image-text p {
    color: #fff
}

.hover-image:after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0);
    z-index: 1;
    transition: 0.2s ease-in-out
}

.hover-image:not(.disable-hover):hover .hover-image-text {
    max-height: 700px;
    padding-top: 60px;
    padding-bottom: 30px
}

.hover-image:not(.disable-hover):hover:after {
    background-color: rgba(0, 0, 0, 0.8)
}

.hover-image.disable-hover:hover {
    cursor: default
}

.hover-images {
    display: flex;
    margin: 0 -20px
}

.hover-images .wraper {
    width: calc(50% - 40px);
    margin: 0 20px 20px;
    overflow: hidden
}

.hover-images .hover-image:hover .hover-image-text {
    padding-top: 20px;
    padding-bottom: 20px
}

@media all and (max-width: 1200px) {
    .hover-images {
        flex-direction: column
    }

    .hover-images .wraper {
        width: calc(100% - 40px)
    }
}

@media all and (max-width: 1024px) {
    .hover-images {
        flex-direction: row
    }

    .hover-images .wraper {
        width: calc(50% - 40px)
    }

    .hover-images p {
        font-size: .7rem
    }
}

@media all and (max-width: 768px) {
    .hover-images {
        flex-direction: column
    }

    .hover-images .wraper {
        width: calc(100% - 40px)
    }
}

blockquote {
    padding: 10px 40px;
    margin: 0;
    border-left: 4px solid #565d5e;
    margin: 2rem 0
}

blockquote p:first-child {
    margin-top: 0
}

blockquote p:last-child {
    margin-bottom: 0
}

@media all and (max-width: 480px) {
    blockquote {
        margin: 1rem 0 2rem;
        padding: 30px
    }
}

.video {
    background-color: #ccc;
    width: 100%;
    height: 0;
    padding-bottom: 37%;
    overflow: hidden;
    position: relative
}

.video video {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%
}

@media all and (max-width: 1500px) {
    .video {
        padding-bottom: 50%
    }
}

@media all and (max-width: 480px) {
    .video {
        padding-bottom: 70%
    }
}

.testimonials-carousel + .video {
    margin-top: 70px
}

@media all and (max-width: 480px) {
    .testimonials-carousel + .video {
        margin-top: 0
    }
}

.pagination {
    display: flex;
    align-items: baseline;
    justify-content: center;
    margin-bottom: 100px
}

@media all and (max-width: 768px) {
    .pagination {
        margin-top: 40px
    }
}

.pagination ul {
    padding: 0;
    list-style: none;
    font-size: 0
}

.pagination ul li {
    display: inline-block;
    text-align: center
}

.pagination ul li span, .pagination ul li a {
    font: normal normal 1.3rem/50px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    background-color: #a8a8a8;
    text-decoration: none;
    width: 50px;
    height: 50px;
    display: inline-block;
    margin: 0 5px;
    color: #565d5e;
    transition: 0.2s ease-in-out
}

@media all and (max-width: 768px) {
    .pagination ul li span, .pagination ul li a {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: .875rem
    }
}

@media all and (max-width: 480px) {
    .pagination ul li span, .pagination ul li a {
        margin: 0 2.5px;
        width: 40px;
        height: 40px;
        line-height: 40px
    }
}

.pagination ul li a:hover {
    cursor: pointer;
    background-color: #585D5E;
    color: #fff
}

.pagination ul li span.current {
    background-color: #585D5E;
    color: #fff
}

.pagination ul li span.current:hover {
    cursor: default
}

.pagination-next {
    text-align: center
}

.pagination-next a {
    background-color: #a8a8a8;
    text-decoration: none;
    width: 50px;
    height: 50px;
    display: inline-block;
    font: normal normal 1.3rem/50px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    margin: 0 5px;
    color: #565d5e;
    transition: 0.2s ease-in-out
}

@media all and (max-width: 768px) {
    .pagination-next a {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: .875rem
    }
}

@media all and (max-width: 480px) {
    .pagination-next a {
        margin: 0 2.5px;
        width: 40px;
        height: 40px;
        line-height: 40px
    }
}

.pagination-next a:hover {
    cursor: pointer;
    background-color: #585D5E;
    color: #fff
}

.navigation-prev-next a {
    text-decoration: none
}

.navigation-prev-next .nav-links .nav-previous {
    float: right
}

.navigation-prev-next .nav-links .nav-next {
    float: left
}

@media all and (max-width: 480px) {
    .navigation-prev-next {
        margin-bottom: 50px
    }
}

*:focus {
    outline: none
}

::-webkit-input-placeholder {
    color: #999;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

@media all and (max-width: 480px) {
    ::-webkit-input-placeholder {
        font-size: .8rem
    }
}

::-moz-placeholder {
    color: #999;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

@media all and (max-width: 480px) {
    ::-moz-placeholder {
        font-size: .8rem
    }
}

:-ms-input-placeholder {
    color: #999;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

@media all and (max-width: 480px) {
    :-ms-input-placeholder {
        font-size: .8rem
    }
}

:-moz-placeholder {
    color: #999;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

@media all and (max-width: 480px) {
    :-moz-placeholder {
        font-size: .8rem
    }
}

html {
    box-sizing: content-box;
    overflow-x: hidden;
    -ms-overflow-style: scrollbar;
    font-size: 16px
}

html.lock {
    overflow: hidden
}

body {
    margin: 0;
    overflow-x: hidden;
    background-color: #fff
}

.container {
    box-sizing: border-box
}

@media all and (max-width: 480px) {
    .container {
        padding-left: 20px;
        padding-right: 20px
    }
}

p:empty {
    display: none
}

img {
    width: 100%;
    height: auto
}

hr {
    margin: 2.4rem auto;
    max-width: 370px;
    width: 100%;
    display: block;
    background-color: #4c4d4f;
    height: 2px;
    border: none
}

@media all and (max-width: 480px) {
    hr {
        margin: 1.2rem auto;
        height: 2px;
        max-width: 90px
    }
}

.slick-slider {
    position: unset
}

.slick-arrow {
    position: absolute;
    width: 60px;
    height: 60px;
    top: 0;
    background-color: #a8a8a8;
    display: flex;
    transition: 0.2s ease-in-out;
    z-index: 10
}

.slick-arrow-next {
    right: 0
}

.slick-arrow-prev {
    right: 63px
}

.slick-arrow .fas {
    margin: auto;
    color: #fff;
    font-size: 1.5rem
}

.slick-arrow:hover {
    cursor: pointer;
    background-color: #565d5e
}

@media all and (max-width: 480px) {
    .slick-arrow {
        height: 50px;
        width: 50px
    }

    .slick-arrow-prev {
        right: 52px
    }
}

.has-text-align-center {
    text-align: center
}

.has-text-align-right {
    text-align: right
}

.bg {
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transition: 0.2s ease-in-out
}

.bg-contain {
    -o-object-fit: contain;
    object-fit: contain
}

#main {
    padding-top: 113px
}

@media all and (max-width: 1065px) {
    #main {
        padding-top: 60px
    }
}

@media all and (max-width: 480px) {
    .bg-shift-0 {
        -o-object-position: 0 50%;
        object-position: 0 50%
    }

    .bg-shift-48 {
        -o-object-position: 48% 48%;
        object-position: 0 50%
    }

    .bg-shift-10 {
        -o-object-position: 10% 50%;
        object-position: 10% 50%
    }

    .bg-shift-20 {
        -o-object-position: 20% 50%;
        object-position: 20% 50%
    }

    .bg-shift-30 {
        -o-object-position: 30% 50%;
        object-position: 30% 50%
    }

    .bg-shift-40 {
        -o-object-position: 40% 50%;
        object-position: 40% 50%
    }

    .bg-shift-50 {
        -o-object-position: 50% 50%;
        object-position: 50% 50%
    }

    .bg-shift-60 {
        -o-object-position: 60% 50%;
        object-position: 60% 50%
    }

    .bg-shift-70 {
        -o-object-position: 70% 50%;
        object-position: 70% 50%
    }

    .bg-shift-80 {
        -o-object-position: 80% 50%;
        object-position: 80% 50%
    }

    .bg-shift-90 {
        -o-object-position: 90% 50%;
        object-position: 90% 50%
    }

    .bg-shift-100 {
        -o-object-position: 100% 50%;
        object-position: 100% 50%
    }
}

.full-width-form input, .full-width-form button {
    width: 100%
}

@media all and (max-width: 768px) {
    .hide-on-tablet {
        display: none !important
    }
}

@media all and (max-width: 480px) {
    .hide-on-tablet {
        display: block !important
    }
}

@media all and (max-width: 480px) {
    .hide-on-mobile {
        display: none !important
    }
}

.no-posts {
    text-align: center;
    width: 100%
}

.grecaptcha-badge {
    visibility: hidden
}

.wpcf7-response-output {
    display: none
}

img[src="#"] {
    opacity: 0
}

img:not([src="#"]) {
    transition: opacity .5s linear 0.2s;
    opacity: 1
}

span.wpcf7-not-valid-tip {
    display: none !important
}

.block-consultation-form span.wpcf7-not-valid-tip, .block-consultation-form .wpcf7 form div.wpcf7-response-output, .block-consultation-form div.wpcf7-validation-errors, .block-consultation-form div.wpcf7-acceptance-missing {
    color: #fff
}

#mce-EMAIL-error, .wpcf7 form div.wpcf7-response-output, div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
    position: relative;
    margin: 10px 0 0;
    color: #fff;
    border: 1px solid #fff;
    font-family: "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    font-size: .7rem;
    width: 100%;
    background-color: #585D5E;
    text-align: center;
    padding: 10px 30px
}

#mce-EMAIL-error:before, .wpcf7 form div.wpcf7-response-output:before, div.wpcf7-validation-errors:before, div.wpcf7-acceptance-missing:before {
    position: absolute;
    left: 10px;
    content: '\f071';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900
}

@media all and (max-width: 480px) {
    #mce-EMAIL-error, .wpcf7 form div.wpcf7-response-output, div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
        font-size: 1rem
    }
}

#mce-EMAIL-error {
    display: block
}

.pre-footer div.wpcf7-validation-errors {
    position: absolute;
    bottom: -50px;
    border-color: #585D5E
}

@media all and (max-width: 768px) {
    .pre-footer div.wpcf7-validation-errors {
        bottom: -60px
    }
}

html .wpcf7 form.invalid .wpcf7-response-output {
    border-color: #fff
}

.wpcf7-form {
    position: relative
}

.wpcf7-form label.error {
    font-size: 0;
    color: transparent;
    position: absolute
}

.pre-footer-subscribe .wpcf7-form input[type=submit] {
    width: 160px
}

@media all and (max-width: 480px) {
    .pre-footer-subscribe .wpcf7-form input[type=submit] {
        width: 100%
    }
}

.pre-footer-subscribe .wpcf7-form input[type=email] {
    width: calc(100% - 5px)
}

@media all and (max-width: 480px) {
    .pre-footer-subscribe .wpcf7-form input[type=email] {
        width: 100%
    }
}

.ajax-loader {
    position: absolute;
    top: 0;
    right: 0
}

.hero {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 30%;
    background-color: #fafafa
}

@media all and (max-width: 480px) {
    .hero {
        padding-bottom: 125%
    }
}

.hero-extended {
    position: relative;
    padding: 45px 60px;
    min-height: 410px;
    box-sizing: border-box
}

.hero-extended .img_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

@media all and (max-width: 768px) {
    .hero-extended .img_wrapper {
        position: relative;
        height: 300px
    }
}

.hero-extended-descr {
    z-index: 1;
    position: relative;
    width: 100%;
    max-width: 50%
}

@media all and (max-width: 1024px) {
    .hero-extended-descr {
        max-width: 60%
    }
}

@media all and (max-width: 768px) {
    .hero-extended-descr {
        max-width: 100%;
        padding: 30px 20px 0
    }
}

.hero-extended-descr ul {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-bottom: 20px
}

.hero-extended-descr ul li {
    margin-bottom: 15px;
    font: normal normal .875rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a
}

@media all and (max-width: 480px) {
    .hero-extended-descr ul li {
        font-size: 1rem
    }
}

.hero-extended-descr ul li:last-child {
    margin-bottom: 0
}

.hero-extended-descr .btn-primary {
    margin: 0 auto
}

.hero-extended h1 {
    font: normal normal 1.85rem/1 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E;
    text-transform: none;
    letter-spacing: 0;
    margin-bottom: 20px;
    text-transform: uppercase
}

@media all and (max-width: 768px) {
    .hero-extended {
        padding: 0
    }
}

.hero-slider {
    transition: .2s ease-in-out;
    position: relative
}

.hero-slider-title {
    font: 700 normal 2.3rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585d5e;
    text-transform: uppercase;
    margin-bottom: 0;
    font-size: 37px
}

@media all and (max-width: 480px) {
    .hero-slider-title {
        font-size: 22px
    }
}

.hero-slider p {
    margin-bottom: 40px;
    margin-top: 0;
    font-size: 16px
}

@media all and (max-width: 768px) {
    .hero-slider p {
        margin-bottom: 16px
    }
}

.hero-slider .slick-slide > div > div {
    position: relative
}

.hero-slider .col-12 {
    min-height: 580px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.hero-slider-descr {
    position: relative;
    z-index: 10;
    padding: 20px 0
}

@media all and (max-width: 768px) {
    .hero-slider-descr {
        text-align: center;
        padding-left: 70px;
        padding-right: 70px
    }

    .hero-slider-descr:after {
        content: '';
        z-index: -1;
        position: absolute;
        display: block;
        width: 100vw;
        margin-left: -50vw;
        left: 50%;
        top: 0;
        bottom: 0;
        background-color: rgba(255, 255, 255, 0.8)
    }
}

.hero-slider-action {
    display: flex
}

.hero-slider-action a {
    margin-right: 20px
}

@media all and (max-width: 768px) {
    .hero-slider-action a:first-child {
        position: absolute;
        bottom: -80px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        margin-right: 0;
        min-width: 220px
    }
}

@media all and (max-width: 480px) {
    .hero-slider-action a:first-child {
        bottom: -50px;
        min-width: 180px
    }
}

@media all and (max-width: 768px) {
    .hero-slider-action a:last-child {
        display: block;
        text-align: center;
        color: #585D5E;
        background: none;
        padding: 0;
        border: none;
        width: 100%;
        margin-right: 0;
        text-decoration: underline;
        text-transform: capitalize;
        height: unset;
        line-height: 1
    }
}

.hero-slider-slick {
    display: none
}

.hero-slider .slick-arrow-prev {
    left: 0;
    right: unset
}

.hero-slider .slick-arrow {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.quick-links {
    padding: 15px 0;
    background-color: #4e5154
}

.quick-links-icon {
    width: 20px;
    height: 20px;
    display: flex
}

.quick-links-icon img {
    margin: auto
}

.quick-links ul {
    display: flex;
    padding: 0;
    margin: 0;
    justify-content: space-between
}

.quick-links ul li {
    list-style: none
}

.quick-links ul li a {
    display: flex;
    align-items: center;
    color: #fff;
    font: 500 normal 1rem/1.2 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-decoration: none
}

.quick-links ul li a span {
    margin-left: 10px
}

@media all and (max-width: 768px) {
    .quick-links ul li a span {
        display: none
    }
}

@media only screen and (min-width: 600px) {
    .hero-slider p {
        width: 46%
    }

    p {
        font-size: 0.975rem;
        line-height: 1.7
    }

    .page-section a {
        font-size: 0.975rem !important
    }
}

.hero-slider .slick-arrow {
    top: 20% !important
}

.key-facts {
    padding-bottom: 50px
}

.key-facts-list ul {
    padding: 0;
    margin: 0 -15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start
}

@media all and (max-width: 768px) {
    .key-facts-list ul {
        max-width: calc(100% - 60px);
        width: 100%;
        margin: 0 auto
    }
}

.key-facts-list ul li {
    width: calc(33.33% - 30px);
    list-style: none;
    margin: 0 15px 15px
}

@media all and (max-width: 1200px) {
    .key-facts-list ul li {
        width: calc(50% - 30px)
    }
}

@media all and (max-width: 768px) {
    .key-facts-list ul li {
        width: 100%;
        margin: 0 0 15px
    }
}

.key-facts-list ul li span {
    display: flex;
    align-items: center;
    font: 500 normal 1.2rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-decoration: none;
    color: #606060
}

.key-facts-icon {
    width: 44px;
    height: 44px;
    margin-right: 10px;
    overflow: hidden;
    position: relative
}

.key-facts-icon img {
    margin: auto
}

.key-facts h2 {
    text-transform: none;
    color: #585D5E;
    letter-spacing: unset;
    font-weight: bold;
    font-size: 1.35rem;
    margin-bottom: 0
}

.key-facts hr {
    margin-top: 15px !important
}

.hero-slider + .key-facts, .hero + .key-facts, .quick-links + .key-facts {
    margin-top: 60px
}

.practitioner {
    display: flex;
    min-height: 100vh
}

@media all and (max-width: 768px) {
    .practitioner {
        flex-direction: column;
        min-height: unset
    }
}

.practitioner > * {
    flex: 1 50%;
    width: 50%
}

@media all and (max-width: 768px) {
    .practitioner > * {
        width: 100%;
        flex-basis: 100%
    }
}

.practitioner-photo {
    position: relative;
    overflow: hidden
}

@media all and (max-width: 768px) {
    .practitioner-photo {
        position: relative;
        height: 0;
        padding-bottom: 117%
    }
}

.practitioner-content {
    display: flex;
    background-color: #bebebe;
    box-sizing: border-box;
    padding: 0 160px 0 75px
}

@media all and (max-width: 1500px) {
    .practitioner-content {
        padding: 0 40px 0
    }
}

@media all and (max-width: 768px) {
    .practitioner-content {
        text-align: center;
        padding-top: 50px;
        padding-bottom: 50px
    }
}

.practitioner-descr {
    margin: 30px auto 0;
}

@media all and (max-width: 768px) {
    .practitioner-descr {
        -webkit-transform: none;
        transform: none
    }
}

.practitioner-descr p a {
    color: inherit
}

.practitioner-descr p a:hover {
    cursor: pointer;
    color: #585D5E
}

.practitioner-descr hr {
    margin-left: 0
}

@media all and (max-width: 768px) {
    .practitioner-descr hr {
        margin-left: auto
    }
}

.practitioner-info textarea, .practitioner-info input {
    width: 100%
}

.practitioner-info-wraper {
    display: flex;
    width: 100%
}

@media all and (max-width: 1024px) {
    .practitioner-info-wraper {
        flex-direction: column
    }

    .practitioner-info-wraper.revert {
        flex-direction: column-reverse
    }
}

.practitioner-info-wraper > * {
    flex: 1 50%;
    width: 50%;
    box-sizing: border-box;
    padding: 60px 70px
}

@media all and (max-width: 1500px) {
    .practitioner-info-wraper > * {
        padding: 50px 40px
    }
}

@media all and (max-width: 1024px) {
    .practitioner-info-wraper > * {
        flex-basis: 100%;
        width: 100%
    }
}

@media all and (max-width: 480px) {
    .practitioner-info-wraper > * {
        padding: 40px 20px
    }
}

.practitioner-info-qual {
    background-color: #585D5E
}

.practitioner-info-qual *:not(select):not(option):not(input):not(textarea) {
    color: #fff
}

.practitioner-info-qual h3 {
    margin-bottom: 25px
}

@media all and (max-width: 480px) {
    .practitioner-info-qual h3 {
        margin-bottom: 0
    }

    .practitioner-info-qual h1, .practitioner-info-qual h2, .practitioner-info-qual h3, .practitioner-info-qual h4, .practitioner-info-qual h5, .practitioner-info-qual h6 {
        text-align: left
    }
}

.practitioner-info-qual p {
    margin-bottom: 40px
}

@media all and (max-width: 480px) {
    .practitioner-info-qual p {
        margin-bottom: 20px
    }
}

.practitioner-info-qual p:last-child {
    margin-bottom: 0
}

.practitioner-info-offers {
    width: 100%
}

.practitioner-info-offers h3, .practitioner-info-offers h4, .practitioner-info-offers h5, .practitioner-info-offers h6 {
    margin-bottom: 1rem
}

@media all and (max-width: 480px) {
    .practitioner-info-offers h3, .practitioner-info-offers h4, .practitioner-info-offers h5, .practitioner-info-offers h6 {
        text-align: left
    }
}

.practitioner-info-offers ul:not(.worktime) {
    list-style: none;
    padding: 0;
    margin: 0 0 50px;
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2
}

.practitioner-info-offers ul:not(.worktime):last-child {
    margin-bottom: 0
}

.practitioner-info-offers ul:not(.worktime) li {
    display: inline-block;
    margin-bottom: 5px;
    width: 100%
}

.practitioner-info-offers ul:not(.worktime) li a {
    font: normal normal .875rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E
}

@media all and (max-width: 480px) {
    .practitioner-info-offers ul:not(.worktime) li a {
        font-size: .7rem
    }
}

.hamburger span {
    width: 25px;
    height: 3px;
    background-color: #ecf0f1;
    display: block;
    margin: 3px 0;
    transition: all 0.3s ease-in-out
}

.hamburger:hover {
    cursor: pointer
}

.hamburger.is-active span:nth-child(2) {
    opacity: 0
}

.hamburger.is-active span:nth-child(1) {
    -webkit-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg)
}

.hamburger.is-active span:nth-child(3) {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-6px) rotate(-45deg)
}

.collage-carousel {
    background-color: #585D5E;
    position: relative
}

.collage-carousel .slick-slide > div {
    font-size: 0
}

.collage-carousel-bar {
    height: 60px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 180px;
    padding-left: 20px
}

@media all and (max-width: 480px) {
    .collage-carousel-bar {
        height: 50px;
        padding-right: 130px
    }
}

.collage-carousel-caption {
    font: normal normal 1.2rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #fff;
    text-transform: uppercase
}

@media all and (max-width: 480px) {
    .collage-carousel-caption {
        font-size: .875rem;
        font-weight: normal
    }
}

.collage-carousel-dots {
    display: none
}

.collage-carousel-item {
    font-size: 0
}

.collage-carousel-image {
    width: calc(100% / 3);
    display: inline-block;
    height: 0;
    background-color: #fff;
    padding-bottom: calc(100% / 6);
    position: relative;
    overflow: hidden
}

.collage-carousel-image img {
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    width: 100%;
    height: 100%
}

@media all and (max-width: 1024px) {
    .collage-carousel-image {
        width: calc(100% / 2);
        padding-bottom: calc(100% / 4)
    }

    .collage-carousel-image:last-child {
        display: none
    }
}

@media all and (max-width: 480px) {
    .collage-carousel-image {
        width: 100%;
        padding-bottom: calc(100% / 2)
    }

    .collage-carousel-image:nth-child(2) {
        display: none
    }
}

.sidebar-products {
    width: 100%;
    position: relative;
    margin-bottom: 40px
}

.sidebar-products-carousel {
    width: 100%;
    position: relative;
    padding-top: 50px
}

.sidebar-products-carousel .btn-primary {
    display: block;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

@media all and (max-width: 1024px) {
    .sidebar-products-carousel .btn-primary {
        left: 10px;
        right: 10px;
        width: unset
    }
}

@media all and (max-width: 480px) {
    .sidebar-products-carousel .btn-primary {
        left: 5px;
        right: 5px
    }
}

.sidebar-products .product-item {
    position: relative;
    padding-bottom: 50px
}

@media all and (max-width: 480px) {
    .sidebar-products .product-item {
        padding-bottom: 20px
    }
}

.product-image {
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 76%;
    position: relative
}

a.product-title {
    font: bold normal 1.05rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a;
    width: 90%;
    margin: 0 auto;
    display: block;
    text-align: center;
    margin-bottom: 1.65rem;
    text-decoration: none;
    transition: 0.2s ease-in-out
}

a.product-title span {
    display: block
}

a.product-title:hover {
    color: #585D5E
}

@media all and (max-width: 480px) {
    a.product-title {
        font-size: 1rem
    }
}

@media all and (max-width: 1024px) {
    .product-item {
        padding-left: 10px;
        padding-right: 10px
    }
}

@media all and (max-width: 480px) {
    .product-item {
        padding-left: 5px;
        padding-right: 5px
    }
}

.hover-image-carousel {
    position: relative
}

.hover-image-carousel .slick-slide > div {
    font-size: 0
}

.hover-image-carousel .hover-image {
    display: block
}

.hover-image-carousel.vertical .hover-image {
    padding-bottom: 137%
}

.hover-image-carousel.wide .hover-image {
    padding-bottom: 67%
}

.hover-image-carousel.square .hover-image {
    padding-bottom: 100%
}

.testimonials-carousel {
    position: relative
}

.testimonials-carousel-bar {
    position: absolute;
    left: 0;
    right: 0;
    height: 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 180px;
    background-color: #585D5E
}

@media all and (max-width: 1024px) {
    .testimonials-carousel-bar {
        top: calc(100vw - 17px);
        z-index: 10
    }
}

@media all and (max-width: 480px) {
    .testimonials-carousel-bar {
        height: 50px;
        padding-right: 130px
    }
}

@media all and (max-width: 1024px) {
    .testimonials-carousel .slick-arrow {
        top: calc(100vw - 17px)
    }
}

.testimonials-carousel-caption {
    font: normal normal 1.2rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #fff;
    text-transform: uppercase
}

@media all and (max-width: 480px) {
    .testimonials-carousel-caption {
        font-size: .875rem;
        font-weight: normal
    }
}

.testimonials-carousel-caption {
    position: absolute;
    left: calc(50% + 50px)
}

@media all and (max-width: 1024px) {
    .testimonials-carousel-caption {
        left: 50px
    }
}

@media all and (max-width: 480px) {
    .testimonials-carousel-caption {
        left: 30px
    }
}

.testimonials-carousel-dots {
    display: none
}

.testimonials-carousel-item {
    display: flex
}

@media all and (max-width: 1024px) {
    .testimonials-carousel-item {
        flex-direction: column
    }
}

.testimonials-carousel-content, .testimonials-carousel-img {
    width: 50%
}

@media all and (max-width: 1024px) {
    .testimonials-carousel-content, .testimonials-carousel-img {
        width: 100%
    }
}

.testimonials-carousel-img .wraper {
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: relative;
    background-color: #fafafa
}

.testimonials-carousel-slick > div {
    font-size: 0
}

.testimonials-carousel-content {
    padding: 75px 50px 50px
}

.testimonials-carousel-content .btn-primary {
    padding-left: 140px;
    padding-right: 140px
}

@media all and (max-width: 1500px) {
    .testimonials-carousel-content .btn-primary {
        padding-left: 70px;
        padding-right: 70px
    }
}

@media all and (max-width: 768px) {
    .testimonials-carousel-content .btn-primary {
        padding-left: 15px;
        padding-right: 15px
    }
}

@media all and (max-width: 480px) {
    .testimonials-carousel-content {
        padding: 55px 20px 30px
    }
}

.products {
    position: relative;
    padding-top: 75px;
    position: relative;
    margin-bottom: 100px
}

.products .product-item {
    padding: 0 10px;
    position: relative
}

.products-carousel {
    display: none
}

.slick-initialized {
    display: block !important
}

.milestone-carousel h2 {
    text-align: center
}

.milestone-carousel .year {
    padding-top: 80px;
    border-top: 5px solid #585D5E;
    border-left: 3px solid #585D5E;
    position: relative
}

@media all and (max-width: 480px) {
    .milestone-carousel .year {
        padding-top: 0;
        border: none
    }
}

.milestone-carousel .year:hover {
    cursor: pointer
}

.milestone-carousel .year-number {
    color: #585D5E;
    text-transform: uppercase;
    margin-left: 5px;
    letter-spacing: .1rem;
    font: normal normal .875rem/24px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    transition: 0.2s ease-in-out
}

@media all and (max-width: 480px) {
    .milestone-carousel .year-number {
        letter-spacing: 0;
        font-size: .7rem
    }
}

.milestone-carousel .year:before {
    content: "";
    position: absolute;
    width: 28px;
    height: 28px;
    margin: -14px 0 0 -15px;
    border-radius: 50%;
    background-color: #a8a8a8;
    top: 0;
    left: 0;
    border: 4px solid #fff;
    transition: 0.2s ease-in-out
}

@media all and (max-width: 480px) {
    .milestone-carousel .year:before {
        display: none
    }
}

.milestone-carousel .slick-current .year-number {
    font-size: 1rem
}

@media all and (max-width: 480px) {
    .milestone-carousel .slick-current .year-number {
        font-size: .875rem
    }
}

.milestone-carousel .slick-current .year:before {
    background-color: #585D5E
}

.milestone-carousel-nav {
    position: relative;
    padding: 0 200px;
    overflow: visible;
    margin-bottom: 70px
}

@media all and (max-width: 1024px) {
    .milestone-carousel-nav {
        padding: 0 100px
    }
}

@media all and (max-width: 480px) {
    .milestone-carousel-nav {
        margin-bottom: 30px;
        padding: 0 70px
    }
}

.milestone-carousel-nav .slick-track {
    padding: 15px 0 0 15px
}

.milestone-carousel-content {
    margin-bottom: 130px
}

@media all and (max-width: 480px) {
    .milestone-carousel-content {
        margin-bottom: 40px
    }

    .milestone-carousel-content h2, .milestone-carousel-content h3, .milestone-carousel-content h4, .milestone-carousel-content h5, .milestone-carousel-content h6 {
        text-align: center
    }
}

.milestone-carousel-item {
    display: flex
}

@media all and (max-width: 480px) {
    .milestone-carousel-item {
        flex-direction: column-reverse
    }
}

.milestone-carousel-image {
    position: relative;
    width: 560px;
    height: 560px
}

@media all and (max-width: 1200px) {
    .milestone-carousel-image {
        width: 300px;
        height: 300px
    }
}

@media all and (max-width: 768px) {
    .milestone-carousel-image {
        width: 30%;
        height: 0;
        padding-bottom: 30%
    }
}

@media all and (max-width: 480px) {
    .milestone-carousel-image {
        width: 100%;
        padding-bottom: 100%
    }
}

.milestone-carousel-text {
    padding: 55px 65px;
    width: calc(100% - 560px)
}

@media all and (max-width: 1200px) {
    .milestone-carousel-text {
        width: calc(100% - 300px)
    }
}

@media all and (max-width: 768px) {
    .milestone-carousel-text {
        padding: 30px;
        width: 70%
    }
}

@media all and (max-width: 480px) {
    .milestone-carousel-text {
        width: 100%;
        padding: 20px
    }
}

.milestone-carousel .year.big:before {
    width: 38px;
    height: 38px;
    margin: -21px 0 0 -21px
}

.milestone-carousel .slick-arrow-prev {
    left: 0
}

.milestone-carousel .slick-arrow-next {
    right: 0
}

.brands-carousel {
    position: relative
}

.brands-carousel h2 {
    text-align: center
}

.brands-carousel-item {
    position: relative;
    background-color: olive;
    background: #e6e6e6;
    background: linear-gradient(90deg, #e6e6e6 0%, #f0f0f0 5%, #f9f9f9 25%, #f9f9f9 75%, #f0f0f0 95%, #e6e6e6 100%);
    border-right: 1px solid #d1d1d3;
    padding: 230px 45px 80px;
    box-sizing: border-box;
    width: 100%;
    max-height: 630px
}

@media all and (max-width: 1200px) {
    .brands-carousel-item {
        padding: 150px 30px 30px;
        max-height: unset
    }
}

@media all and (max-width: 480px) {
    .brands-carousel-item {
        padding: 150px 20px 30px
    }
}

.brands-carousel-content {
    max-height: 315px;
    width: 100%
}

.brands-carousel-content p:first-child {
    margin-top: 0
}

.brands-carousel .logo-brand {
    position: absolute;
    max-width: 250px;
    width: 100%;
    height: 65px;
    top: 100px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media all and (max-width: 1500px) {
    .brands-carousel .logo-brand {
        max-width: calc(100% - 120px)
    }
}

@media all and (max-width: 1200px) {
    .brands-carousel .logo-brand {
        max-width: calc(100% - 150px);
        top: 50px
    }
}

.scrollbar-track {
    width: 10px;
    z-index: 1;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    overflow: hidden
}

.scrollbar-track:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    left: 4px;
    width: 2px;
    background-color: #4c4d4f
}

.scrollbar-scrollbar {
    width: 10px;
    background-color: #4c4d4f;
    z-index: 10
}

.simplebar-content-wrapper {
    padding-right: 20px
}

.magazines-carousel {
    position: relative
}

.magazines-carousel-item {
    width: 100%;
    height: 0;
    padding-bottom: 135%;
    background-color: #fafafa;
    position: relative;
    overflow: hidden
}

.magazines-carousel-item .cover {
    z-index: 5;
    -webkit-transform: none;
    transform: none;
    transition: 0.2s ease-in-out
}

.magazines-carousel-item:hover .cover {
    cursor: pointer;
    -webkit-transform: translateX(-50vw);
    transform: translateX(-50vw)
}

.magazines-carousel-descr {
    position: absolute;
    padding: 80px 50px 50px;
    text-align: center;
    z-index: 1
}

@media all and (max-width: 1500px) {
    .magazines-carousel-descr {
        padding: 40px 30px 30px
    }
}

@media all and (max-width: 480px) {
    .magazines-carousel-descr {
        padding: 20px
    }
}

.magazines-carousel-descr img {
    display: block;
    padding: 0 20px;
    width: 100%;
    max-width: 240px;
    height: auto;
    margin: 0 auto 50px
}

@media all and (max-width: 1500px) {
    .magazines-carousel-descr img {
        margin-bottom: 20px
    }
}

.magazines-carousel-descr p {
    margin: 0;
    text-transform: uppercase;
    font: normal normal .6rem/50px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #575d5e;
    max-height: calc(50px * 6);
    overflow: hidden
}

@media all and (max-width: 1500px) {
    .magazines-carousel-descr p {
        line-height: 40px;
        max-height: calc(40px * 6)
    }
}

@media all and (max-width: 480px) {
    .magazines-carousel-descr p {
        line-height: 20px;
        max-height: calc(20px * 6)
    }
}

.magazines-carousel-slick {
    position: relative;
    padding-top: 75px
}

@media all and (max-width: 480px) {
    .magazines-carousel-slick {
        padding-top: 50px
    }
}

.magazines-carousel-slick > div {
    font-size: 0
}

.magazines-carousel h2 {
    text-align: center;
    margin: 0
}

@media all and (max-width: 768px) {
    .magazines-carousel h2 {
        margin-bottom: 20px
    }
}

#welcome-popup {
    width: 100%;
    max-width: 520px
}

#welcome-popup .main-header-logo {
    margin: 0 auto 30px
}

#welcome-popup h2, #welcome-popup h2, #welcome-popup h4, #welcome-popup h5, #welcome-popup h6 {
    text-align: center
}

#welcome-popup .btn-primary {
    margin: 40px auto 0;
    line-height: 1.4;
    height: unset;
    padding: 15px 15px
}

@media all and (max-width: 480px) {
    #welcome-popup .btn-primary {
        padding: 5px 15px
    }
}

@media all and (max-width: 480px) {
    #welcome-popup {
        padding: 30px
    }
}

.fancybox-slide--html .fancybox-close-small svg path {
    transition: 0.2s ease-in-out
}

.fancybox-slide--html .fancybox-close-small:hover {
    cursor: pointer
}

.fancybox-slide--html .fancybox-close-small:hover svg path {
    fill: #585D5E !important
}

.list-logos {
    background-color: #bebebe;
    padding: 5px 0
}

.list-logos-items {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    width: 100%
}

.list-logos-item {
    flex: 1 20%;
    padding: 20px;
    text-align: center
}

.list-logos-item img {
    max-width: 100%;
    width: unset;
    max-height: 100px
}

@media all and (max-width: 768px) {
    .list-logos-item:nth-child(2), .list-logos-item:nth-child(4) {
        display: none
    }
}

@media all and (max-width: 768px) {
    .list-logos-item {
        flex: 1 33%
    }
}

.list-social-links {
    list-style: none;
    display: flex;
    justify-content: center;
    padding: 0
}

.list-social-links li {
    display: flex;
    width: 50px;
    height: 50px;
    text-align: center;
    margin: 0 30px
}

.list-social-links li a {
    width: 100%;
    line-height: 70px;
    border-radius: 50%;
    border: 2px solid #565d5e;
    color: #565d5e;
    font-size: 1.4rem;
    transition: 0.2s ease-in-out;
    position: relative;
}

.list-social-links li a:hover {
    cursor: pointer;
    border-color: #585D5E;
    color: #585D5E
}

@media all and (max-width: 1500px) {
    .list-social-links li {
        margin: 0 10px
    }
}

@media all and (max-width: 480px) {
    .list-social-links {
        justify-content: space-between
    }

    .list-social-links li {
        height: 50px;
        width: 50px
    }

    .list-social-links li a {
        line-height: 50px;
        font-size: .9rem
    }
}

.list-links {
    list-style: none;
    padding: 0;
    margin: 1rem 0 2rem 0
}

.list-links li {
    margin-bottom: 6px
}

.list-links li a {
    font: normal normal 1.05rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E
}

@media all and (max-width: 480px) {
    .list-links li a {
        font-size: .7rem
    }
}

.block-consultation {
    padding: 40px 0;
    position: relative;
    background-color: #fafafa;
    overflow: hidden
}

.block-consultation-form {
    position: relative;
    background-color: rgba(88, 93, 94, 0.7);
    z-index: 1;
    width: 100%;
    max-width: calc(100% - 140px);
    margin: 0 auto;
    padding: 50px;
    display: flex
}

.block-consultation h2 a, .block-consultation h3 a, .block-consultation h4 a, .block-consultation h5 a, .block-consultation h6 a {
    white-space: nowrap
}

.block-consultation-descr {
    width: 50%
}

.block-consultation-descr * {
    color: #fff
}

.block-consultation-descr .qr {
    width: 200px;
    height: auto
}

@media all and (max-width: 480px) {
    .block-consultation-descr .qr {
        display: none
    }
}

.block-consultation-fields {
    margin-left: 50px;
    width: 50%
}

.block-consultation-fields form input, .block-consultation-fields form textarea, .block-consultation-fields form button {
    width: 100%
}

@media all and (max-width: 1024px) {
    .block-consultation-form {
        flex-direction: column;
        max-width: 100%;
        padding: 1.7rem
    }

    .block-consultation-fields, .block-consultation-descr {
        width: 100%
    }

    .block-consultation-descr {
        margin-bottom: 1rem
    }

    .block-consultation-fields {
        margin-left: 0
    }
}

@media all and (max-width: 480px) {
    .block-consultation {
        padding: 40px 0
    }

    .block-consultation-form {
        width: calc(100% + 20px);
        max-width: calc(100% + 20px);
        margin-left: -10px
    }
}

.mobile-qr-text {
    display: none
}

@media all and (max-width: 480px) {
    .mobile-qr-text {
        display: block
    }
}

.faq {
    margin: 1.25rem 0 2.5rem
}

.faq button {
    position: relative;
    display: flex;
    text-align: left;
    align-items: center;
    width: 100%;
    padding: 10px 0;
    border: none;
    background: none;
    outline: none
}

@media all and (max-width: 480px) {
    .faq button {
        padding: 5px 0
    }
}

.faq button:hover, .faq button:focus {
    cursor: pointer
}

.faq button:hover::after, .faq button:focus::after {
    cursor: pointer
}

.faq button .faq-title {
    padding-left: 20px;
    width: calc(100% - 45px);
    font: bold normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #555d5f;
    transition: 0.2s ease-in-out;
    text-transform: uppercase
}

@media all and (max-width: 480px) {
    .faq button .faq-title {
        font-size: .7rem
    }
}

.faq button .icon {
    display: block;
    width: 25px;
    height: 25px;
    border: 2px solid #1b1b1b;
    position: relative;
    transition: 0.2s ease-in-out
}

.faq button .icon::before, .faq button .icon::after {
    content: '';
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: #1b1b1b;
    transition: 0.2s ease-in-out
}

.faq button .icon::before {
    width: 10px;
    height: 2px
}

.faq button .icon::after {
    width: 2px;
    height: 10px
}

.faq button:hover {
    cursor: pointer
}

.faq button:hover .faq-title {
    color: #585D5E
}

.faq button:hover .icon {
    border-color: #585D5E
}

.faq button:hover .icon::before, .faq button:hover .icon::after {
    background-color: #585D5E
}

.faq button[aria-expanded='true'] {
    color: #007bff
}

.faq button[aria-expanded='true'] .icon::after {
    width: 0
}

.faq button[aria-expanded='true'] + .faq-content {
    opacity: 1;
    max-height: 50rem;
    transition: all 200ms linear;
    will-change: opacity, max-height
}

.faq-content {
    padding: 1px;
    padding-left: 50px;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity 200ms linear, max-height 200ms linear;
    will-change: opacity, max-height
}

.faq-content p {
    font-size: .875rem;
    margin: 1em 0
}

.faq-content p:last-child {
    margin: .5rem 0
}

@media all and (max-width: 480px) {
    .faq-content p {
        font-size: .7rem
    }
}

@media all and (max-width: 480px) {
    .faq {
        margin: 1rem 0 1.5rem
    }
}

.page-section .faq p:last-child {
    margin-bottom: .5rem
}

.menu-plates {
    display: flex
}

.menu-plates .hover-image-caption {
    text-decoration: none
}

@media all and (max-width: 1024px) {
    .menu-plates {
        flex-wrap: wrap
    }
}

.menu-plates-item {
    flex: 1 1 25%
}

@media all and (max-width: 1024px) {
    .menu-plates-item {
        flex-basis: 50%
    }
}

@media all and (max-width: 480px) {
    .menu-plates-item {
        flex-basis: 100%
    }
}

.menu-plates .hover-image:hover .hover-image-text {
    padding-top: 30px;
    padding-bottom: 0
}

.menu-plates .hover-image:hover .hover-image-text .hover-image-caption {
    z-index: 10
}

.menu-plates ul {
    padding: 0;
    margin: 0;
    list-style: none
}

.menu-plates ul li {
    margin-bottom: 5px
}

.menu-plates ul li a {
    color: #fff;
    font: normal normal 1.05rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-decoration: none
}

@media all and (max-width: 480px) {
    .menu-plates ul li a {
        font-size: .9rem
    }
}

.trustpilot {
    margin: 2rem 0 5rem
}

.trustpilot-embed {
    margin-bottom: 2.5rem
}

.glossary {
    margin: 50px 0 100px 0;
    min-height: 400px
}

.glossary-nav {
    margin-bottom: 50px
}

.glossary-nav ul {
    list-style: none;
    padding: 0;
    font-size: 0;
    text-align: center
}

@media all and (max-width: 1500px) {
    .glossary-nav ul {
        text-align: left
    }
}

.glossary-nav ul li {
    width: 80px;
    width: 80px;
    margin: 0 5px 10px;
    background-color: #bebebe;
    text-align: center;
    font: normal normal 1.85rem/80px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #565d5e;
    display: inline-block;
    transition: 0.2s ease-in-out
}

.glossary-nav ul li:hover {
    cursor: pointer;
    background-color: #585D5E;
    color: #fff
}

.glossary-nav ul li.current {
    background-color: #585D5E;
    color: #fff
}

.glossary-nav ul li.current:hover {
    cursor: default
}

.glossary-nav ul li.empty {
    background-color: #797979
}

.glossary-nav ul li.empty:hover {
    cursor: default;
    color: #565d5e
}

@media all and (max-width: 768px) {
    .glossary-nav ul li {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: .9rem
    }
}

.glossary-content-title {
    padding: 0 20px;
    width: 100%;
    max-width: calc(100% - 140px);
    margin: 0 auto
}

.glossary-content-title h4 {
    margin-bottom: 10px
}

@media all and (max-width: 1500px) {
    .glossary-content-title {
        max-width: calc(100% - 70px)
    }
}

.glossary-content-item {
    overflow: hidden;
    max-height: 0;
    transition: 0.2s ease-in-out
}

.glossary-content-item.current {
    max-height: 1000px
}

.glossary .three-columns {
    margin-top: 0;
    margin-bottom: 0
}

.glossary .three-columns-item {
    margin-bottom: 0
}

.glossary .three-columns-item > p {
    margin-bottom: 50px
}

@media all and (max-width: 1200px) {
    .glossary .three-columns-item {
        width: calc(33.3% - 40px)
    }

    .glossary .three-columns-item:last-child {
        width: calc(33.3% - 40px)
    }
}

@media all and (max-width: 1024px) {
    .glossary .three-columns-item {
        width: 100%
    }

    .glossary .three-columns-item:last-child {
        width: 100%
    }
}

.glossary .faq {
    margin: 0
}

.box {
    background-color: olive;
    height: 200px
}

.card-big {
    margin-bottom: 90px
}

@media all and (max-width: 480px) {
    .card-big {
        margin-bottom: 40px
    }
}

.card-big-image {
    width: 100%;
    height: 0;
    padding-bottom: 37%;
    overflow: hidden;
    position: relative;
    margin-bottom: 55px
}

@media all and (max-width: 768px) {
    .card-big-image {
        padding-bottom: 66%
    }
}

.card-big-descr {
    text-align: center
}

.card-big-descr h3 {
    margin-bottom: 40px
}

.card-big-descr p {
    margin-bottom: 45px
}

.card-big-descr .btn-primary {
    display: inline-block
}

@media all and (max-width: 480px) {
    .card-big-descr .btn-primary {
        display: table
    }
}

.card {
    margin-bottom: 70px;
    padding: 0 15px
}

@media all and (max-width: 1024px) {
    .card {
        padding: 0
    }
}

@media all and (max-width: 480px) {
    .card {
        margin-bottom: 40px
    }
}

.card-image {
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    overflow: hidden;
    position: relative;
    background-color: #bebebe;
    margin-bottom: 25px
}

@media all and (max-width: 480px) {
    .card-image {
        width: calc(100% + 64px);
        margin-left: -32px
    }
}

.card-descr {
    padding: 0 25px 55px;
    min-height: 270px;
    position: relative
}

.card-descr h3 {
    margin-bottom: 20px;
    font-size: 1.2rem;
    line-height: 34px;
    overflow: hidden;
    line-height: 34px;
    max-height: 102px;
    text-align: left;
    margin-right: -1em;
    padding-right: 1em
}

@media all and (max-width: 768px) {
    .card-descr h3 {
        max-height: unset;
        line-height: 1.5
    }
}

.card-descr p {
    margin-bottom: 40px;
    overflow: hidden;
    line-height: 24px;
    max-height: 72px;
    text-align: left;
    margin-right: -1em;
    padding-right: 1em
}

@media all and (max-width: 768px) {
    .card-descr p {
        max-height: unset
    }
}

.card-descr .btn-primary {
    position: absolute;
    bottom: 0;
    left: 25px;
    right: 25px;
    display: block
}

@media all and (max-width: 480px) {
    .card-descr .btn-primary {
        display: table;
        position: relative;
        left: unset;
        right: unset
    }
}

@media all and (max-width: 768px) {
    .card-descr {
        min-height: unset
    }
}

@media all and (max-width: 480px) {
    .card-descr {
        padding: 0
    }
}

.cards *[class^=col-]:last-child .card {
    margin-bottom: 0
}

.card-search {
    margin-bottom: 50px
}

.card-search h3 {
    margin: 0 0 15px 0
}

.card-search-link {
    word-break: break-word
}

.card-search .excerpt p {
    margin-bottom: 15px
}

.card-search .excerpt p:first-child {
    margin-top: 0
}

#google-maps {
    width: 100%;
    height: 970px;
    overflow: hidden;
    position: relative
}

#google-maps-wrapper {
    width: 100%;
    height: 100%
}

@media all and (max-width: 480px) {
    #google-maps {
        height: 400px
    }
}

#google-maps iframe {
    width: 100%;
    height: 100%;
    position: absolute
}

#google-maps iframe {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=http://www.w3.org/2000/svg><filter id=grayscale><feColorMatrix type=matrix values=0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0/></filter></svg>#grayscale");
    -webkit-filter: grayscale(100%)
}

.google-maps-popup {
    background-color: #fff;
    position: absolute;
    left: 40px;
    top: 40px;
    bottom: 40px;
    width: 100%;
    max-width: 510px;
    z-index: 10;
    padding: 40px;
    box-sizing: border-box
}

.google-maps-popup h3 {
    text-align: center;
    margin-bottom: 30px
}

.google-maps-location span {
    margin-left: 10px;
    display: block;
    width: 36px;
    height: 36px;
    border: 1px solid #e9e9e9;
    display: flex
}

.google-maps-location span:hover {
    cursor: pointer
}

.google-maps-location span:hover svg {
    fill: #585D5E
}

.google-maps-location span svg {
    margin: auto;
    width: 25px;
    height: 25px;
    fill: #565d5e;
    transition: 0.2s ease-in-out
}

.google-maps-list-wraper {
    max-height: calc(100% - 200px)
}

.google-maps-search {
    width: calc(100% - 46px);
    position: relative
}

.google-maps-search input {
    padding: 6px 16px;
    width: 100%;
    margin-bottom: 9px
}

.google-maps-search .cross {
    position: absolute;
    right: 15px;
    top: 13px;
    display: block;
    width: 10px;
    height: 10px;
    z-index: 10;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.google-maps-search .cross:hover {
    cursor: pointer
}

.google-maps-search .cross:hover:after, .google-maps-search .cross:hover:before {
    background-color: #585D5E
}

.google-maps-search .cross:after, .google-maps-search .cross:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: #565d5e;
    transition: 0.2s ease-in-out
}

.google-maps-search .cross:after {
    width: 100%;
    height: 2px
}

.google-maps-search .cross:before {
    width: 2px;
    height: 100%
}

.google-maps-controls {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    position: relative
}

@media all and (max-width: 480px) {
    .google-maps-controls input {
        padding: 9px 16px;
        margin-bottom: 0
    }
}

.google-maps-item {
    position: relative;
    margin-bottom: 30px;
    padding-left: 50px
}

.google-maps-item:hover {
    cursor: pointer
}

.google-maps-item:hover h6 {
    color: #585D5E
}

.google-maps-item:hover .num {
    color: #585D5E
}

.google-maps-item h6 {
    margin: 0 0 5px
}

.google-maps-item .num {
    font: bold normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    position: absolute;
    left: 0;
    top: 2px
}

.google-maps-item p {
    margin-top: 0
}

.google-maps-item > a {
    font: normal normal .8rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E;
    text-decoration: underline
}

.google-maps .simplebar-scrollbar:before {
    background-color: #585D5E;
    border-radius: 0;
    opacity: 1
}

.google-maps .simplebar-scrollbar.simplebar-visible:before {
    opacity: 1
}

.google-maps .gm-style .gm-style-iw-c {
    border-radius: 0;
    padding: 25px 25px 15px !important;
    max-width: 400px !important;
    width: 100%
}

@media all and (max-width: 480px) {
    .google-maps .gm-style .gm-style-iw-c {
        max-width: calc(100vw - 40px) !important
    }
}

.google-maps .gm-style .gm-style-iw-c h6 {
    margin-bottom: 10px
}

.google-maps .gm-style .gm-style-iw-c p {
    margin-top: 0
}

.google-maps .gm-style .gm-style-iw-c a {
    font: normal normal .8rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E;
    text-decoration: underline
}

.google-maps-dynamic-wraper {
    position: absolute;
    background-color: #fff;
    z-index: 1;
    top: 50px;
    left: 0;
    right: 0;
    box-shadow: 0px 9px 25px 0px rgba(0, 0, 0, 0.15);
    padding: 0 20px 0;
    max-height: 0;
    overflow: hidden;
    transition: 0.2s ease-in-out
}

.google-maps-dynamic-wraper.show {
    padding-top: 20px;
    padding-bottom: 20px;
    max-height: 800px;
    z-index: 10
}

.google-maps-dynamic-wraper .google-maps-item {
    display: flex;
    padding: 0;
    justify-content: flex-start;
    align-items: baseline;
    flex-wrap: nowrap;
    margin-bottom: 10px
}

.google-maps-dynamic-wraper .google-maps-item:last-child {
    margin: 0
}

.google-maps-dynamic-wraper .google-maps-item p {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin: 0
}

.google-maps-dynamic-wraper .google-maps-item:hover p {
    color: #585D5E
}

.google-maps-dynamic-wraper .google-maps-item .num {
    position: relative;
    top: unset;
    left: unset
}

.google-maps-dynamic-wraper .google-maps-item > * {
    margin-right: 10px
}

.google-maps-dynamic-wraper .google-maps-item > *:last-child {
    margin-right: 0
}

@media all and (max-width: 1024px) {
    .google-maps-popup {
        position: relative;
        padding: 0 20px 20px;
        left: unset;
        top: unset;
        bottom: unset;
        margin: 0 auto
    }

    .google-maps-list-wraper {
        display: none
    }

    .google-maps-controls {
        margin-bottom: 0
    }
}

@media all and (max-width: 480px) {
    .google-maps-popup {
        max-width: 100%
    }

    #google-maps {
        height: 500px
    }
}

.prospect {
    padding: 50px 0;
    text-align: center;
    margin: 0 auto;
    width: 100%;
    max-width: 600px
}

.prospect input, .prospect textarea {
    width: 100%
}

.main-header {
    padding: 0 20px 0 50px;
    height: 60px;
    position: fixed;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100;
    background: none;
    transition: 0.2s ease-in-out
}

@media all and (max-width: 1064px) {
    .main-header {
        padding: 0 50px
    }
}

.main-header .phone-consultation {
    display: flex;
    align-items: left
}

.main-header-colored-single, .main-header-colored {
    background-color: #585D5E
}

@media all and (max-width: 480px) {
    .main-header-colored-single, .main-header-colored {
        background-color: #565d5e
    }
}

.main-header-logo {
    width: 100%;
    max-width: 230px
}

@media all and (max-width: 768px) {
    .main-header-logo {
        max-width: 200px
    }
}

@media all and (max-width: 480px) {
    .main-header-logo {
        margin-bottom: -5px
    }
}

.main-header-hamburger {
    align-items: center;
    display: none
}

.main-header-hamburger:hover {
    cursor: pointer
}

.main-header-hamburger .label {
    margin-right: 20px;
    font: bold normal 1.1rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #fff;
    text-transform: uppercase
}

@media all and (max-width: 1024px) {
    .main-header-hamburger .label {
        display: none
    }
}

@media all and (max-width: 1064px) {
    .main-header-hamburger {
        display: flex
    }
}

@media all and (max-width: 480px) {
    .main-header-hamburger .label {
        display: none
    }
}

@media all and (max-width: 1500px) {
    .main-header-logo {
        max-width: 200px
    }
}

@media all and (max-width: 1064px) {
    .main-header > .phone-consultation {
        display: none
    }
}

@media all and (max-width: 480px) {
    .main-header {
        padding: 0 10px;
        height: 60px
    }

    .main-header-logo {
        max-width: 200px
    }
}

@media all and (max-width: 480px) {
    .logged-in .main-header {
        top: 0
    }
}

@media all and (min-width: 1065px) {
    .header-menu {
        position: absolute;
        width: 100%;
        margin-left: -50px;
        height: 53px;
        bottom: -53px;
        background-color: #585D5E;
        padding: 0 20px;
        display: flex;
        align-items: baseline
    }

    @media all and (max-width: 1064px) {
    }

    .header-menu .price-link {
        font: normal normal .875rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
        text-decoration: none;
        color: #575d5e;
        margin-top: -10px;
        display: block
    }

    .header-menu .price-link:hover {
        cursor: pointer
    }

    .header-menu .sub-menu {
        z-index: 10
    }

    .header-menu .menu-image {
        display: block;
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 55%;
        overflow: hidden;
        margin-bottom: 20px
    }

    .header-menu > ul {
        padding: 0;
        margin: 0;
        height: 100%;
        font-size: 0
    }

    .header-menu > ul > li {
        display: inline-block;
        background-color: #585D5E
    }

    .header-menu > ul > li > a {
        color: #fff;
        text-decoration: none;
        font: normal normal .875rem/53px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
        padding: 19px 40px;
        border-radius: 5px 5px 0 0;
        transition: 0.2s ease-in-out;
        position: relative
    }

    @media all and (max-width: 1500px) {
        .header-menu > ul > li > a {
            padding-left: 15px;
            padding-right: 15px
        }
    }

    .header-menu > ul > li > .sub-menu {
        max-height: 0;
        overflow: hidden;
        position: absolute;
        display: flex;
        background-color: #fff;
        left: 0;
        right: 0;
        list-style: none;
        justify-content: flex-start;
        transition: 0.2s ease-in-out;
        width: calc(100% - 80px);
        padding-left: 20px;
        padding-right: 20px
    }

    .header-menu > ul > li > .sub-menu > li {
        flex: 25%;
        margin: 0 12px
    }

    @media all and (max-width: 1200px) {
        .header-menu > ul > li > .sub-menu > li {
            margin: 0 6px
        }
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu {
        list-style: none;
        padding: 0
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li {
        position: relative
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li > a {
        font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
        text-decoration: none;
        color: #575d5e;
        transition: 0.2s ease-in-out
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li > a:hover {
        cursor: pointer;
        color: #585D5E
    }

    .header-menu > ul > li:hover > a {
        background-color: #fff;
        color: #555d5f
    }

    .header-menu > ul > li:hover > a {
        background-color: #fff;
        color: #555d5f
    }

    .header-menu > ul > li:hover > .sub-menu {
        max-height: 800px;
        padding-top: 20px;
        padding-bottom: 20px
    }

    .header-menu > ul > li.menu-item-has-children > a:before, .header-menu > ul > li.menu-item-has-children > a:after {
        content: "";
        position: absolute;
        display: block;
        width: 8px;
        height: 2px;
        background-color: #585D5E;
        bottom: 6px;
        left: 50%
    }

    .header-menu > ul > li.menu-item-has-children > a:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-left: -5px
    }

    .header-menu > ul > li.menu-item-has-children > a:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .header-menu > ul > li.menu-item-object-category > .sub-menu {
        justify-content: space-between
    }

    .header-menu > ul > li.plates > .sub-menu {
        flex-wrap: wrap
    }

    .header-menu > ul > li.plates > .sub-menu > li {
        flex: 1 1 20%
    }

    .header-menu > ul > li.plates-links > .sub-menu {
        flex-wrap: wrap
    }

    .header-menu > ul > li.plates-links > .sub-menu > li {
        flex: 1 1 18%
    }

    .header-menu > ul > li.plates-links > .sub-menu > li p {
        font-size: .9rem
    }

    @media all and (max-width: 1500px) {
        .header-menu .menu-title {
            font-size: 1rem
        }
    }

    .header-menu > ul > li.two-cols > .sub-menu > li > .sub-menu {
        -webkit-columns: 2;
        -moz-columns: 2;
        columns: 2;
        -webkit-column-gap: 20px;
        -moz-column-gap: 20px;
        column-gap: 20px
    }

    @media all and (max-width: 1200px) {
        .header-menu > ul > li.two-cols > .sub-menu > li > .sub-menu {
            -webkit-column-gap: 10px;
            -moz-column-gap: 10px;
            column-gap: 10px
        }
    }

    .header-menu > ul > li.two-cols > .sub-menu > li > .sub-menu li {
        width: 100%;
        display: inline-block
    }

    @media all and (max-width: 1200px) {
        .header-menu > ul > li.two-cols > .sub-menu > li > .sub-menu li a {
            font-size: .8rem
        }
    }

    .header-menu > ul > li.two-rows > .sub-menu {
        flex-wrap: wrap
    }

    .header-menu > ul > li.two-rows > .sub-menu > li {
        flex: 20%
    }

    .header-menu > ul > li.size-1-4 > .sub-menu > li {
        flex: unset;
        width: 25%
    }

    .header-menu > ul > li.size-1-4 > .sub-menu > li > a {
        margin-bottom: 0
    }

    .header-menu > ul > li.doubled-columns > .sub-menu > li {
        display: flex;
        justify-content: space-between
    }

    .header-menu > ul > li.doubled-columns > .sub-menu > li > * {
        width: calc(50% - 10px)
    }

    .header-menu > ul > li.doubled-columns > .sub-menu > li .menu-image {
        padding-bottom: 27%
    }
}

#menu-mobile li {
    cursor: pointer
}

.phone-consultation {
    margin: 0 0 0 auto;
    font: bold normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.02rem
}

.phone-consultation .label-laptop {
    display: none
}

@media all and (max-width: 1200px) {
    .phone-consultation .label-laptop {
        display: inline-block
    }
}

.phone-consultation .search-form {
    margin-right: 0
}

.phone-consultation.inline {
    margin-right: 40px
}

@media all and (max-width: 1200px) {
    .phone-consultation .label-desktop {
        display: none
    }
}

.phone-consultation a, .phone-consultation-phone {
    color: inherit;
    opacity: .9;
    transition: 0.2s ease-in-out;
    text-decoration: none
}

.phone-consultation a:hover, .phone-consultation-phone:hover {
    cursor: pointer;
    opacity: 1
}

.phone-consultation.mobile {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px 10px 20px 15px;
    background-color: #585D5E;
    font-size: .8rem;
    text-align: left;
    display: none;
    margin: 0;
    z-index: 100
}

.phone-consultation.mobile a {
    padding: 20px 0
}

@media all and (max-width: 480px) {
    .phone-consultation.mobile {
        display: block
    }
}

.header-menu-mobile {
    position: fixed;
    right: 0;
    top: 0;
    display: none;
    width: 100%;
    max-width: 0;
    background-color: rgba(255, 255, 255, 0.95);
    -webkit-transform: translateX(500px);
    transform: translateX(500px);
    padding: 20px 0;
    z-index: 90;
    height: 100%;
    height: -webkit-fill-available;
    overflow: hidden;
    transition: 0.2s ease-in-out;
    box-sizing: border-box;
    border-left: 2px solid #585D5E
}

@media all and (max-width: 480px) {
    .header-menu-mobile {
        width: calc(100% - 0px);
        height: calc(100% - 56px)
    }
}

.header-menu-mobile .separator {
    position: relative;
    padding-bottom: 15px;
    margin-bottom: 10px
}

.header-menu-mobile .separator:after {
    content: "";
    display: block;
    position: absolute;
    left: 20px;
    right: 20px;
    height: 1px;
    bottom: 0;
    background-color: #e4cfd6
}

.header-menu-mobile > ul > li > ul li:not(.menu-item-has-children) a {
    text-transform: initial;
    color: #1b1b1b;
    transition: 0.2s ease-in-out
}

.header-menu-mobile > ul > li > ul li:not(.menu-item-has-children) a:hover {
    color: #585D5E
}

.header-menu-mobile.show {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    max-width: 420px
}

.header-menu-mobile .menu-title {
    cursor: pointer;
    text-transform: initial;
    font-size: 0.8rem
}

.header-menu-mobile .search-form {
    width: unset;
    padding-left: 20px;
    margin-bottom: 20px;
    margin-top: 5px;
    box-sizing: border-box
}

.header-menu-mobile .search-form input[type=search], .header-menu-mobile .search-form input[type=text] {
    border-radius: 0;
    border-color: #585D5E;
    padding: 8px 15px;
    height: unset;
    line-height: 1.3
}

.header-menu-mobile .search-form button {
    right: 0
}

@media all and (max-width: 480px) {
    .header-menu-mobile .search-form {
        width: calc(100% - 80px)
    }
}

.header-menu-mobile .menu-item-has-child {
    position: relative
}

.header-menu-mobile .menu-item-has-child > a {
    cursor: pointer
}

.header-menu-mobile ul:not(.mobile-top-menu) {
    list-style: none;
    padding: 0;
    margin: 0 20px
}

.header-menu-mobile ul:not(.mobile-top-menu).hide {
    margin-left: -100%
}

.header-menu-mobile ul:not(.mobile-top-menu) > li {
    margin-bottom: 7px
}

.header-menu-mobile ul:not(.mobile-top-menu) .unwrap-submenu li {
    margin-bottom: 5px
}

.header-menu-mobile ul:not(.mobile-top-menu) .unwrap-submenu li:last-child {
    margin-bottom: 0
}

.header-menu-mobile .sub-menu {
    box-sizing: border-box;
    max-height: 0;
    overflow: hidden;
    transition: 0.2s ease-in-out
}

.header-menu-mobile .unwrap-submenu {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    max-height: 1000px
}

.header-menu-mobile a {
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-decoration: none;
    color: #585D5E
}

.header-menu-mobile a:hover {
    cursor: pointer
}

.header-menu-mobile > ul > .menu-item-has-children > .sub-menu > .menu-item-has-children > .sub-menu {
    margin: 0
}

.header-menu-mobile .close {
    width: 40px;
    height: 40px;
    position: absolute;
    right: 10px;
    top: 4px;
    z-index: 100
}

.header-menu-mobile .close:hover {
    cursor: pointer
}

.header-menu-mobile .close:hover:before, .header-menu-mobile .close:hover:after {
    background-color: #585D5E
}

.header-menu-mobile .close:before, .header-menu-mobile .close:after {
    content: "";
    display: block;
    position: absolute;
    background-color: #a8a8a8;
    width: 30px;
    height: 2px;
    left: 50%;
    top: 50%;
    transition: 0.2s ease-in-out;
    margin-left: -20px
}

.header-menu-mobile .close:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.header-menu-mobile .close:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.header-menu-mobile-wraper {
    max-height: calc(100vh - 100px);
    overflow-x: hidden;
    overflow-y: auto;
    position: relative
}

.header-menu-mobile-wraper input[type=search] {
    width: 100%
}

@media all and (max-width: 1064px) {
    .header-menu-mobile {
        display: block !important
    }
}

.menu-title {
    font: normal 1rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E;
    text-transform: uppercase;
    letter-spacing: .05rem;
    display: block;
    margin-bottom: 5px;
    text-decoration: none;
    position: absolute;
    z-index: 1;
    color: #fff;
    display: block;
    background-color: rgba(88, 93, 94, 0.8);
    left: 0;
    right: 0;
    bottom: 0;
    padding: 5px 10px
}

.menu-title a {
    text-decoration: none;
    color: inherit
}

.menu-title:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.header-menu-mobile-wraper .menu-title {
    position: relative;
    left: unset;
    top: unset;
    right: unset;
    bottom: unset;
    padding: 0;
    background: none;
    color: #585D5E
}

@media only screen and (min-device-width: 375px) and (max-device-width: 812px) and (-webkit-device-pixel-ratio: 3) {
    .header-menu-mobile-wraper {
        max-height: 100%
    }
}

@media only screen and (min-device-width: 375px) and (max-device-width: 667px) {
    .header-menu-mobile-wraper {
        max-height: 100%
    }
}

@media only screen and (min-device-width: 414px) and (max-device-width: 736px) {
    .header-menu-mobile-wraper {
        max-height: 100%
    }
}

.main-footer {
    background-color: #565d5e;
    padding: 50px 0;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

@media all and (max-width: 480px) {
    .main-footer {
        font-size: 1rem;
        padding-top: 40px
    }
}

.main-footer .worktime li {
    color: #fff
}

.main-footer-copyright {
    font: inherit;
    color: #fff
}

.main-footer-logo {
    max-width: 328px;
    width: 100%;
    display: block;
    margin-bottom: 25px
}

@media all and (max-width: 480px) {
    .main-footer-logo {
        max-width: 70%
    }
}

.main-footer-title {
    display: block;
    color: #fff;
    text-transform: uppercase;
    font: inherit;
    font-weight: bold;
    margin-bottom: 25px
}

@media all and (max-width: 768px) {
    .main-footer-title {
        margin-top: 40px
    }
}

.main-footer-top {
    margin-bottom: 40px
}

@media all and (max-width: 480px) {
    .main-footer-top {
        margin-bottom: 40px
    }
}

.main-footer-menu {
    padding: 0;
    margin: 0;
    list-style: none
}

.main-footer-menu li {
    margin-bottom: 10px
}

.main-footer-menu li a {
    color: #fff;
    font: inherit;
    transition: 0.2s ease-in-out;
    text-decoration: underline
}

.main-footer-menu li a:hover {
    cursor: pointer;
    color: #585D5E
}

@media all and (max-width: 1500px) {
    .main-footer-menu li {
        display: inline-block;
        margin-right: 20px
    }
}

@media all and (max-width: 480px) {
    .main-footer-menu li {
        margin-right: 10px
    }

    .main-footer-menu li:after {
        content: "";
        margin-left: 10px;
        background-color: #fff;
        display: inline-block;
        height: 10px;
        width: 1px
    }
}

.main-footer-rating .fa {
    color: #fff
}

.main-footer-rating a {
    color: #fff;
    font: inherit
}

.main-footer-address p {
    color: #fff;
    font: inherit
}

.main-footer-address p a {
    color: #fff
}

.pre-footer {
    margin: 50px 0;
    position: relative
}

.pre-footer h5 {
    text-align: center;
    margin-left: auto;
    margin-right: auto
}

.pre-footer:after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    background-color: #565d5e
}

.pre-footer-subscribe form {
    width: 100%;
    max-width: 540px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between
}

.pre-footer-subscribe form .wpcf7-form-control-wrap {
    width: calc(100% - 160px)
}

@media all and (max-width: 480px) {
    .pre-footer-subscribe form .wpcf7-form-control-wrap {
        width: 100%
    }
}

@media all and (max-width: 1024px) {
    .pre-footer:after {
        display: none
    }

    .pre-footer-social {
        margin-bottom: 3rem
    }
}

@media all and (max-width: 480px) {
    .pre-footer {
        margin: 70px 0
    }

    .pre-footer-subscribe form {
        flex-direction: column;
        max-width: calc(100% - 20px)
    }

    .pre-footer-subscribe form button {
        margin-left: 0
    }
}

.worktime {
    padding: 0;
    margin: 0 0 30px;
    list-style: none;
    width: 100%;
    max-width: 310px;
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

@media all and (max-width: 480px) {
    .worktime {
        font-size: 1rem
    }
}

.worktime li {
    font: inherit;
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px
}

.page-section {
    padding-top: 60px;
    padding-bottom: 45px;
    overflow: hidden
}

.page-section h2 {
    margin: 1.2rem 0
}

.page-section form {
    margin-bottom: 3.5rem
}

.page-section p {
    margin-bottom: 1.6rem
}

.page-section .tel {
    font: bold normal 1.8rem/1.3 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E;
    margin: 0 0 1.5rem 0;
    display: inline-block;
    text-decoration: none
}

.page-section a:not(*[class*=btn-]):not(.product-title):not(.tel) {
    font: normal normal .875rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #585D5E
}

.page-section.grey {
    background-color: #bebebe
}

.page-section .title {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto
}

.page-section .title h1, .page-section .title h2 {
    margin-top: 0
}

.page-section .title.p-center p {
    text-align: center
}

@media all and (max-width: 480px) {
    .page-section .title p {
        text-align: left !important
    }

    .page-section .title p:last-child {
        margin-bottom: 0
    }
}

.page-section .title .two-columns {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px
}

@media all and (max-width: 768px) {
    .page-section .title .two-columns {
        -webkit-columns: 1;
        -moz-columns: 1;
        columns: 1
    }
}

.page-section .title .two-columns p:first-child {
    margin-top: 0
}

.page-section .title .two-columns p:last-child {
    margin-bottom: 0
}

.page-section.narrow .title {
    max-width: 960px
}

@media all and (max-width: 480px) {
    .page-section {
        padding-top: 40px;
        padding-bottom: 40px
    }
}

.page-section .action-wraper {
    margin-top: 50px;
    display: flex;
    justify-content: center
}

.page-section .action-wraper > * {
    margin: 0 10px
}

@media all and (max-width: 768px) {
    .page-section .action-wraper {
        flex-direction: column
    }

    .page-section .action-wraper > *:first-child {
        margin-bottom: 10px
    }
}

.page-section .prev-next {
    width: 100%
}

.page-section .prev-next .prev {
    float: left
}

.page-section .prev-next .next {
    float: right;
    min-width: 148px
}

@media all and (max-width: 768px) {
    .page-section .prev-next .next {
        min-width: 120px
    }
}

.page-section-columns {
    display: flex;
    padding: 0
}

@media all and (max-width: 1024px) {
    .page-section-columns {
        flex-wrap: wrap
    }

    .page-section-columns .content-column, .page-section-columns .sidebar {
        flex-basis: 100% !important
    }
}

@media all and (max-width: 1024px) {
    .page-section-columns.push-top-mobile {
        flex-direction: column-reverse
    }
}

.page-section-title + .page-section-title:not(.grey) {
    padding-top: 0
}

figure {
    display: block;
    margin: 0
}

.has-shadow-right-column {
    position: relative
}

.has-shadow-right-column:before {
    content: '';
    position: absolute;
    background-color: #fff;
    width: 30px;
    top: -100px;
    left: 0;
    bottom: -100px;
    box-shadow: -10px 0px 13px 0px rgba(0, 0, 0, 0.05);
    z-index: -1
}

@media all and (max-width: 1024px) {
    .has-shadow-right-column:before {
        display: none
    }
}

.products + .page-section-sidebar .has-shadow-right-column:before, .trustpilot + .page-section-sidebar .has-shadow-right-column:before, .person + .page-section-sidebar .has-shadow-right-column:before, .page-section-title + .page-section-sidebar .has-shadow-right-column:before {
    top: -20px
}

@media all and (max-width: 480px) {
    .page-section-title + .page-section-sidebar {
        padding-top: 0
    }
}

.embed + .block-consultation, .embed + .page-section-title {
    margin-top: -40px
}

.page-section-title + .embed {
    margin-top: 0
}

.content-column h1:first-child, .content-column h2:first-child, .content-column h3:first-child, .content-column h4:first-child, .content-column h5:first-child, .content-column h6:first-child {
    margin-top: -5px
}

.content-column hr {
    margin-left: 0
}

.title-content ul, .article-content ul, .checker ul, .content-column ul, .faq-content ul {
    margin: 20px 0 40px;
    padding: 0 0 0 25px;
    list-style: none
}

.title-content ul li, .article-content ul li, .checker ul li, .content-column ul li, .faq-content ul li {
    font: normal normal 1rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a;
    margin-bottom: 5px;
    position: relative
}

.title-content ul li:before, .article-content ul li:before, .checker ul li:before, .content-column ul li:before, .faq-content ul li:before {
    content: "—";
    position: absolute;
    left: -25px;
    top: 0;
    margin-right: 10px
}

@media all and (max-width: 480px) {
    .title-content ul li, .article-content ul li, .checker ul li, .content-column ul li, .faq-content ul li {
        font-size: .7rem
    }
}

.categories ul {
    list-style: none;
    padding: 0;
    text-align: center
}

.categories ul li {
    display: inline-block;
    margin: 0 10px 10px
}

.categories ul li a {
    text-transform: uppercase
}

.categories ul li a:hover {
    cursor: pointer;
    color: #1b1b1b !important
}

.categories ul li.current-cat a {
    color: #1b1b1b !important
}

.article-content {
    padding-top: 150px;
    margin-bottom: 50px
}

.article-content article {
    font: normal normal .8rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif
}

.article-content h1, .article-content h2, .article-content h3 {
    margin-top: 3rem;
    margin-bottom: 2rem
}

.article-content h4 {
    margin-top: 1.5rem
}

.article-content h1 {
    margin-top: 0 !important
}

.article-content p img {
    margin-bottom: 2rem
}

.article-content p:empty {
    display: none
}

@media all and (max-width: 480px) {
    .article-content {
        padding-top: 100px
    }
}

@media all and (max-width: 480px) {
    .logged-in .article-content {
        padding-top: 60px
    }
}

.search-form {
    height: 37px;
    width: 43px;
    position: relative;
    display: inline-block;
    margin-right: 20px;
    transition: 0.2s ease-in-out
}

.search-form input[type=search] {
    width: 100%;
    padding: 8px 0 5px 0;
    border-radius: 50px
}

.search-form input[type=search]::-webkit-input-placeholder {
    color: transparent;
    text-transform: inherit
}

.search-form input[type=search]::-moz-placeholder {
    color: transparent;
    text-transform: inherit
}

.search-form input[type=search]:-ms-input-placeholder {
    color: transparent;
    text-transform: inherit
}

.search-form input[type=search]::-ms-input-placeholder {
    color: transparent;
    text-transform: inherit
}

.search-form input[type=search]::placeholder {
    color: transparent;
    text-transform: inherit
}

.search-form button {
    position: absolute;
    background: none;
    border: none;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 43px;
    padding: 0
}

.search-form button i {
    color: #b3b3b3;
    font-size: .875rem;
    line-height: 37px;
    transition: 0.2s ease-in-out
}

.search-form button:hover {
    cursor: pointer
}

.search-form button:hover i {
    color: #585D5E
}

.search-form-unwrap {
    width: 240px
}

.search-form-unwrap input[type=search] {
    padding-left: 45px
}

.search-form-unwrap input[type=search]::-webkit-input-placeholder {
    text-transform: uppercase;
    color: #3a3a3a
}

.search-form-unwrap input[type=search]::-moz-placeholder {
    text-transform: uppercase;
    color: #3a3a3a
}

.search-form-unwrap input[type=search]:-ms-input-placeholder {
    text-transform: uppercase;
    color: #3a3a3a
}

.search-form-unwrap input[type=search]::-ms-input-placeholder {
    text-transform: uppercase;
    color: #3a3a3a
}

.search-form-unwrap input[type=search]::placeholder {
    text-transform: uppercase;
    color: #3a3a3a
}

.header-menu-mobile .search-form input[type=text]::-webkit-input-placeholder {
    text-transform: inherit;
    color: #565d5e;
    letter-spacing: .01rem
}

.header-menu-mobile .search-form input[type=text]::-moz-placeholder {
    text-transform: inherit;
    color: #565d5e;
    letter-spacing: .01rem
}

.header-menu-mobile .search-form input[type=text]:-ms-input-placeholder {
    text-transform: inherit;
    color: #565d5e;
    letter-spacing: .01rem
}

.header-menu-mobile .search-form input[type=text]::-ms-input-placeholder {
    text-transform: inherit;
    color: #565d5e;
    letter-spacing: .01rem
}

.header-menu-mobile .search-form input[type=text]::placeholder {
    text-transform: inherit;
    color: #565d5e;
    letter-spacing: .01rem
}

.search-popup {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    left: 0;
    top: 100%;
    right: 0;
    position: absolute;
    background-color: #fff;
    padding: 0 20px;
    border-radius: 5px;
    box-shadow: 0 10px 13px 0px rgba(0, 0, 0, 0.05);
    max-height: 0;
    overflow: hidden;
    transition: 0.2s ease-in-out
}

.search-popup.show {
    max-height: 400px;
    overflow-y: auto;
    padding-top: 20px;
    padding-bottom: 20px
}

.search-popup-item {
    display: block;
    text-decoration: none;
    padding: 10px 0
}

.search-popup-item:last-child {
    border-bottom: none;
    padding-bottom: 0
}

.search-popup-item:first-child {
    padding-top: 0
}

.search-popup-item h6 {
    margin-bottom: 0
}

.search-popup-item span {
    text-decoration: underline;
    color: #585D5E
}

.checker h2 {
    margin-bottom: 2rem
}

.checker-row {
    display: flex;
    align-content: stretch
}

.checker-row:nth-child(2n) {
    flex-direction: row-reverse
}

@media all and (max-width: 1024px) {
    .checker-row {
        flex-direction: column
    }

    .checker-row:nth-child(2n) {
        flex-direction: column
    }
}

.checker .checker-content, .checker .hover-image-wraper {
    width: 50%
}

@media all and (max-width: 1024px) {
    .checker .checker-content, .checker .hover-image-wraper {
        width: 100%
    }
}

.checker .checker-content {
    padding: 40px 40px;
    box-sizing: border-box
}

@media all and (max-width: 480px) {
    .checker .checker-content {
        padding: 30px 20px
    }
}

.checker .faq {
    margin-bottom: 40px
}

.checker .btn-primary {
    padding: 0 150px
}

@media all and (max-width: 1500px) {
    .checker .btn-primary {
        padding: 0 100px
    }
}

@media all and (max-width: 1024px) {
    .checker .btn-primary {
        padding: 0 15px
    }
}

.sidebar {
    margin-left: 40px;
    padding-left: 40px;
    flex-basis: 480px;
    max-width: 480px;
    width: 100%
}

.sidebar textarea {
    width: 100%
}

.sidebar input {
    width: 100%
}

.sidebar h4 a {
    font-size: inherit !important
}

@media all and (max-width: 1024px) {
    .sidebar {
        padding-left: 20px;
        margin: 2rem 0 0 0;
        padding: 0;
        max-width: 100%
    }
}

@media all and (max-width: 480px) {
    .sidebar {
        margin: 0
    }

    .sidebar .sidebar-form, .sidebar .tel {
        display: none
    }
}

.embed {
    width: 100%;
    position: relative;
    height: 0;
    padding-bottom: 56%;
    margin: 40px 0
}

.embed iframe {
    position: absolute;
    width: 100%;
    height: 100%
}

.practitioner-info + .embed {
    margin-top: 0
}

.checker + .embed, .list-logos + .embed, .testimonials-carousel + .embed, .page-section-title.grey + .embed, .hero + .embed, .page-section-sidebar + .embed {
    margin-top: 0
}

.fixed-sidebar-wrapper {
    margin-top: 10px
}

.fixed-sidebar-wrapper.fix {
    position: fixed;
    top: 180px
}

.fixed-sidebar-wrapper.stick-bottom {
    position: absolute;
    top: unset;
    bottom: 0
}

.sidebar-surgeons {
    margin-bottom: 40px;
    max-width: 350px
}

.sidebar-surgeons-list {
    position: relative;
    display: none
}

.sidebar-surgeons .slick-arrow {
    top: unset;
    bottom: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
}

.sidebar-surgeons .slick-arrow-prev {
    left: 0
}

.sidebar-surgeons .read-more {
    font: normal normal 1.3rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #fff !important;
    text-transform: uppercase;
    margin-top: 15px
}

.card-surgeon-photo {
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: relative
}

.card-surgeon-descr {
    background-color: #4d5153;
    padding: 20px 15px
}

.card-surgeon-descr * {
    color: #fff
}

.card-surgeon-descr hr {
    max-width: 100%;
    margin: 10px 0 15px;
    background-color: #fff
}

.card-surgeon-descr h6 {
    font: 500 normal 1.35rem/1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    text-transform: none;
    letter-spacing: 1px;
    margin: 0
}

.card-surgeon-descr p {
    margin: 10px 0
}

.patient-journey {
    margin-bottom: 20px
}

.patient-journey-steps {
    padding-top: 76px;
    position: relative;
    display: none
}

.patient-journey .slick-slide p {
    margin-top: 0
}

.patient-journey .slick-slide div p:first-child {
    margin-bottom: 10px
}

.patient-journey .slick-dots {
    padding: 0;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0
}

.patient-journey .slick-dots li {
    list-style: none;
    display: inline-block
}

.patient-journey .slick-dots li:after {
    content: '';
    display: inline-block;
    width: 26px;
    height: 18px;
    margin: 0 10px
}

.patient-journey .slick-dots li:last-child:after {
    display: none
}

.patient-journey .slick-dots li.slick-active button {
    background-color: #fff;
    text-decoration: underline
}

.patient-journey .slick-dots li button {
    padding: 0;
    width: 49px;
    height: 49px;
    border-radius: 50%;
    background-color: #b6b6b6;
    font-size: 1.4rem;
    border: solid 2px #b6b6b6;
    outline: none;
    color: #565D5F
}

.patient-journey .slick-dots li button:hover {
    cursor: pointer
}

.person {
    display: block;
    width: 100%;
    max-width: 880px;
    margin: 0 auto 90px;
    padding: 0 10px;
    -webkit-transform: translateX(75px);
    transform: translateX(75px)
}

@media all and (max-width: 1500px) {
    .person {
        -webkit-transform: none;
        transform: none
    }
}

.person-block {
    display: flex;
    justify-content: space-between
}

.person-img {
    width: 264px;
    margin-right: 30px
}

.person-img .wraper {
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: relative
}

.person-img .wraper img {
    border-radius: 50%
}

@media all and (max-width: 1024px) {
    .person-img {
        width: 180px
    }
}

@media all and (max-width: 480px) {
    .person-img {
        width: 25%
    }
}

.person-data {
    width: calc(100% - 330px)
}

.person-data-sign {
    width: 100%;
    max-width: 264px;
    margin-bottom: 40px;
    position: relative
}

@media all and (max-width: 1024px) {
    .person-data-sign {
        max-width: 200px
    }
}

@media all and (max-width: 480px) {
    .person-data-sign {
        max-width: 150px;
        margin-bottom: 20px
    }
}

.person-data p {
    margin: 0
}

@media all and (max-width: 1024px) {
    .person-data {
        width: calc(100% - 180px)
    }
}

@media all and (max-width: 480px) {
    .person-data {
        width: 75%
    }
}

.three-columns {
    padding: 0 20px;
    width: 100%;
    max-width: calc(100% - 140px);
    margin: 80px auto;
    display: flex;
    justify-content: space-between
}

@media all and (max-width: 1500px) {
    .three-columns {
        max-width: calc(100% - 70px)
    }
}

@media all and (max-width: 1200px) {
    .three-columns {
        flex-wrap: wrap
    }
}

@media all and (max-width: 768px) {
    .three-columns {
        max-width: calc(100% - 40px)
    }
}

@media all and (max-width: 480px) {
    .three-columns {
        margin-top: 40px;
        margin-bottom: 40px
    }
}

.three-columns h3 {
    margin-bottom: 2rem
}

@media all and (max-width: 768px) {
    .three-columns h3 {
        margin-bottom: 1rem
    }
}

.three-columns p:last-child {
    margin-bottom: 0
}

.three-columns .faq-content p:last-child {
    margin-bottom: 1rem
}

.three-columns-item {
    width: calc(33.3% - 66.6px)
}

@media all and (max-width: 1500px) {
    .three-columns-item {
        width: calc(33.3% - 20px)
    }
}

@media all and (max-width: 1200px) {
    .three-columns-item {
        width: calc(50% - 20px);
        margin-bottom: 60px
    }

    .three-columns-item:last-child {
        width: 100%;
        margin-bottom: 0
    }
}

@media all and (max-width: 768px) {
    .three-columns-item {
        width: 100%;
        margin-bottom: 40px
    }
}

.auto-three-columns {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
    -webkit-column-gap: 60px;
    -moz-column-gap: 60px;
    column-gap: 60px;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
    column-fill: auto
}

.page-section-title:not(.grey) + .container > .three-columns {
    margin-top: 0
}

@media all and (max-width: 768px) {
    .container > .three-columns {
        max-width: 100%;
        padding: 0
    }
}

[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start
}

.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit
}

.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0
}

.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch
}

.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.simplebar-content-wrapper::-webkit-scrollbar, .simplebar-hide-scrollbar::-webkit-scrollbar {
    width: 0;
    height: 0
}

.simplebar-content:after, .simplebar-content:before {
    content: ' ';
    display: table
}

.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none
}

.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0
}

.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index: -1
}

.simplebar-track {
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden
}

[data-simplebar].simplebar-dragging .simplebar-content {
    pointer-events: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none
}

[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all
}

.simplebar-scrollbar {
    position: absolute;
    left: 0;
    right: 0;
    min-height: 10px
}

.simplebar-scrollbar:before {
    position: absolute;
    content: '';
    background: #000;
    border-radius: 7px;
    left: 2px;
    right: 2px;
    opacity: 0;
    transition: opacity .2s linear
}

.simplebar-scrollbar.simplebar-visible:before {
    opacity: .5;
    transition: opacity 0s linear
}

.simplebar-track.simplebar-vertical {
    top: 0;
    width: 11px
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 2px;
    bottom: 2px
}

.simplebar-track.simplebar-horizontal {
    left: 0;
    height: 11px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
    height: 100%;
    left: 2px;
    right: 2px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 2px;
    height: 7px;
    min-height: 0;
    min-width: 10px;
    width: auto
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0
}

.hs-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll
}

.simplebar-hide-scrollbar {
    position: fixed;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none
}

body.compensate-for-scrollbar {
    overflow: hidden
}

.fancybox-active {
    height: auto
}

.fancybox-is-hidden {
    left: -9999px;
    margin: 0;
    position: absolute !important;
    top: -9999px;
    visibility: hidden
}

.fancybox-container {
    -webkit-backface-visibility: hidden;
    height: 100%;
    left: 0;
    outline: none;
    position: fixed;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    touch-action: manipulation;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    width: 100%;
    z-index: 99992
}

.fancybox-container * {
    box-sizing: border-box
}

.fancybox-bg, .fancybox-inner, .fancybox-outer, .fancybox-stage {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.fancybox-outer {
    -webkit-overflow-scrolling: touch;
    overflow-y: auto
}

.fancybox-bg {
    background: #1e1e1e;
    opacity: 0;
    transition-duration: inherit;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.47, 0, .74, .71)
}

.fancybox-is-open .fancybox-bg {
    opacity: .9;
    transition-timing-function: cubic-bezier(.22, .61, .36, 1)
}

.fancybox-caption, .fancybox-infobar, .fancybox-navigation .fancybox-button, .fancybox-toolbar {
    direction: ltr;
    opacity: 0;
    position: absolute;
    transition: opacity .25s ease, visibility 0s ease .25s;
    visibility: hidden;
    z-index: 99997
}

.fancybox-show-caption .fancybox-caption, .fancybox-show-infobar .fancybox-infobar, .fancybox-show-nav .fancybox-navigation .fancybox-button, .fancybox-show-toolbar .fancybox-toolbar {
    opacity: 1;
    transition: opacity .25s ease 0s, visibility 0s ease 0s;
    visibility: visible
}

.fancybox-infobar {
    color: #ccc;
    font-size: 13px;
    -webkit-font-smoothing: subpixel-antialiased;
    height: 44px;
    left: 0;
    line-height: 44px;
    min-width: 44px;
    mix-blend-mode: difference;
    padding: 0 10px;
    pointer-events: none;
    top: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.fancybox-toolbar {
    right: 0;
    top: 0
}

.fancybox-stage {
    direction: ltr;
    overflow: visible;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    z-index: 99994
}

.fancybox-is-open .fancybox-stage {
    overflow: hidden
}

.fancybox-slide {
    -webkit-backface-visibility: hidden;
    display: none;
    height: 100%;
    left: 0;
    outline: none;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: absolute;
    text-align: center;
    top: 0;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    white-space: normal;
    width: 100%;
    z-index: 99994
}

.fancybox-slide:before {
    content: "";
    display: inline-block;
    font-size: 0;
    height: 100%;
    vertical-align: middle;
    width: 0
}

.fancybox-is-sliding .fancybox-slide, .fancybox-slide--current, .fancybox-slide--next, .fancybox-slide--previous {
    display: block
}

.fancybox-slide--image {
    overflow: hidden;
    padding: 44px 0
}

.fancybox-slide--image:before {
    display: none
}

.fancybox-slide--html {
    padding: 6px
}

.fancybox-content {
    background: #fff;
    display: inline-block;
    margin: 0;
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: relative;
    text-align: left;
    vertical-align: middle
}

.fancybox-slide--image .fancybox-content {
    -webkit-animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    -webkit-backface-visibility: hidden;
    background: transparent;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 0;
    max-width: none;
    overflow: visible;
    padding: 0;
    position: absolute;
    top: 0;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 99995
}

.fancybox-can-zoomOut .fancybox-content {
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}

.fancybox-can-zoomIn .fancybox-content {
    cursor: -webkit-zoom-in;
    cursor: zoom-in
}

.fancybox-can-pan .fancybox-content, .fancybox-can-swipe .fancybox-content {
    cursor: -webkit-grab;
    cursor: grab
}

.fancybox-is-grabbing .fancybox-content {
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.fancybox-container [data-selectable=true] {
    cursor: text
}

.fancybox-image, .fancybox-spaceball {
    background: transparent;
    border: 0;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    padding: 0;
    position: absolute;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%
}

.fancybox-spaceball {
    z-index: 1
}

.fancybox-slide--iframe .fancybox-content, .fancybox-slide--map .fancybox-content, .fancybox-slide--pdf .fancybox-content, .fancybox-slide--video .fancybox-content {
    height: 100%;
    overflow: visible;
    padding: 0;
    width: 100%
}

.fancybox-slide--video .fancybox-content {
    background: #000
}

.fancybox-slide--map .fancybox-content {
    background: #e5e3df
}

.fancybox-slide--iframe .fancybox-content {
    background: #fff
}

.fancybox-iframe, .fancybox-video {
    background: transparent;
    border: 0;
    display: block;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%
}

.fancybox-iframe {
    left: 0;
    position: absolute;
    top: 0
}

.fancybox-error {
    background: #fff;
    cursor: default;
    max-width: 400px;
    padding: 40px;
    width: 100%
}

.fancybox-error p {
    color: #444;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
    padding: 0
}

.fancybox-button {
    background: rgba(30, 30, 30, .6);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    height: 44px;
    margin: 0;
    padding: 10px;
    position: relative;
    transition: color .2s;
    vertical-align: top;
    visibility: inherit;
    width: 44px
}

.fancybox-button, .fancybox-button:link, .fancybox-button:visited {
    color: #ccc
}

.fancybox-button:hover {
    color: #fff
}

.fancybox-button:focus {
    outline: none
}

.fancybox-button.fancybox-focus {
    outline: 1px dotted
}

.fancybox-button[disabled], .fancybox-button[disabled]:hover {
    color: #888;
    cursor: default;
    outline: none
}

.fancybox-button div {
    height: 100%
}

.fancybox-button svg {
    display: block;
    height: 100%;
    overflow: visible;
    position: relative;
    width: 100%
}

.fancybox-button svg path {
    fill: currentColor;
    stroke-width: 0
}

.fancybox-button--fsenter svg:nth-child(2), .fancybox-button--fsexit svg:first-child, .fancybox-button--pause svg:first-child, .fancybox-button--play svg:nth-child(2) {
    display: none
}

.fancybox-progress {
    background: #ff5268;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0;
    transform-origin: 0;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-timing-function: linear;
    z-index: 99998
}

.fancybox-close-small {
    background: transparent;
    border: 0;
    border-radius: 0;
    color: #ccc;
    cursor: pointer;
    opacity: .8;
    padding: 8px;
    position: absolute;
    right: -12px;
    top: -44px;
    z-index: 401
}

.fancybox-close-small:hover {
    color: #fff;
    opacity: 1
}

.fancybox-slide--html .fancybox-close-small {
    color: currentColor;
    padding: 10px;
    right: 0;
    top: 0
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
    overflow: hidden
}

.fancybox-is-scaling .fancybox-close-small, .fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
    display: none
}

.fancybox-navigation .fancybox-button {
    background-clip: content-box;
    height: 100px;
    opacity: 0;
    position: absolute;
    top: calc(50% - 50px);
    width: 70px
}

.fancybox-navigation .fancybox-button div {
    padding: 7px
}

.fancybox-navigation .fancybox-button--arrow_left {
    left: 0;
    left: env(safe-area-inset-left);
    padding: 31px 26px 31px 6px
}

.fancybox-navigation .fancybox-button--arrow_right {
    padding: 31px 6px 31px 26px;
    right: 0;
    right: env(safe-area-inset-right)
}

.fancybox-caption {
    background: linear-gradient(0deg, rgba(0, 0, 0, .85) 0, rgba(0, 0, 0, .3) 50%, rgba(0, 0, 0, .15) 65%, rgba(0, 0, 0, .075) 75.5%, rgba(0, 0, 0, .037) 82.85%, rgba(0, 0, 0, .019) 88%, transparent);
    bottom: 0;
    color: #eee;
    font-size: 14px;
    font-weight: 400;
    left: 0;
    line-height: 1.5;
    padding: 75px 44px 25px;
    pointer-events: none;
    right: 0;
    text-align: center;
    z-index: 99996
}

@supports (padding:max(0px)) {
    .fancybox-caption {
        padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left))
    }
}

.fancybox-caption--separate {
    margin-top: -50px
}

.fancybox-caption__body {
    max-height: 50vh;
    overflow: auto;
    pointer-events: all
}

.fancybox-caption a, .fancybox-caption a:link, .fancybox-caption a:visited {
    color: #ccc;
    text-decoration: none
}

.fancybox-caption a:hover {
    color: #fff;
    text-decoration: underline
}

.fancybox-loading {
    -webkit-animation: a 1s linear infinite;
    animation: a 1s linear infinite;
    background: transparent;
    border: 4px solid #888;
    border-bottom-color: #fff;
    border-radius: 50%;
    height: 50px;
    left: 50%;
    margin: -25px 0 0 -25px;
    opacity: .7;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 50px;
    z-index: 99999
}

@-webkit-keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

.fancybox-animated {
    transition-timing-function: cubic-bezier(0, 0, .25, 1)
}

.fancybox-fx-slide.fancybox-slide--previous {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0)
}

.fancybox-fx-slide.fancybox-slide--next {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
}

.fancybox-fx-slide.fancybox-slide--current {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.fancybox-fx-fade.fancybox-slide--next, .fancybox-fx-fade.fancybox-slide--previous {
    opacity: 0;
    transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.fancybox-fx-fade.fancybox-slide--current {
    opacity: 1
}

.fancybox-fx-zoom-in-out.fancybox-slide--previous {
    opacity: 0;
    -webkit-transform: scale3d(1.5, 1.5, 1.5);
    transform: scale3d(1.5, 1.5, 1.5)
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
    opacity: 0;
    -webkit-transform: scale3d(.5, .5, .5);
    transform: scale3d(.5, .5, .5)
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.fancybox-fx-rotate.fancybox-slide--previous {
    opacity: 0;
    -webkit-transform: rotate(-1turn);
    transform: rotate(-1turn)
}

.fancybox-fx-rotate.fancybox-slide--next {
    opacity: 0;
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
}

.fancybox-fx-rotate.fancybox-slide--current {
    opacity: 1;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.fancybox-fx-circular.fancybox-slide--previous {
    opacity: 0;
    -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
    transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0)
}

.fancybox-fx-circular.fancybox-slide--next {
    opacity: 0;
    -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
    transform: scale3d(0, 0, 0) translate3d(100%, 0, 0)
}

.fancybox-fx-circular.fancybox-slide--current {
    opacity: 1;
    -webkit-transform: scaleX(1) translateZ(0);
    transform: scaleX(1) translateZ(0)
}

.fancybox-fx-tube.fancybox-slide--previous {
    -webkit-transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg);
    transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg)
}

.fancybox-fx-tube.fancybox-slide--next {
    -webkit-transform: translate3d(100%, 0, 0) scale(.1) skew(10deg);
    transform: translate3d(100%, 0, 0) scale(.1) skew(10deg)
}

.fancybox-fx-tube.fancybox-slide--current {
    -webkit-transform: translateZ(0) scale(1);
    transform: translateZ(0) scale(1)
}

@media (max-height: 576px) {
    .fancybox-slide {
        padding-left: 6px;
        padding-right: 6px
    }

    .fancybox-slide--image {
        padding: 6px 0
    }

    .fancybox-close-small {
        right: -6px
    }

    .fancybox-slide--image .fancybox-close-small {
        background: #4e4e4e;
        color: #f2f4f6;
        height: 36px;
        opacity: 1;
        padding: 6px;
        right: 0;
        top: 0;
        width: 36px
    }

    .fancybox-caption {
        padding-left: 12px;
        padding-right: 12px
    }

    @supports (padding:max(0px)) {
        .fancybox-caption {
            padding-left: max(12px, env(safe-area-inset-left));
            padding-right: max(12px, env(safe-area-inset-right))
        }
    }
}

.fancybox-share {
    background: #f4f4f4;
    border-radius: 3px;
    max-width: 90%;
    padding: 30px;
    text-align: center
}

.fancybox-share h1 {
    color: #222;
    font-size: 35px;
    font-weight: 700;
    margin: 0 0 20px
}

.fancybox-share p {
    margin: 0;
    padding: 0
}

.fancybox-share__button {
    border: 0;
    border-radius: 3px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 5px 10px;
    min-width: 130px;
    padding: 0 15px;
    text-decoration: none;
    transition: all .2s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap
}

.fancybox-share__button:link, .fancybox-share__button:visited {
    color: #fff
}

.fancybox-share__button:hover {
    text-decoration: none
}

.fancybox-share__button--fb {
    background: #3b5998
}

.fancybox-share__button--fb:hover {
    background: #344e86
}

.fancybox-share__button--pt {
    background: #bd081d
}

.fancybox-share__button--pt:hover {
    background: #aa0719
}

.fancybox-share__button--tw {
    background: #1da1f2
}

.fancybox-share__button--tw:hover {
    background: #0d95e8
}

.fancybox-share__button svg {
    height: 25px;
    margin-right: 7px;
    position: relative;
    top: -1px;
    vertical-align: middle;
    width: 25px
}

.fancybox-share__button svg path {
    fill: #fff
}

.fancybox-share__input {
    background: transparent;
    border: 0;
    border-bottom: 1px solid #d7d7d7;
    border-radius: 0;
    color: #5d5b5b;
    font-size: 14px;
    margin: 10px 0 0;
    outline: none;
    padding: 10px 15px;
    width: 100%
}

.fancybox-thumbs {
    background: #ddd;
    bottom: 0;
    display: none;
    margin: 0;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding: 2px 2px 4px;
    position: absolute;
    right: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    top: 0;
    width: 212px;
    z-index: 99995
}

.fancybox-thumbs-x {
    overflow-x: auto;
    overflow-y: hidden
}

.fancybox-show-thumbs .fancybox-thumbs {
    display: block
}

.fancybox-show-thumbs .fancybox-inner {
    right: 212px
}

.fancybox-thumbs__list {
    font-size: 0;
    height: 100%;
    list-style: none;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    position: absolute;
    position: relative;
    white-space: nowrap;
    width: 100%
}

.fancybox-thumbs-x .fancybox-thumbs__list {
    overflow: hidden
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
    width: 7px
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3)
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
    background: #2a2a2a;
    border-radius: 10px
}

.fancybox-thumbs__list a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: rgba(0, 0, 0, .1);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    float: left;
    height: 75px;
    margin: 2px;
    max-height: calc(100% - 8px);
    max-width: calc(50% - 4px);
    outline: none;
    overflow: hidden;
    padding: 0;
    position: relative;
    -webkit-tap-highlight-color: transparent;
    width: 100px
}

.fancybox-thumbs__list a:before {
    border: 6px solid #ff5268;
    bottom: 0;
    content: "";
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .2s cubic-bezier(.25, .46, .45, .94);
    z-index: 99991
}

.fancybox-thumbs__list a:focus:before {
    opacity: .5
}

.fancybox-thumbs__list a.fancybox-thumbs-active:before {
    opacity: 1
}

@media (max-width: 576px) {
    .fancybox-thumbs {
        width: 110px
    }

    .fancybox-show-thumbs .fancybox-inner {
        right: 110px
    }

    .fancybox-thumbs__list a {
        max-width: calc(100% - 10px)
    }
}

.list-social-links-img {
    width: 12px;
    top: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
    left: 55%;
}

#main .hero img {
    transition: unset;
}

.list-social-links li a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.slick-slide {
    height: auto;
}

/* BMI Calculator CSS */
.sidebar-block.form-consultation h4 {
    margin-bottom: 5px
}

#CCB-calc div,
#CCB-calc input,
#CCB-calc span {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

#CCB-calc {
    max-width: 300px;
    min-width: 200px;
    border-color: #ddd;
    background-color: #f8f8f8;
    border-style: solid;
    border-width: 1px;
    border-radius: 4px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    /*font-size: 1em;*/
    line-height: 1.42857143;
    color: #666666;
}

#CCB-calc #calc-header H3{
    font-size: 0.8571em;
    font-weight: 700;
    /*    color: #ddd;*/

    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0px 0px 0.7143em 0px;
    padding: 0.3571em;
}

#CCB-calc #calc-header H3 a{
    color: #666666;
    text-decoration: none;
}


#CCB-calc #calc-header {
    text-align: center;
    background-color: #ddd;
    color: #666666;
}



#CCB-calc #calc-footer p {
    text-align: right;
    font-size: 0.7em;
    margin: 0px;
    padding: 0px;
}

#CCB-calc #calc-footer p a {
    text-align: right;
    font-size: 1em;
    margin: 0px;
    padding: 0px;
    color: #666666;
    text-decoration: none;
}

#CCB-calc #calc-footer {
    background-color: #ddd;
    color: #666666;
    clear: both;
    padding: 3px 7px 3px 0px;
    margin-top: 5px;
}

#CCB-calc .col-200-4 {
    width: 33.33%;
    float: left;
}

#CCB-calc .col-200-5 {
    width: 41.66%;
    float: left;
}

#CCB-calc .col-200-6 {
    width: 50%;
    float: left;
}

#CCB-calc .col-200-8 {
    width: 66.66%;
    float: left;
}

#CCB-calc .col-12 {
    width: 100%;
    float: left;
}

#CCB-calc .col-200-offset-1 {
    margin-left: 10%;
}

@media (max-width: 200px) {
    #CCB-calc .col-200-4 {
        width: 100%;
        float: left;
    }
    #CCB-calc .col-200-5 {
        width: 100%;
        float: left;
    }
    #CCB-calc .col-200-8 {
        width: 100%;
        float: left;
    }
}

#CCB-calc .form-group {
    padding: 5px;
    display: block;
    clear: both;
}

#CCB-calc .form-group:after {
    clear: both;
    content: "";
    display: table;
}

#CCB-calc .control-label {
    display: inline-block;
    text-align: right;
    padding-top: 7px;
    margin-bottom: 0;
    max-width: 100%;
    font-weight: 700;
    box-sizing: border-box;
}

@media (max-width: 400px) {
    #CCB-calc .control-label {
        text-align: left;
    }
}

#CCB-calc .input-group-addon,
#CCB-calc .input-group-btn,
#CCB-calc .input-group .form-control {
    display: table-cell;
}

#CCB-calc .input-group {
    position: relative;
    display: table;
    border-collapse: separate;
    width: 100%;
}

#CCB-calc .form-control {
    width: 100%;
    height: 34px;
    padding: 0.3571em 0.7143em;
    font-size: 14px;
    line-height: 1.42857143;
    color: #666666;
    background-color: #ffffff;
    background-image: none;
    border: 1px solid;
    border-color: #ddd;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

#CCB-calc .form-control:last-child {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

#CCB-calc .form-control:first-child {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

#CCB-calc .input-group-addon {
    padding: 5px 10px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1;
    color: #666666;
    text-align: center;
    border: 1px solid;
    border-color: #ddd;
    border-radius: 4px;
    width: 1%;
    white-space: nowrap;
    vertical-align: middle;
    font-weight: 700;
    background-color: #ddd;
}

#CCB-calc .input-group-addon:last-child {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

#CCB-calc .input-group-addon:last-child {
    border-left: 0;
}

#CCB-calc .input-group-addon:first-child {
    border-right: 0;
}

#CCB-calc .input-group-addon:first-child {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}
/* BUTTON */

#CCB-calc .btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    /*    font-size: 1em;*/

    line-height: 1.42857143;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#CCB-calc .btn:focus,
#CCB-calc .btn:active:focus,
#CCB-calc .btn:active.focus,
#CCB-calc .btn.focus,
#CCB-calc .btn.active:focus,
#CCB-calc .btn.active.focus {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px;
}

#CCB-calc .btn:hover,
#CCB-calc .btn:focus,
#CCB-calc .btn.focus {
    color: #666666;
    text-decoration: none;
}

#CCB-calc .btn:active,
#CCB-calc .btn.active {
    outline: 0;
    background-image: none;
    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

#CCB-calc .btn-info {
    color: #ffffff;
    background-color: #a0a0a0;
    border-color: #a0a0a0;
}

#CCB-calc .btn-info:hover,
#CCB-calc .btn-info:focus,
#CCB-calc .btn-info.focus,
#CCB-calc .btn-info:active,
#CCB-calc .btn-info.active {
    color: #ffffff;
    background-color: #31b0d5;
    border-color: #269abc;
}

#CCB-calc .btn-info:active,
#CCB-calc .btn-info.active {
    background-image: none;
}

#CCB-calc .btn-info .badge {
    color: #a0a0a0;
    background-color: #ffffff;
}

#CCB-calc .btn-block {
    display: block;
    width: 100%;
}

#CCB-calc .btn-block + .btn-block {
    margin-top: 5px;
}

#CCB-calc input[type="submit"].btn-block,
#CCB-calc input[type="reset"].btn-block,
#CCB-calc input[type="button"].btn-block {
    width: 100%;
}

#CCB-calc .alert {
    padding: 5px 15px 5px 15px;
    border: 1px solid transparent;
    border-radius: 4px;
    font-weight: 700;
    text-align: center;
}

#CCB-calc .alert p {
    margin: 2px;
}

#CCB-calc .alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}

#CCB-calc .alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1;
}

#CCB-calc .alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc;
}

#CCB-calc .alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}

#CCB-calc input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    color: aqua;
}

#CCB-calc .radio label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer;
}

#CCB-calc label {
    display: inline-block;
}

#CCB-calc .center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#CCB-calc .input-group-addon {
    width: 35px;
    padding: 5px 5px;
}

#CCB-calc .control-label {
    padding-right: 5px;
}

#CCB-calc #calc-options {
    text-align: center;
    margin-bottom: 10px;
    margin-top: 10px;
}

#CCB-calc .BMI-Description-group {
    padding: 0px 6px 0px 6px;
}

#CCB-calc .col-200-5 .btn {
    margin-left: 10%;
}

#CCB-calc .btn {
    padding-left: 0px;
    padding-right: 0px;
}

#CCB-calc .bmi-hidden {
    display: none;
}

div#CCB-calc.CCB-Widget-cc_bmi_shortcode {
    max-width: 100%;
    padding: 10px;
    margin-bottom: 30px;
    margin-top: 48px;
}

.units-joint {
    display: flex;
    justify-content: center;
    gap: 15px
}

#CCB-calc label span {
    padding-left: 15px;
    position: relative;
    font-weight: 600;
    font-size: 16px
}

label span:before {
    position: absolute;
    top: 3px;
    left: 0;
    height: 10px;
    width: 10px;
    background-color: transparent;
    border-radius: 50%;
    border: 1px solid #fff;
    content: ""
}

#CCB-calc input[type=radio]:checked ~ span:before {
    background-color: #fff
}

#CCB-calc .form-group .control-label {
    display: none
}

#CCB-calc .col-200-8 {
    float: none !important;
    margin: 0 auto;
    display: flex;
    gap: 8px
}

#CCB-calc .form-control {
    margin: 0 !important;
    height: 36px !important;
    border: unset !important;
    color: #000 !important
}

#CCB-calc .input-group-addon {
    background: #585D5E !important;
    border: unset !important;
    color: #fff !important;
    width: 45px !important;
    font-size: 16px !important
}

#CCB-calc .input-group {
    border-radius: 4px;
    border: 1px solid #fff
}

#CCB-calc .btn {
    height: 40px;
    text-transform: capitalize;
    font-size: 16px !important;
    font-weight: 600 !important
}

#CCB-calc .col-200-offset-1 {
    margin-left: 3% !important
}

div#CCB-calc.CCB-Widget-cc_bmi_shortcode div#calc-controls {
    margin-bottom: 20px;
    margin-top: 30px
}

#CCB-calc .form-group {
    margin-bottom: 2px
}

#CCB-calc .form-control::placeholder {
    color: #000;
    font-weight: 600
}

#CCB-calc div#calc-footer {
    display: none;
}

#CCB-calc #calc-header {
    margin-top: -60px;
    margin-left: -15px;
}

#CCB-calc #calc-header H3 {
    text-transform: capitalize;
    text-align: left;
}

#CCB-calc #calc-header.CCB-calc-header-cc_bmi_shortcode H3 a {
    font-size: 12px !important;
    pointer-events: none;
}

#CCB-calc #calc-options {
    display: flex;
    justify-content: center;
}

#CCB-calc input[type=radio] {
    width: auto;
}

input#cc_bmi_shortcode-radioMetric {
    margin-left: 20px;
}

/* BMI Calculator CSS */

/* Rotate Sticky Sidebar
--------------------------------------------- */
.mystickyelements-fixed .mystickyelements-icon-below-text {
    transform: rotate(-90deg);
    display: inline-block;
    white-space: nowrap;
    padding-left: 16px;
    font-size: 12px !important;
}

i.fas.fa-envelope {
    transform: rotate(-90deg);
    padding-left: 14px;
}

span.mystickyelements-social-icon.social-custom_shortcode_1.social-custom {
    height: 118px !important;
}

/* Video Banner CSS */
section#top_video_banner {
    padding: 0;
}

section#top_video_banner .container, section#top_video_banner .container .row {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
}

section#top_video_banner .col-12 {
    padding: 0;
}

section#top_video_banner .title {
    max-width: 100%;
    width: 100%;
}

section#top_video_banner .title h2.has-text-align-center {
    display: none;
}

div#homepage_top_video {
    height: 580px;
}

#homepage_top_video video {
    width: 100% !important;
    height: 100%;
}

@media (max-width: 767px) {
    div#homepage_top_video {
        height: 360px;
    }
}

/* End Video Banner CSS */


@media screen and (max-height: 900px) {
    .mystickyelements-fixed-widget-0.mystickyelements-fixed {
        position: fixed !important;
        bottom: 20px !important;
    }
}


.image_elements_custom button {
    float: right;
    background-color: #585b60;
    color: #fff;
    border: 0;
    padding: 20px 20px;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 500;
    cursor: pointer;
}

.image_elements_custom p {
    font-size: 26px;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.image_elements_custom {
    position: absolute;
    right: 20px;
}

.surgical_image .image_elements_custom p {
    font-size: 24px;
}

@media only screen and (max-width: 1680px) {
    .image_elements_custom p {
        font-size: 20px;
    }

    .surgical_image .image_elements_custom p {
        font-size: 20px;
    }

    .image_elements_custom button {
        font-size: 16px;
    }
}

@media only screen and (max-width: 1600px) and (min-width: 1500px) {
    .header-menu > ul > li > a {
        padding: 19px 30px;
    }
}

@media only screen and (max-width: 1112px) {
    .surgical_image .image_elements_custom p {
        font-size: 14px;
    }

    .image_elements_custom p {
        font-size: 16px;
    }

    .image_elements_custom button {
        font-size: 14px;
    }
}

@media only screen and (max-width: 1064px) and (min-width: 375px) {
    .main-header-hamburger .label {
        display: none;
    }

    .header-menu-mobile .sub-menu {
        /*transition: 0.2s ease-in-out;*/
        transition: all .9s !important;
    }

    .main-header-hamburger .hamburger {
        position: absolute;
        right: 20px;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li:last-child {
        padding-bottom: 15px;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li ul.sub-menu.unwrap-submenu li:last-child {
        padding-bottom: 0;
    }

    span.mystickyelements-minimize.minimize-position-left, span.mystickyelements-minimize.minimize-position-right {
        line-height: 27px !important;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li ul.sub-menu.unwrap-submenu li ul.sub-menu.unwrap-submenu li a {
        padding: 0;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li ul.sub-menu.unwrap-submenu li ul.sub-menu.unwrap-submenu li {
        padding-left: 40px;
    }

    .plus_minus_toggle ul.sub-menu::after {
        content: "+";
        font-size: 30px;
        font-weight: bold;
        position: absolute;
        right: 30px;
        top: 0;
        line-height: 44px;
        z-index: 999;
    }

    .plus_minus_toggle ul.sub-menu.unwrap-submenu::after {
        content: "-";
        font-size: 30px;
        font-weight: bold;
        position: absolute;
        right: 34px;
        top: 0;
        z-index: 999;
        line-height: 44px;
    }

    .plus_minus_toggle {
        position: relative;
    }

    .mystickyelements-position-mobile-right.mystickyelements-entry-effect-slide-in.entry-effect {
        right: -15px !important;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li ul.sub-menu.unwrap-submenu li:last-child {
        border-bottom: 0;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li ul.sub-menu.unwrap-submenu li span.menu-title {
        padding-left: 15px;
        margin-bottom: 0;
        font-size: 16px;
    }

    .header-menu-mobile .separator:after {
        height: auto;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile {
        padding: 0;
        margin: 0;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li {
        border-bottom: 1px solid #000;
        padding: 15px 0 15px 0;
        margin-bottom: 0;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li ul.sub-menu.unwrap-submenu {
        margin: 0;
        border-top: 1px solid #000;
        margin-top: 15px;
        padding-bottom: 0 !important;
        padding-top: 0 !important;
    }

    nav.header-menu-mobile .header-menu-mobile-wraper #menu-mobile li a {
        padding: 0 15px;
        font-size: 16px;
    }
}

.image_height_set .menu-image {
    padding-bottom: 42px;
}

.mystickyelements-fixed {
    z-index: 1 !important;
}

.no_image_text_none span.menu-title {
    display: none;
}

.surgical_image {
    flex: 45% !important;
}

.surgical_image img, .none_surgical_image img {
    object-fit: unset;
}

.none_surgical_image {
    flex: 45% !important;
    margin-left: 90px !important;
}

.cupp-author-box {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    margin: 4rem 0;
    max-width: 600px;
    margin: 0 auto;
}

.cupp-author-box-inner {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.cupp-author-title {
    line-height: 1.4rem;
    font-size: 1.2rem;
    color: white;
    margin: 0;
}

.cupp-author-bio {
    color: white;
    line-height: 1.2rem;
    font-size: 1rem;
    margin: 0;
}

.cupp-author-photo {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

.mystickyelements-fixed-widget-0.mystickyelements-fixed {
    bottom: initial !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

@media (max-width: 768px) {

    .cupp-author-box {
        flex-direction: column;
        text-align: center;
    }

    .cupp-author-photo {
        margin: auto
    }
}

.hidden-fields-container {
    display: none
}

.relative {
    position: relative;
}

.hero-v2 {
    height: calc(100vh - 145px);
    width: 100%;
    background: radial-gradient(circle, rgba(104, 110, 117, 1) 0%, rgba(52, 56, 61, 1) 100%);
    padding-top: 65px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
}

.hero-v2 h1 {
    margin-bottom: 20px;
    color: white;
    font-size: 50px;
    font-weight: 600;
    letter-spacing: 1px;
}

.hero-v2 p {
    color: white;
    margin: 0;
    font-size: 19px;
    max-width: 670px;
    text-align: center;
}

.awards-wrapper {
    display: flex;
    justify-content: center;
    margin-bottom: 35px;
    align-items: center;
    gap: 30px;
}

.awards-wrapper img {
    width: 100%;
    max-width: 150px;
}

@media (max-width: 767px) {
    .awards-wrapper {
        gap: 6px;
    }

    .awards-wrapper img {
        max-width: 110px;
    }
}

.request_bg {
    padding-left: 10px;
    padding-right: 10px;
}

section.team {
    margin: 80px 130px;
}

.padding-top-120 {
    padding-top: 120px !important;
}

.team h2 {
    width: 100%;
    text-align: center;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 60px;
}

.practitioners-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: 1300px;
    margin: auto;
}

@media (max-width: 1064px) {
    .practitioners-container {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .practitioners-container {
        max-width: 300px;
        margin: auto;
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 1065px) {
    .practitioners-container > .practitioner-item:nth-last-child(1):nth-child(3n+1) {
        grid-column: 2;
    }
}

.practitioner-item {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #595d5e;
    text-decoration: none;
    max-width: 420px;
    margin: auto;
    height: 100%;
}

.practitioner-item img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.practitioner-details {
    text-align: center;
    padding: 25px;
    color: #d5d6d7;
}

.practitioner-name {
    color: white;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: normal;
    line-height: 1.5;
    text-transform: none;
    margin: 0;
    padding: 0;
}

.practitioner-position, .practitioner-link {
    margin: 0;
    padding: 0;
    color: inherit;
    margin-top: 5px;
}

.practitioner-link {
    margin-top: 15px;
}

.practitioner-item:not(:hover) .practitioner-link {
    text-decoration: underline;
}

.hero-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.hero-image {
    width: auto;
    height: auto;
    max-width: 80%;
    margin-top: 50px;
}

.our-clinic {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 170px;
    margin-bottom: 170px;
}

.our-clinic-image {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media (min-width: 1025px) {
    .our-clinic > * {
        width: 50%;
    }
}

.our-clinic-benefits {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.our-clinic-benefit-item {
    font-family: Lato, Arial, "Microsoft Yahei", 微软雅黑, STXihei, 华文细黑, system, sans-serif;
    font-size: 0.975rem;
    display: flex inline;
    align-items: center;
    justify-content: start;
    gap: 10px;
    background: #eeefef;
    padding: 10px 15px;
}

.our-clinic-benefit-item img {
    width: 25px;
    height: 25px;
    display: inline-block;
}

.hero-cls {
    height: calc(100vh - 120px);
    position: relative;
    overflow: hidden;
}

.hero-cls .slick-list, .hero-cls .slick-list > div, .hero-cls .slick-list > div > div, .hero-cls .slick-list > div > div > div {
    height: 100%;
}

.hero-cls .slick-arrow {
    position: absolute;
    top: 50%;
    width: 15px;
    height: 26px;
    background-color: transparent;
    background-image: url("../images/chevron-icon.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    border: none;
    font-size: 1px;
    color: transparent;
}

.hero-cls .slick-prev {
    left: 1%;
}

.hero-cls .slick-next {
    transform: rotate(180deg);
    right: 1%;
}

.hero-cls-slide, .hero-cls-slide-flex {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    background: radial-gradient(circle, rgba(104, 110, 117, 1) 0%, rgba(52, 56, 61, 1) 100%);
    gap: 20px;
}

.hero-cls-slide-image, .hero-cls-slide-content {
    width: 50%;
}

.hero-cls-slide-image {
    height: 100%;
    padding-right: 2%;
}

.hero-cls-slide-content {
    display: flex;
    flex-direction: column;
    gap: 5vh;
    padding-left: 8%;
}

.hero-cls-slide-content .hero-cls-slide-content-title {
    margin: 0;
    color: white;
    font-size: 50px;
    font-weight: 600;
    letter-spacing: 1px;
}

.hero-cls-slide-content .hero-cls-slide-content-description {
    margin: 0;
    font-size: 19px;
    color: white;
}

.hero-cls-slide-badges, .hero-cls-slide-links {
    display: flex;
    align-items: center;
    justify-items: flex-start;
    gap: 30px;
}

.hero-cls-slide-links {
    padding-top: 20px;
}

.hero-cls-slide-links a {
    white-space: nowrap;
}

.hero-cls-slide-badges img {
    height: auto;
    width: 10vw;
}

.hero-cls-slide-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: bottom right;
}

.hero-cls-slide-btn {
    transition: 0.2s ease-in-out;
    font: normal normal .95rem/55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    border-color: white;
    background-color: white;
    color: #585d5e;
    padding: 0 15px;
    text-decoration: none;
    text-transform: uppercase;
}

.btn-primary:hover, .hero-cls-slide-btn:hover {
    background: #34383D !important;
    border-color: #34383D !important;
    color: white !important;
}

.hero-cls-slide-link {
    font: normal normal .95rem/55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: white;
    text-decoration: underline;
}

.hero-cls-slide-link:hover {
    text-decoration: none;
}

.contact-hero {
    background: radial-gradient(circle, rgba(239, 246, 255, 1) 0%, rgba(212, 221, 231, 1) 100%);
    max-height: 60vh;
    width: 100%;
    color: #585D5E;
    font-size: 16px;
    font-family: "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    display: flex;
    min-height: 70vh;
    background-size: cover;
    background-position: center top;
}

.contact-hero-light, .contact-hero.contact-hero-light h1, .contact-hero-light .contact-hero-links a {
    color: white;
}

.contact-hero-inner {
    display: flex;
    width: 100%;
}

.contact-hero-background-overlay {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
}

.contact-hero-inner > * {
    width: 50%;
}

.contact-hero h1 {
    margin: 0;
    font-size: 50px;
    font-weight: 600;
    letter-spacing: 1px;
}

.contact-hero-content {
    display: flex;
    align-items: center;
    justify-content: start;
    padding-left: 8%;
}

.contact-hero-content-inner {
    gap: 5vh;
    display: flex;
    flex-direction: column;
}

.contact-hero-points, .contact-hero-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.contact-hero-points li {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    gap: 10px;
}

.contact-hero-links {
    display: flex;
    align-items: center;
    gap: 30px;
}

.contact-hero-links a {
    color: #585D5E;
}

.contact-hero-links a:hover {
    text-decoration: none;
}

.contact-hero-points img {
    margin: 0;
    width: 20px;
}

.contact-hero-inner > img {
    object-fit: contain;
    object-position: bottom center;
    max-width: 700px;
}

.contact-badges {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    padding: 40px 8% 0;
    box-sizing: border-box;
}

.contact-badges img {
    max-width: 130px
}

.contact-phones {
    text-align: center;
    padding: 80px 0 120px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.cls-h2 {
    margin: 0 0 15px;
    letter-spacing: 1px;
    font-weight: bold;
}

.cls-a {
    color: inherit;
}

.cls-a:hover {
    text-decoration: none;
}

.contact-phones h3 {
    margin: 0;
    letter-spacing: 1px;
    font-weight: bold;
    font-size: 16px;
    text-transform: none;
    text-align: left;
}

.contact-phones p {
    margin: 0;
}

.cls-p {
    font-size: 13px;
}

.contact-phones-numbers {
    box-sizing: border-box;
    background: #eeefef;
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: center;
    list-style: none;
    padding: 30px 8%;
    margin: 0;
    gap: 10px;
}

.contact-phones-numbers li {
    background: white;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
    padding: 20px;
    width: 30%;
}

@media (min-height: 1065px) {
    .contact-phones-numbers li {
        max-width: 280px
    }
}

.contact-phones-numbers li p {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.contact-phones-numbers li img {
    max-width: 20px;
    margin: 0;
}

.cls-two-columns {
    display: flex;
    width: 100%
}

.cls-two-columns > * {
    box-sizing: border-box;
    width: 50%;
}

.cls-two-columns-content {
    padding: 8%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-email-content ul {
    font-family: "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    padding: 0 0 0 20px;
    line-height: 1.7;
    margin: 0;
}

.contact-email-form {
    background-size: cover;
    background-position: center center;
}

.contact-email-form-inner {
    padding: 8%;
    background: rgba(88, 93, 94, .5);
}

.contact-email-form-inner > div {
    margin: auto;
    max-width: 680px;
    padding: 30px;
    background: rgba(88, 93, 94);
}

.contact-email-form ul {
    margin: 0;
}

.contact-email-form .wpcf7-form-control {
    width: 100%;
}

.contact-email-form .wpcf7-list-item-label {
    color: white;
}

.cls-h3-icon {
    box-sizing: border-box;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    background: #eeefef;
    text-transform: none;
    font-size: 19px;
    gap: 5px;
    letter-spacing: 1px;
    font-weight: bold;
    margin: 0;
}

.cls-h3-icon img {
    margin: 0;
    width: 20px;
}

.contact-map-content .cls-h3-icon {
    margin-top: 30px;
}

.contact-map-iframe iframe {
    width: 100%;
    height: 100%;
    min-height: 700px;
}

.page-template-template-contact .our-clinic {
    margin: 0;
}

.contact-hours-background {
    object-fit: cover;
    object-position: center center;
}

.contact-languages {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.contact-languages li {
    font-family: Lato, Arial, "Microsoft Yahei", 微软雅黑, STXihei, 华文细黑, system, sans-serif;
    font-size: 0.975rem;
    display: flex inline;
    align-items: center;
    justify-content: start;
    gap: 8px;
    background: #eeefef;
    padding: 10px 15px;
}

.contact-languages li img {
    margin: 0;
    max-width: 20px;
}

.contact-hours-content h4 {
    letter-spacing: 1px;
    font-weight: bold;
    font-size: 16px;
    margin: 30px 0 15px;
    text-transform: none;
}

.contact-hours-hours {
    font-family: Lato, Arial, "Microsoft Yahei", 微软雅黑, STXihei, 华文细黑, system, sans-serif;
    list-style: none;
    padding: 0;
    margin: 0;
    color: #3a3a3a;
}

.contact-hours-hours li {
    margin-bottom: 5px;
}

.contact-hours-hours span {
    display: inline-block;
    width: 200px;
}

.card, .card-big {
    text-decoration: none;
    display: block;
}

#save-face-accredited-clinic p {
    text-align: center !important;
}

#save-face-accredited-clinic img {
    max-width: 150px !important;
    margin: auto !important;
}

.entry-meta {
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a;
    margin-bottom: 1.6rem;
    font-size: 0.975rem;
    line-height: 1.7;
    display: flex;
    gap: 1rem;
}

.widget-title {
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font: 1.4rem / 1.4 Lato, Arial, "Microsoft Yahei", 微软雅黑, STXihei, 华文细黑, system, sans-serif;
    margin: 0px 0px 1.2rem;
}

.widget ul {
    list-style: none;
    padding: 0;
    margin: 1rem 0 2rem 0;
}

.widget ul li {
    margin-bottom: 6px;
}

.widget ul li a {
    color: rgb(88, 93, 94);
    font: 0.875rem / 1.4 Lato, Arial, "Microsoft Yahei", 微软雅黑, STXihei, 华文细黑, system, sans-serif;
}

.prev-next-links {
    padding: 0 8%;
    margin: 60px 0;
    display: flex;
    justify-content: center;
    align-items: start;
    gap: 2rem;
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a;
}

.prev-link {
    text-align: right;
    width: 50%;
}

.next-link {
    width: 50%;
}

.post-author {
    margin: 60px 0;
    padding: 2rem;
    background: #585D5E;
}

.content-post-footer .post-author {
    padding: 0;
    background: transparent;
}

.content-post-footer .cupp-author-photo {
    object-fit: cover;
    aspect-ratio: 1/1;
    width: 125px;
    height: 125px;
}

.content-post-footer .cupp-author-box {
    max-width: 100%;
    background: #fafafa;
    padding: 15px;
    margin-top: 15px;
}

.content-post-footer .post-author h4 {
    font-size: 18px;
    margin: 0;
}

.content-post-footer .post-author h4.cupp-author-title {
    padding: 0;
    background: transparent;
    font-size: 18px;
    line-height: 22px;
    color: #555d5f;
}

.content-post-footer .post-author p.cupp-author-bio {
    color: #555d5f;
}

.content-post-footer .post-author h4, .content-post-footer .prev-link, .content-post-footer .next-link, .post-sidebar .widget-title, .post-sidebar .wp-block-heading {
    background: #eeefef;
    text-decoration: none;
    padding: 20px;
    font-size: 18px;
}

.post-sidebar .widget-title, .post-sidebar .wp-block-heading {
    margin-top: 60px;
}

.post-sidebar > .widget:first-child .widget-title {
    margin-top: 0;
}

.content-post-footer .prev-next-links p {
    margin-bottom: 0;
}

.content-post-footer .prev-next-links {
    padding: 0;
    align-items: stretch;
}

.widget_categories ul {
    list-style: disc;
    list-style-position: inside;
    padding-left: 15px;
}

.widget ul.recent-category-posts {
    list-style: none;
    margin: 0;
    padding: 0;
}

.widget ul.recent-category-posts li {
    margin-bottom: 10px;
}

.widget ul.recent-category-posts li a {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 6px;
    background: #fafafa;
    padding: 6px;
    text-decoration: none;
}

.widget ul.recent-category-posts li a img {
    margin: 0 !important;
    width: 50px;
    object-fit: cover;
    aspect-ratio: 1/1;
}

.wp-block-image {
    margin-bottom: 1.6rem;
}

.alignleft, img {
    margin-right: auto;
    margin-left: 0;
    display: block;
}

.alignright, img {
    margin-right: 0;
    margin-left: auto;
    display: block;
}

.aligncenter, img {
    margin-right: auto;
    margin-left: auto;
    display: block;
}

.block-youtube-inner {
    max-width: 750px;
    margin: 0 auto;
    position: relative;
    aspect-ratio: 16 / 9;
    width: 100%;
    background: #000;
}

.block-youtube-inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.youtube-cover {
    cursor: pointer;
}

.youtube-icon {
    background: url("../images/video-player-icon.png") no-repeat center center;
    background-size: contain;
    width: 70px;
    height: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

label span.wpcf7-list-item-label:before {
    display: none;
}

.wpcf7 {
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
}

.wpcf7 .col-sm-6 {
    box-sizing: border-box;
}

.wpcf7-radio {
    display: flex;
    flex-direction: column;
    padding: 10px 0;
}

.wpcf7-list-item label {
    display: block;
    padding: 10px 0;
}

.wpcf7-list-item input {
    display: inline-block;
    width: auto;
}

.main-footer-menu li a:hover, .main-footer-address p a:hover, .main-footer-rating a:hover {
    color: rgba(255, 255, 255, 0.5);
}

@media (min-width: 850px) {
    .block-youtube {
        padding: 75px 0;
    }
}

@media (min-width: 1065px) {
    .contact-email-mobile-header {
        display: none;
    }

    .header-form {
        display: none;
    }
}

@media (max-width: 1064px) {
    .header-form {
        position: absolute;
        background: #585d5e;
        width: 100%;
        left: 0;
        top: 60px;
        text-align: center;
        box-sizing: border-box;
        overflow: hidden;
        max-height: 0;
        transition: max-height 0.25s;
    }

    .header-form > div {
        padding: 20px;
    }

    .mform-active .header-form {
        max-height: 75vh;
    }

    .header-form h5 {
        text-align: center !important;
    }

    .header-form .field input, .header-form .field textarea {
        width: 100%;
    }

    .contact-hero {
        background-position: right top;
    }

    .contact-hero-inner {
        flex-direction: column-reverse;
        text-align: center;
        max-height: calc(100vh - 60px);
        overflow: hidden;
        background: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
    }

    .contact-hero-inner > * {
        width: 100%;
    }

    .contact-hero-inner > img {
        margin: auto;
    }

    .contact-hero-content-inner {
        gap: 2vh;
    }

    .contact-hero-content {
        justify-content: center;
        padding: 30px 8% 60px;
        box-sizing: border-box;
    }

    .contact-hero-points li {
        justify-content: center;
    }

    .contact-hero-links {
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .contact-phones-numbers {
        padding: 0 8%;
        background: white;
        flex-direction: column;
    }

    .contact-phones-numbers li {
        background: #eeefef;
        width: auto;
    }

    .contact-phones .cls-p,
    .contact-email-mobile-header {
        padding: 0 8%;
        text-align: center;
    }

    .cls-two-columns {
        flex-direction: column;
    }

    .cls-two-columns > * {
        aspect-ratio: 2 / 1;
        width: 100%;
    }

    .contact-email-form-inner {
        padding: 0;
    }

    .contact-map, .contact-hours {
        flex-direction: column-reverse;
    }

    .contact-map-iframe iframe {
        aspect-ratio: 2/1;
        min-height: auto;
        height: auto;
    }

    .contact-languages li {
        width: 48%;
    }

    .hero-cls-slide-links, .contact-badges, .contact-hero-points li:first-child, .contact-email-desktop-header {
        display: none;
    }

    .hero-cls-slide-flex {
        padding-top: 30px;
        flex-direction: column;
    }

    .hero-cls-slide-image, .hero-cls-slide-content {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        text-align: center;
    }

    .hero-cls-slide-content {
        padding-left: 15px;
        padding-right: 15px;
        gap: 20px;
    }

    .hero-cls-slide-badges {
        justify-content: center;
        gap: 13px;
    }

    .hero-cls-slide-badges img {
        width: 95px;
    }

    .hero-cls-slide-image img {
        max-height: 60vh;
        object-position: bottom center;
    }

    .contact-phones {
        padding: 80px 0 80px;
        display: flex;
    }

    .contact-email-mobile-header {
        aspect-ratio: auto;
        padding-bottom: 0;
    }

    .cls-h2 {
        margin: 0 0 30px 0;
    }

    .cls-two-columns {
        margin-bottom: 50px;
    }

    .page-template-template-contact .our-clinic {
        margin: 0 0 50px;
    }
}

@media (max-width: 1023px) {
    textarea::placeholder, input::placeholder {
        font-size: 1rem;
    }

    .our-clinic {
        flex-direction: column;
        margin-top: 100px;
        margin-bottom: 100px;
    }

    .our-clinic-content h2 {
        text-align: center;
    }

    .our-clinic-benefit-item {
        font-size: 1rem;
        display: flex block;
    }

    .pre-footer .container, .pre-footer .row > div {
        padding: 0;
        max-width: 100%;
    }

    .pre-footer .row > div > div {
        margin: 0;
        padding: 20px;
    }

    .pre-footer-social, .pre-footer {
        background: white !important;
    }

    .pre-footer-subscribe {
        background: #eeefef;
    }

    .blog-hero {
        padding-bottom: 50vh
    }

    .content-post-footer .post-author h4, .content-post-footer .prev-link, .content-post-footer .next-link, .post-sidebar .widget-title, .post-sidebar .wp-block-heading {
        text-align: left;
    }

    .content-post-footer .cupp-author-photo {
        width: 75vw;
        height: 75vw;
    }

    .content-post-footer .post-author p.cupp-author-bio {
        text-align: left;
    }

    .prev-next-links {
        flex-direction: column;
        gap: 1rem;
    }

    .prev-next-links > div {
        width: 100%;
    }

    .widget ul.recent-category-posts li a img {
        width: 75px;
    }

    .post-sidebar {
        display: flex;
        flex-direction: column;
    }

    .post-sidebar .widget_recent_category_posts_widget {
        order: 0;
    }

    .post-sidebar .widget_categories {
        order: 1;
    }

    .post-sidebar .widget_shortcode_display_widget {
        order: 2;
    }
}

@media (max-width: 767px) {
    .contact-hero {
        background-position: 80% top;
        min-height: 88vh;
    }

    .hero-image {
        max-width: 115%;
    }

    .list-social-links li {
        margin: 0 5px !important;
    }

    .hero-cls-slide-badges img {
        display: none;
    }

    .hero-cls-slide-badges img:first-child,
    .hero-cls-slide-badges img:nth-child(2),
    .hero-cls-slide-badges img:nth-child(3) {
        display: block;
    }
}

@media (min-width: 768px) {
    .awards-wrapper img:nth-child(2) {
        max-width: 190px;
    }
}

.contact-hero-mobile-badges {
    display: none;
}

@media (max-width: 1064px) {
    .contact-hero-mobile-badges {
        margin-top: 30px;
        display: flex;
        gap: 10px;
        align-items: center;
        justify-content: center;
    }

    .contact-hero-mobile-badges img {
        max-height: 40px;
    }
}

.margin-0-auto {
    margin: 0 auto !important;
}

.pre-footer {
    background: #eeefef;
    margin: 0;
    padding: 50px 0;
}

.content-column iframe[src*="youtu"] {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
}

@media screen and (max-width: 992px) {
    section.team {
        margin: 60px 30px;
    }

    .padding-top-120 {
        padding-top: 45px !important;
    }

    .team h2 {
        margin-bottom: 25px;
    }

    .hero-v2 p {
        padding: 0 35px;
    }

    .hero-v2 {
        height: calc(100vh - 250px);
    }

    .hero-cls-slide-content-title {
        font-size: 30px !important;
    }
}

@media screen and (max-height: 700px) {
    .contact-hero h1 {
        font-size: 37px !important;
    }

    .hero-cls-slide-content-title {
        font-size: 30px !important;
    }

    .hero-cls-slide-content-description {
        font-size: 14px !important;
    }
}

@media screen and (max-width: 560px) {
    .hero-v2 h1, .contact-hero h1 {
        font-size: 37px !important;
    }

    .hero-cls-slide-content-title {
        font-size: 30px !important;
    }

    .hero-v2 p {
        padding: 0 15px;
    }
}

@media (max-width: 480px) {
    .block-consultation-form {
        margin-left: 0;
    }
}

.main-header {
    padding: 0 2% 0 2%;
}

@media (min-width: 1065px) {
    .header-menu {
        box-sizing: border-box;
        left: 0;
        margin: 0;
        padding: 0 2%;
    }

    .search-form-unwrap {
        width: 210px;
    }

    .search-form-unwrap input[type=search]::placeholder {
        text-transform: capitalize;
    }

    .search-form-unwrap input[type=search] {
        padding: 4px 45px 2px 12px !important;
        background: #bebebe;
    }

    .search-form button {
        right: 0;
    }

    .search-form button i {
        color: #555d5f;
        transform: translateY(-11%);
        width: 54px;
    }

    .phone-consultation.inline {
        margin-right: 0;
    }

    .phone-consultation.d {
        display: flex;
        align-items: baseline;
        gap: 10px;
    }

    .phone-consultation-phone-outer {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .phone-consultation-icon {
        width: 12px;
        height: 12px;
        object-fit: contain;
    }

    @media (max-width: 1064px) {
        .phone-consultation.d {
            display: none;
        }
    }

    .phone-consultation .btn-primary {
        background: linear-gradient(90deg, rgb(131, 46, 93) 0%, rgb(142, 83, 112) 100%);
        font-weight: bold;
        height: 38px;
        margin: 0;
        line-height: 2.5;
        color: white;
    }

    .header-menu > ul {
        white-space: nowrap;
    }

    .header-menu > ul > li > a {
        padding-left: 15px;
        padding-right: 15px;
    }

    .header-menu > ul > li:hover > a {
        background-color: #eceded;
        color: #555d5f;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr 1.5fr;
        grid-template-rows: auto auto;
        list-style: none;
        padding: 0 2%;
        margin: 0;
        background: #eeefef;
        width: 100%;
    }

    .header-menu > ul > li.mm-3-columns > .sub-menu {
        grid-template-columns: 1fr 1fr 1fr 1.14fr;
    }

    .header-menu > ul > li.mm-2i-columns > .sub-menu {
        grid-template-columns:  1.5fr 1fr 1fr 1.5fr;
    }

    .header-menu > ul > li.mm-our-group > .sub-menu {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .header-menu > ul > li.mm-our-group-4 > .sub-menu {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li {
        margin: 20px 0 30px;
        padding: 0;
    }

    .header-menu > ul > li.mm-our-group:not(.mm-our-group-4) > .sub-menu > li {
        margin: 20px 10px;
        padding: 0;
    }

    .header-menu > ul > li.mm-our-group:not(.mm-our-group-4) > .sub-menu > li {
        margin: 20px 0 30px
    }

    .header-menu > ul > li.mm-our-group:not(.mm-our-group-4) > .sub-menu > li + li {
        margin-left: 30px;
    }

    .header-menu > ul > li.mm-our-group-4 > .sub-menu > li {
        padding: 20px 10px;
        margin: 0;
        border-bottom: 1px solid #bebebe;
    }

    .header-menu > ul > li.mm-our-group-4 > .sub-menu > li:first-child,
    .header-menu > ul > li.mm-our-group-4 > .sub-menu > li:nth-child(5) {
        padding-left: 0;
    }

    .header-menu > ul > li.mm-our-group-4 > .sub-menu > li:nth-last-child(2),
    .header-menu > ul > li.mm-our-group-4 > .sub-menu > li:nth-last-child(6) {
        padding-right: 0;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header + .mm-column-header,
    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header-empty + .mm-column-header {
        border-left: 1px solid #bebebe;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-img,
    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header + .mm-column-header,
    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header-empty + .mm-column-header {
        padding-left: 20px;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-img:first-child {
        padding-left: 0;
        padding-right: 20px;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header-empty {
        margin-top: 60px;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header > a,
    .header-menu > ul > li > .sub-menu > li > .sub-menu > li.mm-column-header-secondary > a,
    .mm-link-img span {
        font: normal normal .875rem / 1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
        font-weight: bold !important;
        font-size: 1rem;
        display: block;
        margin-bottom: 16px;
        text-transform: uppercase;
        text-decoration: none;
        color: #575d5e;
    }

    .mm-link-img:hover span,
    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-header > a:hover,
    .header-menu > ul > li > .sub-menu > li > .sub-menu > li > a:hover {
        background-color: transparent !important;
        color: #98A2A4;
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li > a {
        display: block;
        line-height: 1.45rem;
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li > a b {
        color: rgb(131, 46, 93);
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li.mm-column-header-secondary > a {
        margin-top: 20px;
    }

    .header-menu > ul > li > .sub-menu > li > .sub-menu > li {
        line-height: 1.2rem;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer {
        grid-column: 1 / -1;
        background: #bebebe;
        margin: 0 -2%;
        padding: 0 2%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border: none;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-img img {
        height: 100%;
        object-fit: cover;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu > li.mm-column-img img,
    .mm-link-img img {
        box-shadow: -1px 20px 30px -13px rgba(0, 0, 0, 0.26);
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer img.mm-footer-logo {
        width: auto !important;
        height: 26px;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer img.mm-footer-gallery-img,
    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer .btn-primary {
        width: auto !important;
        height: 40px;
        line-height: 40px;
        text-transform: none;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer .mm-footer-gallery,
    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer .btn-primary {
        gap: 30px;
        display: flex;
        align-items: center;
        margin: 18px 0;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer .btn-primary {
        gap: 10px;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer .btn-primary img.mm-footer-icon {
        width: 25px;
        height: 25px;
    }

    .header-menu > ul > li.mm-4-columns > .sub-menu li.mm-footer .btn-primary {
        background-color: #666c6d;
        border-color: #666c6d;
    }

    .mm-link-img {
        text-decoration: none;
    }

    .mm-link-img img {
        max-height: 250px;
        object-fit: cover;
    }

    .header-menu > ul > li.mm-our-group-4 .mm-link-img img {
        height: 175px;
        object-fit: cover;
    }

    .mm-link-img img {
        transition: 500ms;
    }

    .mm-link-img:hover img {
        filter: brightness(70%);
    }

    .mmenu-button-placeholder, .mm-column-header-mobile-only, .mobile-header-icons {
        display: none;
    }

    .main-header-logo, .header-menu {
        transition: 0.2s;
    }

    .scrolled .main-header-logo {
        max-width: 120px;
    }

    .scrolled .header-menu .phone-consultation {
        display: none;
    }

    .scrolled .header-menu {
        position: absolute;
        top: 0;
        margin-left: 160px;
        width: auto;
    }

    .scrolled .header-menu > ul > li > .sub-menu {
        margin: 0 0 0 -160px;
        width: calc(100vw - 2%);
        top: 60px;
    }

    .scrolled .header-menu > ul > li > a {
        padding-bottom: 26px;
    }
}

@media (min-width: 1065px) and (max-width: 1320px) {
    .header-menu {
        padding: 0;
    }

    .scrolled .header-menu > ul > li > a {
        padding-left: 6px;
        padding-right: 6px;
    }
}

@media (min-width: 2000px) {
    .scrolled .header-menu {
        margin-left: 170px;
    }
}

@media (max-width: 1064px) {
    .hamburger span {
        margin: 5px 0;
    }

    .mmenu-active .hamburger span {
        margin: 3px 0;
    }

    .mobile-header-icons {
        display: flex;
        gap: 16px;
        margin-right: 10px;
        position: relative;
        overflow: hidden;
    }

    .mobile-header-icons > *, .mobile-header-icons .hamburger {
        display: block;
        position: static !important;
    }

    .mmenu-active .mobile-header-icons .hamburger {
        transform: translateY(9px);
    }

    .mobile-header-icons > a, .mobile-header-icons > .mobile-header-icons-phone {
        background: white;
        color: #585D5E;
        padding: 5px 0;
        min-width: 29px;
        text-align: center;
        position: relative !important;
    }

    .mobile-header-icons > .mobile-header-icons-phone > a {
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        z-index: 1;
        color: transparent;
        font-size: 1px;
    }

    .mmenu-active {
        overflow: hidden;
    }

    .header-menu {
        position: absolute;
        top: 60px;
        right: -450px;
        height: calc(100vh - 60px);
        width: 100%;
        max-width: 450px;
        padding: 8px 0;
        background: white;
        flex-direction: column;
        overflow-y: scroll;
        transition: 200ms;
    }

    .mmenu-active .header-menu {
        right: 0;
    }

    .hamburger span {
        transition: 200ms;
    }

    .mmenu-active .hamburger span:first-child {
        transform: rotate(-45deg)
    }

    .mmenu-active .hamburger span:nth-child(2) {
        background: transparent;
    }

    .mmenu-active .hamburger span:last-child {
        transform: rotate(45deg);
        margin-top: -12px;
    }

    .header-menu ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
    }

    .header-menu > ul {
        gap: 8px;
        padding-bottom: 20px;
    }

    .header-menu > ul ul {
        transition: 200ms;
        overflow: hidden;
        max-height: 0;
    }

    .header-menu > ul li.mactive > a {
        background: white;
        color: #98a0a2;
    }

    .header-menu > ul li.mactive > ul, .header-menu > ul li.mactive + li.mm-column-header-empty > ul {
        max-height: 800px;
    }

    .header-menu ul > li > a {
        padding: 0 8%;
        display: block;
        box-sizing: border-box;
        color: #555d5f;
        font: normal normal .875rem / 53px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
        font-size: 1.2rem;
        line-height: 3rem;
        text-decoration: none;
        position: relative;
    }

    .header-menu ul > li.menu-item-has-children > a:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        right: 8%;
        width: 10px;
        height: 10px;
        border-top: 2px solid #555d5f;
        border-right: 2px solid #555d5f;
        transform: translateY(-50%) rotate(45deg);
        transition: 200ms;
    }

    .header-menu ul > li.menu-item-has-children.mactive > a:after {
        border-color: #98a0a2;
        transform: translateY(-50%) rotate(135deg);
    }

    .header-menu > ul > li > a {
        background: #eeefef;
        text-transform: uppercase;
    }

    .header-menu > ul > li > ul > li.menu-item-has-children > a {
        font-size: 1.1rem;
        border-top: 2px solid #eeefef;
        padding-left: 10%;
    }

    .header-menu > ul > li > ul > li.menu-item-has-children + .mm-column-header-mobile-only > a {
        border-top: 2px solid #eeefef;
    }

    .header-menu > ul > li > ul > li:not(.menu-item-has-children) a,
    .header-menu > ul > li > ul > li > ul > li > a {
        padding-left: 10%;
        text-decoration: underline;
        line-height: 2.2rem;
        font-size: 1rem;
    }

    .mm-column-img, .mm-footer, .mm-link-img img, .mm-column-header-secondary {
        display: none;
    }

    .header-menu .phone-consultation {
        padding: 0 8% 30px;
    }

    .header-menu .search-form-unwrap {
        width: 100%;
    }

    .header-menu .search-form input[type=search] {
        padding: 8px 45px 5px 15px;
    }

    .header-menu .search-form input[type=search]::placeholder {
        text-transform: capitalize;
    }

    .header-menu .search-form button {
        right: 0;
    }

    .mmenu-button-placeholder {
        padding-bottom: 120px;
        text-align: center;
    }

    .mmenu-button-placeholder .btn-primary {
        width: auto !important;
        height: 40px;
        line-height: 40px;
        text-transform: none;
        gap: 10px;
        display: inline-flex;
        align-items: center;
        margin: 18px 0;
        background-color: #666c6d;
        border-color: #666c6d;
    }

    .mmenu-button-placeholder .btn-primary img {
        width: 25px;
        height: 25px;
    }

    .header-menu a b {
        color: rgb(131, 46, 93);
    }

    .mm-mobile-rename-our-team > a:before {
        content: "Our Team";
        font-size: 1.2rem;
    }

    .mm-mobile-rename-our-team > a {
        font-size: 0 !important;
    }
}

.procedures-hero {
    background-position: center center;
    background-size: cover;
    color: #fff;
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
}

.procedures-hero-inner {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 100%);
    min-height: calc(89vh - 113px);
    display: flex;
    align-items: center;
    padding: 0 8%;
}

.procedures-hero-content {
    width: 100%;
}

.procedures-hero-content-inner {
    display: flex;
    flex-direction: column;
    gap: 60px;
    padding: 30px 0;
}

@media (max-height: 720px) {
    .procedures-hero-content-inner {
        gap: 30px;
        padding: 15px 0;
    }
}

.procedures-hero-badges {
    display: flex;
    gap: 20px;
}

.procedures-hero-badges img {
    height: auto;
    width: 9vw;
    margin: 0;
}

.procedures-hero-title {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.procedures-hero-category {
    font-size: 1rem;
}

.procedures-hero-category span {
    display: inline-block;
    border: 1px solid white;
    padding: 1px 8px;
}

.procedures-hero h1 {
    color: white;
    font-size: 50px;
    font-weight: bold;
    letter-spacing: 0;
    margin: 0;
}

.procedures-hero-benefits {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.procedures-hero-benefits li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1rem;
}

.procedures-hero-benefits li img {
    width: auto;
    height: 20px;
    margin: 0;
}

.procedures-hero .btn-primary {
    background: white;
    color: rgb(88, 93, 94);
    border-color: white;
}

.procedures-glance {
    padding: 24px 8%;
    background: #eeefef;
    color: rgb(88, 93, 94);
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
}

.procedures-glance-inner {
    gap: 30px;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.procedures-glance-items {
    display: flex;
    justify-content: end;
    align-items: start;
    gap: 60px;
}

.procedures-glance-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: .9rem;
}

.procedures-glance-item-price > span {
    cursor: pointer;
    text-decoration: underline;
}

.procedures-glance-item-price div.with-popover {
    display: inline-block;
    position: relative;
}

.procedures-glance-item-price:hover > span {
    text-decoration: none;
}

.with-popover > span {
    cursor: pointer;
    display: inline-block;
    border: 1px solid #555d5f;
    border-radius: 50px;
    width: 15px;
    height: 15px;
    line-height: 16px;
    font-size: 12px;
    text-align: center;
    background: #555d5f;
    color: white;
}

.with-popover .hover::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    border-width: 10px;
    border-style: solid;
    border-color: white transparent transparent transparent;
}

.with-popover .hover {
    position: absolute;
    background: white;
    opacity: 0;
    width: max-content;
    max-width: 200px;
    text-align: center;
    padding: 8px 12px;
    border-radius: 6px;
    bottom: 150%;
    left: 50%;
    transform: translateX(-50%);
    transition: opacity 0.3s;
    z-index: 10;
    visibility: hidden;
}

.with-popover:hover .hover {
    visibility: visible;
    opacity: 1;
}

.procedures-glance-item img {
    width: 1.6rem;
    margin: 0;
    height: auto;
}

.procedures-glance-item span:last-child {
    display: flex;
    gap: 10px;
    align-items: center;
}

.procedures-glance-title {
    display: flex;
    align-items: center;
    font-size: 1rem;
    text-transform: uppercase;
}

@media (max-width: 1064px) {
    .procedures-hero {
        text-align: center;
        background-position-x: 78%;
    }

    .procedures-hero-inner {
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 60%);
        align-items: start;
        min-height: calc(100vh - 113px);
    }

    .procedures-hero-content-inner {
        padding-top: 30px;
        gap: 10px;
    }

    .procedures-hero-title {
        gap: 5px;
    }

    .procedures-hero-badges {
        gap: 13px;
        justify-content: center;
    }

    .procedures-hero-badges img {
        height: auto;
        width: 95px;
    }

    .procedures-hero-badges img:nth-child(n+3) {
        display: none;
    }

    .procedures-hero-category {
        font-size: 14px;
    }

    .procedures-hero-category span {
        display: block;
        border: none;
        padding: 0;
    }

    .procedures-hero h1 {
        font-size: 30px;
    }

    .procedures-hero-benefits, .procedures-hero-link {
        display: none;
    }

    .procedures-glance {
        background: linear-gradient(180deg, rgba(238, 239, 239, 0) 0%, rgb(238, 239, 239) 17%);
        margin-top: -110px;
        padding: 0 8% 30px;
    }

    .procedures-glance-inner {
        flex-direction: column;
        justify-content: center;
        max-width: 500px;
        margin: auto;
    }

    .procedures-glance-title {
        display: block;
        text-align: center;
        color: white;
    }

    .procedures-glance-items {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 20px;
    }
}

.gallery {
    font: normal normal 2.3rem / 1.4 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
}

.gallery-hero {
    padding-top: 80px;
    background: #eeefef;
}

.gallery-hero-inner {
    display: flex;
    flex-direction: column;
    justify-content: end;
    gap: 40px;
}

.gallery-hero h1 {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 0;
    margin: 0;
}

.gallery-badges {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.gallery-badges img {
    max-width: 95px;
    margin: 0;
}

.gallery-hero-inner-footer {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    text-align: center;
}

.gallery-hero-inner-footer span {
    font-size: 16px;
    color: #585D5E;
}

.gallery-hero-inner-footer ul, .gallery-item ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: end;
    gap: 10px;
}

.gallery-hero-inner-footer ul li a {
    display: block;
    font-size: 21px;
    font-weight: bold;
    padding: 8px 15px;
    color: #585D5E;
    text-decoration: none;
}

.gallery-hero-inner-footer ul li a.active, .gallery-hero-inner-footer ul li a:hover {
    background: white;
    border-top-right-radius: 8px;
    border-top-left-radius: 8px;
}

.gallery-item {
    background: #eeefef;
    box-shadow: 0 21px 31px rgba(0, 0, 0, 0.25);
    color: #585D5E;
    font-size: 16px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-items: start;
    text-align: center;
    box-sizing: border-box;
    transition: box-sizing 0.2s;
    padding: 5px 5px 15px;
}

.gallery-item:not(.active) .gallery-item-image:not(:first-child) {
    display: none;
}

.gallery-item-image {
    background: black;
    position: relative;
}

.gallery-item-image:before, .gallery-item-image:after {
    display: block;
    background: rgba(238, 239, 239, 0.4);
    color: white;
    padding: 5px 10px;
    font-size: 14px;
    font-weight: bold;
    position: absolute;
    bottom: 5px;
    border-radius: 5px;
    z-index: 2;
}

.gallery-item-image:before {
    content: "Before";
    left: 5px;
}

.gallery-item-image:after {
    content: "After";
    right: 5px;
}

.gallery-item .magnify {
    position: absolute;
    right: 5px;
    top: 5px;
    color: white;
    font-size: 40px;
    width: 32px;
    height: 32px;
    margin: auto;
    z-index: 2;
    pointer-events: none;
}

.gallery-item img {
    width: 100%;
    height: 236px;
    object-fit: cover;
    transition: 0.2s;
}

.gallery-item ul {
    margin-top: 5px;
    min-height: 60px;
    flex-wrap: wrap;
    align-items: start;
}

.gallery-item ul li {
    background: white;
    border-radius: 10px;
    padding: 4px 10px;
    font-size: 15px;
    transition: 0.2s;
}

.gallery-item ul li a {
    text-decoration: none;
    color: inherit;
    transition: 0.2s;
}

.gallery-item ul li:hover {
    background: #555d5f;
    color: white;
}

.gallery-grid:not(.active) {
    display: none;
}

.gallery-grid {
    margin: 80px 0;
    display: grid;
    gap: 20px;
}

.gallery-item.active {
    position: fixed;
    top: 90px;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.75);
    z-index: 10;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.gallery-item.active .gallery-item-image img {
    max-height: 60vh;
}

.gallery-item.active .gallery-item-image {
    background: transparent;
    width: 100%;
    display: inline-block;
}

.gallery-item.active img.magnify {
    display: none;
}

.gallery-item.active .gallery-item-images-container {
    width: 100%;
    max-width: 70%;
    overflow: hidden;
}

.gallery-item.active .gallery-item-images-container-inner {
    display: flex;
    flex-wrap: nowrap;
    transition: transform 0.2s;
}

.gallery-item.active .gallery-item-images-container-inner > div {
    flex: 0 0 100%;
}

.gallery-item.active img {
    width: 100%;
    height: auto;
}

.gallery-item.active .gallery-item-non-active, .gallery-item:not(.active) .gallery-item-active {
    display: none;
}

.gallery-item.active ul {
    display: inline-block;
    margin-left: 10px;
}

.gallery-item.active span {
    color: white;
}

.gallery-item:not(.active) .gallery-item-prev, .gallery-item:not(.active) .gallery-item-next, .gallery-item:not(.active) .gallery-item-close {
    display: none;
}

.gallery-item.active .gallery-item-prev, .gallery-item.active .gallery-item-next {
    display: block;
    background-image: url("../images/arrow-icon.png");
    background-size: contain;
    background-color: white;
    border-radius: 20px;
    background-repeat: no-repeat;
    background-position: center;
    border: 4px solid white;
    width: 20px;
    height: 20px;
    z-index: 3;
    cursor: pointer;
}

.gallery-item.active .gallery-item-close .x-icon {
    display: inline-block;
    background-image: url("../images/x-icon.png");
    background-size: contain;
    cursor: pointer;
    width: 30px;
    height: 30px;
}


.gallery-item.active .gallery-item-prev {
    transform: rotate(180deg);
}

@media (min-width: 1065px) {
    .gallery-badges img {
        max-width: 120px;
    }

    .gallery-hero h1 {
        font-size: 50px;
    }

    .gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .gallery-item .magnify, #gallery-categories-select {
        display: none;
    }

    .gallery-item:hover {
        box-shadow: none;
    }

    .gallery-item:not(.active):hover img.before-after-image {
        opacity: 0.5;
        cursor: pointer;
    }

    .gallery-item:not(.active):hover .magnify {
        display: block;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    .gallery-item.active .gallery-item-next {
        position: absolute;
        right: 5%;
    }

    .gallery-item.active .gallery-item-prev {
        position: absolute;
        left: 5%;
    }

    .gallery-item.active .gallery-item-close {
        text-align: right;
        width: 100%;
        max-width: 70%;
    }
}

@media (max-width: 1064px) {
    #gallery-categories {
        display: none;
    }

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gallery-item ul {
        min-height: 0;
        padding-bottom: 30px;
    }

    .gallery-item img {
        height: 180px;
    }

    .gallery-item.active {
        top: 60px;
    }

    .gallery-item.active .gallery-item-images-container {
        max-width: 100%;
    }

    .gallery-item.active .gallery-item-next {
        margin: -21px -60px 30px 0;
        width: 32px;
        height: 32px;
    }

    .gallery-item.active .gallery-item-prev {
        margin: 0 0 -21px -60px;
        width: 32px;
        height: 32px;
    }

    .gallery-item.active .gallery-item-close {
        position: absolute;
        right: 20px;
        top: 20px;
    }
}

@media (max-width: 767px) {
    .gallery-grid {
        grid-template-columns: 1fr;
    }
}

.calculator {
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a;
    font-size: 0.975rem;
    line-height: 1.7;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 30px 0;
}

.calculator .range-labels {
    font-size: 0.8rem;
    display: flex;
    justify-content: space-between;
}

.calculator input[type="range"] {
    -webkit-appearance: none;
    width: 100%;
    height: 4px;
    background: linear-gradient(to right, #555d5f 0%, #555d5f 50%, white 50%);
    border-radius: 0;
    outline: none;
    margin-top: 0.5rem;
}

.calculator input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    background: white;
    border: 2px solid #555d5f;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.3);
}

.calculator input[type="range"]::-moz-range-thumb {
    width: 24px;
    height: 24px;
    background: white;
    border: 2px solid #555d5f;
    border-radius: 50%;
    cursor: pointer;
}

.calculator-box {
    display: flex;
    align-items: center;
    gap: 60px;
    padding: 20px;
    background: #eeefef;
}

.calculator-sliders {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 50%;
}

.calculator-result {
    flex-grow: 1;
    padding: 20px;
    background: white;
}

.calculator .btn-primary {
    width: 100%;
}

.calculator .disclaimer {
    font-size: 0.8rem;
}

@media (max-width: 1066px) {
    .calculator-box {
        flex-direction: column;
    }

    .calculator-sliders {
        width: 100%;
    }

    .calculator-result {
        width: 100%;
    }

    .calculator .range-labels span:not(:first-child):not(:last-child) {
        display: none;
    }
}

.section-home {
    padding: 80px 0;
}

.home-hero-slide-content {
    text-align: center;
}

.home-hero-slide-links {
    justify-content: center;
}

.button-primary:hover, .pre-footer-subscribe input[type="submit"]:hover {
    background: linear-gradient(90deg, rgb(52, 56, 61) 0%, rgb(52, 56, 61) 100%);
}

.button-primary, .pre-footer-subscribe input[type="submit"] {
    display: inline-block;
    background: linear-gradient(90deg, rgb(131, 46, 93) 0%, rgb(142, 83, 112) 100%);
    transition: 0.2s ease-in-out;
    font: normal normal .95rem / 55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    border-color: transparent;
    color: white;
    padding: 0 15px;
    text-decoration: none;
    text-transform: uppercase;
}

.pre-footer-subscribe input[type="submit"] {
    height: 50px;
}

.button-phone {
    display: flex inline;
    align-items: center;
    justify-content: start;
    position: relative;
    gap: 10px;
}

.button-phone img {
    width: 12px;
    height: 12px;
    object-fit: contain;
    margin: 0;
}

.button-phone a {
    color: transparent;
    font-size: 1px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.button-outline:hover {
    background: rgb(52, 56, 61);
    color: white;
}

.button-outline {
    display: inline-block;
    background: transparent;
    transition: 0.2s ease-in-out;
    font: normal normal .95rem / 55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    border: 2px solid rgb(52, 56, 61);
    color: rgb(52, 56, 61);
    padding: 0 15px;
    text-decoration: none;
    text-transform: uppercase;
}

.section-home h3 {
    font-weight: bold;
    font-size: 40px;
    letter-spacing: -1px;
}

.home-as-seen h3, .home-awards h3 {
    font-size: 26px;
    text-align: center;
    margin-bottom: 60px;
}

.home-as-seen-images, .home-awards-images {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}

.home-as-seen-images img {
    width: auto;
    height: 34px;
}

.home-awards-images-item {
    padding: 10px;
}

.home-awards-images img {
    width: auto;
    height: 68px;
}

.home-content-inner {
    display: flex;
    align-items: center;
}

.home-content-gallery {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.home-content-gallery img {
    margin: auto;
    width: auto !important;
    max-height: 90px;
}

.home-content-content {
    padding: 80px 0;
}

.home-content-content .button-outline, .home-content-content .button-primary {
    margin: 30px 0;
}

.home-content-content ul, .home-content-content ol {
    font: normal normal .975rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: #3a3a3a;
}

.home-content-content ol li strong {
    display: block;
    font-weight: bold;
    font-size: 22px;
    color: #555d5f;
}

.home-content-content ol li + li {
    margin-top: 30px;
}

.home-content-content ol {
    list-style: none;
    counter-reset: step;
    margin: auto;
}

.home-content-content ol li {
    counter-increment: step;
    position: relative;
}

.home-content-content ol li::before {
    font-family: "Poppins", sans-serif;
    position: absolute;
    content: counter(step) ".";
    font-size: 36px;
    font-weight: bold;
    color: #555d5f;
    left: -40px;
    top: 4px;
    line-height: 1;
}

.home-content-content .our-clinic-benefits {
    padding-top: 30px;
}

.home-content-content .our-clinic-benefit-item {
    background: white;
}

.home-content-content img {
    width: auto;
}

.home-content-graphic img, .home-content-youtube-container {
    width: 100%;
    aspect-ratio: 8 / 7;
    object-fit: cover;
}

.home-content-youtube-container {
    background: black;
}

.home-content-youtube {
    cursor: pointer;
    position: relative;
}

.home-content-youtube:after {
    content: "";
    background: url(../images/video-player-icon.png) no-repeat center center;
    background-size: contain;
    width: 70px;
    height: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.home-content-youtube img {
    opacity: 0.75;
    transition: 0.2s;
}

.home-content-youtube:hover img {
    opacity: 1
}

.home-quote {
    text-align: center;
    padding: 0;
    color: #9e8e8e;
}

.home-quote img {
    width: 59px;
    margin: auto;
}

.home-quote-author {
    font-weight: bold;
}

.home-quote-container {
    max-width: 1140px;
    margin: auto;
    background: #fff5f5;
}

.home-quote-inner {
    padding: 100px 60px;
    max-width: 760px;
    margin: auto;
}

.home-categories {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 10px;
}

.home-category {
    display: block;
    position: relative;
    background: black;
    text-decoration: none;
    font: normal normal .875rem / 1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    overflow: hidden;
}

.home-category img {
    transition: 0.2s;
    width: 100%;
    aspect-ratio: 9.5/7;
    object-fit: cover;
}

.home-category:hover img {
    opacity: 0.5;
}

.home-category a {
    color: white;
    text-decoration: none;
}

.home-category a:hover {
    text-decoration: underline;
}

.home-category > a {
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 26px;
    text-transform: uppercase;
    padding: 0 0 4% 6%
}

.home-category-overlay {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.home-category ul {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0 0 0 6%;
    border-left: 2px solid white;
    padding: 6% 0 0 4%;
    list-style: none;
    transition: 200ms;
}

.home-category ul li + li {
    margin-top: 5px;
}

.home-category:not(:hover) ul {
    top: -100%;
}

.home-science {
    text-align: center;
    padding-left: 60px;
    padding-right: 60px;
}

.home-science-content {
    background: #eeefef;
    margin: 0 auto;
    padding: 80px 8% 160px;
}

.home-science-content h3 {
    max-width: 600px;
    margin: auto;
}

.home-science-links {
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-top: -120px;
}

.home-science-links a {
    display: block;
    background: black;
    position: relative;
    width: 33%;
}

.home-science-links a img {
    transition: 0.2s;
    display: block;
    width: 100%;
    aspect-ratio: 6/5;
    object-fit: cover;
}

.home-science-links a:hover img {
    opacity: 0.75;
}

.home-science-overlay {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
}

.home-science-links a span {
    position: absolute;
    bottom: 0;
    left: 0;
    text-transform: uppercase;
    padding: 0 0 4% 6%;
    color: white;
    font: normal normal .95rem / 55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    font-size: 26px;
}

.home-choose {
    text-align: center;
}

.home-choose-content {
    max-width: 1024px;
    padding: 0 8%;
    margin: auto;
    box-sizing: border-box;
}

.home-choose-points {
    list-style: none;
    display: flex;
    gap: 20px;
    align-items: stretch;
    justify-content: center;
    margin: 60px auto 0;
    padding: 0;
    max-width: 1024px;
}

.home-choose-points-item {
    background: #eeefef;
    padding: 30px 20px;
    display: flow;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
}

.home-choose-points-item img {
    width: 120px;
    height: auto;
}

.request-consultation {
    padding: 0;
    background-size: cover;
    background-position: center center;
}

.request-consultation-inner {
    padding: 120px 85px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.request-consultation-content h3, .request-consultation-content p {
    color: white;
}

.request-consultation-points {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex inline;
    flex-direction: column;
    gap: 10px;
    align-items: stretch;
}

.request-consultation-points-item {
    padding: 20px;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.1);
}

.request-consultation-points-item p {
    margin: 0;
}

.request-consultation-points-item ul {
    margin: 0;
    padding: 0;
    list-style-position: inside;
}

.request-consultation-points-item li {
    list-style-type: disc;
    font: normal normal .875rem/1.5 "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
    color: white;
}

.request-consultation-links {
    display: flex;
    gap: 10px;
    padding-top: 30px;
}

.request-consultation-form {
    padding: 40px;
    background: #585D5E;
}

.request-consultation-form input, .request-consultation-form select, .request-consultation-form textarea, .wpcf7-response-output {
    width: 100%;
    box-sizing: border-box;
}

.request-consultation-form [type="submit"] {
    margin: auto;
    width: auto;
}

.home-news {
    text-align: center;
}

.home-news-container {
    display: flex;
    align-items: start;
    justify-content: center;
    gap: 20px;
    max-width: 1400px;
    margin: auto;
}

.home-post {
    text-decoration: none;
    flex: 1;
    text-align: left;
    width: 100%;
}

.home-post .post-thumbnail {
    background: black;
    margin-bottom: 20px;
}

.home-post img {
    aspect-ratio: 5/3;
    object-fit: cover;
    width: 100%;
    transition: 0.2s;
}

.home-post:hover img {
    opacity: 0.75;
}

.home-post h4 {
    font-size: 18px;
    letter-spacing: 1px;
    text-transform: capitalize;
}

.home-reorder {
    display: flex;
    flex-direction: column;
}

.home-reorder > section {
    order: 5;
}

@media (max-width: 1064px) {
    .section-home {
        padding: 40px 0;
    }

    .section-home h3 {
        font-size: 24px;
    }

    .home-as-seen {
        padding-left: 20px;
        padding-right: 20px;
    }

    .home-as-seen h3, .home-awards h3 {
        font-size: 21px;
    }

    .home-as-seen-images, .home-awards-images {
        gap: 25px;
    }

    .home-as-seen-images img {
        height: 23px;
    }

    .home-awards {
        order: 1 !important;
    }

    .home-content-inner {
        flex-direction: column;
    }

    .home-content-graphic {
        width: 100%;
    }

    .home-content-graphic img, .home-content-youtube-container {
        aspect-ratio: 4/3;
    }

    .home-content-content {
        padding: 40px 20px;
        background: #eeefef;
        margin: -30px 20px 0;
        z-index: 1;
        min-width: 75vw;
    }

    .home-content-content img {
        width: 100%;
    }

    .home-content-content .button-outline, .home-content-content .button-primary {
        margin-left: auto;
        margin-right: auto;
        display: block;
        text-align: center;
        max-width: fit-content;
    }

    .home-quote {
        padding-bottom: 0;
    }

    .home-quote-inner {
        background: rgba(255, 0, 0, 0.05);
        padding: 10px 30px;
    }

    .home-categories {
        padding-top: 0;
        grid-template-columns: 1fr;
    }

    .home-category {
        max-width: 500px;
        margin: auto;
    }

    .home-category img {
        aspect-ratio: 4 / 4.8;
    }

    .home-category > a {
        width: 100%;
        font-size: 26px;
        text-align: center;
        padding: 0 4% 4% 6%;
        box-sizing: border-box;
    }

    .home-science-links {
        flex-direction: column;
    }

    .home-science-links a {
        width: 100%;
    }

    .home-science-links a span {
        padding: 6% 4%;
        right: 0;
        text-align: center;
    }

    .home-science-links a img {
        aspect-ratio: 4/3;
    }

    .our-clinic-benefit-item {
        width: 100%
    }

    .our-clinic-benefit-item img {
        width: 25px;
        margin: 0;
    }

    .home-testimonials {
        background: #eeefef;
        order: 10 !important;
    }

    .home-choose-content {
        text-align: left;
    }

    .home-choose-points {
        flex-direction: column;
        padding: 0 20px;
    }

    .home-choose-points-item {
        display: flex;
        flex-direction: row;
        align-items: start;
        justify-content: start;
        gap: 20px;
        padding: 20px;
    }

    .home-choose-points-item img {
        width: 60px;
        height: 60px;
        object-fit: cover;
        margin-top: 1rem;
    }

    .home-choose-points-item-content {
        text-align: left;
    }

    .request-consultation {
        background: #585D5E !important;
        padding: 0;
    }

    .request-consultation-inner {
        padding: 80px 20px;
        flex-direction: column;
        text-align: center;
    }

    .request-consultation-points {
        display: flex;
    }

    .request-consultation-points-item {
        width: 100%;
    }

    .request-consultation-points-item-inner {
        text-align: left;
        width: 160px;
        margin: auto;
    }

    .request-consultation-links {
        flex-direction: column;
    }

    .request-consultation-links .button-phone {
        display: flex;
        width: 100%;
        box-sizing: border-box;
        justify-content: center;
    }

    .request-consultation-form-active {
        font: normal normal .95rem / 55px "Lato", Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", "system", sans-serif;
        color: white;
        text-decoration: underline;
    }

    .request-consultation-form {
        margin-top: 30px;
        padding: 20px;
    }

    .request-consultation-form:not(.active) {
        display: none;
    }

    .home-news-container {
        flex-direction: column;
    }

    .home-post .post-title, .home-post .post-excerpt {
        text-align: left;
        padding: 0 20px;
    }

    .home-content-gallery img:nth-child(n+4) {
        display: none;
    }
}

@media (min-width: 1065px) {
    .home-as-seen, .home-awards {
        padding-left: 60px;
        padding-right: 60px;
    }

    .home-content-inner > div {
        width: 50%;
    }

    .home-content-right .home-content-inner {
        flex-direction: row-reverse;
    }

    .home-content-left .home-content-inner {
        background: linear-gradient(to right, white 40%, #eeefef 40%);
    }

    .home-content-right .home-content-inner {
        background: linear-gradient(to left, white 40%, #eeefef 40%);
    }

    .home-content-left .home-content-content {
        padding-right: 120px;
    }

    .home-content-right .home-content-content {
        padding-left: 120px;
    }

    .home-content-content img {
        width: auto;
        max-width: 38vw;
        margin: 0;
    }

    .home-content-graphic {
        padding: 60px;
    }

    .home-science-content {
        max-width: 60vw;
    }

    .request-consultation-content {
        padding-left: 35px;
    }

    .request-consultation-form {
        width: 30vw;
    }

    .request-consultation-form-active {
        display: none;
    }

    .home-news {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.mobile_book {
    display: none;
}

.book_condition a {
    font: 0.9rem / 1.4 Lato, Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", system, sans-serif;
}

.book_condition {
    float: left;
    width: 100%;
    padding-top: 10px;
}

.surgical_form .request_bg a {
    font-size: 16px !important;
}

.flext_request.surgical_form {
    align-items: normal;
}

.flext_request.surgical_form .request_bg {
    width: 100%;
}

.flex_main {
    float: left;
    width: 100%;
}

.flext_request.surgical_form img {
    width: 100%;
}

.new_consultation .block-consultation-form {
    padding-bottom: 20px;
    max-width: 100%;
}

.request_consult_design p {
    margin-top: 0;
    font-size: 18px;
    line-height: 24px;
}

.request_consult_design h4 {
    margin-bottom: 0;
}

.mobile_div {
    display: none;
}

.call_form_section a {
    color: #fff;
}

.call_form_section {
    color: #fff;
    font: 1rem / 1.4 Lato, Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", system, sans-serif;
    font-size: 18px;
    margin-top: 15px;
}

.new_consultation .block-consultation-fields {
    margin-top: -20px;
}

.new_consultation .block-consultation-fields p {
    color: #fff;
    font-size: 18px;
    margin-top: 0;
    line-height: 24px;
}

/*.flext_request img {
    width: 50%;
}*/
.flext_request {
    display: flex;
    align-items: center;
    column-gap: 15px;
}

.request_bg {
    background-color: #e4e4e4;
    opacity: 0.7;
    text-align: center;
    color: #000;
    font: 1rem / 1.4 Lato, Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", system, sans-serif;
    padding-top: 15px;
    padding-bottom: 10px;
    margin-top: 15px;
    float: left;
    width: 100%;
}

.request_bg a {
    text-transform: uppercase;
    font-size: 18px !important;
}

.request_bg a, .request_bg p {
    color: #000;
    font-weight: 500 !important;
    font: 0.9rem / 1.4 Lato, Arial, "Microsoft Yahei", "微软雅黑", STXihei, "华文细黑", system, sans-serif;
}

.request_bg p {
    line-height: 24px;
    margin-top: 0;
    margin-bottom: 0;
}

.first_sectiom {
    float: left;
    width: 50%;
}

.second_sectiom {
    float: right;
    width: 50%;
}

@media (min-width: 1025px) and (max-width: 1199px) {
    .new_consultation .container {
        max-width: 100%;
        padding-right: 15px;
        padding-left: 15px;
    }

    .surgical_form .request_bg a {
        font-size: 14px !important;
    }
}

@media only screen and (max-width: 991px) {
    .new_consultation .block-consultation-fields {
        margin-top: 0;
    }
}

@media only screen and (max-width: 767px) {
    .book_condition a {
        color: #fff;
    }

    .desktop_book {
        display: none;
    }

    .mobile_book {
        display: block;
    }

    .request_bg a {
        font-size: 15px !important;
    }

    .nonsurgical_form .request_bg {
        display: none;
    }

    .call_form_section {
        display: none;
    }

    .new_consultation .block-consultation-fields p {
        display: none;
    }

    .new_consultation .block-consultation-fields .request_bg p {
        display: block;
        color: #000;
        font-size: 14px;
    }

    .desktop_div {
        display: none;
    }

    .mobile_div {
        display: block;
    }

    .flext_request {
        display: none;
    }

    .request_bg br {
        /*display: none;*/
    }

    .request_bg {
        padding-left: 10px;
        padding-right: 10px;
        width: 100%;
    }
}

.patient-journey li:after {
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='26px' height='18px' viewBox='0 0 26 18' style='enable-background:new 0 0 26 18;' xml:space='preserve'%3E%3Cpath d='M14.91,0c0.07,2.44,0.82,5.8,2.36,8.01H0v1.98h17.28c-1.56,2.26-2.16,5.38-2.37,8.01 c3.03-3.69,6.59-7.22,11.09-9C21.5,7.14,17.77,3.81,14.91,0z' fill='%23575E60'/%3E%3C/svg%3E");
}

.loading-button:after {
    display: inline-block;
    animation: dotty steps(1, end) 1s infinite;
    content: '';
}

@keyframes dotty {
    0% {
        content: '';
    }
    25% {
        content: '.';
    }
    50% {
        content: '..';
    }
    75% {
        content: '...';
    }
    100% {
        content: '';
    }
}