﻿.skip-top-main-link.skip-top-main-link.skip-top-main-link:not(:focus),
.rate input,
.sr-only,
.checkbox,
.checkboxes-prim-slim [type=checkbox],
.checkboxes-prim [type=checkbox] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.site-main::before,
.clearfix::before,
.site-main::after,
.clearfix::after {
    content: " ";
    display: table
}

.site-main::after,
.clearfix::after {
    clear: both
}

.post-like-btn,
button.scroll-up-btn,
.site-header button,
.btn-no-style,
.carousel-prev-btn,
.carousel-next-btn,
.close {
    margin: 0;
    padding: 0;
    border: none;
    cursor: pointer;
    background: none
}

.post-like-btn:hover,
button.scroll-up-btn:hover,
.site-header button:hover,
.btn-no-style:hover,
.carousel-prev-btn:hover,
.carousel-next-btn:hover,
.close:hover,
.post-like-btn:focus,
button.scroll-up-btn:focus,
.site-header button:focus,
.btn-no-style:focus,
.carousel-prev-btn:focus,
.carousel-next-btn:focus,
.close:focus,
.post-like-btn:disabled,
button.scroll-up-btn:disabled,
.site-header button:disabled,
.btn-no-style:disabled,
.carousel-prev-btn:disabled,
.carousel-next-btn:disabled,
.close:disabled,
.post-like-btn:active,
button.scroll-up-btn:active,
.site-header button:active,
.btn-no-style:active,
.carousel-prev-btn:active,
.carousel-next-btn:active,
.close:active {
    background: none
}

.grid-list,
.cat-menu,
.social-links,
.user-area,
.top-nav,
.mini-nav,
nav>ul,
.list-no-style,
.carousel-list,
.breadcrumb,
.dropdown-menu {
    list-style: none;
    margin: 0;
    padding: 0
}

.heading-no-style {
    margin: 0;
    font-weight: normal
}

.post-author-name,
.hide-text-overflow {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.box-arrow-right,
.book-attributes,
.top-nav a,
.user-area a,
.site-subtitle,
.social-links a,
.mini-nav-large>li,
.carousel-viewport {
    display: flex;
    justify-content: center;
    align-items: center
}

.wrap {
    position: relative;
    padding-left: 10px;
    padding-right: 10px
}

@media(min-width: 992px) {
    .wrap {
        padding-left: 45px;
        padding-right: 45px
    }
}

@media(min-width: 1200px) {
    .wrap {
        padding-left: 90px;
        padding-right: 90px
    }
}

@media(max-width: 991px) {

    .unwrap-left,
    .unwrap-left-line,
    .article h2 {
        margin-left: -10px;
        margin-right: -10px;
        padding-left: 10px;
        padding-right: 10px
    }
}

@media(min-width: 992px) {

    .unwrap-left,
    .unwrap-left-line,
    .article h2 {
        margin-left: -45px;
        padding-left: 45px
    }
}

@media(min-width: 1200px) {

    .unwrap-left,
    .unwrap-left-line,
    .article h2 {
        margin-left: -90px;
        padding-left: 90px
    }
}

@media(max-width: 991px) {

    .unwrap-right,
    .unwrap-right-line {
        margin-left: -10px;
        margin-right: -10px;
        padding-left: 10px;
        padding-right: 10px
    }
}

@media(min-width: 992px) {

    .unwrap-right,
    .unwrap-right-line {
        margin-right: -45px;
        padding-right: 45px
    }
}

@media(min-width: 1200px) {

    .unwrap-right,
    .unwrap-right-line {
        margin-right: -90px;
        padding-right: 90px
    }
}

@media(min-width: 992px) {

    .unwrap-left-line,
    .article h2 {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        padding-right: .8em
    }
}

@media(min-width: 992px) {
    .unwrap-right-line {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        padding-left: .8em
    }
}

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

a {
    background-color: transparent
}

a:active,
a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: bold
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    -webkit-appearance: textfield;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: bold
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

*,
::before,
::after {
    box-sizing: border-box
}

p {
    margin: 0 0 1em
}

blockquote {
    margin-left: 25px;
    -webkit-padding-start: 25px;
    padding-inline-start: 25px;
    -webkit-border-start: solid 2px #b3b3b3;
    border-inline-start: solid 2px #b3b3b3;
    font-style: italic
}

@supports not ((-webkit-padding-start: 25px) or (padding-inline-start: 25px)) {
    blockquote {
        padding-left: 25px
    }
}

@supports not ((-webkit-border-start: solid 2px #b3b3b3) or (border-inline-start: solid 2px #b3b3b3)) {
    blockquote {
        border-left: solid 2px #b3b3b3
    }
}

figure {
    margin: 0
}

small {
    color: #6e6e6e
}

code,
kbd,
pre,
samp {
    font-family: "Courier New", monospace
}

table {
    border-collapse: collapse
}

caption {
    padding: .8em 1.5em;
    font-weight: bold;
    color: #474747
}

th,
td {
    padding: .8em 1.5em;
    border: 1px solid #d9d9d9
}

th {
    background: #e6e6e6
}

td {
    background: #f2f2f2
}

ol {
    -webkit-padding-start: 40px;
    padding-inline-start: 40px
}

@supports not ((-webkit-padding-start: 40px) or (padding-inline-start: 40px)) {
    ol {
        padding-left: 40px
    }
}

ul {
    -webkit-padding-start: 40px;
    padding-inline-start: 40px
}

@supports not ((-webkit-padding-start: 40px) or (padding-inline-start: 40px)) {
    ul {
        padding-left: 40px
    }
}

[type=text],
[type=search],
[type=datetime],
[type=date],
[type=time],
[type=datetime-local],
[type=email],
[type=URL],
[type=password],
[type=tel],
[type=month],
[type=week],
[type=number],
textarea,
select {
    padding: calc(0.4em - 1px) calc(0.8em - 1px);
    background: #fff;
    border: 1px solid #b3b3b3;
    outline: none;
    color: #212121;
    transition: .15s;
    transition-property: background, border-color;
    border-radius: 2px
}

[type=text]:-ms-input-placeholder,
[type=search]:-ms-input-placeholder,
[type=datetime]:-ms-input-placeholder,
[type=date]:-ms-input-placeholder,
[type=time]:-ms-input-placeholder,
[type=datetime-local]:-ms-input-placeholder,
[type=email]:-ms-input-placeholder,
[type=URL]:-ms-input-placeholder,
[type=password]:-ms-input-placeholder,
[type=tel]:-ms-input-placeholder,
[type=month]:-ms-input-placeholder,
[type=week]:-ms-input-placeholder,
[type=number]:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
    color: #bfbfbf
}

[type=text]::-webkit-input-placeholder,
[type=search]::-webkit-input-placeholder,
[type=datetime]::-webkit-input-placeholder,
[type=date]::-webkit-input-placeholder,
[type=time]::-webkit-input-placeholder,
[type=datetime-local]::-webkit-input-placeholder,
[type=email]::-webkit-input-placeholder,
[type=URL]::-webkit-input-placeholder,
[type=password]::-webkit-input-placeholder,
[type=tel]::-webkit-input-placeholder,
[type=month]::-webkit-input-placeholder,
[type=week]::-webkit-input-placeholder,
[type=number]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder {
    color: #bfbfbf
}

[type=text]:focus,
[type=search]:focus,
[type=datetime]:focus,
[type=date]:focus,
[type=time]:focus,
[type=datetime-local]:focus,
[type=email]:focus,
[type=URL]:focus,
[type=password]:focus,
[type=tel]:focus,
[type=month]:focus,
[type=week]:focus,
[type=number]:focus,
textarea:focus,
select:focus {
    border-color: #8bb653
}

.form-bg-prim [type=text],
.form-bg-prim [type=search],
.form-bg-prim [type=datetime],
.form-bg-prim [type=date],
.form-bg-prim [type=time],
.form-bg-prim [type=datetime-local],
.form-bg-prim [type=email],
.form-bg-prim [type=URL],
.form-bg-prim [type=password],
.form-bg-prim [type=tel],
.form-bg-prim [type=month],
.form-bg-prim [type=week],
.form-bg-prim [type=number],
.form-bg-prim textarea,
.form-bg-prim select {
    border-color: #8bb653
}

.form-bg-prim [type=text]:focus,
.form-bg-prim [type=search]:focus,
.form-bg-prim [type=datetime]:focus,
.form-bg-prim [type=date]:focus,
.form-bg-prim [type=time]:focus,
.form-bg-prim [type=datetime-local]:focus,
.form-bg-prim [type=email]:focus,
.form-bg-prim [type=URL]:focus,
.form-bg-prim [type=password]:focus,
.form-bg-prim [type=tel]:focus,
.form-bg-prim [type=month]:focus,
.form-bg-prim [type=week]:focus,
.form-bg-prim [type=number]:focus,
.form-bg-prim textarea:focus,
.form-bg-prim select:focus {
    border-color: #6e6e6e
}

[type=radio]:focus,
[type=checkbox]:focus,
[type=range]:focus,
[type=color]:focus,
[type=file]:focus {
    outline: 1px solid #8bb653
}

.form-bg-prim [type=radio]:focus,
.form-bg-prim [type=checkbox]:focus,
.form-bg-prim [type=range]:focus,
.form-bg-prim [type=color]:focus,
.form-bg-prim [type=file]:focus {
    outline-color: #6e6e6e
}

[type=file]::-webkit-file-upload-button {
    background: #8bb653;
    border: none;
    padding: .4em .8em
}

[type=file].clr-reverse::-webkit-file-upload-button {
    background: #fff;
    color: #8bb653
}

[type=file].file-btn-xs::-webkit-file-upload-button {
    padding: .2em .4em
}

textarea {
    resize: vertical
}

label {
    font-weight: bold
}

fieldset {
    border: none;
    margin: 0;
    padding: 0
}

.checkboxes-prim [type=checkbox]:-moz-focusring+label {
    background: #8bb653
}

.checkboxes-prim [type=checkbox]:-moz-focusring+label::before {
    color: #fff
}

.checkboxes-prim [type=checkbox]:focus-visible+label {
    background: #8bb653
}

.checkboxes-prim [type=checkbox]:focus-visible+label::before {
    color: #fff
}

.checkboxes-prim [type=checkbox]:checked+label::before {
    content: ""
}

.checkboxes-prim label {
    font-weight: normal;
    padding-right: 10px
}

.checkboxes-prim label::before {
    margin-left: 3px;
    margin-right: 10px;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #8bb653
}

.checkboxes-prim-slim [type=checkbox]:-moz-focusring+label {
    background: #8bb653
}

.checkboxes-prim-slim [type=checkbox]:-moz-focusring+label::before {
    color: #fff
}

.checkboxes-prim-slim [type=checkbox]:focus-visible+label {
    background: #8bb653
}

.checkboxes-prim-slim [type=checkbox]:focus-visible+label::before {
    color: #fff
}

.checkboxes-prim-slim [type=checkbox]:checked+label::before {
    content: ""
}

.checkboxes-prim-slim label {
    font-weight: normal
}

.checkboxes-prim-slim label::before {
    margin-left: 3px;
    margin-right: 10px;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #8bb653
}

.checkbox:-moz-focusring+label {
    background: #fff
}

.checkbox:-moz-focusring+label::before {
    color: #8bb653
}

.checkbox:focus-visible+label {
    background: #fff
}

.checkbox:focus-visible+label::before {
    color: #8bb653
}

.checkbox:checked+label::before {
    content: ""
}

.checkbox-label {
    font-weight: normal;
    padding-right: 10px
}

.checkbox-label::before {
    margin-left: 3px;
    margin-right: 10px;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff
}

.show-password-btn {
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    padding: .4em .8em;
    color: #b3b3b3
}

.show-password-btn.show-password-btn {
    position: absolute;
    width: auto
}

.show-password-btn:hover,
.show-password-btn:focus {
    color: #212121
}

.sliding-label-group {
    position: relative
}

.sliding-label-group label {
    position: absolute;
    z-index: 2;
    bottom: 0;
    transform-origin: top left;
    transition: .5s;
    cursor: text
}

.sliding-label-group input,
.sliding-label-group textarea {
    display: block
}

.sliding-label-group input:focus+label,
.sliding-label-group input:not(:placeholder-shown)+label,
.sliding-label-group textarea:focus+label,
.sliding-label-group textarea:not(:placeholder-shown)+label {
    color: #8bb653;
    transform: translateY(2.2em);
    transition: .15s
}

.captcha-row {
    display: flex;
    align-items: center
}

.captcha-img {
    width: 150px;
    object-fit: cover;
    border-left: 1px solid #b3b3b3;
    border-right: 1px solid #b3b3b3
}

.captcha-input,
.captcha-regenerate-btn {
    height: 40px
}

.captcha-input {
    border-left: none;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    width: 0;
    flex: 1 1 0
}

.captcha-regenerate-btn:not(.dummy) {
    background: #fff
}

.captcha-regenerate-btn:not(.dummy):hover,
.captcha-regenerate-btn:not(.dummy):focus {
    background: #e6e6e6
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold
}

h1 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 2rem;
    margin-top: .8em;
    margin-bottom: .8em
}

h2 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 1.7rem;
    margin-top: .8em;
    margin-bottom: .8em
}

h3 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 1.44rem;
    margin-top: .4em;
    margin-bottom: .4em
}

h4 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 1.2rem;
    margin-top: .4em;
    margin-bottom: .4em
}

h5 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 1rem;
    margin-top: 0;
    margin-bottom: 0
}

h6 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: .85rem;
    margin-top: 0;
    margin-bottom: 0
}

.heading-prim {
    color: #8bb653;
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 2rem
}

a,
.link {
    color: #8bb653;
    transition: .15s;
    text-decoration: underline
}

a:hover,
a:focus,
.link:hover,
.link:focus {
    text-decoration: none
}

.section-more-link,
.link-reverse {
    text-decoration: none
}

.section-more-link:hover,
.section-more-link:focus,
.link-reverse:hover,
.link-reverse:focus {
    text-decoration: underline
}

.link-clr-fg,
.post-edit-btn,
.post-title>a {
    color: #212121;
    text-decoration: none
}

.link-clr-fg:hover,
.post-edit-btn:hover,
.post-title>a:hover,
.link-clr-fg:focus,
.post-edit-btn:focus,
.post-title>a:focus {
    color: #8bb653
}

.link-clr-fg:hover .icon-circle,
.post-edit-btn:hover .icon-circle,
.post-title>a:hover .icon-circle,
.link-clr-fg:focus .icon-circle,
.post-edit-btn:focus .icon-circle,
.post-title>a:focus .icon-circle {
    background: none;
    color: #8bb653
}

.link-clr-fg.active,
.active.post-edit-btn,
.post-title>a.active {
    color: #e30078
}

.link-clr-fg.active .fas,
.active.post-edit-btn .fas,
.post-title>a.active .fas,
.link-clr-fg.active .close,
.active.post-edit-btn .close,
.post-title>a.active .close {
    background-color: #e30078
}

.link-clr-fg.active:hover .fas,
.active.post-edit-btn:hover .fas,
.post-title>a.active:hover .fas,
.link-clr-fg.active:hover .close,
.active.post-edit-btn:hover .close,
.post-title>a.active:hover .close,
.link-clr-fg.active:active .fas,
.active.post-edit-btn:active .fas,
.post-title>a.active:active .fas,
.link-clr-fg.active:active .close,
.active.post-edit-btn:active .close,
.post-title>a.active:active .close,
.link-clr-fg.active:focus .fas,
.active.post-edit-btn:focus .fas,
.post-title>a.active:focus .fas,
.link-clr-fg.active:focus .close,
.active.post-edit-btn:focus .close,
.post-title>a.active:focus .close {
    color: #fff;
    background-color: #fff;
    color: #e30078
}

.link-clr-fg-on-prim {
    color: #fff;
    text-decoration: none
}

.link-clr-fg-on-prim:hover,
.link-clr-fg-on-prim:focus {
    color: #fff
}

.link-clr-fg-on-prim:hover .icon-circle,
.link-clr-fg-on-prim:focus .icon-circle {
    background: none;
    color: #fff
}

.link-clr-bg {
    color: #fff
}

.link-clr-fg-reverse {
    color: #212121
}

.post-author,
.link-emerge-image,
.link-emerge {
    text-decoration: none
}

.post-author:hover,
.link-emerge-image:hover,
.post-author:focus,
.link-emerge-image:focus,
.link-emerge:hover,
.link-emerge:focus {
    transform: translateY(-1px);
    border-radius: 4px;
    box-shadow: 0 3px 9px rgba(0, 0, 0, .4);
    text-decoration: none;
    outline: none
}

.link-emerge-image {
    display: inline-block;
    padding: 10px;
    margin: -10px
}

.link-emerge-image>img {
    display: block
}

.link-undrln-prim {
    position: relative;
    display: inline-block;
    text-decoration: none;
    z-index: 0;
    color: inherit
}

.link-undrln-prim::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    background: #8bb653;
    transform: scaleY(0.1);
    transform-origin: bottom;
    transition: .15s
}

.link-undrln-prim:hover {
    color: #fff
}

.link-undrln-prim:hover::after {
    transform: none
}

.link-chevrons {
    display: inline-flex;
    align-items: center;
    color: #545454;
    text-decoration: none
}

.link-chevrons .fa-chevron-left,
.link-chevrons .fa-chevron-right {
    transition: transform .25s;
    font-size: 26px
}

.link-chevrons .fa-chevron-left:last-of-type,
.link-chevrons .fa-chevron-right:last-of-type {
    margin-left: -6px
}

.link-chevrons:hover,
.link-chevrons:focus {
    color: #8bb653
}

.link-chevrons:hover .fa-chevron-left:first-of-type,
.link-chevrons:focus .fa-chevron-left:first-of-type {
    transform: translateX(-6px);
    transition-delay: 0s
}

.link-chevrons:hover .fa-chevron-left:last-of-type,
.link-chevrons:focus .fa-chevron-left:last-of-type {
    transform: translateX(-3px);
    transition-delay: .1s
}

.link-chevrons:hover .fa-chevron-right:first-of-type,
.link-chevrons:focus .fa-chevron-right:first-of-type {
    transform: translateX(3px);
    transition-delay: .1s
}

.link-chevrons:hover .fa-chevron-right:last-of-type,
.link-chevrons:focus .fa-chevron-right:last-of-type {
    transform: translateX(6px);
    transition-delay: 0s
}

.link-danger {
    color: #d74242;
    font-size: .85rem;
    font-style: italic;
    cursor: pointer
}

button,
[type=submit],
[type=reset],
.btn {
    display: inline-block;
    padding: .4em .8em;
    background: #e6e6e6;
    border: none;
    outline: none;
    cursor: pointer;
    color: #212121;
    transition: .15s;
    text-decoration: none
}

button:hover,
button:focus,
[type=submit]:hover,
[type=submit]:focus,
[type=reset]:hover,
[type=reset]:focus,
.btn:hover,
.btn:focus {
    background-color: #d9d9d9
}

button:active,
[type=submit]:active,
[type=reset]:active,
.btn:active {
    background-color: #f2f2f2
}

button:disabled,
[type=submit]:disabled,
[type=reset]:disabled,
.btn:disabled {
    background-color: #f2f2f2;
    color: #bfbfbf
}

a[role=button] {
    cursor: pointer
}

.btn-bg {
    background: #fff
}

.btn-bg:hover,
.btn-bg:focus {
    background: #e6e6e6
}

.btn-primary {
    background: #8bb653;
    border: 2px solid #8bb653;
    color: #fff
}

.btn-primary,
.btn-primary.btn-sm {
    padding: calc(0.4em - 2px) calc(0.8em - 2px)
}

.btn-primary:hover,
.btn-primary:focus {
    background: none;
    color: #8bb653
}

.btn-fg {
    background: #474747;
    color: #fff
}

.btn-fg:hover,
.btn-fg:focus {
    background: #616161
}

.btn-xs {
    padding: .2em .4em
}

.btn-sm {
    padding: .4em .8em
}

.btn-lg {
    padding: .8em
}

.menu-toggle-bars {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 17px;
    background: #fff
}

.menu-toggle-bars,
.menu-toggle-bars::after,
.menu-toggle-bars::before {
    height: 2px;
    transition: .15s;
    border-radius: 1px
}

.menu-toggle-bars::after,
.menu-toggle-bars::before {
    content: "";
    position: absolute;
    left: 0;
    top: -6.0104652807px;
    width: 100%;
    transform-origin: center left;
    background: #fff
}

.menu-toggle-bars::after {
    top: 6.0104652807px
}

.menu-toggle:hover .menu-toggle-bars,
.menu-toggle:hover .menu-toggle-bars::before,
.menu-toggle:hover .menu-toggle-bars::after,
.menu-toggle:focus .menu-toggle-bars,
.menu-toggle:focus .menu-toggle-bars::before,
.menu-toggle:focus .menu-toggle-bars::after {
    background: #8bb653
}

.menu-toggle[aria-pressed=true] .menu-toggle-bars {
    background-color: transparent
}

.menu-toggle[aria-pressed=true] .menu-toggle-bars::before {
    transform: rotate(45deg);
    background: #8bb653
}

.menu-toggle[aria-pressed=true] .menu-toggle-bars::after {
    transform: rotate(-45deg);
    background: #8bb653
}

.btn-cta {
    display: block;
    margin: 25px 0;
    color: #fff;
    text-decoration: none
}

@media(min-width: 768px) {
    .btn-cta {
        clear: none;
        float: right
    }
}

.btn-frame-15,
.btn-frame-14,
.btn-frame-13,
.btn-frame-12,
.btn-frame-11,
.btn-frame-10,
.btn-frame-9,
.btn-frame-8,
.btn-frame-7,
.btn-frame-6,
.btn-frame-4,
.btn-frame-3,
.btn-frame-2,
.btn-frame-5,
.btn-frame-1 {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    background-color: initial;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0;
    border: 0;
    font-size: 20px;
    color: #fff;
    text-decoration: none
}

.btn-frame-15:hover,
.btn-frame-14:hover,
.btn-frame-13:hover,
.btn-frame-12:hover,
.btn-frame-11:hover,
.btn-frame-10:hover,
.btn-frame-9:hover,
.btn-frame-8:hover,
.btn-frame-7:hover,
.btn-frame-6:hover,
.btn-frame-4:hover,
.btn-frame-3:hover,
.btn-frame-2:hover,
.btn-frame-5:hover,
.btn-frame-1:hover,
.btn-frame-15:focus,
.btn-frame-14:focus,
.btn-frame-13:focus,
.btn-frame-12:focus,
.btn-frame-11:focus,
.btn-frame-10:focus,
.btn-frame-9:focus,
.btn-frame-8:focus,
.btn-frame-7:focus,
.btn-frame-6:focus,
.btn-frame-4:focus,
.btn-frame-3:focus,
.btn-frame-2:focus,
.btn-frame-5:focus,
.btn-frame-1:focus {
    background-color: initial;
    filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.35))
}

.btn-frame-15:disabled,
.btn-frame-14:disabled,
.btn-frame-13:disabled,
.btn-frame-12:disabled,
.btn-frame-11:disabled,
.btn-frame-10:disabled,
.btn-frame-9:disabled,
.btn-frame-8:disabled,
.btn-frame-7:disabled,
.btn-frame-6:disabled,
.btn-frame-4:disabled,
.btn-frame-3:disabled,
.btn-frame-2:disabled,
.btn-frame-5:disabled,
.btn-frame-1:disabled {
    opacity: .5;
    filter: none;
    background-color: transparent !important
}

.btn-frame-1 {
    width: 367px;
    height: 78px;
    color: #8bb653
}

.btn-frame-1.btn-frame-1 {
    background-image: url(/local/templates/ves/img/btn-frame-1.png)
}

.btn-frame-2,
.btn-frame-5 {
    width: 430px;
    height: 92px
}

.btn-frame-2.btn-frame-2,
.btn-frame-5 {
    background-image: url(/local/templates/ves/img/btn-frame-2.png)
}

.btn-frame-3 {
    width: 429px;
    height: 92px
}

.btn-frame-3.btn-frame-3 {
    background-image: url(/local/templates/ves/img/btn-frame-3.png)
}

.btn-frame-4 {
    width: 176px;
    height: 65px
}

.btn-frame-4.btn-frame-4 {
    background-image: url(/local/templates/ves/img/btn-frame-4.png)
}

.btn-frame-5 {
    width: 373px;
    height: 80px
}

.btn-frame-6 {
    width: 232px;
    height: 76px
}

.btn-frame-6.btn-frame-6 {
    background-image: url(/local/templates/ves/img/btn-frame-6.png)
}

.btn-frame-7 {
    width: 253px;
    height: 64px
}

.btn-frame-7.btn-frame-7 {
    background-image: url(/local/templates/ves/img/btn-frame-2.png);
    background-position: center;
    background-size: 296px
}

.btn-frame-8 {
    width: 367px;
    height: 78px
}

.btn-frame-8.btn-frame-8 {
    background-image: url(/local/templates/ves/img/btn-frame-8.png)
}

.btn-frame-9 {
    width: 313px;
    height: 78px
}

.btn-frame-9.btn-frame-9 {
    background-image: url(/local/templates/ves/img/btn-frame-2.png);
    background-position: center;
    background-size: 368px
}

.btn-frame-10 {
    width: 232px;
    height: 76px
}

.btn-frame-10.btn-frame-10 {
    background-image: url(/local/templates/ves/img/btn-frame-6.png)
}

.btn-frame-11 {
    width: 357px;
    height: 47px
}

.btn-frame-11.btn-frame-11 {
    background-image: url(/local/templates/ves/img/btn-frame-11.png)
}

.btn-frame-12 {
    width: 128px;
    height: 63px
}

.btn-frame-12.btn-frame-12 {
    background-image: url(/local/templates/ves/img/btn-frame-12.png)
}

.btn-frame-13 {
    width: 299px;
    height: 64px
}

.btn-frame-13.btn-frame-13 {
    background-image: url(/local/templates/ves/img/btn-frame-2.png)
}

.btn-frame-14 {
    width: 212px;
    height: 77px;
    color: #8bb653
}

.btn-frame-14.btn-frame-14 {
    background-image: url(/local/templates/ves/img/btn-frame-14.png)
}

.btn-frame-15 {
    width: 342px;
    height: 30px;
    white-space: nowrap;
    overflow: hidden;
    font-size: 16px
}

.btn-frame-15.btn-frame-15 {
    background-image: url(/local/templates/ves/img/btn-frame-15.png)
}

.load-more-wrap {
    text-align: center;
    padding: 0 0 25px;
    display: block;
    text-decoration: none
}

.btn-load-more {
    display: inline-flex;
    flex-direction: column;
    padding: 10px;
    font-size: 1.2rem;
    color: #fff;
    text-decoration: none
}

.btn-load-more:hover,
.btn-load-more:focus {
    transform: translateY(3px)
}

.btn-load-more .fas,
.btn-load-more .close {
    height: .5em
}

.btn-load-more.loading::before,
.btn-load-more.loading::after {
    display: none
}

.btn-load-more.loading .fas:first-child,
.btn-load-more.loading .close:first-child {
    animation: load-more-btn-arrow-one .6s linear infinite
}

.btn-load-more.loading .fas:last-child,
.btn-load-more.loading .close:last-child {
    animation: load-more-btn-arrow-two .6s linear infinite
}

@keyframes load-more-btn-arrow-one {
    0% {
        opacity: 0
    }

    50% {
        opacity: 1
    }

    100% {
        opacity: 1;
        transform: translateY(0.5em)
    }
}

@keyframes load-more-btn-arrow-two {
    0% {
        opacity: 1
    }

    50% {
        opacity: 1
    }

    100% {
        opacity: 0;
        transform: translateY(0.5em)
    }
}

.popup-btn-primary:hover,
.popup-btn-primary:focus {
    background: #a3c577
}

.popup-btn-primary:hover::before,
.popup-btn-primary:focus::before {
    border-right-color: #a3c577;
    border-top-color: #a3c577
}

.popup-btn-dangerous:hover,
.popup-btn-dangerous:focus {
    background: #d74242
}

.popup-btn-dangerous:hover::before,
.popup-btn-dangerous:focus::before {
    border-right-color: #d74242;
    border-top-color: #d74242
}

.btn-icon {
    display: inline-grid;
    grid-template-columns: 2em auto;
    grid-template-rows: auto;
    align-items: center
}

.btn-icon .btn-icon__icon {
    justify-self: center
}

/*!
 * Font Awesome Free 5.2.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.close,
.far,
.fal,
.fab {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1
}

.fa-spin {
    -webkit-animation: fa-spin 2s infinite linear;
    animation: fa-spin 2s infinite linear
}

@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.fa-arrow-left:before {
    content: ""
}

.fa-bell:before {
    content: ""
}

.fa-book:before {
    content: ""
}

.fa-book-open:before {
    content: ""
}

.fa-calendar:before {
    content: ""
}

.fa-caret-down:before {
    content: ""
}

.fa-caret-left:before {
    content: ""
}

.fa-caret-right:before {
    content: ""
}

.fa-caret-up:before {
    content: ""
}

.fa-check:before {
    content: ""
}

.fa-chevron-down:before {
    content: ""
}

.fa-chevron-left:before {
    content: ""
}

.fa-chevron-right:before {
    content: ""
}

.fa-chevron-up:before {
    content: ""
}

.fa-cog:before {
    content: ""
}

.fa-comment:before {
    content: ""
}

.fa-edit:before {
    content: ""
}

.fa-ellipsis-h:before {
    content: ""
}

.fa-envelope:before {
    content: ""
}

.fa-eye:before {
    content: ""
}

.fa-eye-slash:before {
    content: ""
}

.fa-facebook-f:before {
    content: ""
}

.fa-facebook-square:before {
    content: ""
}

.fa-heart:before {
    content: ""
}

.fa-instagram:before {
    content: ""
}

.fa-map-marker-alt:before {
    content: ""
}

.fa-odnoklassniki-square:before {
    content: ""
}

.fa-paperclip:before {
    content: ""
}

.fa-pen:before {
    content: ""
}

.fa-percent:before {
    content: ""
}

.fa-phone:before {
    content: ""
}

.fa-question:before {
    content: ""
}

.fa-reply:before {
    content: ""
}

.fa-search:before {
    content: ""
}

.fa-share:before {
    content: ""
}

.fa-share-alt:before {
    content: ""
}

.fa-shopping-cart:before {
    content: ""
}

.fa-sign-out-alt:before {
    content: ""
}

.fa-smile:before {
    content: ""
}

.fa-star:before {
    content: ""
}

.fa-thumbs-up:before {
    content: ""
}

.fa-times:before,
.close:before {
    content: ""
}

.fa-twitter-square:before {
    content: ""
}

.fa-twitter:before {
    content: ""
}

.fa-user:before {
    content: ""
}

.fa-user-circle:before {
    content: ""
}

.fa-user-friends:before {
    content: ""
}

.fa-user-plus:before {
    content: ""
}

.fa-users:before {
    content: ""
}

.fa-video:before {
    content: ""
}

.fa-vk:before {
    content: ""
}
.fa-telegram:before {
    content: "\f2c6";
}

.fa-volume-up:before {
    content: ""
}

.fa-circle-notch:before {
    content: ""
}

.fa-sign-in-alt:before {
    content: ""
}

.fa-sync-alt:before {
    content: ""
}

@font-face {
    font-family: "Font Awesome 5 Brands";
    font-style: normal;
    font-weight: normal;
    src: url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-brands-400.eot");
    src: url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-brands-400.woff2") format("woff2"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-brands-400.woff") format("woff"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-brands-400.ttf") format("truetype"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-brands-400.svg#fontawesome") format("svg")
}

.fab {
    font-family: "Font Awesome 5 Brands"
}

@font-face {
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 400;
    src: url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-regular-400.eot");
    src: url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-regular-400.woff2") format("woff2"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-regular-400.woff") format("woff"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-regular-400.ttf") format("truetype"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-regular-400.svg#fontawesome") format("svg")
}

.far {
    font-family: "Font Awesome 5 Free";
    font-weight: 400
}

@font-face {
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 900;
    src: url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-solid-900.eot");
    src: url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-solid-900.woff2") format("woff2"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-solid-900.woff") format("woff"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-solid-900.ttf") format("truetype"), url("https://use.fontawesome.com/releases/v5.1.0/webfonts/fa-solid-900.svg#fontawesome") format("svg")
}

.fa,
.fas,
.close {
    font-family: "Font Awesome 5 Free";
    font-weight: 900
}

.swiper-pagination-bullet {
    background: #6e6e6e;
    border-radius: 999px;
    width: 12px;
    height: 12px;
    margin: 5px 7px;
    opacity: 1
}

.swiper-pagination-bullet-active {
    background: #8bb653
}

.has-tooltip {
    position: relative
}

.has-tooltip::before,
.has-tooltip::after {
    position: relative;
    z-index: 500
}

.has-tooltip::after {
    content: attr(aria-label);
    visibility: hidden;
    opacity: 0;
    position: absolute;
    padding: .4em .8em;
    white-space: nowrap;
    background: #3b3b3b;
    border-radius: 5px;
    color: #fff;
    transition: .15s 0s;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: break-word;
    white-space: pre;
    pointer-events: none;
    font: normal 0.85rem/normal "Roboto", "Helvetica", "Arial", sans-serif
}

.has-tooltip::before {
    content: "";
    visibility: hidden;
    opacity: 0;
    position: absolute;
    z-index: 9999;
    width: 0;
    height: 0;
    transition: .15s 0s;
    border: 6px solid transparent;
    pointer-events: none
}

.has-tooltip:hover::after,
.has-tooltip:hover::before,
.has-tooltip:focus::after,
.has-tooltip:focus::before,
.has-tooltip.tooltip-open::after,
.has-tooltip.tooltip-open::before {
    visibility: visible;
    opacity: 1;
    transition-delay: .3s
}

.has-tooltip::after {
    left: 50%;
    bottom: -9px;
    -webkit-transform: translate(-50%, 100%) translateY(-8px);
    transform: translate(-50%, 100%) translateY(-8px)
}

.has-tooltip::before {
    left: 50%;
    bottom: -9px;
    -webkit-transform: translate(-50%, 0) translateY(-8px);
    transform: translate(-50%, 0) translateY(-8px);
    border-color: transparent;
    border-bottom-color: #3b3b3b
}

.has-tooltip:hover::after,
.has-tooltip:focus::after,
.has-tooltip.tooltip-open::after {
    -webkit-transform: translate(-50%, 100%);
    transform: translate(-50%, 100%)
}

.has-tooltip:hover::before,
.has-tooltip:focus::before,
.has-tooltip.tooltip-open::before {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
}

.has-tooltip.tooltip-n::after {
    left: 50%;
    top: -9px;
    bottom: auto;
    -webkit-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%)
}

.has-tooltip.tooltip-n::before {
    left: 50%;
    top: -9px;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    border-color: transparent;
    border-top-color: #3b3b3b
}

.has-tooltip.tooltip-w::after {
    left: -9px;
    bottom: 50%;
    -webkit-transform: translate(-100%, 50%);
    transform: translate(-100%, 50%)
}

.has-tooltip.tooltip-w::before {
    left: -9px;
    bottom: 50%;
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%);
    border-color: transparent;
    border-left-color: #3b3b3b
}

.has-tooltip.tooltip-sw::after {
    left: auto;
    right: 0;
    bottom: -9px;
    -webkit-transform: translate(0, 100%);
    transform: translate(0, 100%)
}

.has-tooltip.tooltip-sw::before {
    left: 50%;
    bottom: -9px;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    border-color: transparent;
    border-bottom-color: #3b3b3b
}

.has-tooltip.tooltip-nw::after {
    left: auto;
    right: 0;
    top: -9px;
    bottom: auto;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%)
}

.has-tooltip.tooltip-nw::before {
    left: 50%;
    top: -9px;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    border-color: transparent;
    border-top-color: #3b3b3b
}

.has-tooltip.tooltip-delayed:hover::after,
.has-tooltip.tooltip-delayed:hover::before,
.has-tooltip.tooltip-delayed:focus::after,
.has-tooltip.tooltip-delayed:focus::before,
.has-tooltip.tooltip-delayed.tooltip-open::after,
.has-tooltip.tooltip-delayed.tooltip-open::before {
    transition-delay: 1s
}

.tooltip-source-data::after {
    content: attr(data-label)
}

.dialog-overlay {
    position: fixed;
    z-index: 400;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    padding-left: 3px;
    padding-right: 3px;
    overflow-x: hidden;
    overflow-y: auto;
    background: rgba(224, 235, 208, .7);
    visibility: hidden;
    opacity: 0;
    transition: .25s;
    outline: none
}

.dialog-overlay.open {
    visibility: visible;
    opacity: 1
}

.dialog {
    position: relative;
    margin: 30px auto;
    max-width: 45em;
    padding: 65px 40px 65px;
    transition: 0s .25s;
    background: url(/local/templates/ves/img/dialog-top.png) no-repeat top center, url(/local/templates/ves/img/dialog-bottom.png) no-repeat bottom center, #8bb653;
    box-shadow: 0 11px 30px 3px rgba(0, 0, 0, .6)
}

.dialog-header,
.dialog-body,
.dialog-footer {
    padding: 10px
}

.dialog-header {
    padding-left: 0;
    padding-right: 0;
    color: #fff
}

.dialog-footer {
    color: #fff
}

.dialog-body {
    background: #fff
}

.dialog-body label {
    font-weight: normal
}

.dialog-heading {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 2rem
}

.close {
    width: 1.2em;
    height: 1.2em;
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 35px;
    font-weight: bold
}

.close:hover,
.close:focus {
    color: #212121
}

.dialog-footer {
    text-align: right
}

.dialog-footer>button {
    margin-right: 25px
}

html.dialog-open {
    overflow: hidden
}

@media(max-width: 767px) {
    .dialog {
        width: 100%;
        max-width: initial;
        padding-left: 10px;
        padding-right: 10px
    }
}

@media(min-width: 992px) {

    .dialog-header,
    .dialog-body,
    .dialog-footer {
        padding: .8em 1.5em
    }
}

.dialog--standard .dialog {
    max-width: 450px;
    background: #fff;
    color: #8bb653;
    padding: 0;
    border-style: solid;
    border-width: 39px 35px 35px;
    border-image: url(/local/templates/ves/img/dialog.png) 39 35 35/39px 35px 35px round
}

.dialog--standard .dialog-body {
    padding-top: 1.6em
}

.dialog--standard:not(.dialog--small) .dialog-body {
    text-align: center;
    font-size: 1.2rem
}

.dialog--standard .dialog-header {
    display: none
}

.dialog--standard .dialog-footer {
    text-align: center
}

.dialog--standard .close-dialog {
    margin: 0
}

.dialog--standard .close {
    right: 3px;
    top: 3px;
    color: #212121;
    font-size: 18px
}

.dialog--standard .close:hover,
.dialog--standard .close:focus {
    color: #8bb653
}

.dialog--error .dialog {
    color: #d74242
}

.show-when-dialog-open {
    display: none
}

.dialog-overlay.open~.show-when-dialog-open {
    display: block
}

.dropdown {
    position: relative;
    display: inline-block
}

.dropdown-menu {
    display: none;
    position: absolute;
    z-index: 100;
    left: 0;
    top: 100%;
    margin-top: 3px;
    background: #fff;
    line-height: normal;
    font-size: 1rem
}

.dropdown.open>.dropdown-menu {
    display: block
}

.dropdown-item {
    min-width: 100%;
    background: none;
    color: #3b3b3b;
    text-decoration: none;
    padding: .8em 1.5em;
    white-space: nowrap;
    text-align: initial
}

.dropdown-item:hover {
    text-decoration: none;
    background: #e6e6e6;
    color: #212121
}

.dropdown-toggle {
    text-align: initial
}

.breadcrumb {
    margin: 25px 0
}

.breadcrumb li {
    display: inline-block
}

.breadcrumb li:not(:last-child)::after {
    display: inline-block;
    content: "";
    padding: 0 .4em;
    color: #8bb653;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1.5em;
    line-height: 1rem;
    vertical-align: middle;
    margin-top: -3px;
    margin-left: 3px
}

.breadcrumb a {
    text-decoration: none;
    color: inherit
}

.breadcrumb a:hover,
.breadcrumb a:focus {
    color: #8bb653
}

.breadcrumb .active {
    color: #8bb653
}

@media(max-width: 767px) {
    .breadcrumb {
        font-size: .85rem
    }

    .breadcrumb li:not(:last-child)::after {
        padding: 0 3px
    }
}

.carousel-cont {
    display: flex;
    flex: auto;
    overflow: hidden
}

.carousel-viewport {
    overflow: hidden;
    flex: auto
}

.carousel-list {
    display: inline-grid;
    position: relative;
    width: 100%;
    grid-auto-columns: calc((100% - 16px) / 3);
    grid-auto-flow: column;
    justify-content: start;
    grid-column-gap: 8px;
    overflow: visible;
    transition: .15s
}

@media(max-width: 1199px) {
    .carousel-list {
        grid-auto-columns: calc((100% - 8px) / 2)
    }
}

@media(max-width: 767px) {
    .carousel-list {
        grid-auto-columns: 100%
    }
}

@media(min-width: 992px) {
    .two-row-carousel-list {
        height: 820px;
        grid-template-rows: repeat(2, 1fr)
    }

    .two-row-carousel-list .carousel-list-item:nth-child(even) {
        justify-content: flex-end
    }

    .two-row-carousel-list .carousel-list-item:nth-child(1):last-child::after,
    .two-row-carousel-list .carousel-list-item:nth-child(1):nth-last-child(2)::after,
    .two-row-carousel-list .carousel-list-item:nth-child(2):last-child::after,
    .two-row-carousel-list .carousel-list-item:nth-child(3):last-child::after,
    .two-row-carousel-list .carousel-list-item:nth-child(3):nth-last-child(2)::after,
    .two-row-carousel-list .carousel-list-item:nth-child(4):last-child::after {
        content: none
    }
}

.one-row-carousel-list {
    grid-template-rows: 1fr
}

.carousel-list-two-column {
    grid-auto-columns: calc((100% - 8px) / 2)
}

@media(max-width: 767px) {
    .carousel-list-two-column {
        grid-auto-columns: 100%
    }
}

.carousel-list-item {
    display: flex;
    flex-direction: column;
    position: relative;
    padding: 0 1.5em;
    text-align: center;
    font-size: .85rem
}

.carousel-list-item a {
    text-decoration: none;
    color: inherit
}

.carousel-list-item a:hover,
.carousel-list-item a:focus {
    color: #8bb653
}

@media(min-width: 768px) {
    .carousel-list-item:not(:last-child)::after {
        content: "";
        position: absolute;
        right: -7px;
        top: 0;
        bottom: 0;
        width: 6px;
        background: #8bb653
    }

    .two-row-carousel-list .carousel-list-item:nth-child(odd) {
        padding-top: 20px
    }

    .two-row-carousel-list .carousel-list-item:nth-child(odd):nth-last-child(2)::after {
        content: none
    }

    .two-row-carousel-list .carousel-list-item:nth-child(even) {
        padding-bottom: 20px
    }

    .two-row-carousel-list .carousel-list-item:nth-child(even):nth-last-child(1)::after {
        content: none
    }

    .one-row-carousel-list .carousel-list-item {
        padding-top: 20px;
        padding-bottom: 20px
    }

    .carousel-list-no-divider .carousel-list-item::after {
        content: none
    }
}

.carousel-prev-btn,
.carousel-next-btn {
    grid-row-start: 1;
    grid-row-end: 3;
    align-self: center;
    flex: none;
    width: 1em;
    height: 3em;
    font-size: 3rem;
    color: #545454
}

.carousel-prev-btn:hover,
.carousel-prev-btn:focus,
.carousel-next-btn:hover,
.carousel-next-btn:focus {
    color: #8bb653;
    outline: none;
    box-shadow: none
}

.carousel-prev-btn:disabled,
.carousel-next-btn:disabled {
    color: #d9d9d9
}

.carousel-plain .carousel-list-item::after {
    content: none
}

.carousel-dense {
    grid-auto-columns: calc((100% - 40px) / 6)
}

@media(max-width: 1199px) {
    .carousel-dense {
        grid-auto-columns: calc((100% - 24px) / 4)
    }
}

@media(max-width: 991px) {
    .carousel-dense {
        grid-auto-columns: calc((100% - 16px) / 3)
    }
}

@media(max-width: 767px) {
    .carousel-dense {
        grid-auto-columns: calc((100% - 8px) / 2)
    }
}

.carousel-bg-prim .carousel-list-item::after {
    background-color: #fff
}

.carousel-bg-prim .carousel-prev-btn,
.carousel-bg-prim .carousel-next-btn {
    color: #e0ebd0
}

.carousel-bg-prim .carousel-prev-btn:hover,
.carousel-bg-prim .carousel-prev-btn:focus,
.carousel-bg-prim .carousel-next-btn:hover,
.carousel-bg-prim .carousel-next-btn:focus {
    color: #fff;
    outline: none;
    box-shadow: none
}

.carousel-bg-prim .carousel-prev-btn:disabled,
.carousel-bg-prim .carousel-next-btn:disabled {
    color: #a3c577
}

.pagination {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 0;
    margin: 50px 0;
    text-align: center
}

.pagination-wrap {
    position: relative;
    width: 15em;
    height: 2.5em
}

.pagination-page {
    position: absolute;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    color: #212121
}

.pagination-page-current {
    left: 6.25em
}

.pagination-page-prev::before,
.pagination-page-next::before {
    content: "";
    position: absolute;
    top: 0;
    border: 1.25em solid transparent
}

.pagination-page-prev:hover,
.pagination-page-prev:focus,
.pagination-page-next:hover,
.pagination-page-next:focus {
    transition-delay: .1s;
    background: #8bb653;
    color: #fff
}

.pagination-page-prev {
    left: 3.75em
}

.pagination-page-prev::before {
    right: 100%;
    border-right-color: #8bb653
}

.pagination-page-prev:hover~.pagination-ring,
.pagination-page-prev:focus~.pagination-ring {
    transform: translateX(-8.75em)
}

.pagination-page-next {
    right: 3.75em
}

.pagination-page-next::before {
    left: 100%;
    border-left-color: #8bb653
}

.pagination-page-next:hover~.pagination-ring,
.pagination-page-next:focus~.pagination-ring {
    transform: translateX(-3.75em)
}

.pagination-page-first {
    left: 0;
    z-index: 1
}

.pagination-page-first:hover~.pagination-ring,
.pagination-page-first:focus~.pagination-ring {
    transform: translateX(-12.5em)
}

.pagination-page-last {
    right: 0
}

.pagination-page-last:hover~.pagination-ring,
.pagination-page-last:focus~.pagination-ring {
    transform: none
}

.pagination-ring {
    position: absolute;
    width: 2.5em;
    height: 2.5em;
    z-index: -1;
    right: 0;
    border: 3px solid #8bb653;
    transform: translateX(-6.25em);
    transition: .25s
}

.icon-circle {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: .3em;
    width: 1.9em;
    height: 1.9em;
    border-radius: 9999px;
    font-size: .75em;
    line-height: 1.9;
    text-align: center;
    color: #fff;
    transition: .25s
}

.icon-circle.fa-heart {
    line-height: 2
}

.icon-circle-lg {
    padding: 0;
    width: 2.4em;
    height: 2.4em;
    border-radius: 9999px;
    font-size: 1em;
    line-height: 2.6
}

.icon-thumbs-up {
    background: #6e6e6e
}

.icon-new {
    background: #8bb653
}

.icon-new::before {
    content: "new";
    font-size: .8em
}

.icon-bestseller {
    background: #3b3b3b
}

.icon-comment {
    background: #8bb653
}

.icon-eye {
    background: #212121
}

.icon-sale {
    background: #8bb653
}

.icon-audio {
    background: #8bb653
}

.icon-video {
    background: #212121
}

.alert {
    padding: 1.5em;
    margin-bottom: 25px
}

.alert-success {
    background: #edffd6;
    color: #8bb653
}

.alert-warning {
    background: #ffeed6;
    color: #efac4d
}

.alert-danger {
    background: #ffd6d6;
    color: #d74242
}

.accordion {
    position: relative;
    z-index: 0
}

.accordion-header {
    margin-top: 0;
    margin-bottom: 0;
    padding: .4em .8em;
    transition: .15s;
    font-size: 1rem;
    cursor: pointer
}

.accordion-header:focus {
    outline: none
}

.accordion-header:focus-visible {
    outline: 1px auto #000
}

.accordion-content {
    padding: 1.5em;
    overflow-y: hidden;
    transition: .15s
}

.bx-messenger-chatlist-group {
    display: none
}

.bx-messenger-cl-user:not(.dummy) {
    margin-top: 5px;
    height: 40px
}

.bx-messenger-cl-search-wrap .bx-messenger-input-close:not(.dummy) {
    right: 5px;
    width: 20px;
    padding-right: 5px
}

.bx-messenger-input-search-create {
    display: none
}

.bx-messenger-cl-search-wrap:not(.dummy)::before {
    content: none
}

.bx-messenger-cl-search-wrap .bx-messenger-input:not(.dummy) {
    width: 100%
}

.hide {
    display: none !important
}

.invisible {
    visibility: hidden
}

.pull-left {
    float: left
}

.pull-right {
    float: right
}

.clear {
    clear: both
}

.i-no-style {
    font-style: normal
}

.font-xs {
    font-size: .7rem
}

.font-sm {
    font-size: .85rem
}

.font-md {
    font-size: 1rem
}

.font-lg {
    font-size: 1.2rem
}

.font-xl {
    font-size: 1.44rem
}

.font-xxl {
    font-size: 1.7rem
}

.font-xxxl {
    font-size: 2rem
}

.font-normal {
    font-style: normal
}

.font-italic {
    font-style: italic
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto
}

html {
    scroll-behavior: smooth
}

body {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    margin: 0;
    background: #ccc;
    color: #212121
}

.block {
    display: block
}

@media(min-width: 992px) {
    .block-md {
        display: block
    }
}

.inline-block {
    display: inline-block
}

.danger {
    color: #d74242
}

.active {
    color: #8bb653
}

.active-bg {
    padding-top: .4em;
    padding-bottom: .4em;
    background: #8bb653;
    color: #fff
}

.icon {
    width: 1em;
    height: 1em
}

.circle {
    border-radius: 9999px
}

.center {
    text-align: center
}

@media(max-width: 767px) {
    .align-center-max-sm {
        text-align: center
    }
}

.valign-middle {
    vertical-align: middle
}

.flex-align-center {
    display: flex;
    align-items: center
}

.avatar-small {
    width: 30px
}

.avatar-medium {
    border-radius: 3px;
    width: 50px;
    height: auto
}

.avatar-large {
    width: 120px;
    height: auto
}

.marg-l-sm {
    margin-left: 10px
}

.marg-l-md {
    margin-left: 25px
}

.marg-r-xs {
    margin-right: 3px
}

.marg-r-sm {
    margin-right: 10px
}

.marg-r-md {
    margin-right: 25px
}

.marg-v-xs {
    margin-top: 3px;
    margin-bottom: 3px
}

.marg-v-sm {
    margin-top: 10px;
    margin-bottom: 10px
}

.marg-v-md {
    margin-top: 25px;
    margin-bottom: 25px
}

.marg-v-lg {
    margin-top: 50px;
    margin-bottom: 50px
}

.marg-h-xs {
    margin-left: 3px;
    margin-right: 3px
}

.marg-h-sm {
    margin-left: 3px;
    margin-right: 3px
}

.marg-t-0 {
    margin-top: 0
}

.marg-v-0 {
    margin-top: 0;
    margin-bottom: 0
}

.marg-t-sm {
    margin-top: 10px
}

.marg-t-md {
    margin-top: 25px
}

.marg-t-lg {
    margin-top: 50px
}

.marg-t-xl {
    margin-top: 100px
}

.marg-b-sm {
    margin-bottom: 10px
}

.marg-b-md {
    margin-bottom: 25px
}

.marg-b-lg {
    margin-bottom: 50px
}

.marg-v-minus-xs {
    margin-top: -3px;
    margin-bottom: -3px
}

@media(min-width: 992px) {
    .marg-v-sm-min-screen-md {
        margin-top: 10px;
        margin-bottom: 10px
    }
}

.padd-xs {
    padding: .2em .4em
}

.padd-sm {
    padding: .4em .8em
}

.w-100p {
    width: 100%
}

@media(max-width: 767px) {
    .w-100p-max-sm {
        width: 100%
    }
}

.max-w-100p {
    max-width: 100%
}

.center-block {
    margin-left: auto;
    margin-right: auto
}

@media(max-width: 991px) {
    .center-block-max-md {
        display: block;
        margin-left: auto;
        margin-right: auto
    }
}

@media(max-width: 991px) {
    .row-with-divider .col {
        padding-top: 10px;
        padding-bottom: 10px;
        border-bottom: 6px solid #8bb653
    }

    .row-with-divider .col:first-child {
        padding-top: 0
    }

    .row-with-divider .col:last-child {
        padding-bottom: 0;
        border-bottom: none
    }

    .row-with-divider-lg .col {
        padding-top: 25px;
        padding-bottom: 25px
    }
}

@media(min-width: 992px) {
    .row-with-divider .col {
        padding-left: 25px;
        padding-right: 25px;
        border-right: 6px solid #8bb653
    }

    .row-with-divider .col:first-child {
        padding-left: 0
    }

    .row-with-divider .col:last-child {
        padding-right: 0;
        border-right: none
    }

    .row-with-divider-lg .col {
        padding-left: 50px;
        padding-right: 50px
    }
}

.popup {
    position: relative;
    background: #8bb653;
    border: none;
    color: #fff
}

.popup::before {
    content: "";
    position: absolute;
    right: 0;
    top: 100%;
    border: 10px solid transparent;
    border-right-color: #8bb653;
    border-top-color: #8bb653;
    transition: .15s
}

.expandable-content-more {
    display: none
}

.expandable-content-expanded .expandable-content-expand-btn {
    display: none
}

.expandable-content-expanded .expandable-content-more {
    display: block
}

.expandable-content.expanded .expandable-content-expand-btn .fa-chevron-down::before {
    content: ""
}

.expandable-content.expanded .expandable-content-expand-btn:hover,
.expandable-content.expanded .expandable-content-expand-btn:focus {
    transform: translateY(-3px)
}

.book-thumb-md {
    width: 160px
}

@media(max-width: 767px) {
    .sort-by-cont {
        margin-left: -10px;
        margin-right: -10px
    }
}

.sort-by-cont .mini-nav {
    display: inline-flex;
    color: #212121
}

.sort-by-cont .active {
    color: #fff
}

.mini-nav {
    display: flex;
    margin-left: -10px;
    margin-right: -10px
}

.mini-nav>li {
    padding: 0 10px
}

.mini-nav>li:not(:last-child) {
    border-right: 2px solid
}

.mini-nav a {
    text-decoration: none;
    color: inherit
}

.mini-nav a:hover,
.mini-nav a:focus {
    color: #fff
}

@media(max-width: 991px) {
    .mini-nav {
        text-align: center
    }

    .mini-nav>li {
        flex: 1 1 0
    }
}

.mini-nav-large {
    margin-left: -10px;
    margin-right: -10px
}

.mini-nav-large>li {
    padding: 10px
}

.mini-nav-large a:hover,
.mini-nav-large a:focus {
    color: #8bb653
}

@media(min-width: 768px) {
    .mini-nav-large>li {
        padding: 25px
    }
}

.mini-nav-large>li:not(:last-child) {
    border-right: 5px solid #8bb653
}

.container {
    max-width: 1420px;
    margin-left: auto;
    margin-right: auto
}

.container--sm {
    max-width: 500px;
    margin-bottom: 25px
}

.site-container {
    padding-top: .1px;
    background: #fff
}

.site-content {
    position: relative;
    outline: none;
    transition: .15s
}

.section {
    padding-top: 100px;
    padding-bottom: 100px
}

.section-sm {
    padding-top: 60px;
    padding-bottom: 60px
}

.mini-section {
    padding-top: 30px;
    padding-bottom: 30px
}

@media(max-width: 991px) {
    .section-with-side-text {
        padding-top: 0
    }
}

.pos {
    position: relative
}

.section-more-link {
    position: absolute;
    top: 100%;
    left: 50%;
    width: max-content;
    transform: translate(-50%);
    margin-top: 25px;
    font-size: 2rem
}

@media(min-width: 992px) {
    .content {
        flex: 1;
        width: 0
    }
}

@media(min-width: 992px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        margin-left: -10px;
        margin-right: -10px
    }
}

.col {
    padding-left: 10px;
    padding-right: 10px
}

@media(min-width: 992px) {
    .flex {
        display: flex;
        justify-content: space-between;
        align-items: stretch
    }
}

.flex-jcsb {
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media(min-width: 480px) {
    .flex-jcsb-min-xs {
        display: flex;
        justify-content: space-between;
        align-items: center
    }
}

.flex-jce {
    display: flex;
    justify-content: flex-end
}

.flex-row {
    display: flex;
    flex-wrap: wrap
}

.flex-row--gap-sm {
    gap: 10px
}

@media(max-width: 479px) {
    .min-screen-xs {
        display: none !important
    }
}

@media(max-width: 767px) {
    .min-screen-sm {
        display: none !important
    }
}

@media(max-width: 991px) {
    .min-screen-md {
        display: none !important
    }

    .marg-lg-r-b-md {
        margin-bottom: 50px
    }
}

@media(min-width: 768px) {
    .max-screen-sm {
        display: none !important
    }
}

@media(min-width: 992px) {
    .max-screen-md {
        display: none !important
    }

    .marg-lg-r-b-md {
        margin-right: 50px
    }
}

@media(max-width: 991px) {
    .sr-only-max-md {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        border: 0
    }
}

.h-rule {
    height: 58px;
    margin: 0;
    border: none
}

.h-rule.style-1 {
    background: 0 0 no-repeat url("/local/templates/ves/img/horizontal-rule-1.png")
}

.h-rule.style-2 {
    background: 0 0 no-repeat url("/local/templates/ves/img/horizontal-rule-2.png")
}

.justify-letters {
    display: flex
}

.justify-letters>span {
    flex: auto;
    margin-right: 2em
}

.justify-letters>span:last-child {
    margin-right: 0
}

.justify-letters .section-heading-line,
.side-text .section-heading-line {
    display: flex !important;
    justify-content: space-between;
    letter-spacing: 0 !important;
    user-select: none
}

.justify-letters .section-heading-line>span:empty,
.side-text .section-heading-line>span:empty {
    width: 1em;
    height: 1em
}

.separator {
    margin-left: 10px;
    margin-right: 10px;
    width: 0;
    height: 100%;
    border-left: 5px solid
}

.section,
.mini-section {
    z-index: 1
}

.vertical-text {
    font-family: "PT Serif", "Minion Pro", "Times New Roman", sans-serif;
    font-size: 10vw;
    letter-spacing: .2em;
    color: #474747
}

.vertical-text>span {
    display: block
}

@media(min-width: 768px)and (max-width: 991px) {
    .vertical-text {
        font-size: 5.5vw
    }

    .vertical-text>span {
        display: inline
    }
}

@media(min-width: 992px) {
    .vertical-text-cont {
        display: flex;
        justify-content: flex-end
    }

    .vertical-text {
        margin: 0;
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        font-size: 40px
    }
}

.side-text-cont-img-responsive {
    position: relative;
    z-index: 1
}

@media(max-width: 991px) {
    .side-text-cont-img-responsive::before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        padding-top: 100%;
        width: 700px;
        transform-origin: 0 100%;
        transform: translateY(-100%) rotate(90deg)
    }
}

.side-text-cont-img-responsive-ccw::before {
    transform-origin: top left;
    transform: rotate(-90deg) translateX(-100%)
}

.side-text {
    color: #545454;
    mix-blend-mode: multiply
}

.side-text.clr-bg {
    mix-blend-mode: normal
}

@media(max-width: 767px) {
    .side-text .section-heading {
        font-size: 8vw
    }
}

@media(max-width: 991px) {
    .side-text {
        position: relative;
        padding-top: 50%;
        text-align: center
    }

    .side-text .section-heading {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        transform: translateY(-50%);
        margin-bottom: 0
    }

    .side-text-one-line {
        padding-top: 30%
    }
}

.section-heading,
.mini-section-heading {
    margin: 0;
    font-family: "PT Serif", "Minion Pro", "Times New Roman", sans-serif;
    font-size: 80px
}

.section-heading>span,
.mini-section-heading>span {
    display: block;
    white-space: nowrap
}

@media(min-width: 992px) {
    .side-text {
        display: flex;
        flex: none;
        width: 270px;
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        align-items: start;
        letter-spacing: 30px
    }

    .mini-section .side-text {
        letter-spacing: 10px
    }

    @supports not (height: min-content) {
        .section .side-text {
            height: 650px
        }

        .section-contact .side-text {
            height: 460px
        }

        .widget .side-text {
            height: 700px
        }

        .user-section-blog-posts .side-text {
            height: 560px
        }

        .user-section-ratings .side-text {
            height: 350px
        }

        .section-become-author-contact .side-text {
            height: 480px
        }
    }

    .has-side-text {
        position: relative;
        min-height: 600px
    }

    .side-text-left {
        padding-left: 270px
    }

    .side-text-right {
        padding-right: 270px
    }

    .side-text {
        position: absolute;
        height: 100%;
        top: 0
    }

    .side-text>.section-heading {
        height: 100%
    }

    .side-text-left .side-text {
        left: 0
    }

    .side-text-right .side-text {
        right: 0
    }

    .section-heading,
    .mini-section-heading {
        text-transform: lowercase
    }
}

.mini-section-heading {
    font-size: 50px
}

@media(min-width: 992px) {
    .side-text-left .section-heading {
        margin-right: -0.5em
    }
}

.side-text-right .side-text {
    order: 1;
    overflow: hidden;
    align-items: flex-end
}

@media(min-width: 992px) {
    .side-text-right .section-heading {
        margin-left: -0.25em
    }
}

.breadcrumb-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.breadcrumb-cont-cta-only {
    justify-content: flex-end
}

@media(max-width: 767px) {
    .breadcrumb-cont {
        flex-direction: column
    }

    .btn-cta {
        align-self: center
    }
}

@media(min-width: 992px) {
    .breadcrumb-cont {
        padding-right: 25px
    }
}

.continue-reading-box {
    margin-top: 10px;
    text-align: center
}

a.continue-reading {
    text-decoration: none;
    color: #8bb653;
    vertical-align: middle
}

a.continue-reading .continue-reading-text,
a.continue-reading .fa-ellipsis-h {
    vertical-align: middle
}

a.continue-reading .continue-reading-text {
    display: inline-block;
    overflow: hidden;
    width: 0;
    transition: .15s
}

a.continue-reading .fa-ellipsis-h {
    overflow: hidden;
    width: 1em;
    transition: .15s
}

a.continue-reading:hover,
a.continue-reading:focus {
    outline: none
}

a.continue-reading:hover .continue-reading-text,
a.continue-reading:focus .continue-reading-text {
    width: 3em;
    text-align: center
}

a.continue-reading:hover .fa-ellipsis-h,
a.continue-reading:focus .fa-ellipsis-h {
    width: 0
}

a.continue-reading-size-9:hover .continue-reading-text,
a.continue-reading-size-9:focus .continue-reading-text {
    width: 5.5em
}

.share-dropdown .dropdown-toggle {
    padding-left: 0;
    padding-right: .4em;
    background: none;
    border: 4px solid transparent;
    transition-property: color
}

.share-dropdown .dropdown-toggle:hover,
.share-dropdown .dropdown-toggle:focus {
    color: #8bb653
}

.share-dropdown.open .dropdown-toggle {
    border-color: #8bb653
}

.share-dropdown.open .link-clr-fg,
.share-dropdown.open .post-edit-btn,
.share-dropdown.open .post-title>a {
    color: #8bb653
}

.share-dropdown.open .link-clr-fg .icon-circle,
.share-dropdown.open .post-edit-btn .icon-circle,
.share-dropdown.open .post-title>a .icon-circle {
    background: none;
    color: #8bb653
}

.share-dropdown .dropdown-menu {
    width: 100%;
    margin-top: 0;
    background: #8bb653
}

.share-dropdown .dropdown-item {
    padding-left: 4px;
    padding-right: 4px;
    color: #fff
}

.share-dropdown .dropdown-item:hover,
.share-dropdown .dropdown-item:focus {
    background: #a3c577;
    outline: none
}

.clr-bg,
.clr-bg a {
    color: #fff
}

.clr-fg {
    color: #212121
}

.clr-prim {
    color: #8bb653
}

.bg-bg {
    background-color: #fff
}

.bg-prim {
    /*background-color: #8bb653;*/
    color: #7c7c7c
}

.clr-success {
    color: #8bb653
}

.light {
    color: #6e6e6e
}

.rate {
    position: relative;
    display: inline-block;
    font-size: 1.2rem
}

.rate label {
    display: flex;
    flex-direction: column;
    align-items: center;
    float: right;
    margin: 3px 0 0
}

.rate label::after {
    content: "";
    padding: .1em;
    font-family: "Font Awesome 5 Free";
    font-weight: normal
}

.rate:not(:hover) input:checked~label::after,
.rate label:hover::after,
.rate :focus+label::after,
.rate label:hover~label::after,
.rate :focus+label~label::after {
    font-weight: bold
}

.rate:not(:hover) input:checked~label .rating-value,
.rate label:hover .rating-value,
.rate :focus+label .rating-value,
.rate label:hover~label .rating-value,
.rate :focus+label~label .rating-value {
    visibility: visible
}

.rate:not(:hover):not(:focus-within) input:checked~label::after,
.rate label:hover::after,
.rate :focus+label::after,
.rate label:hover~label::after,
.rate :focus+label~label::after {
    font-weight: bold
}

.rate:not(:hover):not(:focus-within) input:checked~label .rating-value,
.rate label:hover .rating-value,
.rate :focus+label .rating-value,
.rate label:hover~label .rating-value,
.rate :focus+label~label .rating-value {
    visibility: visible
}

.rating-value {
    visibility: hidden;
    font-size: .7rem;
    font-weight: normal
}

@media(max-width: 991px) {
    .rate {
        float: none;
        display: inline-block;
        margin-bottom: 10px
    }
}

div.error,
span.error,
label.error {
    color: #ee2c2c
}

input.error,
textarea.error,
input.error:focus,
textarea.error:focus {
    border: 1px solid #ee2c2c
}

.error_result {
    color: #ee2c2c;
    padding-top: 10px
}

#regForm label.error {
    font-size: 16px
}

#regForm label.error:before {
    display: none
}

.ajax-loading {
    opacity: .5
}

.notetext {
    color: #8db65b
}

.errortext {
    color: #d40000
}

.date {
    color: #616161
}

.upload-image-cont--no-image .upload-image-show-if-has-image {
    display: none
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto
}

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 201;
    background: #474747;
    color: #fff;
    transition: .25s
}

.site-header a,
.site-header button {
    color: #fff
}

.site-header a:hover,
.site-header a:focus,
.site-header button:hover,
.site-header button:focus {
    color: #8bb653;
    outline: none
}

.site-header a {
    text-decoration: none
}

.site-header a:hover,
.site-header a.active {
    color: #8bb653
}

.site-header button {
    color: #fff;
    width: 3em
}

.site-header input[type=search] {
    flex: auto;
    background: #6e6e6e;
    border: 0
}

.site-header input[type=search]:focus {
    background: #fff;
    box-shadow: 0 0 12px rgba(0, 0, 0, .25)
}

.site-header .fas,
.site-header .close,
.site-header .far,
.site-header .fab {
    font-size: 16px
}

.skip-top-main-link.skip-top-main-link.skip-top-main-link {
    position: absolute;
    top: 2px;
    color: #fff;
    transition: none
}

@media(min-width: 992px) {
    .site-header-top {
        padding-top: 40px;
        padding-bottom: 40px;
        transition: padding .25s
    }

    .menu-group,
    .top-nav {
        transition: height .25s
    }

    .logo-cont {
        top: calc(2 * 4rem + 2 * 40px - 350px + 40px)
    }

    .page-scrolled .site-header {
        filter: drop-shadow(0 5px 5px rgba(0, 0, 0, 0.4));
        clip-path: polygon(0 0, 100% 0, 100% 200%, 0 200%)
    }

    .page-scrolled .site-header-top {
        padding-top: 0;
        padding-bottom: 10px
    }

    .page-scrolled .menu-group {
        height: 3rem
    }

    .page-scrolled .top-nav {
        height: 2.5rem
    }

    .page-scrolled .logo-cont {
        top: calc(3rem + 2.5rem + 10px - 350px + 40px)
    }
}

.menu-line-top {
    display: flex
}

.menu-group {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    justify-content: space-between;
    align-items: center
}

@media(max-width: 991px) {
    .menu-group:last-child {
        align-items: flex-end
    }
}

.menu-area {
    height: 100%;
    padding: 10px 0
}

.menu-group:first-child {
    margin-right: 90px
}

.search {
    width: 0
}

.user-profile-link>.avatar-small {
    box-sizing: content-box;
    border: 2px solid transparent;
    border-radius: 999px
}

.user-profile-link:focus>.avatar-small {
    border-color: #8bb653
}

.user-cart-link.user-cart-link:focus {
    color: #fff
}

@media(max-width: 991px) {
    body[data-expanded-menu] {
        overflow: hidden
    }

    .site-header {
        z-index: 202;
        max-height: 100%;
        transition: 0s 1s
    }

    .site-header.menu-expanded {
        height: auto;
        overflow: auto;
        transition: none
    }

    .site-header:not(.menu-expanded) .social-links,
    .site-header:not(.menu-expanded) .user-area,
    .site-header:not(.menu-expanded) .menu-line-bottom,
    .site-header:not(.menu-expanded) .cat-menu-nav {
        visibility: hidden;
        transition: .25s
    }

    .site-header-wrap {
        height: 4rem;
        overflow: hidden;
        transition: .25s
    }

    .cat-menu-toggle-wrap {
        display: none
    }
}

@media(min-width: 992px) {
    .site-header {
        height: auto !important
    }

    .menu-line-bottom {
        display: flex
    }

    .menu-group {
        flex-direction: row
    }

    .menu-group:first-child {
        margin-right: 190px
    }

    .menu-group,
    .top-nav {
        height: 4rem
    }

    .top-nav {
        display: flex;
        flex: auto
    }

    .top-nav>li:nth-child(1),
    .top-nav>li:nth-child(2),
    .top-nav>li:nth-child(3) {
        flex: none;
        width: calc((100% - 190px - 50px) / 6)
    }

    .top-nav>li:nth-child(3) {
        margin-right: 190px
    }

    .social-links {
        order: -1
    }

    .header-toggle {
        display: none
    }

    .cat-menu-toggle-wrap {
        order: -1;
        display: flex;
        align-items: stretch;
        width: 50px;
        border-top: 1px solid #fff;
        border-bottom: 1px solid #fff
    }

    .search-wrap {
        flex: auto
    }
}

.social-links {
    display: flex;
    height: 100%
}

@media(max-width: 991px) {
    .social-links {
        align-self: flex-start
    }
}

.social-links>li {
    border-right: 2px solid #606060
}

.social-links a {
    width: 3em;
    height: 100%
}

.social-links a:hover,
.social-links a:focus {
    background: #fff;
    color: #474747;
    outline: none
}

.site-subtitle {
    margin: 0;
    font-size: 1em;
    text-transform: lowercase;
    letter-spacing: .5em;
    text-align: right
}

@media(max-width: 767px) {
    .site-subtitle {
        font-size: 2.7vw
    }
}

.search-wrap {
    display: flex
}

.search-form {
    flex: auto;
    display: flex
}

.user-area {
    display: flex;
    height: 100%
}

.user-area>li {
    border-left: 2px solid #606060
}

.user-area a {
    width: 2.5em;
    height: 100%
}

a.user-cart-link {
    position: relative;
    color: #8bb653
}

.user-cart-quantity {
    position: absolute;
    left: 70%;
    top: -0.24em;
    font-size: 13px
}

@media(max-width: 767px) {

    .social-links,
    .user-area {
        align-self: stretch
    }

    .social-links>li,
    .user-area>li {
        flex: auto
    }

    .social-links a,
    .user-area a {
        width: 100%
    }
}

@media(max-width: 991px) {
    .menu-area {
        height: 4rem
    }

    .search {
        display: none
    }

    .social-links>li:last-child {
        border-right: none
    }

    .user-area>li:first-child {
        border-left: none
    }

    .search-expanded .search {
        display: block;
        position: fixed;
        z-index: 204;
        left: 0;
        top: 0;
        width: 100%;
        height: 4rem;
        border-radius: 0
    }

    .search-expanded .logo-cont {
        transform: translate(-50%, -100%)
    }
}

.top-nav {
    justify-content: stretch
}

.top-nav li {
    flex: 1 1 0;
    margin-top: -1px;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    padding: 10px 0
}

.top-nav a {
    height: 100%
}

@media(max-width: 991px) {
    .top-nav li:last-child {
        border-bottom: none
    }

    .top-nav a {
        justify-content: flex-start
    }
}

@media(min-width: 992px) {
    .top-nav li {
        margin-top: 0
    }

    .top-nav a {
        border-right: 2px solid #606060
    }

    .top-nav li:nth-child(3) a,
    .top-nav li:last-child a {
        border: none
    }
}

.logo-cont {
    position: absolute;
    z-index: 2;
    left: 50%;
    transform: translateX(-50%);
    transition: .15s;
    text-decoration: none
}

@media(max-width: 991px) {
    .logo-cont {
        bottom: auto;
        top: calc(4rem - 350px + 18px);
        filter: none
    }

    .logo::before {
        content: "";
        position: absolute;
        bottom: 54px;
        left: 0;
        right: 0;
        height: 50px;
        background: #eb008b
    }
}

@media(min-width: 992px) {

    .logo,
    .scroll-up-btn {
        transition: .15s
    }

    .logo {
        display: block
    }

    .logo:hover,
    .logo:hover+.scroll-up-btn,
    .logo:focus,
    .logo:focus+.scroll-up-btn {
        transform: translateY(13px);
        transition: .5s cubic-bezier(0.25, 0.1, 0, 1);
        outline: none
    }
}

button.scroll-up-btn {
    position: absolute;
    z-index: -1;
    top: calc(100% - 28px);
    left: 0;
    width: 100%;
    height: 71px;
    visibility: hidden;
    opacity: 0
}

button.scroll-up-btn .arrows-arrow-last {
    opacity: 0
}

body.page-scrolled button.scroll-up-btn {
    visibility: visible;
    opacity: 1
}

button.scroll-up-btn:hover {
    opacity: 1
}

button.scroll-up-btn:hover .icon-arrows {
    animation: scroll-up 1.2s infinite linear
}

button.scroll-up-btn:hover .icon-arrows .arrows-arrow-last {
    opacity: 1;
    animation: scroll-up-arrow 1.2s infinite linear
}

@keyframes scroll-up {
    0% {
        transform: translateY(20px)
    }

    33% {
        transform: none
    }

    33.01% {
        transform: translateY(20px);
        animation-timing-function: cubic-bezier(0.27, 0.37, 0.42, 1)
    }

    100% {
        transform: none
    }
}

@keyframes scroll-up-arrow {
    0% {
        opacity: 1
    }

    3% {
        opacity: 1
    }

    3.1% {
        opacity: 0
    }

    15% {
        opacity: 0
    }

    30% {
        opacity: 1
    }

    33% {
        opacity: 1
    }

    35% {
        opacity: 0
    }

    48% {
        opacity: 0
    }

    63% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

.scroll-up-btn-wrap {
    display: block;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 18px), 0 100%)
}

.icon-arrows {
    width: 100%;
    height: auto;
    fill: #eb008b
}

.search-suggestions-cont {
    position: fixed;
    z-index: 203;
    overflow: auto;
    background: #fff;
    box-shadow: 0 7px 21px 2px rgba(0, 0, 0, .5);
    opacity: 0;
    visibility: hidden;
    transition-property: visibility, opacity;
    transition-duration: .25s
}

.search-suggestions-cont.open {
    opacity: 1;
    visibility: visible
}

@media(max-width: 991px) {
    .search-suggestions-cont {
        margin-top: -1px;
        border-top: 1px solid #d9d9d9;
        clip-path: polygon(0 0, 100% 0, 100% calc(100% + 30px), 0 calc(100% + 30px))
    }
}

@media(min-width: 992px) {
    .search-suggestions-cont {
        margin-top: 2px
    }
}

@media(min-width: 992px)and (max-width: 1420px) {
    .search-suggestions-cont {
        right: 45px;
        width: auto !important
    }
}

@media(min-width: 1200px)and (max-width: 1420px) {
    .search-suggestions-cont {
        right: 90px
    }
}

.search-suggestion {
    display: grid;
    grid-template-columns: 125px 1fr;
    color: inherit;
    text-decoration: none
}

.search-suggestion:hover,
.search-suggestion:focus {
    background: #e6e6e6
}

.search-suggestion-image-wrap,
.search-suggestion-description {
    padding: .8em
}

.search-suggestion-image-wrap {
    justify-self: center
}

.search-suggestion-description b {
    color: #8bb653;
    font-weight: normal
}

.search-suggestions-controls {
    padding-top: 10px;
    padding-bottom: 10px;
    border-top: 1px solid #d9d9d9;
    text-align: center
}

.cat-menu-nav {
    background: #fff;
    overflow: hidden;
    font-size: .85rem;
    font-weight: bold;
    height: 0;
    visibility: hidden;
    transition: .25s
}

.cat-menu-nav.menu-expanded {
    visibility: visible
}

.cat-menu {
    margin: 20px -25px
}

.cat-menu a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .8em .8em;
    color: #212121;
    text-decoration: none
}

.cat-menu .fa-chevron-right {
    margin-left: 25px
}

.cat-menu-item {
    break-inside: avoid-column;
    margin-top: -1px;
    padding-left: 25px;
    padding-right: 25px;
    background: #fff
}

.cat-menu-item:last-child {
    grid-row-end: last-line
}

.cat-menu-item a:hover,
.cat-menu-item a:focus,
.cat-menu-item.active a {
    color: #8bb653
}

.cat-menu-item:not(.active) a:hover,
.cat-menu-item:not(.active) a:focus {
    transform: translateX(5px)
}

.cat-menu-item-wrap {
    border-top: 1px solid #6e6e6e;
    border-bottom: 1px solid #6e6e6e
}

.cat-menu-expand-btn-cont {
    display: list-item !important
}

.cat-menu-expand-btn.cat-menu-expand-btn.cat-menu-expand-btn {
    background: #6e6e6e;
    border: 2px solid #6e6e6e;
    border-left-width: 3px;
    border-right-width: 3px;
    color: #fff;
    transform: none !important
}

.cat-menu-expand-btn.cat-menu-expand-btn.cat-menu-expand-btn:focus {
    background: #fff;
    color: #6e6e6e
}

.cat-menu-nav.menu-expanded .cat-menu-expand-btn.cat-menu-expand-btn.cat-menu-expand-btn .fa-chevron-down {
    transform: rotate(180deg)
}

.home-categories-cont .cat-menu-nav:not(.menu-expanded) .cat-menu-item:nth-child(7)~.cat-menu-item {
    display: none
}

button.cat-menu-toggle-mobile {
    width: 100%;
    padding: .4em .8em;
    text-transform: lowercase;
    color: #8bb653
}

button.cat-menu-toggle-mobile[aria-pressed=true] {
    display: none
}

button.cat-menu-toggle-mobile .fa-caret-down {
    display: block
}

.page-home .cat-menu-toggle-wrap {
    display: none
}

.home-categories-cont {
    position: relative
}

.home-categories-cont .cat-menu-nav {
    visibility: visible;
    height: auto
}

.home-categories-cont .cat-menu-nav:not(.menu-expanded) .cat-menu-item:nth-child(5)~.cat-menu-item {
    display: none
}

.cat-menu-toggle-home {
    display: block;
    margin-left: auto;
    margin-right: auto;
    background: none
}

.cat-menu-toggle-home>span:not(.sr-only),
.cat-menu-toggle-home>span:not(.sr-only)::before,
.cat-menu-toggle-home>span:not(.sr-only)::after {
    background: #212121
}

@media(max-width: 991px) {
    .cat-menu-toggle-home {
        margin-top: 20px
    }
}

@media(min-width: 992px) {
    .page-home .site-header .cat-menu-nav {
        display: none
    }

    .cat-menu-toggle-home {
        position: absolute;
        z-index: 2;
        left: 22.5px;
        transform: translateX(-50%);
        top: 20px
    }
}

@media(min-width: 768px) {
    .cat-menu {
        column-count: 2;
        column-rule: 8px solid #8bb653
    }
}

@media(min-width: 992px) {
    .cat-menu {
        column-count: 3
    }

    .cat-menu-toggle-cont {
        display: none
    }
}

@media(min-width: 1200px) {
    .cat-menu-toggle-home {
        left: 45px
    }
}

@media(min-width: 1420px) {
    .cat-menu {
        column-count: 4
    }

    .home-categories-cont .cat-menu-nav:not(.menu-expanded) .cat-menu-item.cat-menu-item.cat-menu-item {
        display: list-item
    }

    .home-categories-cont .cat-menu-nav:not(.menu-expanded) .cat-menu-item:nth-child(7)~.cat-menu-item {
        display: none
    }
}

.grid-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, 14em);
    justify-content: space-evenly;
    grid-gap: 50px 25px
}

@media(min-width: 992px) {
    .grid-list {
        justify-content: space-between
    }
}

.book-short {
    position: relative;
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: flex-end
}

.book-short-extended {
    min-height: 27rem;
    justify-content: flex-end
}

.book-short-extended .book-attributes {
    height: 3em;
    border-bottom: 2px solid #b3b3b3
}

.book-short-extended .book-title,
.book-short-extended .book-author {
    align-self: flex-end;
    text-align: right
}

.book-short-extended .book-title a,
.book-short-extended .book-author a {
    color: inherit
}

.book-short-extended .book-title a:hover,
.book-short-extended .book-title a:focus,
.book-short-extended .book-author a:hover,
.book-short-extended .book-author a:focus {
    color: #8bb653;
    outline: none
}

.book-short-extended .book-title {
    margin-bottom: 3px
}

.book-short-extended .book-rating {
    margin-top: .4em;
    margin-bottom: .4em;
    align-self: center;
    text-align: left;
    color: #b3b3b3;
    font-size: .85em
}

.book-short-extended .book-rating-link .book-rating::after {
    transition: .15s
}

.book-short-extended .book-rating-link:hover,
.book-short-extended .book-rating-link:focus {
    outline: none
}

.book-short-extended .book-rating-link:hover .book-rating,
.book-short-extended .book-rating-link:hover .book-rating::after,
.book-short-extended .book-rating-link:focus .book-rating,
.book-short-extended .book-rating-link:focus .book-rating::after {
    color: #545454
}

.book-short-extended .book-description {
    padding: .4em .8em;
    padding-bottom: 0;
    border-top: 2px solid #b3b3b3;
    border-bottom: 2px solid #b3b3b3
}

.book-short-extended .book-description:last-child {
    border-bottom: none
}

.book-short-extended a {
    text-decoration: none
}

.book-rating {
    position: relative;
    display: inline-block
}

.book-rating::before {
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #d9d9d9;
    font-size: 14px
}

.book-rating::after {
    position: absolute;
    left: 0;
    top: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #8bb653;
    font-size: 14px
}

.book-rating[data-rating="0.5"]::after {
    content: ""
}

.book-rating[data-rating="1"]::after {
    content: ""
}

.book-rating[data-rating="1.5"]::after {
    content: ""
}

.book-rating[data-rating="2"]::after {
    content: ""
}

.book-rating[data-rating="2.5"]::after {
    content: ""
}

.book-rating[data-rating="3"]::after {
    content: ""
}

.book-rating[data-rating="3.5"]::after {
    content: ""
}

.book-rating[data-rating="4"]::after {
    content: ""
}

.book-rating[data-rating="4.5"]::after {
    content: ""
}

.book-rating[data-rating="5"]::after {
    content: ""
}

.book-rating-clr-fg::after {
    color: #6e6e6e
}

.book-attributes {
    height: 5em
}

.book-attributes .icon-circle {
    font-size: .7rem
}

.book-attr {
    margin: 10px
}

.book-description {
    padding: .8em 1.5em;
    border-top: 1px solid #d9d9d9;
    font-size: .85rem;
    text-align: center
}

.book-image-cont+.book-description {
    margin-top: 3em
}

.book-description>:first-child {
    margin-top: 0
}

.one-row-carousel-list .book-description {
    margin-top: 50px
}

.book-title {
    font-size: 1rem;
    margin: 10px 0
}

@media(min-width: 480px) {

    .book-short .book-title-link,
    .book-short .book-author-link {
        display: block;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis
    }
}

.book-author {
    color: #6e6e6e
}

.book-comments {
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content;
    margin: auto;
    position: relative
}

.new-comments-num {
    position: absolute;
    left: 100%;
    padding-left: 10px;
    color: #8bb653
}

.book-purchased-text {
    font-weight: bold
}

.book-image-cont-wrap {
    min-height: 260px;
    display: flex;
    justify-content: center
}

.book-image-cont {
    display: inline-block;
    align-self: center;
    margin-left: -7px;
    perspective: 1000px
}

.book-image-cont:hover,
.book-image-cont:focus {
    outline: none
}

.book-image-cont:hover .book-image-wrap,
.book-image-cont:focus .book-image-wrap {
    transform: translateZ(-100px)
}

.book-image-wrap {
    display: inline-block;
    position: relative;
    transform: translateZ(-100px) rotateY(-30deg);
    transform-style: preserve-3d;
    transition: .4s
}

.book-image-wrap::before {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    height: 50px;
    box-shadow: 12px -3px 40px 5px rgba(0, 0, 0, .4);
    background: rgba(0, 0, 0, .4);
    border-radius: 10px;
    transform-origin: bottom;
    transform: rotateX(90deg);
    backface-visibility: visible
}

.book-image-wrap::after {
    content: "";
    position: absolute;
    top: 0;
    right: -20px;
    height: 100%;
    width: 20px;
    background: silver;
    transform: rotateY(90deg);
    transform-origin: left
}

.book-image {
    display: block;
    width: 140px
}

.book-price-cont {
    height: 2em;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0;
    text-align: right
}

.book-short .book-price-old {
    display: block;
    margin-bottom: -0.3em;
    font-size: 1.2em;
    font-weight: bold
}

.book-short .book-price-old::after {
    content: none
}

.box-arrow-right {
    position: relative;
    height: 100%;
    padding: 0 .4em;
    background: #6e6e6e;
    color: #fff
}

.box-arrow-right::after {
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    border: solid 1em transparent;
    border-right: none;
    border-left: solid .5em #6e6e6e
}

.add-to-cart-btn .fa-spin {
    font-size: 13px;
    animation-duration: 1s
}

.site-footer {
    padding-top: 125px;
    background: url(/local/templates/ves/img/horizontal-rule-thick.png) no-repeat 0 0, #8bb653;
    font-size: .85rem;
    overflow: hidden
}

.site-footer a {
    color: #212121
}

.footer-nav {
    grid-auto-flow: column
}

.footer-nav h3 {
    margin: 1.5em 0;
    text-align: center;
    font-size: 1.3em
}

.footer-nav,
.footer-row {
    margin: 0 -3em
}

.footer-menu,
.footer-row>div {
    padding: 0 3em
}

.footer-row:first-child {
    border-bottom: 1px solid rgba(33, 33, 33, .5)
}

.footer-row>div {
    margin-top: 1.5em;
    margin-bottom: 1.5em
}

.footer-row>div:first-child {
    border-right: 1px solid rgba(33, 33, 33, .5)
}

.footer-menu {
    display: block;
    list-style: none;
    background: none;
    font-weight: bold
}

.footer-menu>li {
    padding: 0;
    border: 0;
    border-top: 1px solid rgba(33, 33, 33, .5);
    border-bottom: 1px solid rgba(33, 33, 33, .5)
}

.footer-menu>li:not(:first-child) {
    margin-top: -1px
}

.footer-menu a {
    text-decoration: none;
    display: block;
    padding: .8em 0
}

.footer-menu a .fa-chevron-right {
    float: right
}

.footer-menu a:hover,
.footer-menu a:focus {
    transform: translateX(5px)
}

.footer-contacts {
    overflow: hidden;
    margin-top: 25px
}

.footer-social-links-cont {
    border-left: 1px solid rgba(33, 33, 33, .5)
}

.footer-social-link {
    margin: 10px
}

.footer-social-link,
.footer-tel {
    font-size: 1rem
}

.footer-row:not(:last-child) {
    border-bottom: 1px solid rgba(33, 33, 33, .5) #545454
}

@media(min-width: 992px) {
    .site-footer {
        padding-bottom: 25px
    }

    .footer-nav,
    .footer-row {
        display: grid;
        grid-template-rows: repeat(4, min-content);
        grid-template-columns: repeat(2, 1fr)
    }

    .footer-menu,
    .footer-nav h3 {
        border-right: 1px solid rgba(33, 33, 33, .5)
    }

    .footer-menu:nth-of-type(3),
    .footer-menu:nth-of-type(4),
    .footer-nav h3:nth-of-type(3),
    .footer-nav h3:nth-of-type(4) {
        border-right: none
    }

    .footer-created-by {
        grid-column: span 2
    }
}

@media(min-width: 1200px) {

    .footer-nav,
    .footer-row {
        grid-template-rows: repeat(2, min-content);
        grid-template-columns: repeat(4, 1fr)
    }

    .footer-menu:nth-of-type(3),
    .footer-nav h3:nth-of-type(3) {
        border-right: 1px solid rgba(33, 33, 33, .5)
    }

    .footer-menu:nth-of-type(4),
    .footer-nav h3:nth-of-type(4) {
        border-right: none
    }

    .footer-social-links-cont {
        grid-column-start: 4
    }

    .footer-created-by {
        text-align: right
    }
}

.post-area {
    flex: auto
}

.blog-post-before-content {
    width: 100%
}

.post-author {
    display: inline-flex;
    align-items: flex-start;
    margin-bottom: .8em;
    overflow: hidden
}

.post-author .avatar {
    margin-right: 10px
}

.post-author-info {
    overflow: hidden
}

.post-author-name {
    color: #3b3b3b
}

.post-title-cont {
    display: flex;
    justify-content: space-between;
    margin-top: 0;
    margin-bottom: .8em
}

.post-title-cont .post-title {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 10px
}

.post-title-cont .post-date {
    margin-top: 2px
}

.post-title>a {
    font-weight: bold
}

.post-image-wrap {
    text-align: center;
    margin-bottom: 1em
}

.post-date {
    color: #6e6e6e
}

.post-image-link {
    display: block
}

@media(min-width: 768px) {
    .post-image-link {
        display: block;
        overflow: hidden
    }

    .post-image-link:hover .post-image,
    .post-image-link:focus .post-image {
        transform: scale(1.08)
    }
}

.post-footer {
    font-size: .85rem
}

.post-reactions {
    margin-top: 25px
}

.post-reaction {
    margin-right: 10px
}

.post-reaction .icon-circle {
    position: relative
}

.tags {
    margin-top: 25px;
    padding: .4em .8em;
    background: #e0ebd0;
    line-height: 2
}

.tag {
    display: inline-block;
    position: relative;
    margin-left: 1em;
    text-decoration: none
}

.tag:hover,
.tag:focus {
    text-decoration: underline
}

.tag::before {
    content: "#";
    position: absolute;
    right: 100%;
    text-decoration: none
}

@media(min-width: 992px) {
    .tags {
        padding: .8em 1.5em;
        margin-left: -25px;
        padding-left: 25px
    }
}

.post-tags {
    margin-top: 25px
}

.post-tags .tag {
    color: #6e6e6e;
    text-decoration: none
}

.post-tags .tag:hover,
.post-tags .tag:focus {
    color: #212121
}

.post-actions {
    margin-top: 25px;
    font-size: 1rem
}

.post-visitor-actions {
    display: flex;
    align-items: center;
    gap: 10px
}

@media(max-width: 479px) {
    .post-visitor-actions {
        justify-content: space-between
    }
}

.post-author-actions {
    display: flex;
    align-items: center;
    gap: 10px
}

@media(max-width: 479px) {
    .post-author-actions {
        justify-content: space-between;
        padding-right: .4em
    }
}

.post-like-btn {
    padding: .2em .4em
}

.post-like-btn:hover,
.post-like-btn:focus {
    color: #8bb653
}

.post-like-btn.liked {
    background: #8bb653;
    color: #fff
}

.post-like-btn.liked .icon-circle {
    color: #fff
}

.post-edit-btn {
    font-size: .85rem
}

.article h2 {
    padding-top: .4em;
    padding-bottom: .4em;
    background: #8bb653;
    font-size: 1.2rem
}

.article h3 {
    font-size: 1em
}

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

.post-go-to-post-link {
    display: none
}

.post-go-to-post-link:hover,
.post-go-to-post-link:focus {
    text-decoration: underline;
    color: #6e6e6e
}

.expandable-content-expanded .post-go-to-post-link {
    display: block
}

.awaits-moderation-popup {
    padding: .4em .8em
}

.just-loaded-post {
    animation: post-fade-in 1s ease-out
}

@keyframes post-fade-in {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@media(max-width: 767px) {
    .awaits-moderation-popup {
        position: absolute;
        top: 25px;
        width: 100%
    }

    .post-awaits-moderation.post-awaits-moderation.post-awaits-moderation {
        padding-top: calc(1em + 2 * 0.4em + 50px)
    }
}

@media(min-width: 768px) {
    .post-actions {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center
    }

    .awaits-moderation-popup {
        float: right
    }
}

.post-full .post-author {
    display: inline-flex;
    padding-right: .4em
}

.post-image-cont {
    height: 160px;
    display: flex;
    align-items: center
}

.posts-list .post-author {
    display: flex
}

.posts-list .post-image {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    max-height: 160px;
    -o-object-fit: cover;
    object-fit: cover
}

.posts-list .post-title {
    font-size: 1.2rem
}

@media(min-width: 768px) {
    .post-image {
        transition: 1s cubic-bezier(0, 0.5, 0.25, 1);
        transform-origin: 50% 10%
    }
}

.page-user-agreement .page-heading {
    position: relative;
    color: #8bb653;
    font-family: "Arial", "Helvetica", sans-serif;
    font-size: 110px;
    text-transform: uppercase;
    text-align: right
}

@media(max-width: 1420px) {
    .page-user-agreement .page-heading {
        font-size: 8vw
    }
}

.page-user-agreement .page-heading::after {
    content: "";
    position: absolute;
    left: 0;
    top: -0.7em;
    width: 100%;
    padding-top: 28.4440842788%;
    background: url(/local/templates/ves/img/page-user-agreement-heading.png) no-repeat 0/contain
}

.page-how-to-read .page-heading {
    color: #8bb653;
    font-family: "Arial", "Helvetica", sans-serif;
    font-size: 110px;
    text-align: center;
    padding: 0 10%;
    background: url(/local/templates/ves/img/page-how-to-read-leaf-left.png) no-repeat 0/contain, url(/local/templates/ves/img/page-how-to-read-leaf-right.png) no-repeat 100%/contain
}

@media(max-width: 1420px) {
    .page-how-to-read .page-heading {
        font-size: 8vw
    }
}

.user-signin-dialog input[type=text],
.user-signin-dialog input[type=email],
.user-signin-dialog input[type=password] {
    width: 100%;
    margin: 10px 0;
    border-radius: 0
}

.user-signin-dialog button[type=submit] {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 25px;
    font-size: 17px
}

.user-signin-dialog .dialog {
    max-width: 430px;
    padding-bottom: 50px
}

.user-signin-dialog .dialog-body {
    padding: 0;
    background: none
}

.user-signin-dialog .tabs-nav {
    display: flex
}

.user-signin-dialog .tabs-tab {
    flex: 1 1 0;
    background: none;
    border-bottom: 2px solid transparent;
    color: #fff;
    font-size: 1.2rem
}

.user-signin-dialog .tabs-tab.active {
    background: #fff;
    color: #8bb653
}

.user-signin-dialog .tabs-tab:focus {
    border-bottom-color: #6e6e6e;
    color: #545454
}

.user-signin-dialog .tabs-panel {
    padding: 25px;
    background: #fff
}

.user-signin-dialog .checkboxes-prim {
    font-size: .85rem;
    color: #6e6e6e
}

.user-signin-3d-party {
    border-bottom: 6px solid #8bb653;
    padding-left: inherit;
    padding-right: inherit;
    margin: 0 -25px;
    padding-bottom: 10px
}

.user-signin-3d-party small {
    display: inline-block
}

.user-signin-3d-party .connect-via-providers {
    display: block;
    text-align: center
}

.user-signin-login-form {
    padding-top: 10px
}

.user-signin-3d-party-heading {
    font-size: 20px
}

.user-signin-native-heading {
    font-size: 16.5px
}

@media(min-width: 480px) {
    .user-signin-dialog .dialog {
        padding-left: 25px;
        padding-right: 25px
    }

    .user-signin-dialog .tabs-tab {
        font-size: 1.44rem
    }
}

.added-to-cart-dialog .dialog {
    max-width: 400px;
    text-align: center
}

.added-to-cart-dialog .dialog-heading {
    font-size: 37px
}

#added-to-cart-dialog-label {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-weight: normal
}

.update-browser {
    flex: auto;
    margin-top: 50px;
    text-align: center;
    font-size: 1.2rem
}

.browser-link.browser-link {
    display: inline-block;
    margin: 25px 10px;
    text-decoration: none;
    color: #212121;
    transition: .15s
}

.browser-link.browser-link:hover,
.browser-link.browser-link:focus {
    transform: scale(1.1)
}

.browser-bg {
    width: 123px;
    height: 130px;
    background: url(/local/templates/ves/img/browsers-sprite.png) no-repeat
}

.browser-bg--chrome {
    background-position-x: 0
}

.browser-bg--firefox {
    background-position-x: -125px
}

.browser-bg--opera {
    background-position-x: -250px
}

.browser-bg--safari {
    background-position-x: -375px
}

.browser-bg--edge {
    background-position-x: -500px
}

.no-support .site-container {
    display: none
}

.bx-notifier-item-button,
.bx-messenger-mark .popup-window-button {
    height: auto
}

@media print {

    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important
    }

    a,
    a:visited {
        text-decoration: underline
    }

    a[href]:after {
        content: " ("attr(href) ")"
    }

    abbr[title]:after {
        content: " ("attr(title) ")"
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: ""
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    tr,
    img {
        page-break-inside: avoid
    }

    img {
        max-width: 100% !important
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3
    }

    h2,
    h3 {
        page-break-after: avoid
    }

    .site-header,
    .breadcrumb-cont,
    .footer-nav {
        display: none
    }

    .footer-social-link {
        display: block
    }

    .site-content {
        margin-top: 0 !important
    }
}

.top-users {
    list-style: none;
    margin: 0;
    padding: 0
}

.top-user-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

@media(min-width: 992px) {
    .has-sidebar {
        display: flex;
        align-items: flex-start
    }

    .sidebar {
        flex: none;
        width: 400px;
        margin-left: 50px
    }

    .sidebar .widget {
        padding-left: 25px
    }

    .sidebar .widget .unwrap-right {
        margin-left: -25px;
        padding-left: 25px
    }

    .sidebar .has-side-text {
        padding-right: 110px
    }

    .sidebar .side-text {
        width: 110px;
        line-height: .9
    }
}

.top-users-cont {
    background: url(/local/templates/ves/img/fern.png) no-repeat 100% 80%, #8bb653;
    padding-top: 25px;
    padding-bottom: 25px
}

.top-users-cont .section-heading {
    margin-left: 0;
    font-size: 55px;
    letter-spacing: .1em
}

@media(max-width: 991px) {
    .top-users-cont {
        margin-top: 50px;
        padding-top: 0;
        background: #8bb653
    }

    .top-users-cont::before {
        background: url(/local/templates/ves/img/fern.png) no-repeat 100% 105%/auto 80%;
        transform-origin: top left;
        transform: rotate(-90deg) translateX(-100%)
    }

    .top-users-cont .section-heading {
        font-size: 8vw
    }
}

.top-users {
    counter-reset: list
}

.top-users li {
    max-width: 100%;
    counter-increment: list
}

.top-users li a {
    padding: 10px;
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    background: #fff;
    color: #212121;
    transform-origin: 80%;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0)
}

.top-users li a:hover,
.top-users li a:focus {
    position: relative;
    z-index: 1;
    transform: translateX(3px);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .4)
}

.top-user-name-cont {
    position: relative;
    margin-left: 2em
}

.top-user-name-cont::before {
    content: counter(list) ". ";
    position: absolute;
    right: 100%;
    margin-right: 3px;
    top: 0
}

.top-user-name {
    font-weight: bold;
    color: #3b3b3b
}

.top-user-rating {
    font-size: .85rem
}

@media(min-width: 992px) {
    .top-users-cont::before {
        background: url(/local/templates/ves/img/fern.png) no-repeat 100% 105%/auto 84%;
        transform-origin: top left;
        transform: rotate(-90deg) translateX(-100%)
    }
}

.tags {
    margin-top: 25px;
    padding: .4em .8em;
    background: #e0ebd0;
    line-height: 2
}

.tag {
    display: inline-block;
    position: relative;
    margin-left: 1em;
    text-decoration: none
}

.tag:hover,
.tag:focus {
    text-decoration: underline
}

.tag::before {
    content: "#";
    position: absolute;
    right: 100%;
    text-decoration: none
}

@media(min-width: 992px) {
    .tags {
        padding: .8em 1.5em;
        margin-left: -25px;
        padding-left: 25px
    }

    .sidebar .widget-social {
        padding-left: 0
    }
}

.widget-social-frame {
    width: 100% !important;
    overflow: hidden
}

.comments-comment-reply-btn {
    margin: 0;
    padding: 0;
    border: none;
    cursor: pointer;
    background: none
}

.comments-comment-reply-btn:hover,
.comments-comment-reply-btn:focus,
.comments-comment-reply-btn:disabled,
.comments-comment-reply-btn:active {
    background: none
}

.comments-comment-author {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.comments {
    font-family: Arial;
    border-top: 8px solid #98b55b;
    padding-top: 12px;
    background-color: #fff;
}

.comments-inner {
    padding: 20px 30px;
    background: #e6e6e6
}

.comments-rating-stats {
    display: inline-block;
    vertical-align: top;
    margin-top: .6em;
    margin-left: .8em
}

.comments-write-cont,
.comments-sort-cont {
    margin-top: 10px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.comments-sort-cont .dropdown .comments-sort-by-dropdown-btn {
    padding: 0.8em 0.4em 0.8em 0;
}

.comments-write-cont {
    position: relative;
    display: flex;
    align-items: flex-start
}

.comment-write-field {
    flex: auto;
    border: 1px solid #bebebe;
    border-radius: 3px;
    box-shadow: inset 0 0 2px 1px #bebebe;
    margin-left: 10px;
    height: 50px;
    resize: none;
    transition: .15s
}

.comment-write-field:focus {
    height: 10em
}

.comment-write-field::placeholder {
    color: #7c7c7c;
    font-style: italic;
}

.comments-write-upload-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    color: #7c7c7c;
}

:focus+.comments-write-upload-btn::after,
:focus+.comments-write-upload-btn::before {
    visibility: visible;
    opacity: 1;
    transition-delay: .3s
}

.comments-write-upload-btn .fa-paperclip {
    transform: rotateX(180deg);
}

.comments-list {}

.comments-comment {
    margin: 10px 0;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.comments-comment .avatar-medium {
    margin-right: 10px
}

.comments-comment-text-cont {
    flex: 1;
    width: 0
}

.comments-comment-header {
    display: flex;
    align-items: baseline;
    white-space: nowrap
}

.comments-comment-author {
    margin-right: 10px;
    font-weight: bold
}

.comments-comment-body {
    margin: .4em 0
}

.comments-comment-footer {
    margin-top: .4em;
    font-size: .85rem
}

.comments-comment-reply-btn {
    color: #6e6e6e
}

.comments-comment-reply-btn:hover,
.comments-comment-reply-btn:focus {
    color: #212121
}

.reviews-image {
    max-width: 100%;
    margin: 50px 0
}

.review {
    padding: 1.5em 0
}

.review .book-rating::after {
    color: #6e6e6e
}

.review-book-image-link {
    display: block;
    perspective: 1000px;
    background: #d9d9d9
}

.review-book-image-link:hover,
.review-book-image-link:focus {
    outline: none
}

.review-book-image-link:hover .review-book-image,
.review-book-image-link:focus .review-book-image {
    transform: rotateY(-22deg)
}

.review-book-image {
    display: block;
    transition: transform .15s;
    transform-origin: left
}

.review-book-title {
    color: #8bb653;
    text-decoration: none
}

.review-book-title:hover,
.review-book-title:focus {
    color: #6e6e6e
}

.review-book-other-reviews {
    color: #212121;
    text-decoration: none
}

.review-book-other-reviews:hover,
.review-book-other-reviews:focus {
    color: #6e6e6e
}

.review-by-editor .review-content {
    position: relative
}

.review-by-editor .review-content::before {
    content: "";
    position: absolute;
    left: -4px;
    top: -1.5em;
    width: 36px;
    height: 77px;
    transform: translateX(-50%);
    background: url(/local/templates/ves/img/logo-small.png) no-repeat
}

.review-author {
    height: 3.6em;
    line-height: 1.2;
    color: #6e6e6e
}

a.review-author {
    align-self: flex-start;
    max-width: 100%;
    display: flex;
    padding-right: .4em;
    white-space: nowrap;
    overflow: hidden
}

a.review-author:hover,
a.review-author:focus {
    color: #3b3b3b
}

.review-author-info {
    overflow: hidden
}

.reviews-list .review-author-image {
    float: left;
    height: 100%;
    margin-right: 10px
}

.review-author-name {
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.review-text {
    flex: auto
}

.reviews-list .review-heading {
    font-size: 1.44rem;
    margin-top: 0
}

.reviews-list .review-heading a {
    text-decoration: none;
    color: inherit
}

@media(max-width: 991px) {
    .reviews-image {
        display: block;
        margin-left: auto;
        margin-right: auto;
        padding-left: 12vw
    }

    .reviews-list {
        background: #8bb653;
        margin-top: 25px;
        margin-left: -10px;
        margin-right: -10px;
        padding: 10px
    }

    .review {
        margin-bottom: 50px;
        padding: 10px;
        background: #fff
    }

    .review-book {
        border-bottom: 6px solid #8bb653;
        padding-bottom: 25px;
        display: flex
    }

    .review-book-image-link {
        flex: none;
        margin-right: 10px
    }

    .review-book-image {
        width: 120px
    }

    .review-content {
        padding-top: 25px
    }
}

@media(min-width: 992px) {
    .review {
        display: flex
    }

    .review:not(:last-child) {
        border-bottom: 8px solid #8bb653
    }

    .review .book-rating {
        position: relative;
        left: 50%;
        transform: translateX(-50%)
    }

    .review-book {
        flex: none;
        width: 170px;
        padding-right: 1.5em;
        border-right: 8px solid #8bb653
    }

    .review-book-image {
        width: 100%
    }

    .review-content {
        flex: 1;
        width: 0;
        display: flex;
        flex-direction: column;
        padding-left: 1.5em
    }
}