/*==============================
	[01]. HEADER
	[02] Util
	[03]. HOME PAGE
	[04]. FOOTER
================================*/

/*=========[01]. HEADER=========*/

main {
    position: relative;
    /*z-index: 1;*/
}

.header {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1024;
    padding: 10px;
    background: var(--primary-gradient-2);
}

.header .nav {
    transition: var(--transition);
}

.header .nav .nav-list {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    height: 100%;
    position: relative;
    backface-visibility: visible;
    transform-style: preserve-3d;
    perspective: 500px;

}

.header .nav .nav-list > .nav-item {
    display: block;
    position: relative;
    height: 100%;
}
.header .nav .nav-logo__wrapper{
    background: var(--bs-white);
    border-radius: 3px;
    position: absolute;
    top:3px;
    bottom: 3px;
    padding: 5px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header .nav .nav-logo__wrapper,
.header .nav .nav-list > .nav-item {
    display: flex;
    justify-content: center;
    align-items: center;
}

.header .nav .nav-list > .nav-item > .nav-link {
    font-size: var(--text-md);
    color: var(--bs-gray-100);
    font-weight: 600;
    position: relative;
    z-index: 1;
}

.header .nav .nav-list > .nav-item:hover > .nav-link {
    color: var(--bs-gray-300);
}

.header .nav .nav-list .nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
    /*height: 2.5rem;*/
    font-size: var(--text-base);
    transition: var(--transition);
    padding: 20px 15px;
    width: 100%;
}

.header .nav .nav-list .nav-sub-list {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: -1;
    /* min-width: 100%;*/
    width: 220px;
    background-color: var(--bs-white);
    border-radius: 0.25rem;
    box-shadow: rgba(50, 50, 93, 0.25) 0 6px 12px -2px, rgba(0, 0, 0, 0.3) 0 3px 7px -3px;
    opacity: 0;
    visibility: hidden;
    user-select: none;
    pointer-events: none;
    transition: var(--transition);
}


.header .nav .nav-list .nav-item:hover > .nav-sub-list {
    opacity: 1;
    visibility: visible;
    user-select: auto;
    pointer-events: auto;
    z-index: 1;
}

.header.is-scroll .nav .nav-list .nav-item:hover > .nav-sub-list {
    transform: translateY(0);
}

.header .nav .nav-list .nav-sub-list > .nav-item > .nav-link {
    justify-content: flex-start;
    font-weight: 500;
    color: var(--text-color);
    padding: 10px;
    display: flex;
    align-items: center;
}

.header .nav .nav-list .nav-sub-list > .nav-item > .nav-link:hover {
    color: var(--primary-color);
}

body.is-navigation .header {
    background-color: var(--bs-white);
    transition: var(--transition);
}

.header.is-scroll {
    animation: header-prepare 1 500ms ease forwards;
}

.header.is-scroll .nav {
    padding-top: 0;
    padding-bottom: 0;
}

.header {
    box-shadow: 0 10px 15px rgba(25, 25, 25, .1);
}

.header.is-scroll {
    position: fixed;
}

.header.is-scrolled {
    animation: header-scrolled 1 500ms ease backwards;
}

.header .nav .nav-logo__wrapper img,
.header.other-page .nav .nav-logo__wrapper img,
.header.other-page.is-scroll .nav .nav-logo__wrapper img,
.header.is-scroll .nav .nav-logo img {
    width: 190px;
    transition: unset;
}

.header.is-scroll .nav .nav-list > .nav-item > .nav-link::before {
    background-color: var(--primary-color);
}

.header-logo_hamburger {
    position: relative;
    transition: .3s all ease;
    display: none;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
    padding: 10px 0;
}

.header-logo_hamburger button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 4px;
    width: 36px;
    height: 36px;
    border: 0;
    outline: none;
    box-shadow: none;
    background: var(--primary-color);
    transition: var(--transition);
}

.header-logo_hamburger button span {
    background-color: var(--bs-white);
    border-radius: 2px;
    content: '';
    display: block;
    width: 20px;
    height: 2px;
}


body.is-navigation .header-logo_hamburger button span,
.header.is-scroll .header-logo_hamburger button span {
    background-color: var(--bs-white);
}

.header-logo_hamburger button span:nth-child(1) {
    animation: outTop .5s backwards;
    animation-direction: reverse;
}

.header-logo_hamburger button span:nth-child(2) {
    margin: 6px 0;
    animation: outMiddle .5s backwards;
    animation-direction: reverse;
}

.header-logo_hamburger button span:nth-child(3) {
    animation: outBottom .5s backwards;
    animation-direction: reverse;
}

.header-search {
    background: transparent;
    color: var(--bs-white);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.is-navigation .header-logo_hamburger button span:nth-child(1) {
    animation: inTop .5s forwards;
}

.is-navigation .header-logo_hamburger button span:nth-child(2) {
    animation: inMiddle .5s forwards;
}

.is-navigation .header-logo_hamburger button span:nth-child(3) {
    animation: inBottom .5s forwards;
}

.is-navigation .header-logo_hamburger.no-animation > span {
    animation: none;
}

@keyframes inMiddle {
    50% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(45deg);
    }
}

@keyframes outMiddle {
    50% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(45deg);
    }
}

@keyframes inTop {
    0% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(8px) rotate(0deg);
    }
    100% {
        transform: translateY(8px) rotate(135deg);
    }
}

@keyframes outTop {
    0% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(7.25px) rotate(0deg);
    }
    100% {
        transform: translateY(7.25px) rotate(135deg);
    }
}

@keyframes inBottom {
    0% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-7px) rotate(0deg);
    }
    100% {
        transform: translateY(-7px) rotate(135deg);
        opacity: 0;
    }
}

@keyframes outBottom {
    0% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-7px) rotate(0deg);
    }
    100% {
        transform: translateY(-7px) rotate(135deg);
    }
}

@keyframes header-prepare {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
        background-color: var(--bs-white);
    }
}

@keyframes header-scrolled {
    0% {
        transform: translateY(-100%);
        background-color: var(--bs-white);
    }
    1% {
        background-color: transparent;
    }
    100% {
        transform: translateY(0);
    }
}

.header .header-navigation {
    display: none;
    position: fixed;
    z-index: 5;
    top: 82px;
    left: -100%;
    background-color: var(--bs-white);
    width: 100%;
    max-width: 375px;

    transition: var(--transition);
    height: 100vh;
    border-top: 1px solid var(--bs-gray-300);
}

.navigation-list {
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
    justify-content: flex-start;
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
}

.navigation-list .navigation-item {
    width: calc(100% - 30px);
    margin: 0 15px !important;
    position: static;
}

.navigation-list .navigation-item + .navigation-item {
    border-top: 1px solid #d8d8d87d;
}

.navigation-list .navigation-item .navigation-sub .navigation-sub_link,
.navigation-list .navigation-item .navigation-link {
    height: unset !important;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    color: var(--text-color);
    font-weight: 600;
    font-size: 1rem;
}

.navigation-list .navigation-item .navigation-sub .navigation-sub_link {
    padding: 14px 15px;
}

.navigation-list .navigation-item:hover .navigation-link .navigation-link_arrow {
    transform: rotate(0) !important;
}

.navigation-list .navigation-item .navigation-link .navigation-link_arrow:before {
    content: "\f105";
}

.navigation-category,
.navigation-sub,
.navigation-category_sub {
    position: absolute;
    top: 0;
    left: -100%;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: var(--bs-white);
    height: 100%;
    width: 100%;
    z-index: 6;
    margin-right: auto;
    margin-left: auto;
    transition: var(--transition);
    transform: none;
    border-radius: 0;
    box-shadow: none;
    overflow: hidden;
    padding: 0;
    display: flex;
    flex-direction: column;
    border: 0;
    list-style-type: none;
    margin-bottom: 0;
}

.navigation-category li,
.navigation-sub li,
.navigation-category_sub li {
    width: 100% !important;
}

.navigation-category li:first-child,
.navigation-sub li:first-child,
.navigation-category_sub li:first-child {
    border-bottom: 1px solid var(--bs-gray-500);
    display: flex;
    align-items: center;
    position: relative;
    background-color: #fafafa;
    color: var(--primary-color);
    padding: 0 10px;
}

.navigation-category li:first-child p,
.navigation-sub li:first-child p,
.navigation-category_sub li:first-child p {
    margin-bottom: 0;
    font-weight: 600;
    text-transform: uppercase;
    padding: 13px 0;
}

.navigation-category li:first-child button,
.navigation-sub li:first-child button,
.navigation-category_sub li:first-child button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 4px;
    width: 34px;
    height: 34px;
    border: 0;
    outline: none;
    box-shadow: none;
    background: var(--bs-gray-300);
    font-size: var(--text-md);
    flex-shrink: 0;
    /* position: absolute;
     top: 50%;
     left: 10px;
     transform: translateY(-50%);*/
    color: var(--text-color);
    margin-right: 15px;
}

.navigation-category .navigation-category_item {
    width: calc(100% - 30px) !important;
    margin: 0 15px !important;
    padding-right: 0;
    position: static;
}

.navigation-category .navigation-category_item + .navigation-category_item {
    border-top: 1px solid #fafafa;
}

.navigation-list .navigation-item.is-sub_navigation .navigation-category,
.navigation-list .navigation-item .navigation-category .navigation-category_item.is-sub_child__navigation .navigation-category_sub,
.navigation-list .navigation-item.is-sub_navigation .navigation-sub {
    left: 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.header .header-overlay {
    position: fixed;
    z-index: 5;
    background-color: rgba(var(--bs-dark-rgb), .45);
    width: 100%;
    height: calc(100% - 70px);
    top: 70px;
    left: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: var(--transition);
}

.is-scroll.header .header-overlay {
    height: calc(100% - 60px);
    top: 60px;
}

.is-scroll.header .header-navigation {
    height: calc(100vh - 82px);
    top: 82px;
}

.is-navigation .header .header-overlay,
.is-navigation .header .header-navigation {
    left: 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

body::after {
    content: "";
    display: block;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 100%;
    bottom: 0;
    z-index: 1023;
    transition: all 0.35s cubic-bezier(.19, 1, .22, 1) 0.35s;
    pointer-events: none;
    opacity: 0;
    background: linear-gradient(180deg, #70685dcc 0, #4a575fcc 100%);
    mix-blend-mode: multiply;
}

body.is-navigation::after {
    right: 0;
    opacity: 1;
}


.header .mega-menu {
    position: absolute;
    top: calc(100% + 0.625rem);
    left: 0;
    width: 100%;
    background-color: #fff;
    padding: 1.25rem;
    border-radius: 0.25rem;
    box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 5%), 0 0.625rem 1.25rem rgb(0 0 0 / 5%);
    transform-origin: 50% 0;
    transform: rotateX(-90deg);
    opacity: 0;
    visibility: hidden;
    user-select: none;
    pointer-events: none;
    transition: visibility .45s, opacity .45s, transform .35s;
}

.header .mega-menu::before {
    content: '';
    display: block;
    width: 100%;
    height: 12px;
    background-color: transparent;
    position: absolute;
    top: -12px;
    left: 0;
}

.header.is-scroll .mega-menu {
    top: calc(100% + 11px);
}

.header .nav-item.position-static:hover > .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: rotateX(0deg);
    user-select: auto;
    pointer-events: auto;
}

.header .mega-menu .mega-menu__wrapper {
    display: grid;
    grid-template-columns: repeat(3, auto);
    grid-gap: 1.25rem;
}

.header .mega-menu .mega-menu__item {
    display: flex;
    flex-flow: row nowrap;
    min-width: max-content;
}

.header .mega-menu .mega-menu__item .item-media {
    border-radius: 0.25rem;
    flex: 0 0 120px;
    overflow: hidden;
}

.header .mega-menu .mega-menu__item .item-content {
    flex: 1 0 auto;
    min-width: max-content;
    padding-left: 0.75rem;
}

.header .mega-menu .mega-menu__item .item-title {
    font-weight: 600;
    margin-bottom: 10px;
    display: block;
    font-size: 15px;
}

.header .mega-menu .mega-menu__item .item-content > ul > li {
    display: block;
}

.header .mega-menu .mega-menu__item .item-content > ul > li > a {
    font-weight: 400;
    display: inline-block;
    width: 100%;
}

.header .mega-menu .mega-menu__item .item-content > ul > li + li {
    margin-top: 5px;
}


@media (max-width: 1199px) {
    .header .nav .nav-list {
        display: none;
    }

    .header .nav .nav-logo__wrapper > img {
        max-width: 150px;
    }

    .header .header-navigation {
        display: block;
    }

    .header-logo_hamburger {
        display: flex;
    }
}
@media(max-width: 992px) {
    .header .nav .nav-logo__wrapper{
        top:8px;
        bottom: 8px;
    }
}

/*=========[02]. Utils=========*/

.theme-form .form-field {
    width: 100%;
}

.theme-form .form-control,
.theme-form .form-control::placeholder {
    color: #6f7274;
    font-weight: 500;
}

.theme-form .form-control {
    padding: 0.625rem 1.25rem;
}


.section-bg {
    position: relative;
    z-index: 1;
    background-color: transparent;
}

.section-bg.section-bg--dark::after,
.section-bg::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.section-bg::before {
    background: var(--bgURL) center / cover no-repeat;
}

.section-bg.section-bg--dark::after {
    background-color: var(--bs-gray-900);
    opacity: 0.33;
    z-index: 2;
}

.section-bg > * {
    position: relative;
    z-index: 3;
}

.sw-pagination {
    position: static;
    display: flex;
    justify-content: center;
    align-items: baseline;
    padding: 1.5rem 0;
}

.custom-bullet {
    width: 0.625rem;
    height: 1.25rem;
    border-radius: 50%;
    background-color: var(--bs-gray-500);
    margin: 0 0.25rem;
    transition: var(--transition);
    transform-origin: 50% 100%;
    transform: scaleY(50%);
}

.custom-bullet.swiper-pagination-bullet-active {
    border-radius: 10rem;
    transform: scaleY(100%);
    background-color: var(--primary-color-light);
}

.swiper-slide {
    height: auto;
}

.bg-gray {
    background-color: #fbfbfb;
}

.section-gap--xl {
    padding: 80px 0;
}

.limit-text {
    --line: 3;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: var(--line);
    line-clamp: var(--line);
    -webkit-box-orient: vertical;
}

.limit-text-2 {
    --line: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: var(--line);
    line-clamp: var(--line);
    -webkit-box-orient: vertical;
}

.swiper-main {
    position: relative;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: var(--bs-white);
    opacity: 0.5;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
}

.sw-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1rem;
    background-color: transparent;
    border: 2px solid currentColor;
    color: var(--bs-white);
    border-radius: 50%;
    box-shadow: rgba(149, 157, 165, 0.2) 0 8px 24px;
    transition: var(--transition);
}

.sw-btn.swiper-button-disabled {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    user-select: none;
}

.effect-slide,
.effect-circle {
    position: relative;
    z-index: 1;
}

.effect-slide > *,
.effect-circle > * {
    position: relative;
    z-index: 3;
}

.effect-circle::after {
    content: '';
    display: inline-block;
    width: calc(100% + 12px);
    height: calc(100% + 12px);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    border-radius: 50%;
    border: 2px dashed var(--bs-white);
    background-color: transparent;
    transform: translate(-50%, -50%);
    clip-path: circle(0 at 50%);
}

.effect-circle:hover::after {
    clip-path: circle(100% at 50%);
    animation: spin360 12s linear infinite;
}

.effect-slide {
    overflow: hidden;
}

.effect-slide::after {
    content: '';
    display: block;
    position: absolute;
    top: -2px;
    left: -2px;
    z-index: 2;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    background-color: var(--primary-color);
    transition: transform .75s cubic-bezier(0, 0, .2, 1);
}

.effect-slide--down::after {
    transform: translate3d(0, -100%, 0);
}

.effect-slide--down:hover::after {
    transform: translate3d(0, 0, 0);
}

.effect-slide--right::after {
    transform: translate3d(100%, 0, 0);
}

.effect-slide--right:hover::after {
    transform: translate3d(0, 0, 0);
}

.effect-slide--left::after {
    transform: translate3d(-100%, 0, 0);
}

.effect-slide--left:hover::after {
    transform: translate3d(0, 0, 0);
}

.effect-scale {
    --scale: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1, 1, 1);
    transition: 1.1s cubic-bezier(.15, .75, .5, 1);
}

.effect-scale.effect-scale--sm {
    --scale: scale3d(1.025, 1.025, 1.025);
}

.hovered:hover .effect-scale {
    transform: var(--scale);
}

.hovered:hover .effect-fade {
    opacity: 0.7;
}

.effect-color {
    --color: var(--primary-color);
    transition: color 350ms cubic-bezier(.15, .75, .5, 1);
}

.effect-color:hover {
    color: var(--color) !important;
}

.sw-btn.sw-btn--primary {
    border: none;
    border-radius: 50%;
    background-color: var(--bs-white);
    color: var(--bs-gray-700);
}

.sw-btn.sw-btn--primary:hover {
    color: var(--bs-white);
}

.sw-btn.sw-btn--centered {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99;
}

.sw-btn.sw-btn--centered.prev {
    left: -1.25rem;
}

.sw-btn.sw-btn--centered.next {
    right: -1.25rem;
}

@keyframes spin360 {
    from {
        transform: translate(-50%, -50%);
    }
    to {
        transform: translate(-50%, -50%) rotate(1turn);
    }
}


.section-first {
    margin-bottom: 25px;
    padding-bottom: 25px;
}

.section-gap {
    padding: 50px 0;
}

.header-group {
    margin-bottom: 30px;
}

.header-group .header-group__heading {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 0;
    text-transform: capitalize;
    position: relative;
    color: var(--bs-gray-900);
}

.header-group .header-group__caption {
    color: var(--primary-color);
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    background-color: #e5edf7;
    border-radius: 20px;
    padding: 3px 18px 3px 30px;
    margin-bottom: 7px;
    position: relative;
}

.header-group .header-group__caption::before {
    position: absolute;
    content: '';
    background-color: var(--primary-color);
    width: 5px;
    height: 5px;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
    display: block;
}

.header-group .header-group__desc {
    max-width: 992px;
    width: 100%;
    color: var(--bs-gray-600);
}

.header-group__heading.none-style {
    padding-left: 0;
}

.header-group__heading.none-style::after,
.header-group__heading.none-style::before {
    display: none;
}


@media (max-width: 992px) {
    .header-group .header-group__caption {
        font-size: 0.75rem;
    }

    .header-group .header-group__heading {
        font-size: 1.45rem;
    }

    #section-categories .categories-next,
    #section-categories .categories-prev {
        display: none;
    }

    .section-gap--xl {
        padding: 50px 0;
    }
}

@media (max-width: 767px) {
    .header-group .header-group__heading {
        font-size: 1.25rem;
    }
}

@media (max-width: 480px) {
    .header-group .header-group__heading {
        font-size: 1.3rem;
    }

    .header-group .custom-link {
        font-size: 0.85rem;
    }
}


.button-theme {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    position: relative;
    color: var(--bs-white);
    background-color: var(--primary-color);
    border-radius: 5px;
    padding: 12px 20px;
    overflow: hidden;
    transition: .6s cubic-bezier(.165, .84, .44, 1) 0.3s;
    font-weight: 500;
    width: max-content;
}

.button-theme.button-theme__secondary {
    background-color: var(--secondary-color);
}

.button-theme span {
    position: relative;
    z-index: 2;
}

.button-theme::before {
    content: "";
    position: absolute;
    transition-duration: .8s;
    width: 200%;
    height: 200%;
    top: 110%;
    left: 50%;
    background: var(--secondary-hover);
    transform: translateX(-50%);
    border-radius: 50%;
    z-index: 0;
}


.button-theme:hover::before {
    top: -40%;
}

.button-theme:hover {
    color: var(--bs-white);
}

.custom-link {
    font-weight: 500;
    width: max-content;
    color: var(--bs-gray-800);
    padding: 5px 0;
    border-bottom: 1px solid var(--bs-gray-800);
    transition: 0.3s ease-in;
}

.custom-link:hover {
    color: var(--primary-color);
}

.custom-link:hover i {
    transform: translateX(2px);
}

.custom-link--primary:hover {
    --color: var(--primary-color)
}

.header-group .header-group__desc {
    margin-top: 10px;
}

.custom-btn {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    font-size: var(--text-md);
    font-weight: 700;
    padding: 0.75rem 1.5rem;
    border-radius: 0.25rem;
    background-color: var(--primary-color-light);
    color: var(--bs-white) !important;
    position: relative;
    overflow: hidden;
    -webkit-appearance: none;
    transition: all 500ms linear;
}

.custom-btn::before,
.custom-btn::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
}

.custom-btn::before {
    background: var(--primary-color-light-2);
    width: 120%;
    height: 0;
    padding-bottom: 120%;
    top: -110%;
    left: -10%;
    border-radius: 50%;
    transform: translate3d(0, 68%, 0) scale3d(0, 0, 0);
}

.custom-btn:hover::before {
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
}

.custom-btn::after {
    display: none;
    top: 0;
    left: 0;
    background-color: var(--primary-color);
    transform: translate3d(0, -100%, 0);
    transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
}

.custom-btn > * {
    position: relative;
    z-index: 3;
}

.custom-btn.custom-btn--sm {
    max-width: max-content;
}

.custom-btn--outline {
    background-color: transparent;
    color: var(--primary-color);
    border: none;
    box-shadow: inset 0 0 0 2px var(--primary-color) !important;
}

.custom-btn--outline:hover {
    color: var(--bs-white);
}

.custom-btn--rounded {
    border-radius: 999px;
}

@media (max-width: 768px) {
    .custom-btn {
        font-size: var(--text-base);
        padding: 0.6rem 1.4rem;
    }

    .button-theme {
        padding: 10px 18px;
        font-size: 0.95rem;
    }
}

/*=========[03]. HOME PAGE=========*/

.banners {
    overflow: hidden;
}

.banners .banners-wrapper {
    position: relative;
    z-index: 1;
}

.banners .swiper .swiper-slide .slide-background::before,
.banners .banners-wrapper .banners-cut--bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}

.banners .banners-wrapper .banners-cut--bottom {
    bottom: -10px;
}

.banners .swiper .swiper-slide {
    position: relative;
}

.banners .swiper .swiper-slide .slide-background {
    position: relative;
    z-index: 2;
    height: 100%;
    background: var(--bgURL) center / cover no-repeat;
}


.banners .swiper .swiper-slide .slide-background::before {
    height: 100%;
    z-index: 1;
    background-image: linear-gradient(45deg, #0066a1 0%, #6e25851a 100%);
}

.banners .swiper .swiper-slide .slide-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    background: rgb(0 0 0 / 39%);
}


.banners .swiper .swiper-slide .slide-heading {
    font-size: var(--text-md);
    text-transform: uppercase;
    font-weight: 600;
}

.banners .swiper .swiper-slide .slide-sub-heading {
    font-size: 2rem;
    font-weight: 700;
    line-height: var(--bs-body-line-height);
}

.banners .swiper-main .swiper-nav .sw-btn.prev {
    position: absolute;
    left: 30px;
    top: 50%;
}

.banners .swiper-main .swiper-nav .sw-btn.next {
    position: absolute;
    right: 30px;
    top: 50%;
}

@media (max-width: 1024px) {
    .banners .swiper-main .swiper-nav {
        bottom: 1vh;
    }

    .banners .swiper-main .swiper-nav .swiper-nav__wrapper .swiper-navigation {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        margin: 0 auto;
    }

    .banners .swiper .swiper-slide .slide-group-heading {
        max-width: 100%;
        text-align: center;
    }

    .banners .swiper .swiper-slide .slide-sub-heading {
        font-size: 1.8rem;
        text-align: center;
    }
}

@media (max-width: 992px) {
    .banners .swiper .swiper-slide .slide-content {
        padding-top: 0;
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
        align-items: center;
    }

    .banners .swiper .swiper-slide .slide-sub-heading {
        font-size: 1.4rem;
        text-align: center;
    }
}

@media (max-width: 576px) {
    .banners .swiper-main .swiper-nav .swiper-nav__wrapper .swiper-navigation,
    .banners .swiper .swiper-slide .slide-content {
        display: none !important;
    }
}

/*===================================================*/
.block-category {
    border-radius: 10px;
    transition: all .3s ease-out 0s;

}

.block-category__image {
    border-radius: 10px 10px 0 100px;
}

.block-category__image::after {
    position: absolute;
    top: 0;
    left: -100%;
    display: block;
    content: "";
    width: 50%;
    height: 100%;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .3));
    transform: skewX(-25deg);
}

.block-category:hover .block-category__image::after {
    animation: hoverShine 1.2s;
}

@keyframes hoverShine {
    to {
        left: 125%
    }
}

.block-category__title {
    font-weight: 700;
    color: var(--bs-gray-800);
    font-size: var(--text-md);
}

.block-category_icon {
    width: 55px;
    height: 55px;
    background: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    color: var(--bs-white);
    border: 3px solid var(--bs-white);
    border-radius: 50%;
    position: absolute;
    left: 20px;
    top: -35px;
    z-index: 2;
    transition: all .4s ease-out 0s;
    font-size: 1.1rem;
}

.block-category:hover .block-category_icon {
    background-color: var(--secondary-color);
}

.block-category__counter {
    color: var(--bs-gray-600);
}

.block-category:hover .block-category__title {
    color: var(--primary-color);
}

.block-category:hover {
    box-shadow: 0 4px 30px 0 #cfdee4;
}

.col > .card-product,
.col > .card-product > .card-wrapper,
.swiper-slide > .card-product,
.swiper-slide > .card-product > .card-wrapper {
    height: 100%;
}

.card-product {
    padding: 0.3125rem;
    box-shadow: 0px 0px 10px 0px #EBEBEBF5;
    border-radius: 0.25rem;
    transition: var(--transition);
    background-color: #fff;
    border: 1px solid var(--bs-gray-200);
}

.card-product:hover {
    box-shadow: rgb(0 0 0 / 6%) 0 8px 12px 0;


}

.card-product .card-title *,
.card-product .card-title {
    font-size: var(--text-base);
    font-weight: 700;
    margin-bottom: 0;
    color: var(--primary-color);
}

.card-product .card-desc {
    padding: 0.75rem 0;
    color: var(--bs-gray-700);
    font-size: 0.85rem;
    font-style: italic;
    line-height: 20px;
    border-bottom: 1px solid var(--primary-color);
}

.card-product .card-action .custom-btn {
    width: 100%;
    font-weight: 500;
    height: auto;
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    text-transform: uppercase;
}

.card-product .card-action:hover .custom-btn {
    color: var(--bs-white);
    background-color: var(--primary-color-light);
}

@media (max-width: 768px) {
    .card-product .card-body {
        padding: 1rem 0.5rem;
    }

    .card-product .card-action .custom-btn {
        font-size: 0.8rem;
        padding: 0.4rem;
    }
}

@media (max-width: 370px) {
    .card-product .card-action .custom-btn i {
        display: none !important;
    }
}

/*==============================================*/

.section-news__grid {
    display: grid;
    grid-gap: 1rem;
    grid-template-columns: 1fr;
}

.card-article {
    position: relative;
    z-index: 1;
    background-color: var(--bs-white);
}

.card-article .card-media {
    border-radius: 0.25rem;
    overflow: hidden;
}

.card-article.fill-row .card-wrapper {
    display: grid;
    grid-template-columns: 30% 1fr;
    grid-gap: 1rem;
}

.card-article .card-body {
    padding: 0;
}

.card-article .card-title {
    font-size: 1rem;
    margin-bottom: 0;
}

.card-article.fill-column .card-body,
.card-article .card-desc {
    padding: 0.625rem 0;
}

.card-article .card-desc p {
    color: var(--bs-gray-700);
    font-weight: 300;
}

#slider-certification .item-certification img {
    object-fit: contain;
    width: auto;
    height: 30px;
    filter: grayscale(100%);
    transition: var(--transition);
}

#slider-certification .item-certification:hover img {
    filter: grayscale(0);
}

#section-futures {
    counter-reset: count;
}

.feature {
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgb(0 0 0 / 7%);
    border-radius: 0.625rem;
    overflow: hidden;
}

.feature .feature-wrapper {
    padding: 135px 50px 35px;
    position: relative;
    transition: 500ms ease;
}

.feature .feature-wrapper::before {
    content: '';
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #16243d;
    transform: translate3d(0, 100%, 0);
    z-index: 1;
    transition: inherit;
}

.feature .feature-counter,
.feature .feature-wrapper::before,
.feature .feature-icon,
.feature .feature-shape {
    position: absolute;
    z-index: 2;
}

.feature .feature-icon {
    display: block;
    width: 200px;
    height: 200px;
    background-image: linear-gradient(90deg, #015fc9 0%, #0ce0ff 100%);
    border-radius: 50%;
    top: -90px;
    left: -40px;
    color: var(--bs-white);
    transition: inherit;
}

.feature .feature-icon > img {
    display: inline-block;
    position: relative;
    top: 107px;
    left: 81px;
    transition: inherit;
    transition-delay: 0.1s;
    filter: brightness(0) invert(1);
}

.feature .feature-shape {
    position: absolute;
    bottom: 0;
    right: 0;
    transition: all 500ms ease;
    transition-delay: 400ms;
    transform: translateX(100%);
    z-index: 2;
}

.feature .feature-shape img {
    width: auto;
    mix-blend-mode: luminosity;
    opacity: 0.07;
}

.feature .feature-title,
.feature .feature-desc {
    position: relative;
    z-index: 4;
    transition: inherit;
}

.feature .feature-title {
    font-size: 1.5rem;
    text-transform: capitalize;
    font-weight: 600;
    color: var(--text-color);
    margin-bottom: 1rem;
}

.feature .feature-desc {
    line-height: 1.5;
    font-size: var(--text-base);
}

.feature .feature-counter {
    position: absolute;
    top: 50px;
    right: 54px;
    height: 45px;
    width: 56px;
    text-align: center;
}

.feature .feature-counter::before {
    font-family: sans-serif;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: #0000;
    -webkit-text-stroke: 1px #e0e4e8;
    font-size: 60px;
    line-height: 45px;
    font-weight: 700;
    counter-increment: count;
    content: counters(count, ".", decimal-leading-zero);
    letter-spacing: 1px;
    transition: all 200ms linear;
    transition-delay: 0.1s;
}

.feature:hover .feature-icon > img {
    transform: scale(0.9);
}

.feature:hover .feature-shape {
    transform: translateX(0);
}

.feature:hover .feature-wrapper::before {
    transform: translate3d(0, 0, 0);
}

.feature:hover .feature-title {
    color: var(--bs-white);
}

.feature:hover .feature-desc {
    color: #97a2b7;
}

.feature:hover .feature-counter::before {
    -webkit-text-stroke: 1px #0ce0ff;
}

.section-choices__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 450px;
}

.section-choices__bg::after {
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    height: 100%;
    top: 0;
    background-color: #032a62f2;
}

.block-choice {
    border-radius: 8px;
    padding: 25px 15px;
    box-shadow: 4px 19px 73px #b4b4b442;
}

.block-choice .card-body {
    border-bottom: 1px solid #0d52b4;
}

.block-choice .block-choice__media {
    width: 55px;
    height: 55px;
    position: relative;
}

.block-choice .block-choice__media::after {
    position: absolute;
    content: '';
    left: 50%;
    top: 50%;
    transform: translateY(-50%);
    width: 45px;
    height: 45px;
    background-color: rgb(0 106 253 / 14%);
    z-index: 0;
    border-radius: 70% 30% 30% 70% / 60% 40% 60% 40%;
}

.block-choice .block-choice__title {
    font-size: 1.1rem;
    font-weight: 700;
    line-height: var(--bs-body-line-height);
    margin-bottom: 0.625rem;
}

.block-choice .block-choice__desc {
    color: var(--bs-gray-600);
    font-weight: 500;
}

@media (max-width: 991px) {
    .block-choice {
        padding: 15px;
    }

    .block-choice .block-choice__media {
        width: 45px;
        height: 45px;
    }
}

#section-counter {
    background: #fdf3df;
}

.section-main__layer .layer {
    position: absolute;
    z-index: 2;
}

.section-main__layer .layer-1 {
    top: 0;
    left: 0;

}

.section-main__layer .layer-2 {
    bottom: -35px;
    right: 0;
    width: 291px;
}

.block-counter .block-counter__top {
    display: flex;
}

.block-counter .block-counter__icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
}

.block-counter .block-counter__icon img {
    transition: 0.3s ease-in-out;
}

.block-counter:hover .block-counter__icon img {
    transform: rotateY(180deg);
}

.block-counter .block-counter__digit {
    font-family: var(--font-theme);
    display: flex;
    align-items: baseline;
    font-size: 2rem;
    font-weight: 700;
    color: var(--secondary-color);
    letter-spacing: 2px;
    position: relative;
}

.block-counter .block-counter__title {
    font-weight: 600;
    font-size: 1.05rem;
    color: var(--primary-color-dark);
}

@media (max-width: 1200px) {
    .block-counter .block-counter__digit {

        font-size: 1.5rem;
    }

    .block-counter .block-counter__title {
        font-size: 1rem;
    }
}

@media (max-width: 375px) {
    .block-counter .block-counter__top {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .block-counter .block-counter__digit {
        align-items: center;
        justify-content: center;
    }
}

.feedback .feedback-logo {
    padding-bottom: 1.25rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--bs-gray-400);
}

.feedback .feedback-logo img {
    max-width: 100%;
    width: auto;
    height: 30px;
    object-fit: contain;
}

.feedback .feedback-desc {
    margin-bottom: 1.25rem;
}

.feedback .auth-name__top,
.feedback .auth-name__bottom {
    font-size: 0.8125rem;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.feedback .auth-name__bottom {
    font-weight: 300;
}

.feedback .auth-avatar {
    border-radius: 50%;
    overflow: hidden;
    width: 60px;
    height: 60px;
}

.feedback .auth-avatar > img {
    width: auto;
    height: 100%;
    object-fit: cover;
}

.clients-grid {
    list-style-type: none;
    overflow: hidden;
    margin: 0;
    padding: 0;
    text-align: center;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.clients-grid li {
    display: block;
    position: relative;
    margin: 0;
    /*padding: 30px;*/
    padding: 15px;
}


.clients-grid > li + li:before {
    content: '';
    position: absolute;
    top: 0;
    right: 100%;
    height: 100%;
    border-left: 1px dashed rgba(0, 0, 0, 0.1);
}

.clients-grid > li::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border-bottom: 1px dashed rgba(0, 0, 0, 0.1);
}

.clients-grid > li:nth-last-child(2)::after,
.clients-grid > li:nth-last-child(1)::after {
    border-bottom: none;
}

.clients-grid li img {
    opacity: 0.5;
    transition: opacity 500ms linear;
    cursor: pointer;
}

.clients-grid li:hover img {
    opacity: 1;
}

@media (min-width: 768px) {
    .clients-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .clients-grid > li {
        padding: 15px;
    }

    .clients-grid > li:nth-last-child(3)::after {
        border-bottom: 0;
    }
}

@media (min-width: 1200px) {
    .clients-grid {
        grid-template-columns: repeat(6, 1fr);
    }

    .clients-grid > li:nth-last-child(4)::after,
    .clients-grid > li:nth-last-child(5)::after,
    .clients-grid > li:nth-last-child(6)::after {
        border-bottom: 0;
    }

    .clients-grid.set-border > li {
        border-bottom: 1px dashed rgba(0, 0, 0, 0.1);
    }
}

.section-us__media .decor {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 100%;
}

.section-us__media .media {
    -webkit-mask-image: url('/public/upload/theme/mask_img.png');
    mask-image: url('/public/upload/theme/mask_img.png');
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    height: 472px;
    width: 417px;
    margin: 0 auto;
    max-width: 100%;
}

.section-us__media .experience-year {
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    border-radius: 8px;
    position: absolute;
    background: var(--secondary-color);
    padding: 10px;
    color: var(--bs-white);
    font-weight: 500;
    line-height: 1.6;
}

.section-us__media .experience-year .wrap {
    border-radius: 5px;
    padding: 0 10px;
    border: 1px dashed rgb(255 255 255);
}

.section-us__media .experience-year .wrap .number {
    font-size: 3em;
    font-weight: 700;
}

.section-us .section-desc > p {
    margin-bottom: 0;
    color: var(--bs-gray-700);
}

.section-us .section-desc > p + p {
    margin-top: 1rem;
}

.section-us .section-desc > ul {
    list-style: none;
    padding: 0;
    margin: 30px 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 5px;
}

.section-us .section-desc > ul > li {
    display: grid;
    grid-template-columns: 0 1fr;
    grid-gap: 30px;
    align-items: center;
    font-size: var(--text-md);
}

.section-us .section-desc > ul > li::before {
    content: '\f058';
    font-family: 'Font Awesome 5 Pro', sans-serif;
    font-weight: 700;
    color: var(--primary-color);
}

.phone-contact .phone-contact__icon > i {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    font-size: 1.25rem;
    border-radius: 50%;
    border: 2px solid var(--bs-gray-400);
    color: var(--blue-color);
    transition: var(--transition);
}

.phone-contact .phone-contact__icon:hover > i {
    background-color: var(--blue-color);
    color: var(--bs-white);
    border-color: currentColor;
}

.phone-contact .phone-contact__number {
    font-weight: 600;
    font-size: var(--text-md);
    transition: var(--transition);
}

.phone-contact .phone-contact__main:hover .phone-contact__number {
    color: var(--blue-color);
}

.phone-contact .phone-contact__desc {
    font-weight: 300;
    color: var(--bs-gray-600);
}

@media (max-width: 768px) {
    .section-us__media .experience-year {
        font-size: 12px;
    }
}

@media (max-width: 425px) {
    .section-us__media .media {
        max-width: 80%;
    }

    .section-us__media .experience-year {
        font-size: 10px;
        bottom: 70px;
        padding: 8px;
    }
}

/*=====[04]. FOOTER========================================*/
footer {
    background-color: #003785;
    color: #b4c2cf;
    background-position: center;
    background-size: cover;
    background-repeat: repeat-y;
}

.footer-decor {
    opacity: 0.04;
    width: 50%;
}

.footer-logo {
    width: 200px;
}

.footer .footer-main {
}

.footer-top {
    padding: 30px 0;
    border-bottom: 1px solid #80808057;
}

.footer-block {
    min-width: 150px;
}

.footer-block .footer-block__title {
    font-size: var(--text-lg);
    font-weight: 700;
    margin-bottom: 20px;
    color: var(--bs-white);
    position: relative;
    text-transform: capitalize;
    letter-spacing: 0.3px;
    line-height: inherit;
}

.footer-block__text--sm,
.footer-block .footer-block__text {
    color: #b4c2cf;
    font-size: 0.9rem;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.footer-block + .footer-block {
    margin-top: 25px;
}

.footer a.footer-block__text:hover {
    color: var(--bs-white);
    transition: var(--transition);
    transform: translateX(5px);
}

.footer .footer-list li {
    margin-top: 10px;
}

.footer-block > .footer-block__text + .footer-block__text {
    margin-top: 5px;
}

.footer .footer-terms {
    padding: 20px 0;
    background-color: #023175;
}

.footer .footer-socials a.item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 35px;
    width: 35px;
    border-radius: 50%;
    color: var(--bs-white);
    background-color: #1757b4;
}

.footer .footer-socials a.item:hover {
    background-color: var(--secondary-color);
    color: var(--bs-white);
}

.footer-statistical li:not(:first-child) {
    margin-left: 10px;
    padding-left: 10px;
}

.footer-statistical li:not(:first-child)::before {
    position: absolute;
    content: '';
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: #ffffff75;
    height: 20px;
    width: 1px;
    display: block;
}
@media(max-width: 992px) {
    .footer-logo{
        width: 180px;
    }
}
/*================================================*/
.nav-breadcrumb {
    padding: 20px 0;
    background: #f7f7f7;
}

.nav-breadcrumb .breadcrumb {
    --bs-breadcrumb-divider: '\f054';
    margin-bottom: 0;
}

.nav-breadcrumb .breadcrumb-item {
    display: inline-flex;
    align-items: center;
    font-size: 0.9rem;
    font-weight: 500;
}

.nav-breadcrumb .breadcrumb-item > a {
    display: inline-block;
    align-items: center;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 100%;
    color: var(--bs-gray-700);
    text-transform: capitalize;
}

.nav-breadcrumb .breadcrumb-item > a:hover {
    color: var(--primary-color);
}

.nav-breadcrumb .breadcrumb-item.active > a {
    color: var(--bs-gray-600);
    pointer-events: none;
}

.nav-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    font-family: "Font Awesome 5 Pro", sans-serif;
    font-size: 0.625rem;
    font-weight: 400;
    vertical-align: middle;
    color: var(--bs-gray-700);
}

@media (max-width: 992px) {
    .page-detail-article .nav-breadcrumb .breadcrumb .breadcrumb-item:last-child,
    .page-detail-product .nav-breadcrumb .breadcrumb .breadcrumb-item:last-child {
        display: none;
    }
}

/*=========================================================*/
.card-post {
    transition: var(--transition);
    box-shadow: 0px 0px 10px 0px #EBEBEBF5 !important;
    border-radius: 8px;
    border: 1px solid var(--bs-gray-200);
}

.card-post__media {
    width: 250px;
}

.card-post .card-post__main > h2 {
    font-size: 0.95rem;
    color: var(--bs-gray-800);
    transition: var(--transition);
    font-weight: 600;
}

.card-post:hover .card-post__main > h2 {
    color: var(--primary-color);
}

.card-post .date {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--bs-gray-600);
}

.card-post .metas::before {
    position: absolute;
    content: "";
    top: -10px;
    left: 0;
    color: #525997;
    border-bottom: solid currentColor;
    border-top: solid transparent;
    border-right: solid currentColor;
    border-left: solid transparent;
    border-width: 5px;
}

.card-post .card-post__main .desc {
    display: none;
}

.card-post .card-post__main .desc * {
    color: var(--bs-gray-600);
}

.card-post .actions {
    color: var(--bs-gray-700);
    font-size: 0.9rem;
    font-weight: 500;
    position: relative;
    width: max-content;
}

.card-post .actions::after {
    content: '';
    display: block;
    width: 0;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: var(--transition);
    background-color: var(--bs-gray-700);
}

.card-post:hover .actions::after {
    width: 100%;
}

@media (min-width: 768px) {
    .card-post .card-post__main > h2 {
        font-size: 1.05rem;
    }

    .card-post .card-post__main .desc {
        display: block;
    }

    .card-post .card-post__main .actions {
        padding-top: 10px;
    }
}

@media (min-width: 992px) {
    .cateries-posts__main {
        padding-right: 28px;
    }

    .card-post .card-post__main > h2 {
        font-size: 1.075rem;
    }
}

@media (max-width: 600px) {
    .card-post__media {
        width: 160px;
    }
}

@media (max-width: 370px) {
    .card-post__media {
        width: 135px;
    }
}

.aside-widget .list-posts > a {
    color: var(--text-color);
    font-weight: 500;
    margin-top: 10px;
    padding-bottom: 10px;

}

.aside-widget .list-posts > a .image {
    width: 100px;
    height: 100px;
    border-radius: 5px;
    overflow: hidden;
}

.aside-widget .list-posts > a:not(:last-child) {
    border-bottom: dashed 1px var(--bs-gray-400);
}

.aside-widget .list-posts > a .title {
    display: block;
    font-weight: 600;
    transition: var(--transition);
}

.aside-widget .list-posts > a:hover .title {
    color: var(--primary-color);
}

.aside-widget .list-posts > a small {
    display: flex;
    align-items: baseline;
    font-weight: 500;
    color: var(--bs-gray-600);
    font-size: 0.75rem;
}

.aside-widget .list-category > a {
    display: block;
    padding: 5px 10px 5px 0;
    font-weight: 500;
    color: var(--bs-gray-800);
    transition: var(--transition);
    text-transform: capitalize;
}

.aside-widget .list-category > a:hover {
    color: var(--primary-color);
}

/*===========================================*/
.nav-pagination {
    margin-top: 30px;
}

.nav-pagination .pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
    gap: 10px;
}

.nav-pagination .pagination > li > a {
    width: 2.25rem;
    height: 2.25rem;
    vertical-align: middle;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    color: var(--bs-white);
    font-size: var(--text-md);
    background: var(--bs-gray-500);
}

.page-item:first-child .page-link,
.page-item:last-child .page-link {
    border-radius: 50%;
}

.nav-pagination .pagination > li > a:hover {
    background-color: var(--primary-color-light-2);
}

.nav-pagination .pagination > li.pageactive > a {
    background-color: var(--primary-color);
    color: var(--bs-white);
}

/*===========================================================*/
.page-main .page-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 1rem;
}


.page-main__content,
.page-main .page-shares {
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

.page-main .page-shares .page-metas,
.page-main .page-shares .list-socials {
    display: inline-flex;
    align-items: center;
    margin: 0 -.25rem;
    font-size: 0.9rem;
}

.page-main .page-shares .page-metas > .meta,
.page-main .page-shares .list-socials > li {
    display: inline-block;
    padding: 0 0.25rem;
}

.page-main .page-shares .list-socials > li:last-child {
    margin-top: 5px;
}

.page-main .page-shares .page-metas > .meta {
    color: var(--bs-gray-600);
}

.page-main .page-shares .page-metas > .meta span {
    margin-left: 0.25rem;
}

.page-main .page-shares .page-metas > .meta + .meta {
    display: inline-grid;
    grid-template-columns: 0 1fr;
    grid-gap: 0.625rem;
    align-items: center;
}

.page-main .page-shares .page-metas > .meta + .meta::before {
    content: '/';
}

.page-main__content .content-shortDesc {
    padding: 20px;
    background-color: var(--bs-gray-100);
    margin-bottom: 1rem;
    border-radius: 5px;
    color: var(--bs-gray-700);
    font-size: 0.9rem;
    font-weight: 500;
    font-style: italic;
}


@media (min-width: 991px) {
    .header.is-scroll + main .aside-widget-sticky {
        position: sticky;
        top: 125px;
        transition: var(--transition);
    }

    .page-main .page-title {
        font-size: 1.6rem;
    }
}

#render-html * {
    font-family: var(--font-theme);
}

#render-html h1,
#render-html h2 *,
#render-html h3,
#render-html h3 *,
#render-html h4,
#render-html h4 *,
#render-html h5,
#render-html h5 *,
#render-html h6,
#render-html h6 * {
    font-weight: 700;
    margin-bottom: 0.75rem;
}

#render-html strong,
#render-html b {
    font-weight: 700 !important;
}

#render-html p {
    font-weight: 400;
    margin-bottom: 0.75rem;
}

#render-html h1,
#render-html h1 * {
    font-size: 1.4rem;
}

#render-html h2,
#render-html h2 * {
    font-size: 1.35rem;
}

#render-html h3,
#render-html h3 * {
    font-size: 1.3rem;
}

#render-html h4,
#render-html h4 * {
    font-size: 1.25rem;
}

#render-html h5,
#render-html h5 *,
#render-html h6,
#render-html h6 * {
    font-size: 1.2rem;
}

#render-html a,
#render-html a * {
    color: var(--bs-primary);
}

#render-html img {
    max-width: 100% !important;
    height: auto !important;
}

#render-html iframe {
    max-width: 100% !important;
}

@media (max-width: 992px) {
    #render-html h1,
    #render-html h1 * {
        font-size: 1.3rem;
    }

    #render-html h2,
    #render-html h2 * {
        font-size: 1.25rem;
    }

    #render-html h3,
    #render-html h3 * {
        font-size: 1.2rem;
    }

    #render-html h4,
    #render-html h4 * {
        font-size: 1.1rem;
    }

    #render-html h5,
    #render-html h5 *,
    #render-html h6,
    #render-html h6 * {
        font-size: 1rem;
    }
}

/*================================*/
#page-contact .page-title {
    font-size: 1.5rem;
    font-weight: 500;
}

.page-main .page-caption {
    padding: 1rem 0;
}

.block-contact {
    height: 100%;
    padding: 1.875rem 1.25rem;
    background-color: rgba(241, 244, 246, 1);
    border-radius: 0.5rem;
}

.block-contact .item + .item {
    margin-top: 1em;
}

.block-contact .item {
    position: relative;
    z-index: 1;
}

.block-contact .item .item-icon > i {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: var(--primary-color);
    color: var(--bs-white);
    position: relative;
}

.block-contact .item .item-icon > i::before {
    position: relative;
    z-index: 2;
}

.block-contact .item .item-icon > i::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    background-color: var(--primary-color-light);
    clip-path: circle(0 at 50%);
    transition: 500ms ease;
}

.block-contact .item:hover .item-icon > i::after {
    clip-path: circle(100% at 50%);
}

.block-contact .item .item-main {
    padding-left: 0.75rem;
}

.block-contact .item .item-title {
    font-size: var(--text-md);
    font-weight: 500;
}

.block-contact .item .item-content {
    font-weight: 300;
    color: var(--bs-gray-700);
}

.block-contact .item > ul {
    margin: 0 -0.25rem;
    padding-left: 40px;
}

.block-contact .item > ul > li {
    display: inline-block;
    padding: 0 0.25rem;
}

.block-contact .item > ul > li > a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 0.25rem;
    color: var(--bs-white);
    background-color: var(--primary-color);
}

.block-contact .item > ul > li > a > svg {
    display: inline-block;
    height: 7px;
}

.block-contact .item > ul > li > a:hover {
    transform: translateY(-0.125rem);
    transition: var(--transition);
    background-color: var(--primary-color-light);
}

.form-field .form-control {
    padding: 0.7rem 1.2rem;
    text-overflow: ellipsis;
    font-size: 0.875rem;
    font-weight: 400;
    border-radius: 0.5rem;
    color: var(--bs-gray-700);
}

.form-field > label {
    display: block;
    width: 100%;
    margin-bottom: 0.5rem;
    font-weight: 500;
}

.form-field .form-control:focus {
    border-color: var(--primary-color);
}

.page-contact_map iframe {
    max-width: 100% !important;
}

/*=======================================*/
#page-categories {
    --border-color: var(--bs-gray-500);
    --text-color: #5c727d;
    --dropdown-m-w: 15rem;
}

.dropdown-sorting button {
    padding: 0.5rem 1rem;
    font-weight: 600;
    background-color: var(--bs-white);
    border: 1px solid;
    text-transform: capitalize;
    border-radius: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.dropdown-sorting button,
.dropdown-sorting .dropdown-menu > li > a {
    color: var(--text-color);
    border-color: var(--border-color);
    min-width: var(--dropdown-m-w);
}

.dropdown-sorting .dropdown-menu {
    border-color: var(--border-color);
    color: var(--text-color);
    width: 100%;
}

.dropdown-sorting .dropdown-menu > li > a {
    display: block;
    padding: 10px 5px 10px 10px;
    font-size: var(--text-base);
}

.dropdown-sorting .dropdown-menu > li > a.sort-active {
    font-weight: 600;
    color: var(--text-color) !important;
}

#page-categories .categories-content {
    margin: 1.5rem 0;
}

.product-categories .widget {
    padding: 25px;
    border: 1px solid var(--bs-gray-400);
    border-radius: 0.5rem;
}

.widget .widget-heading {
    font-weight: 700;
    font-size: var(--text-lg);
    white-space: nowrap;
    position: relative;
    margin-bottom: 1rem;
    text-transform: capitalize;
    padding-bottom: 17px;
}

.widget .widget-heading::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 4px;
    border-radius: 4px;
    background: var(--primary-color);
    z-index: 2;
}

.widget .widget-heading::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 4px;
    border-radius: 4px;
    z-index: 1;
    background: var(--bs-gray-200);
}

.product-categories .widget .widget-list a {
    padding: 0.5rem 0;
    font-size: var(--text-base);
    color: var(--text-color);
    font-weight: 600;
}

.product-categories .widget .widget-list ul {
    padding-left: 0.5rem;
}

.product-categories .widget .widget-list ul a {
    display: grid;
    grid-template-columns: 0 1fr;
    grid-gap: 0.75rem;
    align-items: center;
}

.product-categories .widget .widget-list a.active {
    color: var(--primary-color);
    font-weight: 700;
}

.product-categories .widget .widget-list ul a::before {
    content: ' - ';
}

.categories-options .categories-showing {
    color: var(--text-color);
}

@media (min-width: 768px) {
    #page-categories .categories-content {
        margin: 3rem 0;
    }
}

@media (min-width: 992px) {
    .widget .widget-heading {
        font-size: var(--text-xl);
    }
}

/*=============================================*/

.detail-product__slideshow .slideshow-thumbnail {
    /*max-width: 576px;
    margin: 0 auto;*/
    border: 1px solid var(--bs-gray-500);
    border-radius: 10px;
    overflow: hidden;
    padding: 10px;
}

.detail-product__slideshow .slideshow-thumbnail .swiper-slide img,
.detail-product__slideshow .slideshow-gallery .swiper-slide img {
    object-fit: contain;
    cursor: pointer;
}

.detail-product__slideshow .slideshow-thumbnail .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.detail-product__slideshow .slideshow-thumbnail .swiper-slide .slide-wrapper,
.detail-product__slideshow .slideshow-gallery .swiper-slide .slide-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.detail-product__slideshow .slideshow-gallery .swiper-slide {
    border: 1px solid var(--bs-gray-400);
    border-radius: 0.5rem;
    overflow: hidden;
    padding: 10px;
}

.detail-product__slideshow .slideshow-gallery .swiper-slide.swiper-slide-thumb-active {
    border-color: var(--primary-color);
}

.slideshow-gallery .swiper-wrapper {
    padding: 5px 0;
}

.information-commit {
    border: 1px solid var(--bs-gray-500);
    border-radius: 0.5rem;
}

.information-commit .commit-title {
    font-weight: 500;
    font-size: var(--text-md);
    text-transform: uppercase;
    border-bottom: 1px solid var(--bs-gray-500);
    padding: 0.75rem;
    text-align: center;
}

.information-commit .commit-list {
    padding: 0.75rem;
}

.information-commit .commit-list .commit-item {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

.information-commit .commit-list .commit-item .commit-icon {
    margin-right: 0.75rem;
    flex-shrink: 0;
}

.information-commit .commit-list .commit-item .commit-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    color: var(--primary-color);
    border-radius: 50%;
    position: relative;
    font-size: var(--text-lg);
    position: relative;
}

.information-commit .commit-list .commit-item .commit-icon::after {
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: var(--primary-color-light-2);
    opacity: 0.3;
    border-radius: inherit;
}

.information-commit .commit-list .commit-item
.information-description > h3 {
    font-size: var(--text-base);
    font-weight: 600;
}

.information-description + .information-description {
    margin-top: 1rem;
}

.line-separation {
    border-top: 1px solid var(--bs-gray-400);
    margin: 1rem 0;
}

.information-description > ul {
    align-items: baseline;
    padding-left: 0.5rem;
}

.information-description > ul > li {
    display: inline-block;
    padding: 0 0.25rem;
}

.information-description > ul > li + li {
    display: grid;
    grid-template-columns: 0 1fr;
    grid-gap: 1rem;
    align-items: center;
}

.information-description > ul > li + li::before {
    content: '/';
    color: var(--bs-gray-700);
}


.information-description > ul > li > a {
    color: var(--bs-gray-700);
}

#detail-product .call-us__phone {
    font-size: 1.125rem;
}

#detail-product .call-us__phone > a {
    display: flex;
    align-items: center;
}

#detail-product .call-us__phone {
    color: var(--primary-color-light);
}

#detail-product .call-us__phone > a > .icon {
    width: 1.5rem;
    height: 1.5rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: var(--bs-white);
    font-size: 0.75rem;
    background-color: var(--primary-color-light);
    border-radius: 50%;
    margin-right: 0.5rem;
}

#detail-product .call-us__phone > a:hover {
    color: var(--primary-color-light);
}

#detail-product .call-us__time {
    font-size: 1rem;
    color: var(--bs-gray-700);
}

#detail-product .information-name {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--primary-color);
}

@media (max-width: 992px) {
    #detail-product .information-name {
        font-size: 1.5rem;
    }

    #detail-product .call-us__time {
        font-size: 1.125rem;
    }

    #detail-product .call-us__phone {
        font-size: 1.25rem;
    }
}

@media (max-width: 375px) {
    .call-us {
        flex-direction: column;
        gap: 5px !important;
    }

    .call-us__item {
        width: 100%;
    }
}

.slideshow-gallery .view-gallery {
    background-color: var(--primary-color);
    border-radius: 0.5rem;
    overflow: hidden;
    position: relative;
    cursor: pointer;
}

.slideshow-gallery .view-gallery > * {
    position: relative;
    z-index: 1;
}

.slideshow-gallery .view-gallery::before,
.slideshow-gallery .view-gallery::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slideshow-gallery .view-gallery::before {
    content: attr(data-count);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--bs-white);
    z-index: 3;
}

.slideshow-gallery .view-gallery::after {
    content: '';
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 2;
}


.dp-sw-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    color: #b6c0ce;
    border: 1px solid #b6c0ce;
    border-radius: 50%;
    background-color: var(--bs-white);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99;
    transition: var(--transition);
}

.dp-sw-btn:hover {
    color: var(--bs-gray-700);
}

.dp-sw-btn.next {
    right: 0;
}

.dp-sw-btn.swiper-button-disabled {
    opacity: 0;
    visibility: hidden;
    user-select: none;
    pointer-events: none;
}

.detail-product__slideshow .slideshow-gallery {
    --max-width: 106px;
}

.slideshow-gallery .view-gallery {
    margin-right: auto;
}

#section-related-products .js-rp-next {
    right: -1.25rem;
}

#section-related-products .js-rp-prev {
    left: -1.25rem;
}

@media (min-width: 767px) {
    .information-commit .commit-list .commit-item {
        display: flex;
        flex-flow: column nowrap;
        text-align: center;
        padding-bottom: 0.25rem;
    }

    .information-commit .commit-list .commit-item .commit-icon {
        margin-bottom: 0.5rem;
        margin-right: 0;
    }
}

/*==================================*/
.bg-blue {
    background-color: #F8FAFC;
}

.section-category .dp-sw-btn.prev {
    left: -1.25rem;
}

.section-category .dp-sw-btn.next {
    right: -1.25rem;
}

/*====================================*/

#swiper-kh .swiper-slide > a {
    display: inline-block;
    border-radius: 0.25rem;
    overflow: hidden;
}

.section-dl {
    position: relative;
    z-index: 1;
}

.section-dl > * {
    position: relative;
    z-index: 10;
}

.section-dl::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--bgURL) center / cover no-repeat;
}

.header-group.disabled-prefix .header-group__heading {
    padding-left: 0;
}

.header-group.disabled-prefix .header-group__heading::before,
.header-group.disabled-prefix .header-group__heading::after {
    display: none;
}

.text-white-80 {
    color: rgba(255, 255, 255, 0.8) !important;
}

.bg-image {
    position: relative;
    z-index: 1;
}

.bg-image > * {
    position: relative;
    z-index: 10;
}

.bg-image::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: var(--bgURL);
    background-color: #e5e5e5;
}


.detailContent h1 {
    font-weight: 600;
    font-size: 1.6rem;
}

.detailContent h2 {
    font-weight: 600;
    font-size: 1.55rem;
}

.detailContent h3 {
    font-weight: 600;
    font-size: 1.5rem;
}

.detailContent h4 {
    font-weight: 600;
    font-size: 1.45rem;
}

.detailContent h5 {
    font-weight: 600;
    font-size: 1.4rem;
}

.detailContent h6 {
    font-weight: 600;
    font-size: 1.35rem;
}

.detailContent img {
    max-width: 100% !important;
    height: auto !important;
}

.detailContent iframe {
    max-width: 100% !important;
}

.detailContent strong {
    font-weight: 600 !important;
}

@media (max-width: 992px) {
    .detailContent h1 {
        font-size: 1.4rem;
    }

    .detailContent h2 {
        font-size: 1.35rem;
    }

    .detailContent h3 {
        font-size: 1.3rem;
    }

    .detailContent h4 {
        font-size: 1.25rem;
    }

    .detailContent h5 {
        font-size: 1.2rem;
    }

    .detailContent h6 {
        font-size: 1.15rem;
    }
}


/*===================================
         modal-contact
=====================================*/
.modal-contact .modal-content {
    padding: 20px;
    border-radius: 10px;
    overflow: hidden;
}

.modal-contact__close {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--bs-red);
    color: var(--bs-white);
    border: 1px solid transparent;
    margin-bottom: 8px;
    transition: var(--transition);
}

.modal-contact__close:hover {
    opacity: 0.8;
}

.call-us__item-hotline {
    background: var(--secondary-color);
}

/*===============================
      section-gallery
========================================*/

.section-gallery .gallery-image {
    position: relative;
    overflow: hidden;
    display: block;
    border-radius: 5px;
    overflow: hidden;

}

.section-gallery .gallery-image img {
    transition: 0.5s linear;
    object-fit: cover;
    border-radius: 5px;
    overflow: hidden;

}

.section-gallery .gallery-image:hover img {
    transform: scale(1.1);
}

.section-gallery .gallery-image .gallery-title {
    z-index: 1;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    align-items: flex-end;
    height: max-content;
    margin-top: auto;
}

.section-gallery .gallery-image .gallery-title span {
    background-color: var(--bs-white);
    color: var(--bs-gray-800);
    border-radius: 5px;
    padding: 10px 15px;
    font-weight: 700;
    width: 100%;
    margin: 10px;
}

.section-gallery .gallery-image .gallery-title span i {
    background-color: var(--primary-color);
    color: var(--bs-white);
    border-radius: 4px;
    padding: 5px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.section-gallery_desc {
    margin-bottom: 10px;
}

.gallery-image__item .gallery-img {
    border-radius: 8px;

}

.gallery-image__heading {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    font-size: 20px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--bs-white);
    background: linear-gradient(#a2244d0a, #2b487485);
    z-index: 2;
    transition: var(--transition);
    opacity: 0;
}

.gallery-image__item:hover {
    cursor: zoom-in;
}

.gallery-image__item:hover .gallery-image__heading .icon i {
    transform: scale(0.9);
}

.gallery-image__item:hover .gallery-image__heading {
    opacity: 1;
}

.gallery-image__item:hover .gallery-image__heading .icon i {
    transform: scale(1.4);
}


/*=====================================
            floating-contact
=======================================*/
.floating-zalo {
    position: fixed;
    bottom: 135px;
    right: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 3;

}

.floating-phone {
    position: fixed;
    bottom: 70px;
    right: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: bottom .6s ease-in-out, opacity .5s ease-in-out;
    z-index: 3;
    width: 55px;
    height: 55px;
    border-radius: 50%;
}

.floating-phone::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 50%;
    background: var(--primary-gradient);
    background-size: 400% 400%;
    animation: Gradient 3s infinite;
}

.floating-phone::after {
    position: absolute;
    content: '';
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border-radius: 50%;
    top: 5px;
    left: 5px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    z-index: 5;
}

.floating-phone svg {
    width: 60%;
    height: 60%;
    margin: 25%;
    z-index: 10;
}

.floating-phone svg path {
    fill: #e5e5e5;
}

.floating-phone span {
    position: absolute;
    display: block;
    font-size: 1rem;
    font-weight: 600;
    white-space: nowrap;
    left: -140px;
    top: calc(50% - 20px);
    padding: 8px 15px;
    border-radius: 30px 30px 0 0;
    opacity: 0;
    pointer-events: none;
    transform: scale3d(0, 1, 1);
    transform-origin: right center;
    color: var(--bs-white);
}

.floating-phone span::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 30px;
    background: var(--primary-color-light);
    z-index: -1;
}

.floating-phone span::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent var(--primary-color-light);
    right: -6px;
    top: 10px;
}

.floating-phone:hover span {
    opacity: 1;
    pointer-events: auto;
    animation-name: goWidth;
    animation-duration: .4s;
    animation-delay: 0s;
    animation-fill-mode: forwards;
}

@keyframes goWidth {
    from {
        transform: scale3d(0, 1, 1)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes Gradient {
    0% {
        background-position: 0 50%
    }

    50% {
        background-position: 100% 50%
    }

    100% {
        background-position: 0 50%
    }
}

@media (max-width: 768px) {
    .floating-zalo {
        bottom: 125px;
    }

    .floating-zalo img {
        width: 45px;
        height: 45px;
    }

    .floating-phone {
        width: 50px;
        height: 50px;
    }

    .floating-phone span {
        font-size: 0.9rem;
        left: -130px;
        padding: 7px 15px;
    }
}

/*=============================
         theme-modal
=============================*/
.theme-modal__close {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 3;
    border: 1px solid transparent;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--bs-red);
    color: var(--bs-white);
    transition: var(--transition);
}

.theme-modal__close:hover {
    opacity: 0.8;
}

/*===================================
          header-search
=======================================*/
.header-search__wrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 1025;
    background: rgb(16 20 24 / 90%);
    backdrop-filter: blur(3px);
    padding: 50px 0;
    -webkit-clip-path: circle(0 at 100% 0);
    clip-path: circle(0 at 100% 0);
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.is-search .header-search__wrap {
    -webkit-clip-path: circle(150% at 100% 0);
    clip-path: circle(150% at 100% 0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.header-search__close {
    width: 40px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: transparent;
    border: 0;
    color: var(--bs-gray-300);
    font-size: 1.5em;
}

.header-search__close:hover > img {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
}

.frmSearch-button {
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: var(--bs-white);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: var(--secondary-color);
    border: 0;
    transition: all 0.3s ease-in-out;
}

.frmSearch-button:hover {
    background: var(--secondary-hover);
}

.frmSearch-input {
    width: 100%;
    height: 45px;
    font-weight: 500;
    font-size: 1.05em;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    color: var(--bs-gray-300);
    border-bottom: 1px solid rgba(223, 226, 231, 0.71);
}

.frmSearch-input::-webkit-input-placeholder {
    color: var(--bs-gray-300);
}

.frmSearch-input::-moz-placeholder {
    color: var(--bs-gray-300);
}

.frmSearch-input:-ms-input-placeholder {
    color: var(--bs-gray-300);
}

.frmSearch-input::-ms-input-placeholder {
    color: var(--bs-gray-300);
}

.frmSearch-input::placeholder {
    color: var(--bs-gray-300);
}

.frmSearch-input:focus {
    color: var(--bs-gray-300);
    background-color: transparent;
}

.header-search_result {
    overflow-y: scroll;
    height: 700px;
    padding: 20px;
}

.header-search_result::-webkit-scrollbar {
    width: 10px;
}

.header-search_result::-webkit-scrollbar-thumb {
    border-radius: 25px;
    background-color: var(--bs-gray-400);
}

.header-search_result .page-not-found .image-not-found {
    width: 200px;
    margin: 0 auto;
}

@media (max-width: 576px) {
    .header-search_result {
        padding: 10px;
    }
}

