/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

/* -------------------------- */
/* --------- GLOBAL --------- */
/* -------------------------- */
.text-body-gray,
.text-body-gray * {
    color: var(--cnvs-contrast-900) !important;
}
.btn-soft-ash {
    color: var(--cnvs-contrast-900) !important;
    background-color: #edeff4;
}
.btn-soft-ash:hover {
    background-color: #d2d4d9;
}
.btn-soft-ash i {
    font-size: 16px;
}
/* -------------------------- */
/* --------- NAVBAR --------- */
/* -------------------------- */
.has-dropdown {
    position: relative;
}

.has-dropdown .submenu {
    display: block !important;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    left: 0px;
    top: 100%;
    width: 240px;
    padding: 15px 10px;
    z-index: 100;
    opacity: 1;
    text-align: left;
    background: #ffffff;
    border: none;
    border-radius: 5px;
    -webkit-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03),
        -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
    -ms-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03),
        -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
    -o-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03),
        -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
    -moz-box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03),
        -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
    box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.03),
        -2px 0px 10px 1px rgba(0, 0, 0, 0.03);
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    -moz-transition: all 100ms ease;
    -webkit-transition: all 100ms ease;
    -ms-transition: all 100ms ease;
    -o-transition: all 100ms ease;
    transition: all 100ms ease;
    list-style: none;
}

.has-dropdown:hover .submenu {
    visibility: visible;
    opacity: 1;
    top: 100%;
    -webkit-transform: translate(0px);
    -ms-transform: translate(0px);
    transform: translate(0px);
    -moz-transition: all 500ms ease;
    -webkit-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}

.has-dropdown .submenu li .menu-link {
    padding: 10px 20px;
}

.has-dropdown .submenu li:hover {
    background-color: #f0f0f0;
}

.has-dropdown .submenu li:hover .menu-link {
    color: var(--cnvs-primary-menu-active-color);
}

.has-dropdown .submenu li.current .menu-link {
    color: var(--cnvs-primary-menu-active-color);
    background-color: #f0f0f0;
    font-weight: 700;
}
/* -------------------------- */
/* -------- FRONT PAGE ------ */
/* -------------------------- */
.front-page.title,
.front-page.subtitle {
    font-weight: 700;
}

.front-page.title {
    font-size: 38px;
}

.front-page.title,
.clients .table tbody tr td:first-child h5 {
    color: var(--cnvs-contrast-900);
}

.front-page.subtitle {
    transform: scale(1, 1.5);
    color: var(--cnvs-themecolor);
}
/* -------------------------- */
/* --------- CLIENTS -------- */
/* -------------------------- */
.clients * {
    font-family: var(--cnvs-body-font) !important;
}

.clients .table {
    width: 100%;
    border: 1px solid rgba(0, 0, 0, 0.15);
}

.clients .table thead tr {
    background-color: var(--cnvs-themecolor);
}

.clients .table thead tr th {
    font-size: 18px;
    padding: 15px 30px;
    line-height: 30px;
    color: #ffffff;
}

.clients .table thead tr th:first-child {
    width: 35%;
}

.clients .table tbody tr td:first-child {
    vertical-align: top;
    color: var(--cnvs-contrast-900);
    border: 1px solid #dee2e6;
}

.clients ul,
ul li,
ol,
ol li {
    list-style: none;
    margin: 0;
}
/* -------------------------- */
/* ---------- BLOGS --------- */
/* -------------------------- */
.blogs * {
    color: var(--cnvs-contrast-900);
    font-family: var(--cnvs-body-font);
}

.blogs__wrapper,
.blogs__more-posts {
    max-width: 1152px;
    margin: 0 auto;
}

.blogs__wrapper {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}

.blogs__main {
    flex: 1;
}

.blogs__main--article ul {
    padding-left: 18px;
}

.blogs .card,
.blogs .card-image {
    border-radius: 10px;
}

.blogs .card-image,
.blogs__comments--profile {
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.blogs .card-image {
    width: 100%;
    height: 300px;
    margin-bottom: 20px;
}

.blogs .card-image img,
.blogs__comments--profile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blogs .card-image.single-blog {
    max-height: 450px;
    height: auto;
}

.blogs__main--footer {
    margin-top: 20px;
    padding: 20px 0;
}

.blogs .blogs__main--category *,
.blogs__main--share * {
    color: var(--bs-secondary-color) !important;
}
.blogs__main--share .item-share {
    display: inline-block;
    width: 28px;
    height: 28px;
    transition: transform 0.3s;
}
.blogs__main--share .item-share:not(:last-child) {
    margin-right: 2px;
}
.blogs__main--share .item-share:hover {
    transform: translateY(-5px);
}
.blogs__main--share .item-share img {
    width: inherit;
    height: inherit;
}

.blogs .blogs__main--category-item {
    background-color: #f1f2f3;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 600;
}

.blogs .blogs__main--comments {
    margin-top: 50px;
    padding: 20px 0;
    border-top: 1px solid #eee;
}

.blogs__comments--profile {
    width: 60px;
    height: 60px;
    border-radius: 30px;
    overflow: hidden;
}

.blogs__comments--item-replies .blogs__comments--profile {
    width: 50px;
    height: 50px;
}

.blogs__reply--comment {
    padding-left: 40px;
    margin-top: 20px;
    max-height: 0;
    visibility: hidden;
    overflow: hidden;
    transition: max-height 0.3s ease-out, visibility 0.3s ease-out;
}

.blogs__reply--comment.show-reply {
    max-height: 800px;
    visibility: visible;
    transition: max-height 0.3s ease-in, visibility 0.3s ease-in;
}

.blogs__reply--lists {
    padding-left: 80px;
}

.blogs__reply--lists {
    display: flex;
    flex-direction: column;
    margin-top: 40px;
}

.blogs__comments--item:not(:last-child),
.blogs__comments--item-replies:not(:last-child) {
    margin-bottom: 30px;
}

.blogs__comments--item-replies {
    position: relative;
}

.blogs__comments--item-replies:before,
.blogs__comments--item-replies:not(:last-child):after {
    content: "";
    position: absolute;
    top: -15px;
    left: -40px;
    border-left: 2px solid #eee;
}

.blogs__comments--item-replies:before {
    width: 20px;
    height: 44px;
    border-bottom: 2px solid #eee;
    border-bottom-left-radius: 8px;
}

.blogs__comments--item-replies:not(:last-child):after {
    width: 0;
    height: calc(100% + 30px);
}

.comment-box {
    transition: height 0.3s ease;
    overflow: hidden;
}

.comment-textarea {
    resize: none;
    min-height: 40px;
    max-height: 200px;
}

.comment-textarea::-webkit-scrollbar {
    display: none;
}

.blogs__main--like {
    line-height: 1;
    transition: transform 0.3s;
    box-shadow: none;
    border: none;
}
.blogs__main--like,
.blogs__main--like:hover,
.blogs__main--like:focus,
.blogs__main--like:active {
    background-color: #f8e7ec !important;
}
.blogs__main--like:hover {
    transform: translateY(-5px);
}
.blogs__main--like > * {
    color: #d16b86 !important;
}
.blogs__main--like i {
    padding-top: 3px;
    line-height: 1;
}
.blogs__main--like span {
    font-size: 18px;
}
.blog-pagination .pagination .page-item .page-link {
    border-radius: 8px !important;
}
.blog-pagination .pagination .page-item:not(:last-child) {
    margin-right: 10px;
}
@media (max-width: 768px) {
    .blogs .border-end {
        border: none !important;
    }
}
@media (max-width: 991.98px) {
    .blogs__wrapper {
        flex-direction: column;
    }
}

@media (min-width: 991.98px) {
    .blogs__wrapper > *:not(:last-child) {
        margin-right: 30px;
    }

    .blogs__side {
        width: 350px;
    }
}
/* -------------------------- */
/* ---------- FAQS ---------- */
/* -------------------------- */
/* Home */
#section-blogs {
    background-color: #f7f9fb;
}
#section-faqs {
    background-image: url(/front/assets/images/bg-faqs.jpg);
    background-position: top;
    background-repeat: no-repeat;
    background-size: 100%;
    position: relative;
}
