/*==============================
	[01]. HEADER
	[02] Util
	[03]. HOME PAGE
	[04]. FOOTER
================================*/

/*=========[01]. HEADER=========*/
.ml-5 {
    margin-left: 5px;
}

main {
    position: relative;
    z-index: 1;
}

.header {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1024;
}

.header.home-page {
    position: fixed;
}

.header .nav {
    padding: 5px 0;
    transition: var(--transition);
    background-color: var(--primary-color);
}

.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,
.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-white);
    font-weight: 600;
    position: relative;
    z-index: 1;
}

.header .nav .nav-list > .nav-item > .nav-link::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    background-color: var(--bs-white);
    color: var(--white-color);
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0;
    transition: var(--transition);
    border-radius: 5px;
}

.header .nav .nav-list > .nav-item > .nav-link .arrow i {
    transition: var(--transition);
}

.header .nav .nav-list > .nav-item:hover > .nav-link .arrow i {
    transform: rotate(180deg);
}

/* .header .nav .nav-list > .nav-item > .nav-link:hover::before {
  opacity: 1;
} */
.header .nav .nav-list > .nav-item:hover .nav-link::before {
    opacity: 1;
}

.header .nav .nav-list .nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 2.5rem;
    font-size: var(--text-base);
    white-space: nowrap;
    transition: var(--transition);
}

.header .nav .nav-list .nav-sub-list {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: -1;
    min-width: 100%;
    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;
    /* transform: translateY(-1.25rem); */
    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: 0 1rem;
}

.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);
    border-bottom: 1px solid var(--bs-gray-300);
}

/* .header.is-scroll {
  animation: header-prepare 1 500ms ease forwards;
} */

.header.is-scroll .nav {
    padding-top: 0;
    padding-bottom: 0;
    background-color: var(--primary-color);
}

.header.other-page {
    box-shadow: rgb(0 0 0 / 5%) 0 6px 24px 0, rgb(0 0 0 / 8%) 0 1px !important;
}

.header.other-page.is-scroll {
    position: fixed;
}

.header.other-page .nav .nav-list > .nav-item > .nav-link,
.header.is-scroll .nav .nav-list > .nav-item > .nav-link {
    color: var(--white-color);
}

.header .nav .nav-list > .nav-item:hover .nav-link {
    color: var(--primary-color);
}

.header.is-scroll .nav .nav-logo img {
    max-width: 60px;
    transition: unset;
}

/*
.header.is-scroll .nav .nav-list > .nav-item > .nav-link::before {
  background-color: var(--primary-color);
} */

.header-logo_hamburger {
    position: relative;
    transition: 0.3s all ease;
    display: none;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
}

.header-logo_hamburger button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 4px;
    width: 40px;
    height: 40px;
    border: 0;
    outline: none;
    box-shadow: none;
    background: transparent;
    transition: var(--transition);
}

.header-logo_hamburger button span {
    background-color: var(--bs-white);
    border-radius: 2px;
    content: "";
    display: block;
    width: 24px;
    height: 2px;
}

.header.other-page .header-logo_hamburger button span,
body.is-navigation .header-logo_hamburger button span,
.header.is-scroll .header-logo_hamburger button span {
    background-color: var(--bs-gray-100);
}

.header-logo_hamburger button span:nth-child(1) {
    animation: outTop 0.5s backwards;
    animation-direction: reverse;
}

.header-logo_hamburger button span:nth-child(2) {
    margin: 6px 0;
    animation: outMiddle 0.5s backwards;
    animation-direction: reverse;
}

.header-logo_hamburger button span:nth-child(3) {
    animation: outBottom 0.5s backwards;
    animation-direction: reverse;
}

.is-navigation .header-logo_hamburger button span:nth-child(1) {
    animation: inTop 0.5s forwards;
}

.is-navigation .header-logo_hamburger button span:nth-child(2) {
    animation: inMiddle 0.5s forwards;
}

.is-navigation .header-logo_hamburger button span:nth-child(3) {
    animation: inBottom 0.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);
        border-bottom: 1px solid var(--bs-gray-300);
    }
}

@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: 70px;
    left: -100%;
    background-color: var(--bs-white);
    width: 100%;
    max-width: 375px;
    /* height: calc(100vh - 80px); */
    height: 100%;
    transition: var(--transition);
    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 #fafafa;
}

.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: 500;
}

.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;
    justify-content: center;
    position: relative;
    background-color: #fafafa;
    color: var(--primary-color);
}

.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;
    font-size: var(--text-md);
    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);
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    color: var(--text-color);
}

.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), 0.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 - 60px);
    top: 60px;
}

.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(0.19, 1, 0.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 0.45s, opacity 0.45s, transform 0.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: 60px;
    }

    .header .header-navigation {
        display: block;
    }

    .header-logo_hamburger {
        display: flex;
    }
}

/*=========[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;
}

.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 0.75s cubic-bezier(0, 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(0.15, 0.75, 0.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(0.15, 0.75, 0.5, 1);
}

.effect-color:hover {
    color: var(--color) !important;
}

.sw-btn.sw-btn--primary {
    color: var(--primary-color);
    border: none;
    box-shadow: inset 0 0 0 2px var(--primary-color) !important;
    border-radius: 0.25rem;
}

.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: 40px 0;
}

.header-group {
    padding-bottom: 20px;
    margin-bottom: 40px;

    display: inline-flex;
    flex-wrap: wrap;
    flex-direction: column;
    flex-shrink: 0;
    justify-content: center;
    text-align: center;
    /* margin: 0 auto; */
    align-items: center;
}

.header-group .header-group__top,
.custom-link {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
}

.header-group .header-group__heading {
    flex-grow: 1;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0;
    text-transform: capitalize;
    position: relative;
}

/*
.header-group .header-group__heading::before,
.header-group .header-group__heading::after {
	content: "";
	height: 0.25rem;
	background-color: var(--primary-color);
	position: absolute;
}

.header-group .header-group__heading::before {
	width: 1.5rem;
	border-radius: 99px;
	top: 50%;
	transform: translateY(-50%);
	left: 0.75rem;
}

.header-group .header-group__heading::after {
	width: 0.25rem;
	border-radius: 50%;
	top: 50%;
	left: 2.5rem;
	transform: translateY(-50%);
}
*/

.header-group .header-group__caption {
    font-size: var(--text-base);
    color: var(--primary-color);
    font-weight: 600;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    margin: 0 auto 10px;
    white-space: nowrap;
}

.header-group .header-group__caption::before,
.header-group .header-group__caption::after {
    content: "";
    display: inline-block;
    width: 100px;
    height: 8px;
    background: url("/public/upload/theme/pattern.png") 100% 100% / 170% no-repeat;
    margin: 0 15px;
}

.header-group .header-group__desc {
    max-width: 992px;
    width: 100%;
}

.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.8rem;
    }

    .header-group .header-group__heading {
        font-size: 1.55rem;
    }

    #section-categories .categories-next,
    #section-categories .categories-prev {
        display: none;
    }
}

@media (max-width: 767px) {
    .header-group .header-group__heading {
        font-size: 1.4rem;
    }
}

@media (max-width: 576px) {
    .header-group .header-group__caption::before,
    .header-group .header-group__caption::after {
        position: unset;
        content: unset;
        background-image: none !important;
        width: 0 !important;
    }
}

@media (max-width: 480px) {
    .header-group .custom-link {
        font-size: 0.75rem;
    }

    .header-group .header-group__heading {
        padding-left: 2.75rem;
    }

    .header-group .header-group__heading::before {
        left: 0.5rem;
    }

    .header-group .header-group__heading::after {
        left: 2.25rem;
    }
}

.custom-link {
    --color: var(--text-color);
    flex-shrink: 0;
    display: inline-flex;
    position: relative;
    padding-bottom: 5px;
    color: var(--color);
}

.custom-link * {
    color: var(--color);
}

.custom-link::before,
.custom-link::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    background-color: var(--color);
}

.custom-link::before {
    transform: scaleX(1);
    transform-origin: 100% 50%;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}

.custom-link:hover::before {
    transform: scaleX(0);
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.custom-link::after {
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.custom-link:hover {
    color: currentColor;
}

.custom-link:hover::after {
    transform: scaleX(1);
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}

.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);
    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-color: var(--primary-color-light);
    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:hover::after {*/
/*	transform: translate3d(0, 0, 0);*/
/*	transition-duration: 0.05s;*/
/*	transition-delay: 0.4s;*/
/*	transition-timing-function: linear;*/
/*}*/

.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;
}

/*=========[03]. HOME PAGE=========*/

.banners {
    height: 100vh;
    overflow: hidden;
    padding-top: 75px;
}

.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;
    height: 100vh;
}

.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;
    padding-top: 200px;
}

.banners .swiper .swiper-slide .slide-group-heading {
    max-width: 500px;
}

.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: 4rem;
    font-weight: 700;
    line-height: var(--bs-body-line-height);
}

.banners .swiper-main .swiper-nav {
    position: absolute;
    left: 0;
    bottom: 100px;
    z-index: 2;
    width: 100%;
}

.banners .swiper-main .swiper-nav .swiper-nav__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.block-category img {
    border-radius: 0.6125rem !important;
}

.block-category {
    border-radius: 0.6125rem;
    overflow: hidden;
    padding-bottom: 56.25%;
    max-height: 0;
    position: relative;
}

@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-group-heading {
        max-width: 100%;
        text-align: center;
    }

    .banners .swiper .swiper-slide .slide-sub-heading {
        font-size: 3rem;
        text-align: center;
    }
}

@media (max-width: 767px) {
    .banners .swiper .swiper-slide .slide-sub-heading {
        font-size: 2.5rem;
    }

    .banners .swiper-main .swiper-nav {
        bottom: 100px;
    }

    .banners .banners-wrapper .banners-cut--bottom {
        bottom: 0;
    }
}

/*===================================================*/

.block-category.block-category--large {
    position: relative;
    padding-bottom: 0;
    max-height: 100%;
    min-height: 282px;
}

.block-category.block-category--large
.block-category__wrapper
.block-category__layer
> img {
    width: 100%;
    height: 100%;
}

.block-category .block-category__wrapper {
    color: var(--bs-gray-900);
    position: absolute;
    z-index: 1;
    padding: 1.25rem;
    overflow: hidden;
}

.block-category .block-category__wrapper,
.block-category .block-category__wrapper .block-category__layer,
.block-category .block-category__wrapper .block-category__content {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.block-category .block-category__wrapper .block-category__layer {
    position: absolute;
    z-index: 2;
    transform: scale3d(1, 1, 1);
    transition: transform 0.75s cubic-bezier(0, 0, 0.2, 1);
}

.block-category:hover .block-category__wrapper .block-category__layer {
    transform: scale3d(1.1, 1.1, 1.1);
}

.block-category .block-category__wrapper .block-category__content {
    max-width: 90px;
    position: relative;
    z-index: 3;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
}

.block-category .block-category__title {
    font-size: var(--text-md);
    font-weight: 700;
    text-transform: capitalize;
}

.block-category .block-category__counter {
    font-weight: 400;
}

.block-category .block-category__wrapper {
    padding: 2rem;
}

.block-category.block-category--large
.block-category__wrapper
.block-category__content {
    max-width: 240px;
}

.block-category.block-category--large .block-category__title {
    font-size: var(--text-xl);
}

.block-category.block-category--large
.block-category__wrapper
.block-category__content {
    justify-content: flex-start;
}

@media (max-width: 991px) {
    .block-category.block-category--large {
        padding-bottom: calc(9 / 21 * 100%);
        max-height: 0;
        margin-bottom: 24px;
    }
}

@media (max-width: 567px) {
    .block-category.block-category--large {
        padding-bottom: calc(9 / 16 * 100%);
        max-height: 0;
        margin-bottom: 12px;
    }
}

.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: rgba(0, 0, 0, 0.06) 0 18px 35px 0;
    border-radius: 0.25rem;
    transition: var(--transition);
    background-color: #fff;
    border: 1px solid #f6f6f6;
}

.card-product .card-body {
    padding: 0.5rem;
}

.card-product:hover {
    border-color: var(--bs-dark);
    box-shadow: rgb(0 0 0 / 6%) 0 8px 12px 0;
}

.card-product .card-title *,
.card-product .card-title {
    font-size: var(--text-md);
    font-weight: 700;
    margin-bottom: 0;
    transition: var(--transition);
}

.card-product .card-title > a:hover {
    color: var(--primary-color);
}

.card-product .card-desc {
    padding: 0.75rem 0;
}

.card-product .card-action .custom-btn {
    width: 100%;
    font-weight: 400;
    height: auto;
    padding: 0.5rem 0.75rem;
    font-size: var(--text-sm);
    text-transform: uppercase;
}

.card-product .card-action:hover .custom-btn {
    color: var(--bs-white);
    background-color: var(--primary-color-light);
}

@media (min-width: 768px) {
    .card-product .card-action .custom-btn {
        padding: 0.5rem 1rem;
        font-size: var(--text-base);
    }
}

@media (min-width: 992px) {
    .card-product .card-action .custom-btn {
        padding: 0.75rem 1rem;
    }
}

/*==============================================*/

.section-news__grid {
    display: grid;
    grid-gap: 1rem;
    grid-template-columns: 1fr;
}

.card-article {
    position: relative;
    z-index: 1;
}

.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: var(--text-base);
    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;
    overflow: hidden;
}

.feature {
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgb(0 0 0 / 7%);
    border-radius: 0.625rem;
    overflow: hidden;
    border: 1px solid #668ba23b;
}

.feature:not(:last-child) {
    margin-bottom: 20px;
}

.feature .feature-wrapper {
    padding: 75px 10px 10px;
    position: relative;
    transition: 500ms ease;
}

.feature .feature-counter,
.feature .feature-wrapper::before,
.feature .feature-icon,
.feature .feature-shape {
    position: absolute;
    z-index: 2;
}

.feature .feature-icon {
    display: block;
    width: 130px;
    height: 150px;
    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: 100px;
    left: 60px;
    transition: inherit;
    transition-delay: 0.1s;
    filter: brightness(0) invert(1);
    width: 35px;
}

.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: 12px;
    right: 35px;
    height: 35px;
    width: 35px;
    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: 50px;
    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 #1ba6bc;
}

#section-choices .layout-grid {
    display: grid;
    grid-template-columns: repeat(4, 25%);
}

#section-choices .layout-grid > .block-choice + .block-choice {
    border-left: 2px dashed #eaeaea;
}

.block-choice {
    padding: 1rem 2rem;
}

.block-choice .block-choice__media {
    margin-bottom: 25px;
}

.block-choice .block-choice__title {
    font-size: var(--text-lg);
    font-weight: 600;
    line-height: var(--bs-body-line-height);
    margin-bottom: 0.625rem;
}

.block-choice .block-choice__desc {
    color: var(--bs-gray-600);
}

@media (max-width: 991px) {
    #section-choices .layout-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    #section-choices .layout-grid > .block-choice + .block-choice {
        border-left: none;
    }

    #section-choices .layout-grid > .block-choice:nth-child(even) {
        border-left: 2px dashed #eaeaea;
    }
}

@media (max-width: 575px) {
    #section-choices .layout-grid {
        grid-template-columns: 1fr;
    }

    #section-choices .layout-grid > .block-choice:nth-child(even) {
        border-left: none;
    }
}

#section-counter {
    background-color: var(--primary-color);
    overflow: hidden;
}

@keyframes float-bob-y {
    0% {
        transform: translateY(-20px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(-20px);
    }
}

.float-bob-y {
    animation-name: float-bob-y;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.section-main__layer .layer {
    position: absolute;
}

.section-main__layer .layer-1 {
    top: 0;
    left: 0;
    opacity: 0.2;
}

.section-main__layer .layer-2 {
    bottom: -35px;
    right: 0;
    opacity: 0.2;
}

.block-counter .block-counter__top {
    display: flex;
    padding-bottom: 15px;
}

.block-counter .block-counter__icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.block-counter .block-counter__icon img {
    transition: 500ms linear;
    filter: brightness(0) invert(1);
}

.block-counter:hover .block-counter__icon img {
    transform: scale(0.9);
}

.block-counter .block-counter__digit {
    font-family: var(--font-theme);
    display: flex;
    align-items: baseline;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--bs-white);
    padding-top: 1rem;
    margin-left: 1rem;
    letter-spacing: 2px;
    position: relative;
}

.block-counter .block-counter__digit::before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 4px;
    border-radius: 99px;
    position: absolute;
    top: 0;
    left: 0;
    background-image: -webkit-linear-gradient(0deg, #f2f5f9 0%, var(--primary-color-light) 100%);
}

.block-counter .block-counter__title {
    font-weight: 400;
    font-size: 1.125rem;
    color: var(--bs-white);
}

.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 {
    padding-bottom: 100px;
}

.section-us__media {
    position: relative;
}

.section-us__media .media {
    position: absolute;
    z-index: 2;
}

.section-us__media img {
    border-radius: 20px;
}

.section-us__media .media-1 {
    position: relative;
    max-width: 540px;
    margin: 0 auto;
}

.section-us__media .media-1 > img {
    width: 100%;
    height: auto;
}

.section-us__media .media-2 {
    top: 50%;
}

.section-us__media .media-3 > img {
    border-radius: 10px;
}

.section-us__media .media-3 {
    top: 35px;
    right: 20px;
    opacity: 0.3;
    z-index: -1;
    border-radius: 10px;
}

.section-us__media .experience {
    position: absolute;
    bottom: -65px;
    left: 30%;
    background-color: var(--primary-color);
    color: var(--bs-white);
    padding: 1.25rem 2.5rem;
    z-index: 3;
    border-radius: 5px;
}

.section-us__media .experience::after {
    position: absolute;
    bottom: 3px;
    right: -65px;
    content: "";
    border-top: 0 solid #0000;
    border-left: 65px solid var(--primary-color-light);
    border-bottom: 62px solid #0000;
}

.section-us__media .experience-wrapper::before {
    content: "";
    display: block;
    border: 2px dashed var(--bs-white);
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    border-radius: 5px;
}

.section-us__media .experience .experience-year {
    font-size: 60px;
    line-height: 60px;
    font-weight: 700;
}

.section-us__media .experience .experience-text {
    font-weight: 500;
    font-size: var(--text-lg);
}

.section-us .section-desc > p {
    margin-bottom: 0;
    color: var(--bs-gray-600);
}

.section-us .section-desc > p + p {
    margin-top: 1rem;
}

.section-us .section-desc > p > strong {
    color: var(--primary-color);
}

.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);
}

.section-us__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    background: var(--bgURL) right top / cover no-repeat;
    mix-blend-mode: luminosity;
    opacity: 0.05;
}

.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(--primary-color);
    transition: var(--transition);
}

.phone-contact .phone-contact__icon:hover > i {
    background-color: var(--primary-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(--primary-color);
}

.phone-contact .phone-contact__desc {
    font-weight: 300;
    color: var(--bs-gray-600);
}

@media (max-width: 991px) {
    .section-us {
        padding-bottom: 110px;
    }
}

@media (max-width: 767px) {
    .section-us__media .media-2 {
        display: none;
    }

    .section-us__media .experience {
        left: 0;
    }
}

@media (max-width: 576px) {
    .section-us__media .experience .experience-year {
        font-size: 46px;
        line-height: 60px;
        font-weight: 700;
    }

    .section-us__media .experience .experience-text {
        font-weight: 500;
        font-size: 16px
    }
}


/*=====[04]. FOOTER========================================*/

.footer .footer-main {
    padding: 5rem 0 2.5rem 0;
}

.footer-block {
    min-width: 150px;
}

.footer-block .footer-block__title {
    font-size: var(--text-lg);
    font-weight: 500;
    margin-bottom: 10px;
}

.footer-block__text--sm,
.footer-block .footer-block__text {
    font-weight: 300;
    color: var(--bs-gray-700);
}

.footer-block__text--sm {
    font-size: var(--text-sm);
}

.footer-block + .footer-block {
    margin-top: 25px;
}

.footer a.footer-block__text:hover {
    color: var(--primary-color);
    transition: var(--transition);
}

.footer ul > li + li {
    margin-top: 10px;
}

.footer-block > .footer-block__text + .footer-block__text {
    margin-top: 5px;
}

.footer .footer-terms__wrapper {
    padding: 2.5rem 0;
    border-top: 1px solid var(--bs-gray-500);
}

.footer .footer-socials > li + li {
    margin-top: 0;
}

.footer .footer-socials {
    margin: 0 -0.25rem;
}

.footer .footer-socials > li {
    display: inline-block;
    padding: 0 0.25rem;
}

.footer .footer-socials > li > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    width: 36px;
    font-size: 1.25rem;
    border-radius: 50%;
    background-color: var(--bs-gray-900);
    color: var(--bs-white);
}

/*================================================*/
.nav-breadcrumb {
    padding: 20px 0;
}

.nav-breadcrumb .breadcrumb {
    --bs-breadcrumb-divider: "\f054";
    margin-bottom: 0;
}

.nav-breadcrumb .breadcrumb-item {
    display: inline-flex;
    align-items: center;
}

.nav-breadcrumb .breadcrumb-item > a {
    display: inline-block;
    align-items: center;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 100%;
    color: var(--primary-color-light);
    text-transform: capitalize;
}

.nav-breadcrumb .breadcrumb-item.active > a {
    color: var(--primary-color-light);
    pointer-events: none;
}

.nav-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    font-family: "Font Awesome 5 Pro", sans-serif;
    font-size: 0.625rem;
    font-weight: 300;
    vertical-align: middle;
    color: var(--primary-color-light);
    margin-top: 4px;
}

@media (max-width: 992px) {
    .nav-breadcrumb .breadcrumb .breadcrumb-item:last-child {
        display: none;
    }
}

/*=========================================================*/
.card-post {
    display: grid;
    grid-template-columns: 30% 1fr;
    grid-gap: 20px;
    border-bottom: 1px solid #ececec;
    padding-bottom: 15px;
    margin-bottom: 15px;
    overflow: hidden;
    transition: var(--transition);
}

.card-post .card-post__media img {
    border-radius: 0.25rem;
}

.card-post .card-post__main {
    padding-right: 25px;
}

.card-post .card-post__main > h2 {
    font-size: 0.875rem;
    margin: 0;
    color: var(--bs-gray-900);
    transition: inherit;
    font-weight: 700;
}

.card-post .card-post__main > h2:hover {
    color: var(--primary-color);
}

.card-post .card-post__main .metas {
    display: block;
    padding: 10px 0;
}

.card-post .card-post__main .metas > time {
    display: inline-block;
    font-size: 0.75rem;
    color: var(--bs-gray-600);
}

.card-post .card-post__main .desc {
    display: none;
}

.card-post .card-post__main .desc * {
    color: var(--bs-gray-600);
}

@media (min-width: 768px) {
    .card-post .card-post__main > h2 {
        font-size: 1rem;
    }

    .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: 1rem;
    }
}

.aside-widget .list-posts > a {
    font-size: 0.875rem;
    color: var(--text-color);
    font-weight: 500;
    display: block;
    margin-top: 10px;
    padding-bottom: 10px;
    border-bottom: dashed 1px var(--bs-gray-400);
}

.aside-widget .list-posts > a > strong {
    display: block;
    margin-bottom: 10px;
    line-height: 1.5;
    transition: var(--transition);
}

.aside-widget .list-posts > a:hover > strong {
    color: var(--primary-color);
}

.aside-widget .list-posts > a > small {
    display: flex;
    align-items: baseline;
    color: var(--bs-gray-600);
    font-weight: 400;
}

.aside-widget .list-category > a {
    display: block;
    padding: 5px 10px 5px 0;
    font-size: 0.875rem;
    font-weight: 500;
    color: #42424a;
    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;
}

.nav-pagination .pagination > li {
    margin: 0 0.5rem;
}

.nav-pagination .pagination > li > a {
    width: 2.25rem;
    height: 2.25rem;
    vertical-align: middle;
    border-radius: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    color: var(--bs-white);
    font-size: var(--text-md);
    background: var(--bs-gray-500);
}

.nav-pagination .pagination > li > a:hover {
    background-color: var(--primary-color-light);
}

.nav-pagination .pagination > li.pageactive > a {
    background-color: var(--primary-color);
    color: var(--bs-white);
}

/*===========================================================*/
.page-main .has-sidebar .page-main__wrapper {
    padding-right: 1.75rem;
}

.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;
    border-bottom: 1px solid var(--border-color);
}

.page-main .page-shares .page-metas,
.page-main .page-shares .list-socials {
    display: inline-flex;
    align-items: center;
    margin: 0 -0.25rem;
}

.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: 0.625rem;
    border-left: 0.25rem solid var(--primary-color);
    background-color: var(--bs-gray-100);
    margin-bottom: 1rem;
}

@media (min-width: 991px) {
    .header.is-scroll + main .aside-widget-sticky {
        position: sticky;
        top: 90px;
        transition: var(--transition);
    }

    .page-main .page-title {
        font-size: 1.75rem;
    }
}

#render-html * {
    font-family: "Lexend", var(--bs-font-sans-serif);
    line-height: 1.5;
}

#render-html h2,
#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 p {
    font-weight: 400;
    margin-bottom: 0.75rem;
}

#render-html h2,
#render-html h2 * {
    font-size: 1.5rem;
}

#render-html h3,
#render-html h3 * {
    font-size: 1.25rem;
}

#render-html h4,
#render-html h4 * {
    font-size: 1.125rem;
}

#render-html h5,
#render-html h5 *,
#render-html h6,
#render-html h6 * {
    font-size: 1rem;
}

#render-html a,
#render-html a * {
    color: var(--bs-primary);
}

@media (max-width: 992px) {
    #render-html h2,
    #render-html h2 * {
        font-size: 1.25rem;
    }

    #render-html h3,
    #render-html h3 * {
        font-size: 1.125rem;
    }

    #render-html h4,
    #render-html h4 * {
        font-size: 1rem;
    }

    #render-html h5,
    #render-html h5 *,
    #render-html h6,
    #render-html h6 * {
        font-size: 0.875rem;
    }
}

/*================================*/
#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.75rem 1.5rem;
    text-overflow: ellipsis;
    background-color: var(--bs-white);
    font-size: 0.875rem;
    font-weight: 400;
    border-radius: 0.5rem;
}

.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 {
    vertical-align: bottom;
}

/*=======================================*/
#page-categories .header-group {
    display: flex;
    justify-content: space-between;
    text-align: inherit;
}

#page-categories .header-group__top {
    width: 100%;
}

#page-categories {
    --border-color: var(--bs-gray-500);

    --dropdown-m-w: 10rem;
}

.dropdown-sorting button {
    padding: 0.75rem 1rem;
    font-weight: 600;
    background-color: var(--bs-white);
    border: 1px solid;
    text-transform: capitalize;
    border-radius: 0.25rem;
}

.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: 35px 30px 40px 35px;
    border: 1px solid var(--bs-gray-500);
    margin-bottom: 3.125rem;
    border-radius: 0.5rem;
}

.widget .widget-heading {
    font-weight: 600;
    font-size: var(--text-lg);
    white-space: nowrap;
    position: relative;
    padding-left: 2.75rem;
    margin-bottom: 1.5rem;
    text-transform: capitalize;
}

.widget .widget-heading::before,
.widget .widget-heading::after {
    content: "";
    display: inline-block;
    height: 0.25rem;
    background-color: var(--primary-color-light);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.widget .widget-heading::before {
    width: 1.125rem;
    left: 0;
    border-radius: 99px;
}

.widget .widget-heading::after {
    width: 0.25rem;
    left: 1.5rem;
    border-radius: 100%;
}

.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);
}

.product-categories {
    margin: 1.5rem 0;
}

@media (min-width: 992px) {
    .widget .widget-heading {
        font-size: var(--text-xl);
    }

    .product-categories {
        padding-left: 1.5rem;
    }
}

/*=============================================*/

.detail-product__slideshow .slideshow-thumbnail {
    max-width: 576px;
    margin: 0 auto;
    border: 1px solid var(--bs-gray-500);
    border-radius: 0.25rem;
    padding: 0 0;
}

.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 transparent;
    border-radius: 0.5rem;
    overflow: hidden;
}

.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: 400;
    font-size: var(--text-lg);
    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;
}

.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);
    opacity: 0.3;
    border-radius: inherit;
}

.information-description {
    display: flex;
    flex-wrap: wrap;
}

.information-description > h3 {
    font-size: var(--text-base);
    font-weight: 600;
    white-space: nowrap;
}

.information-description + .information-description {
    margin-top: 0.5rem;
}

.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(--primary-color);
}

.information-description > ul > li > a {
    color: var(--primary-color);
    white-space: nowrap;
}

#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.75rem;
    font-weight: 500;
    color: var(--primary-color);
    padding-bottom: 30px;
}

@media (min-width: 992px) {
    #detail-product .call-us__time {
        font-size: 1.125rem;
    }

    #detail-product .call-us__phone {
        font-size: 1.25rem;
    }
}

@media (max-width: 576px) {
    #detail-product .information-name {
        font-size: 1.55rem;
    }
}

.slideshow-gallery .swiper-main {
    overflow: hidden;
    align-items: center;
    max-width: 576px;
    margin: 0 auto;
}

.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);
    border: 0;
    box-shadow: 0px 2px 4px rgb(97 97 97 / 18%), 0px 4px 8px rgb(97 97 97 / 18%) !important;
}

.dp-sw-btn:hover {
    background-color: var(--primary-color);
    color: var(--white-color);
}

.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,
.detail-product__slideshow .slideshow-gallery .swiper-slide {
    max-width: var(--max-width);
    max-height: var(--max-width);
}

.slideshow-gallery .swiper {
    max-width: calc(var(--max-width) * 2 + 16px);
    overflow: hidden;
    margin-left: 0;
    margin-right: 0;
}

.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 (max-width: 576px) {
    .dp-sw-btn {
        display: none;
    }

}

@media (min-width: 576px) {
    .slideshow-gallery .swiper {
        max-width: calc(var(--max-width) * 3 + 48px);
    }

}

@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;
    }
}

@media (min-width: 992px) {
    .slideshow-gallery .swiper {
        max-width: calc(var(--max-width) * 3 + 24px);
    }
}

@media (min-width: 1200px) {
    .detail-product__slideshow .slideshow-gallery {
        --max-width: 132px;
    }

    .slideshow-gallery .swiper {
        max-width: 576px;
    }
}

.avatar-photo-img {
    border-radius: 5px;
    border: 1px solid var(--primary-color);
}

.img-item-slider {
    border-radius: 5px;
    border: 1px solid var(--bs-gray-500);
    cursor: pointer;
    opacity: 0.7;
}

.swiper-slide-thumb-active .img-item-slider {
    border: 1px solid var(--primary-color);
    opacity: 1;
}

.swiper-button-detail {
    display: flex;
    justify-content: space-between;
    width: 100%;
    position: absolute;
    top: 50%
}

.swiper-button-detail .thumb-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);
    z-index: 5;
    transition: var(--transition);
    border: 0;
    box-shadow: 0px 2px 4px rgba(97, 97, 97, 0.18), 0px 4px 8px rgba(97, 97, 97, 0.18) !important;
}

.swiper-button-detail .thumb-btn:hover {
    background-color: var(--primary-color);
    color: var(--white-color);
}

.swiper-button-detail .thumb-btn.thumbs-prev {
    left: -15px;
    position: absolute;
}

.swiper-button-detail .thumb-btn.thumbs-next {
    right: -15px;
    position: absolute;
}

@media (max-width: 576px) {
    .swiper-button-detail {
        display: none;
    }
}

/*==================================*/
.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: var(--bgURL) center / cover no-repeat;
}

/* =======================update-code================= */

/* -----------------section-product------------ */
.section-product {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;

}

.section-product .card-product {
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    border: 0;
    padding: 0;
    border-radius: 5px;
    overflow: hidden;
}

.section-product .card-product .img-product {
    display: block;
    overflow: hidden;
}

.section-product .card-product .img-product > img {
    width: 100%;
    object-fit: cover;
    transform: scale(1);
    transition: transform 2.2s cubic-bezier(0.14, 0.4, 0.09, 0.99);
}

.section-product .card-product:hover .img-product > img {
    transform: scale(1.1);
}

.section-product .card-product .card-body {
    padding: 1rem;
    flex-direction: column;
    display: flex;
}

.section-product .card-product .card-body .card-text {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    margin: 10px 0px;
}

.section-product .card-product .card-body .link-contact {
    background-color: var(--primary-color);
    color: var(--white-color);
    text-transform: uppercase;
    border-radius: 5px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
    padding: 10px;
    position: relative;
    z-index: 1;
    margin-top: auto;
}

.section-product .card-product .card-body .link-contact::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    bottom: 100%;
    background-color: var(--primary-color-light);
    transition: var(--transition);
    z-index: -1;
    opacity: 0;
    border-radius: 5px;
}

.section-product .card-product .card-body .link-contact:hover::before {
    opacity: 1;
    bottom: 0;
}

.section-link-more {
    display: flex;
    align-items: center;
    justify-content: center;
}

.section-link-more .link-more {
    border: 2px solid var(--primary-color);
    color: var(--primary-color);
    padding: 10px 30px;
    text-transform: uppercase;
    border-radius: 5px;
    position: relative;
    font-weight: 600;
    transition: var(--transition);
    z-index: 1;
    overflow: hidden;
}

.section-link-more .link-more:hover {
    color: var(--white-color);
}

.section-link-more .link-more::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 0;
    bottom: 0;
    background-color: var(--primary-color);
    z-index: -1;
    opacity: 0;
    transition: var(--transition);
}

.section-link-more .link-more:hover::before {
    opacity: 1;
    width: 100%;
}

.section-link-more .link-more .icon-more {
    transition: var(--transition);
}

.section-link-more .link-more:hover .icon-more {
    margin-left: 10px;
    transition: var(--transition);
}

@media (max-width: 576px) {
    .section-product .card-product .card-body .link-contact {
        font-size: 12px;
        white-space: nowrap;
    }

    .section-link-more .link-more {
        font-size: 13px;
        padding: 8px 20px;
    }
}

/*================== section-partner======================== */
.section-partner .image-partner > img {
    width: 100%;
    height: auto;
}

.section-partner .image-partner:not(:last-child) {
    margin-bottom: 35px;
}

/* ==========================section-image ======================*/
.section-image {
    background: linear-gradient( 90deg, rgb(192 255 30 / 3%) 0%, rgb(250 252 116 / 3%) 100% );
}

/* ======================section-blog ==============*/
.section-blog {
    position: relative;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top;
    /* background: rgb(2 120 255 / 8%); */
}

.section-blog .card-blog:hover .img-blog > img {
    opacity: 0.7;
    transform: scale(1.1);
}

.section-blog .card-blog {
    border-radius: 5px;
    border: 0;
    box-shadow: 0 0 63px 0 rgb(227 235 205 / 61%);
    overflow: hidden;
}

.section-blog .card-blog .card-body {
    display: inline-flex;
    flex-direction: column;
}

.section-blog .card-blog .img-blog {
    overflow: hidden !important;
    display: block !important;
}

.section-blog .card-blog .img-blog > img {
    transition: 1.1s cubic-bezier(0.15, 0.75, 0.5, 1);
}

.section-blog .card-blog .card-title {
    font-size: var(--text-md);
    font-weight: 700;
    margin-bottom: 0;
}

.section-blog .card-blog .card-title a:hover {
    color: var(--primary-color);
}

.section-blog .card-blog .card-meta {
    padding: 10px 0px;
    font-size: 12px;
}

.section-blog .card-blog .card-meta .card-category {
    font-weight: 700;
    color: var(--primary-color-light);
}

.section-blog .card-blog .card-text {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    margin-bottom: 8px;
}

.section-blog .card-blog .link-blog {
    color: var(--color);
    padding-bottom: 5px;
    position: relative;
    transition: var(--transition);
    display: inline-flex;
    margin-top: auto;
    width: fit-content;
}

.section-blog .card-blog .link-blog::before,
.section-blog .card-blog .link-blog::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    background-color: var(--text-color);
}

.section-blog .card-blog .link-blog::before {
    transform: scaleX(1);
    transform-origin: 100% 50%;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}

.section-blog .card-blog .link-blog:hover::before {
    transform: scaleX(0);
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    background-color: var(--primary-color);
}

.section-blog .card-blog .link-blog::after {
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    background-color: var(--primary-color);
}

.section-blog .card-blog .link-blog:hover {
    color: var(--primary-color);
}

.section-blog .card-blog .link-blog:hover::after {
    transform: scaleX(1);
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
    background-color: var(--primary-color);
}

/*================== footer==================== */
.footer-top {
    padding: 20px 0px;
    background: var(--primary-color);
    color: var(--white-color);
    text-transform: uppercase;
    font-weight: 600;
}

.footer-top .list-link-social {
    list-style-type: none;
    padding-left: 0;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.footer-top .list-link-social .link-social {
    font-size: 16px;
    text-decoration: none;
    color: var(--bs-gray-300);
    margin-left: 15px;
    transition: var(--transition);
}

.footer-top .list-link-social .link-social:hover {
    color: var(--bs-gray-100);
}

.footer-top .list-link-social > li:not(:last-child) {
    margin-right: 15px;
}

.footer-bottom {
    background-color:var(--accent-color);
}

.footer-bottom .footer-title h2 {
    font-size: var(--text-lg);
    font-weight: 500;
    margin-bottom: 22px;
    
}

.footer-bottom .footer-main .list-info {
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
}

.footer-bottom .footer-main .list-info .item-info-default:not(:last-child) {
    margin-bottom: 15px;
}

.footer-bottom .footer-main .list-info .icon-item {
    width: 35px;
    height: 35px;
    margin-right: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
   
}

.footer-bottom .footer-main .list-info .content-item .title-item {
   
}

.footer-bottom .footer-main .list-info .content-item .text-item {
    font-weight: 300;
   color:var(--bs-gray-700);
    transition: var(--transition);
}

.footer-bottom .footer-main .list-info .content-item .text-item:hover {
    color: var(--bs-gray-900);
}

.footer-bottom .footer-main .list-info .link-blog {
    font-weight: 300;
   color:var(--bs-gray-700);
    transition: var(--transition);
}

.footer-bottom .footer-main .list-info .link-blog:hover {
    color:var(--bs-gray-900);
}

.footer-bottom .footer-main .list-info > li:not(:last-child) {
    margin-bottom: 10px;
}

.footer-bottom .footer-bottom-text {
    font-weight: 300;
    font-size: 12px;
    padding: 10px 0px;
    margin-top: 20px;
    border-top: 1px solid var(--bs-gray-900);
    color: var(--bs-gray-900);
}

.btn-contact-us {
    color: var(--white-color);
    font-weight: 500;
    padding: 10px 25px;
    border-radius: 5px;
    text-decoration: none;
    transition: var(--transition);

    margin: 16px 5px 0px;
}

.btn-call.btn-contact-us {
    background-color: var(--primary-color-bold);
}

.btn-call.btn-contact-us:hover {
    background-color: var(--primary-color);
    color: var(--white-color);
}

.btn-zalo.btn-contact-us {
    background-color: rgb(22, 157, 235);
    color: var(--white-color);
}

.btn-zalo.btn-contact-us:hover {
    background-color: rgb(21, 134, 200);
}

.img-zalo {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}

.img-zalo:hover {
    -webkit-filter: grayscale(0);
    -moz-filter: grayscale(0);
    -ms-filter: grayscale(0);
    -o-filter: grayscale(0);
    filter: grayscale(0);
}

/* ========================section-banner============== */
.section-banner {
    padding-top: 70px;
}

.swiper-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    right: 20px;
    bottom: 50px;
    z-index: 5;
}

.swiper-button .btn-button {
    color: var(--white-color);
    background-color: transparent;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
    width: 35px;
    height: 35px;
    border-radius: 50%;
    border: 2px solid var(--white-color);
}

.swiper-button .btn-button.btn-left {
    position: relative;
}

.swiper-button .btn-button.btn-left:hover {
    padding-right: 40px;
    border-radius: 0;
    width: 50px;

    border: 1px solid transparent;
}

.swiper-button .btn-button.btn-right:hover {
    padding-left: 40px;
    border-radius: 0;
    width: 50px;

    border: 1px solid transparent;
}

.swiper-button .btn-button.btn-left::before {
    position: absolute;
    content: "";
    left: 0;
    top: 50%;
    height: 1px;
    width: 0;
    background-color: var(--white-color);
    opacity: 0;
    transform: translateY(-1px);
}

.swiper-button .btn-button.btn-left:hover::before {
    width: 40px;
    opacity: 1;
}

.swiper-button .btn-button.btn-right::before {
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    height: 1px;
    transform: translateY(-1px);
    width: 0;
    background-color: var(--white-color);
    opacity: 0;
}

.swiper-button .btn-button.btn-right:hover::before {
    width: 40px;
    opacity: 1;
}

.swiper-button .btn-button:not(:last-child) {
    margin-right: 20px;
}

.btn-button.swiper-button-disabled {
    color: var(--bs-gray-700);
    border-color: var(--bs-gray-700);
}

.btn-button.swiper-button-disabled:hover::before {
    color: var(--bs-gray-700);
    border-color: var(--bs-gray-700);
    background-color: var(--bs-gray-700);
}

@media (max-width: 576px) {
    .swiper-button {
        display: none;
    }
}

/* =============cap nhat */
/* .section-banner .column-left{
  background-color:#042040;
  height: 100%;
 
} */
.banner-img > img {
    width: 100%;
}

.section-banner .column-left .column-left-inner {
    background-color: rgb(255, 255, 255, 0.9);
    color: var(--primary-color);
    position: absolute;
    top: 50%;
    right: 30px;
    padding: 10px;
    transform: translateY(-50px);
    border: 2px solid var(--primary-color);
    border-radius: 5px;
    text-align: center;
    width: 380px;
}

.section-banner .column-left .wrap-column {
    border: 2px dashed var(--primary-color);
    border-radius: 5px;
    padding: 15px;
    position: relative;
}

.section-banner .column-left .column-left-inner .heading-banner {
    padding-bottom: 20px;
}

.section-banner .column-left .column-left-inner .heading-banner h2 {
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
}

.section-banner .link-banner {
    font-size: 15px;
    font-weight: 700;
    transition: var(--transition);
    color: var(--primary-color-light);
    position: relative;
    display: inline-flex;
    align-items: center;
    padding-bottom: 2px;
    overflow: hidden;
}

.section-banner .link-banner:hover {
    color: var(--text-color);
}

.section-banner .link-banner::before,
.section-banner .link-banner::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    background-color: var(--primary-color);
}

.section-banner .link-banner::before {
    transform: scaleX(1);
    transform-origin: 100% 50%;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}

.section-banner .link-banner::after {
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.section-banner .link-banner:hover::before {
    transform: scaleX(0);
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    background-color: var(--text-color);
}

.section-banner .link-banner:hover::after {
    transform: scaleX(1);
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
    background-color: var(--text-color);
}

.section-banner .link-banner .icon-more {
    font-size: 12px;
    margin-left: 6px;
}

@media (max-width: 991px) {
    .section-banner .column-left {
        display: none;
    }
}

@media (max-width: 576px) {
    .flex-btn-call {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }

    .mr-30 {
        margin-right: 0;
    }
}

#detail-product .section-content-product h1 {
    font-size: 1.325rem;
}

#detail-product .section-content-product h2 {
    font-size: 1.3rem;
}

#detail-product .section-content-product h3 {
    font-size: 1.275rem;
}

#detail-product .section-content-product h4 {
    font-size: 1.25rem;
}

#detail-product .section-content-product h5 {
    font-size: 1.225rem;
}

#detail-product .section-content-product h6 {
    font-size: 1.2rem;
}

#detail-product .section-content-product,
#detail-product .section-content-product p {
    font-size: 14px;
    font-weight: 400;
}

#detail-product .section-content-product img {
    max-width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

/*===================================*/

.section-category .header-group {
    margin-bottom: 0;
}

.swi-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 2rem;
    width: 2rem;
    background-color: var(--primary-color);
    color: var(--bs-white);
    font-size: var(--text-md);
    border-radius: 0.25rem;
    cursor: pointer;
    transition: all 0.25s ease-in-out;
}

.swi-btn:hover {
    background-color: var(--primary-color-light);
}

.swi-btn.swiper-button-disabled {
    pointer-events: none;
    user-select: none;
    opacity: 0.75;
}

.section-quick-category {
    /* background-color: #0278ff14; */
    padding: 25px 0;
}

.quick-category {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    grid-gap: 0.5rem;
    font-weight: 400;
    font-size: var(--text-sm);
    text-align: center;
    border: 1px solid transparent;
    border-radius: 0.25rem;
    transition: all 0.35s ease-in-out;
    position: relative;
}

.quick-category img {
    max-width: 40px;
}

@media (min-width: 767px) {

    .section-quick-category {
        background-color: transparent;
        padding-bottom: 0;
    }

    .quick-category {
        padding: 0.5rem 0.75rem;
        background-color: #fff;
        flex-flow: row nowrap;
        box-shadow: var(--shadow-1);
    }

    .quick-category .quick-category__icon {
        overflow: hidden;
    }

    .quick-category .quick-category__icon img {
        transform-origin: 50% 50%;
        transform: scale3d(1, 1, 1);
        transition: 0.35s ease-in-out;
    }

    .quick-category:hover .quick-category__icon img {
        transform: scale3d(0.95, 0.95, 0.95);
    }

    .quick-category:hover {
        box-shadow: var(--shadow);
        border-color: var(--primary-color);
    }
}

@media (min-width: 992px) {
    .section-quick-category {
        padding: 40px 0;
    }

    .quick-category {
        padding: 0.5rem 1rem;
    }
}

@media (min-width: 1200px) {
    .quick-category img {
        max-width: 48px;
    }

    .quick-category {
        font-size: var(--text-md);
        padding: 1rem;
    }
}

@media (min-width: 1440px) {
    .quick-category img {
        max-width: 50px;
    }
}

/*========== section-trademark============  */

.section-trademark .item-box-img{
    background-color: white;
    padding: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
box-shadow: var(--shadow);
margin: 20px 10px;
}

@media (max-width: 575px) {
    .section-trademark .item-box-img{
        background-color: white;
        padding: 25px;
    }
}
.float-contact{
    position: fixed;
    left: 1rem;
    bottom: 1.8rem;
    z-index: 5;
}
.float-contact .float-zalo{
    bottom: 20px;
}
.float-contact .float-phone{
    display: flex;
    align-items: center;
    margin-top: 1rem;
}
.float-contact .float-phone .icon-phone{
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary-color);
    color:var(--bs-white);
    z-index: 2;
    box-shadow: 2px 2px 10px 1px #7b7b7b69;
    font-size: 18px;
    transition: 350ms ease-in-out;
    position: relative;
}

.float-contact .float-phone .icon-phone::before{
    position: absolute;
    content: '';
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--primary-color);
    animation-duration: 1s;
    animation-name: ripple;
    animation-iteration-count: infinite;
    z-index: -1;
}
@keyframes ripple {
    from {
        opacity: 1;
        transform: scale(0);
    }
    to {
        opacity: 0;
        transform: scale(1.5);
    }
}
.float-contact .float-phone .text-phone{
    background-color: var(--primary-color);
    color: var(--bs-white);
    transition: 350ms ease-in-out;
    height: 38px;
    padding: 12px 20px 12px 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -15px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    font-size: 14px;
    box-shadow: 1px 1px 14px 1px #7b7b7b5e;
    font-weight: 600;
}

@media (max-width: 575px) {
    .float-contact .float-phone .text-phone {
        display: none;
    }
    .float-contact .float-phone .icon-phone,
    .float-contact .float-zalo {
        width: 45px;
        height: 45px;
    }
}