:root {
    --main-color: #efa233 !important;
    --main-color-hover: #e0972d !important;
    --font-family-key: 'Montserrat';
}

body {
    font-family: var(--font-family-key);
    font-size: 14px;
    font-weight: 400;
    color: #222;
    top: 0px !important;
    position: relative;
    /* background: #f2f2f2; */
    background: #fff;
}

@media(max-width: 767px) {
    body.overflow {
        overflow: hidden;
    }
}

.clear {
    clear: both;
}

.container {
    width: 100% !important;
    max-width: 100%;
    padding: 0 30px;
}

.container-fluid {
    position: relative;
    /* max-width: 1350px; */
    padding: 0px 30px;
}

@media(max-width: 767px) {
    .container-fluid {
        padding: 0px 15px;
    }
}

a {
    text-decoration: none;
    color: #222;
}

a:hover,
a:focus {
    color: var(--main-color);
    text-decoration: none;
}

button,
button:focus,
select,
select:focus {
    outline: none;
}

.relative {
    position: relative;
}

.relative-2 {
    position: relative;
    top: -2px;
}

.relative-3 {
    position: relative;
    top: -3px;
}

.relative-4 {
    position: relative;
    top: -4px;
}

.relative-5 {
    position: relative;
    top: -5px;
}

img {
    max-width: 100%;
    display: inline-block;
}

.top0 {
    margin-top: 0px !important;
}

.top3 {
    margin-top: 3px !important;
}

.top4 {
    margin-top: 4px !important;
}

.top5 {
    margin-top: 5px !important;
}

.top6 {
    margin-top: 6px !important;
}

.top8 {
    margin-top: 8px !important;
}

.top10 {
    margin-top: 10px !important;
}

.top12 {
    margin-top: 12px !important;
}

.top14 {
    margin-top: 14px !important;
}

.top15 {
    margin-top: 15px !important;
}

.top-3 {
    margin-top: -3px !important;
}

.top-4 {
    margin-top: -4px !important;
}

.top-5 {
    margin-top: -5px !important;
}

.top-6 {
    margin-top: -6px !important;
}

.top-8 {
    margin-top: -8px !important;
}

.top-10 {
    margin-top: -10px !important;
}

.top-12 {
    margin-top: -12px !important;
}

.top-14 {
    margin-top: -14px !important;
}

.top-15 {
    margin-top: -15px !important;
}

.mobile {
    display: none;
}

.noborder {
    border: none !important;
}

@media(max-width: 767px) {
    .container {
        padding: 0px 12px;
    }

    .container .row {
        margin: 0px -12px;
    }

    .container .row>div {
        padding: 0px 12px;
    }

    .mobile {
        display: block;
    }

    .destop {
        display: none !important;
    }
}

.scroll-top {
    cursor: pointer;
    position: fixed;
    bottom: 90px;
    right: 4px;
    display: none;
    z-index: 99;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    text-align: center;
    font-size: 13px;
    background: var(--main-color);
    color: #fff !important;
    line-height: 32px;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.white-box {
    background: #fff;
    /* border-radius: 4px;
    padding: 20px; */
}

@media(max-width: 767px) {
    .white-box {
        /* padding: 10px; */
    }
}

.btn-add-cart {
    background: #fff;
    border: 1px solid var(--main-color);
    color: var(--main-color) !important;
    outline: none !important;
}

.btn-add-cart:hover {
    background: var(--main-color);
    border: 1px solid var(--main-color);
    color: #fff !important;
}

.btn-add-cart i {
    font-size: 14px;
}

.btn-add-cart span {
    display: inline-block;
    margin-left: 5px;
}

@media(max-width: 767px) {
    .btn-add-cart span {
        display: block;
        font-size: 10px;
        margin-left: 0px;
        margin-top: -2px;
    }

    .btn-add-cart {
        background: #56ba47;
        border: 1px solid #56ba47;
        color: #fff !important;
    }
}

.nopadding-l {
    padding-left: 0px;
}

.nopadding-r {
    padding-right: 0px;
}

.max-container {
    /* max-width: 1350px; */
    margin: 0 auto;
    padding: 0 30px;
}

@media(max-width: 767px) {
    .max-container {
        padding: 0px 15px;
    }
}

/**/

.header {
    background: #fff;
    position: relative;
    z-index: 5;
}

.header-toolbar {
    height: 32px;
    line-height: 32px;
    color: #656565;
    font-size: 13px;
    background: #f9f9f9;
}

@media(max-width: 767px) {
    .header {
        margin-bottom: 0px;
    }

    .header-toolbar {
        /* border-bottom: 1px solid #eaeaea; */
    }
}

.header-toolbar a {
    color: #656565;
}

.header-toolbar a:hover {
    color: var(--main-color);
}

.header-toolbar .wrap-icon {
    text-align: center;
    float: right;
    position: relative;
}

.header-toolbar .login-menu a {
    margin-right: 10px;
    border-right: 1px solid #656565;
    padding-right: 13px;
    line-height: 10px;
    display: inline-block;
}

.header-toolbar .login-menu a:last-child {
    border-right: none;
    padding-right: 0px;
    margin-right: 0px;
}

.header-toolbar .support {
    float: left;
}

@media(max-width: 767px) {
    .header-toolbar .support {
        display: none;
    }
}

.header-toolbar .support span {
    color: #656565;
    margin-left: 10px;
    padding-left: 13px;
    border-left: 1px solid #656565;
    line-height: 10px;
    display: inline-block;
}

.header-toolbar .support span:hover {
    color: var(--main-color);
}

.header-toolbar .support span i {
    margin-right: 5px;
}

.header-toolbar .support span:first-child {
    margin-left: 0px;
    border-left: none;
    padding-left: 0px;
}


/**/


/**/

.header-main {
    position: relative;
}

.header-main.navbar-fixed {
    z-index: 90;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    -webkit-animation: 500ms ease-in-out 0s normal fadeInDown;
    animation: 500ms ease-in-out 0s normal fadeInDown;
    -webkit-transition: 0.4s;
    transition: all 0.4s linear;
    background: #fff;
    box-shadow: 0 4px 4px rgba(0, 0, 0, .1);
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/*  */

@media(max-width: 991px) {
    .header-main .row {
        display: block;
        box-shadow: 0 4px 4px rgba(0, 0, 0, .1);
    }
}

.logo {
    display: block;
    position: relative;
    z-index: 1;
    text-align: left;
    line-height: 68px;
}

.logo img {
    display: inline-block;
    max-height: 65px;
    width: auto;
}

.wrap-menu-top {
    position: static;
    text-align: center;
}

.icon-cate-mobi {
    display: none;
    position: absolute;
    top: 6px;
    left: 8px;
    padding: 10px;
    cursor: pointer;
    z-index: 99;
}

.icon-cate-mobi span,
.icon-menu-mobi span {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
    background: var(--main-color);
    margin: 4px 0px;
}

.icon-menu-mobi {
    display: none;
    position: absolute;
    top: 8px;
    left: 0px;
    padding: 6px 10px 7px;
    cursor: pointer;
    z-index: 99;
    font-size: 93%;
}

@media(min-width: 992px) {
    .header-main .menu-top {
        display: block !important;
    }
}

@media(max-width: 991px) {
    .header-main {
        padding-top: 0px;
    }

    .header-main .menu-top {
        /* display: none; */
        margin: 0px -8px;
    }

    .logo {
        line-height: 50px;
        text-align: center;
    }

    .logo img {
        max-height: 40px;
        padding: 0;
    }

    .icon-cate-mobi {
        display: none;
    }

    .icon-menu-mobi {
        display: block;
        transition: right 0.5s;
    }

    .icon-menu-mobi.open {
        transition: all 0.5s;
        background-color: #f0e5e5;
        top: 46px;
        right: 316px;
        position: fixed;
        z-index: 999;
        padding: 5px 12px 12px 12px;
        border-radius: 2px;
    }
}

.header-main .menu-top ul {
    padding: 0px;
    margin: 0px;
}

@media(max-width: 767px) {
    .header-main .menu-top>ul {
        overflow-y: auto;
        position: absolute;
        width: 100%;
        left: 0;
        top: 0;
        height: 100%;
        padding: 14px 0;
    }
}

.header-main .menu-top ul:after {
    content: '';
    display: block;
    clear: both;
}


/*  */

.header-main .menu-top ul li a>i,
.header-main .menu-top ul li>i {
    display: none;
}

@media (max-width: 991px) {

    .header-main .menu-top ul li a>i,
    .header-main .menu-top ul li>i {
        display: block;
        float: inline-end;
        font-size: 129%;
    }

    .header-main .menu-top ul li>i.fa-square-plus {
        display: none;
    }
}

@media(max-width: 991px) {
    .menu-top {
        position: fixed;
        right: -100%;
        top: 0;
        z-index: 99;
        width: 300px;
        height: 100%;
        background-color: #fff;
        transition: right 0.5s;
        /* overflow-y: auto; */
    }

    .menu-top.active {
        right: 0;
    }

    body.open {
        margin-right: 230px;
        margin-left: -230px;
    }

    .icon-menu-mobi.open .icon-bar.lin1 {
        position: relative;
        top: 6px;
        transform: rotate(45deg);
        transition: .5s;
    }

    .icon-menu-mobi.open .icon-bar.lin2 {
        display: none !important;
        transition: .5s;
    }

    .icon-menu-mobi.open .icon-bar.lin3 {
        position: relative;
        top: 0;
        transform: rotate(-45deg);
        transition: .5s;
    }
}


/*----*/

.header-main .menu-top ul>li {
    display: inline-block;
    position: static;
    border-radius: 10px;
    padding: 20px 12px;
    font-size: 114%;
}

.header-main .menu-top ul>li>a {
    padding: 8px 10px;
    display: block;
    position: relative;
    color: #222;
    text-align: center;
    font-weight: 600;
}

.header-main .menu-top ul>li>a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: var(--main-color);
    transform: scale(0, 1);
    transition: transform 0.5s;
}

.header-main .menu-top ul>li:hover>a::after {
    transform: scale(1, 1);
}

@media(max-width: 991px) {
    .header-main .menu-top ul>li>a::after {
        height: 100%;
        width: 4px;
        transform: scale(1, 0);
    }
}

.header-main .menu-top ul>li>.sub {
    background: #fff none repeat scroll 0 0;
    display: none;
    list-style: none;
    margin: 0;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 999;
    width: 100%;
    height: auto;
    box-shadow: 0px 2px 6px 0px rgba(50, 50, 50, 0.33);
    max-height: 600px;
    overflow-y: auto;
    border: 0;
    overflow: hidden;
    border-radius: 0 0 5px 5px;
    display: block;
    opacity: 0;
    filter: alpha(opacity=0);
    visibility: hidden;
    transition: .2s ease-out;
    transform: translateY(20px);
}

.header-main .menu-top ul>li>.sub li {
    width: calc(100% / 3);
    padding: 24px 10px;
    text-align: left;
    font-size: 129%;
}

.header-main .menu-top ul>li>.sub li.li-sub .sub li {
    font-size: 79%;
    /* display: contents; */
    padding: 0;
    width: 100%;
}

@media (max-width: 991px) {
    .header-main .menu-top ul>li>.sub li {
        width: 100%;
        padding: 4px 9px 4px 22px;
        font-size: 100%;
    }
}

@media (max-width: 767px) {
    .header-main .menu-top ul>li>.sub li {
        padding-right: 5px;
    }
}

.header-main .menu-top ul>li>.sub li:first-child {
    border-top: none !important;
}


/*  */

.header-main .menu-top ul>li>.sub li>a {
    padding: 0;
    color: #444;
    font-weight: 600;
    text-align: left;
}

@media (max-width: 767px) {
    .header-main .menu-top ul>li>.sub li>a {
        padding: 6px 0;
        display: block;
    }
}

.header-main .menu-top ul>li>.sub li.li-sub>a>i {
    position: absolute;
    top: 12px;
    right: 10px;
}

.header-main .menu-top ul>li>.sub .wrap-menu-item {
    display: flex;
    padding: 25px 12px 12px 12px;
}

@media (max-width: 991px) {
    .header-main .menu-top ul>li>.sub .wrap-menu-item {
        display: block;
        padding: 0;
    }
}

.header-main .menu-top ul>li>.sub li.li-sub .sub li a {
    padding: 8px 0 8px 10px;
    font-weight: 500;
}

.header-main .menu-top ul>li>.sub li.li-sub .sub {
    padding-top: 20px;
}

.header-main .menu-top ul>li>.sub .col-left {
    padding: 0;
    color: #fff;
}

@media (max-width: 991px) {
    .header-main .menu-top ul>li>.sub .col-left {
        display: none;
    }
}

@media (min-width: 992px) {
    .header-main .menu-top ul>li>.sub .col-left .iframe {
        box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.5);
        display: block;
        width: 100%;
        height: 100%;
        overflow: hidden;
        position: relative;
        padding-bottom: 60%;
    }

    .header-main .menu-top ul>li>.sub .col-left .iframe .img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        position: absolute;
        filter: brightness(0.6);
    }

    .header-main .menu-top ul>li>.sub .col-left .iframe .wrap-title {
        position: relative;
        text-align: center;
        padding: 0 20px;
        transform: translateY(100px);
        top: 0px;
    }

    .sub .col-left .iframe .wrap-title h5 {
        font-size: 171%;
        font-weight: 600;
    }

    .sub .col-left .iframe .wrap-title {
        font-size: 143%;
    }

    .btn-main.btn-menu {
        font-size: 86%;
        margin: 10px auto;
    }

    .sub .wrap-menu-item .li-sub .img {
        float: left;
        width: 55px;
        margin-right: 7px;
    }

    .sub .wrap-menu-item .li-sub1:last-child {
        margin: -50px -20px -20px 0;
        padding: 40px 12px 20px;
        background-color: #eae9e9;
    }

    .sub .wrap-menu-item .center {
        margin: auto;
        text-align: center !important;
    }
}


/*  */

.header-main .menu-top ul>li:hover>.sub {
    opacity: 1;
    visibility: visible;
    transform: perspective(600px) rotateX(0deg);
    transition: transform 0.5s ease, opacity 0.2s ease, max-height 0s step-end, max-width 0s step-end, padding 0s step-end;
}

.header-main .menu-top ul>li>.sub>li {
    display: block;
    border-top: 1px solid #f1f1f1;
}

.header-main .menu-top ul>li>.sub>li:first-child {
    border-top: none !important;
}

.header-main .menu-top ul>li>.sub>li>a {
    text-align: left;
    padding: 10px 20px;
    font-weight: 400;
    font-size: 100%;
    color: #444;
    background: none;
    border: none;
}

.header-main .menu-top ul>li>.sub>li:hover>a {
    color: var(--main-color);
}

.header-main .menu-top ul>li>.sub>li.li-sub>a>i {
    position: absolute;
    top: 10px;
    right: 10px;
}

@media(max-width: 991px) {
    .header-main .menu-top ul>li>.sub>li.li-sub>a {
        font-size: 93%;
    }
}

@media (min-width:768px) {
    .header-main .menu-top ul>li>.sub>li:hover>.sub {
        display: block;
    }
}

.header-main .menu-top ul>li>.sub>li>.sub>li>a {
    font-weight: 400;
    padding: 10px 20px;
    font-size: 100%;
}

@media(max-width:991px) {
    .header-main .menu-top ul>li>.sub>li>.sub>li>a {
        font-size: 93%;
    }

    .header-main .menu-top ul>li {
        display: block;
        padding: 2px 8px;
    }

    .header-main .menu-top ul>li>a {
        text-align: left;
        padding: 6px 10px;
        font-size: 100%;
        font-weight: 600;
    }
}

.header-main .menu-top ul>li:hover>a,
.header-main .menu-top ul>li.active>a {
    color: var(--main-color);
    transform: scale(1, 1);
    transition: 0.5s;
}

.header-main .menu-top ul>li>a b {
    display: block;
    text-transform: uppercase;
}

@media(max-width: 767px) {
    .header-main .menu-top ul>li>a b {
        font-weight: 500;
    }
}

@media(max-width: 991px) {

    .header-main .menu-top ul>li>.sub,
    .header-main .menu-top ul>li>.sub>li.li-sub>.sub {
        display: block;
        width: 100%;
        position: relative;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: unset;
        transition: transform 0.5s ease, opacity 0.2s ease, max-height 0s step-end, max-width 0s step-end, padding 0s step-end;
    }

    .header-main .menu-top .sub li.li-sub .sub {
        /* display: none; */
        padding: 0 !important;
    }
}

.header-main .menu-top ul>li .wrap-sub {
    position: absolute;
    width: 280px;
    top: 59px;
    background: #fff;
    box-shadow: 0 0px 8px -4px #adadad;
    left: 0px;
    z-index: 999;
    border-top: none;
    display: none;
    padding: 10px 0px;
}

.menu-top ul>li:hover .wrap-sub {
    display: block;
}

@media(max-width: 767px) {
    .header-main .menu-top ul>li .wrap-sub {
        opacity: 1;
        visibility: visible;
        padding: 0px 12px 0px 22px;
        box-shadow: none;
        position: relative;
        top: 0px;
        border: none;
        display: none;
    }

    .menu-top ul>li:hover .wrap-sub {
        display: block;
    }
}

.header-main .menu-top ul>li .wrap-sub .item .sub li {
    display: block;
    border-bottom: 1px solid #f1f1f1;
}

.header-main .menu-top ul>li .wrap-sub .item .sub li .sub {
    margin-top: -6px;
    margin-bottom: 8px;
}

@media(max-width: 767px) {
    .header-main .menu-top ul>li .wrap-sub .item .sub li {
        width: 100%;
        margin-top: 5px;
        margin-bottom: 5px;
    }
}

.header-main .menu-top ul>li .wrap-sub .item .sub li a {
    text-align: left;
    padding: 10px 20px;
    font-weight: 700;
    font-size: 114%;
}

.header-main .menu-top ul>li .wrap-sub .item .sub li .sub li {
    width: 100%;
    margin: 0px;
    display: block;
    border-bottom: none;
}

.header-main .menu-top ul>li .wrap-sub .item .sub li:nth-child(4n+1) {
    clear: both;
}

.header-main .menu-top ul>li .wrap-sub .item .sub li .sub li a {
    font-weight: 400;
    padding: 4px 30px;
    font-size: 100%;
}

@media (min-width: 1200px) {
    .header-main .menu-top ul>li>a.header-contact {
        border: 1px solid var(--main-color);
        color: var(--main-color);
    }
}


/**/

.form-search {
    margin: 0px;
    position: absolute;
    right: 0px;
    width: 400px;
    display: none;
    top: 100%;
}

.form-search .search {
    border: 1px solid var(--main-color);
    position: relative;
    border-radius: 0px;
    height: 40px;
}

.form-search .search select {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    height: 100%;
    border: none;
    padding: 0px 6px;
    margin: 0;
    background: #fff;
}

@media(max-width: 767px) {
    .form-search .search select {
        font-size: 13px;
    }
}

.icon-cart {
    position: absolute !important;
    top: 30px;
    right: 15px;
    z-index: 9;
    line-height: normal;
    color: #444;
    display: none;
}

.icon-cart img {
    height: 36px;
}

.icon-cart i {
    font-size: 20px;
}

.icon-cart span {
    position: absolute;
    top: -5px;
    right: -9px;
    background: var(--main-color);
    border-radius: 50px;
    min-width: 16px;
    height: 16px;
    text-align: center;
    font-size: 10px;
    line-height: 16px;
    color: #fff;
}

.icon-search {
    position: absolute;
    top: 0;
    right: 50px;
    height: 100%;
    font-size: 14px;
    cursor: pointer;
    padding: 0px 10px;
    z-index: 2;
    display: flex;
    align-items: center;
    display: none;
}

@media(max-width: 767px) {
    .icon-search {
        right: 40px;
        height: 50px;
    }

    .form-search {
        margin: 10px 0px;
        width: 100%;
    }

    .form-search .search {
        width: 100%;
        max-width: inherit;
        height: 38px;
    }

    .icon-cart {
        top: 13px;
        right: 5px;
    }

    .icon-cart img {
        height: 30px;
    }
}

.form-search .search img {
    width: 18px;
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
    -moz-filter: brightness(0) invert(1);
    -o-filter: brightness(0) invert(1);
    -ms-filter: brightness(0) invert(1);
}

.form-search .search input {
    position: absolute;
    width: 100%;
    height: 100%;
    border: none;
    box-shadow: none;
    border-radius: 0px;
    padding: 2px 52px 2px 110px;
}

.form-search .search .btn {
    background: var(--main-color);
    /* background-image: -webkit-gradient(linear, left top, right top, from(#ff7e3e), to(#ff4000));
    background-image: -webkit-linear-gradient(left, #ff7e3e, #ff4000);
    background-image: -o-linear-gradient(left, #ff7e3e 0, #ff4000 100%);
    background-image: linear-gradient( 90deg, #ff7e3e, #ff4000); */
    position: absolute;
    border-radius: 0px;
    right: 0px;
    top: 0px;
    height: 100%;
    color: #fff;
    text-transform: uppercase;
    border: none;
    padding: 7px 14px;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

.form-search .search .btn:hover {
    background: var(--main-color-hover);
}

@media(max-width: 767px) {
    .form-search .search img {
        width: 16px;
        top: 9px;
        left: 10px;
    }

    .form-search .search input {
        padding: 3px 44px 3px 105px;
    }

    .form-search .search .btn {
        padding: 0px 13px;
        line-height: 32px;
        font-size: 14px;
    }

    .form-search .search .btn span {
        display: none;
    }
}


/**/

.support-online {
    position: fixed;
    z-index: 999;
    left: 15px;
    bottom: 50px;
    top: auto !important
}

.support-online a {
    position: relative;
    margin: 20px 10px;
    text-align: left;
    width: 40px;
    height: 40px
}

.support-online i {
    width: 40px;
    height: 40px;
    background: var(--main-color);
    color: #fff;
    border-radius: 100%;
    font-size: 14px;
    text-align: center;
    line-height: 40px;
    position: relative;
    z-index: 999
}

.support-online a {
    display: block
}

.support-online a span {
    border-radius: 2px;
    text-align: center;
    background: var(--main-color);
    padding: 9px;
    display: none;
    width: 210px;
    margin-left: 10px;
    position: absolute;
    color: #ffffff;
    z-index: 999;
    top: 0px;
    left: 40px;
    transition: all 0.2s ease-in-out 0s;
    -moz-animation: headerAnimation 0.7s 1;
    -webkit-animation: headerAnimation 0.7s 1;
    -o-animation: headerAnimation 0.7s 1;
    animation: headerAnimation 0.7s 1
}

.support-online a:hover span {
    display: block
}

.support-online a span::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent var(--main-color) transparent transparent;
    position: absolute;
    left: -10px;
    top: 10px
}

.kenit-alo-circle-fill {
    width: 60px;
    height: 60px;
    top: -10px;
    position: absolute;
    -webkit-transition: all 0.1s ease-in-out;
    -moz-transition: all 0.1s ease-in-out;
    -ms-transition: all 0.1s ease-in-out;
    -o-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid transparent;
    -webkit-transition: all .1s;
    -moz-transition: all .1s;
    -o-transition: all .1s;
    transition: all .1s;
    background-color: var(--main-color);
    opacity: .5;
    right: -10px;
}

.kenit-alo-circle {
    width: 50px;
    height: 50px;
    top: -5px;
    right: -5px;
    position: absolute;
    background-color: transparent;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid rgba(30, 30, 30, 0.4);
    opacity: .1;
    border-color: var(--main-color);
    opacity: .5;
}

.support-online .btn-support {
    cursor: pointer
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    50% {
        -webkit-transform: scale(0.8);
        transform: scale(0.8)
    }

    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }

    50% {
        -webkit-transform: scale(0.8);
        -ms-transform: scale(0.8);
        transform: scale(0.8)
    }

    100% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }
}

.animated {
    animation-duration: 1s;
    animation-fill-mode: both
}

.animated.infinite {
    animation-iteration-count: infinite
}

.animated.hinge {
    animation-duration: 2s
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
    animation-duration: .75s
}

@keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3)
    }

    50% {
        opacity: 1
    }
}

.zoomIn {
    animation-name: zoomIn
}

@keyframes pulse {
    from {
        transform: scale3d(1, 1, 1)
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}

.pulse {
    animation-name: pulse
}

@keyframes rubberBand {
    from {
        transform: scale3d(1, 1, 1)
    }

    30% {
        transform: scale3d(1.25, 0.75, 1)
    }

    40% {
        transform: scale3d(0.75, 1.25, 1)
    }

    50% {
        transform: scale3d(1.15, 0.85, 1)
    }

    65% {
        transform: scale3d(0.95, 1.05, 1)
    }

    75% {
        transform: scale3d(1.05, 0.95, 1)
    }

    to {
        transform: scale3d(1, 1, 1)
    }
}


/**/

.header-slider {
    position: relative;
    margin-top: 0px;
    padding: 40px 0;
    overflow: hidden;
    background: #f9f9f9;
}

@media(max-width: 767px) {
    .header-slider {
        margin-top: 0px;
        padding-bottom: 10px;
    }
}

.header-slider .left {
    width: 22%;
}

@media(max-width: 767px) {
    .header-slider .left {
        position: absolute;
        z-index: 1;
        width: 240px;
        top: -58px;
        left: -250px;
        padding: 0px !important;
        border-radius: 0px;
        border: 1px solid #f1f1f1;
    }

    .header-slider .left.active {
        left: 0px;
    }
}

.header-slider .left .iframe {
    background: #fff;
    border-radius: 4px;
}

.category-product .title {
    padding: 20px 20px 8px 20px;
    position: relative;
    white-space: nowrap;
    font-weight: 600;
}

@media(max-width: 767px) {
    .header-slider .left .iframe {
        border-radius: 0px
    }

    .category-product .title {
        display: none;
    }
}

.category-product .title>span {
    display: inline-block;
    margin-right: 8px;
}

.category-product .title>span>i {
    height: 2px;
    width: 20px;
    background: #444;
    display: block;
    margin: 3px 0px;
    border-radius: 2px;
}

.category-product .title>p {
    display: inline-block;
    margin: 0px 0px 0px 0px;
    position: relative;
    top: -3px;
    text-transform: uppercase;
}

.category-product>ul {
    padding: 0px 0px 8px;
    margin: 0px;
}

.category-product>ul>li {
    list-style-type: none;
    position: relative;
    font-size: 14px;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

.category-product>ul>li:hover {
    background: var(--main-color-20);
}

.category-product>ul>li .sub {
    display: none;
    position: absolute;
    left: 100%;
    background: #fff;
    width: 240px;
    padding: 0px;
    margin: 0px;
    top: 0px;
}

.category-product>ul>li .sub>li {
    list-style-type: none;
}

.category-product>ul>li .sub>li>a {
    padding: 9px 10px 9px 12px;
    display: block;
}

.category-product>ul>li .sub>li>a>i {
    position: absolute;
    right: 10px;
    top: 9px;
    font-size: 16px;
}

.category-product>ul>li .sub>li:hover>a {
    background: var(--main-color-20);
    color: var(--main-color);
}

.category-product>ul li:hover>.sub {
    display: block;
}

.category-product>ul>li>a {
    display: block;
    padding: 9px 8px 9px 48px;
}

.category-product>ul>li>a>span {
    display: block;
    position: relative;
    top: 0px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.category-product>ul>li>a>.icon {
    position: absolute;
    left: 18px;
    top: 9px;
}

.category-product>ul>li>a>.icon img {
    height: 20px;
    display: block;
}

.category-product>ul>li>a>.icon img.h {
    display: none;
}

.category-product>ul>li:hover>a>.icon img {
    display: none;
}

.category-product>ul>li:hover>a>.icon img.h {
    display: block;
}


/**/

.no_flexslider {
    position: relative;
    /* background: #fff; */
    border-radius: 4px;
    /* overflow: hidden; */
}

.no_flexslider::after {
    content: '';
    display: block;
    clear: both;
}

@media(max-width: 767px) {
    .no_flexslider {
        border-radius: 0px;
        /* margin-left: -8px;
        margin-right: -8px; */
    }
}

.no_flexslider .slides {
    padding: 0px;
    margin: 0px;
    float: left;
    width: 100%;
}

.no_flexslider .slides::after {
    content: '';
    display: block;
    clear: both;
}

.no_flexslider .slides li {
    list-style-type: none;
    float: left;
    width: 100%;
}

.no_flexslider .slides li a {
    display: block;
}

.no_flexslider .slides li a svg {
    max-width: 100%;
}

.no_flexslider .slides li img {
    width: auto;
    position: relative;
    z-index: 1;
    /* max-width: 720px; */
}

.line11111 {
    width: 150px !important;
    margin: -52px 0px -20px 60px;
}

@media(max-width:767px) {
    .line11111 {
        width: 70px !important;
        margin: -10px 0px -10px 60px;
    }
}

.line22222 {
    width: 150px !important;
    margin: -50px 54px -14px 0px;
    float: right;
}

@media(max-width: 767px) {
    .line22222 {
        width: 100px !important;
        margin: -40px 34px -8px 0px;
    }
}

.line33333 {
    width: 200px !important;
    margin: 40px 0px -26px -116px;
}

.line44444 {
    width: 14px !important;
    margin: -10px 0 -10px 0;
}

.line55555 {
    height: 12px !important;
    margin: -64px -38px -10px 0;
    float: right;
}

.line_show_mobi {
    display: none;
}

@media(max-width: 767px) {
    .line_hide_mobi {
        display: none;
    }

    .line_show_mobi {
        display: block;
    }
}

.no_flexslider .slides li svg {
    max-width: 720px;
}

.slides .wrap-info {
    /* padding: 0 9px; */
}

.slides .title_slide {
    color: #000;
    font-size: 270%;
    margin-top: 80px;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 5px;
}

@media(max-width: 991px) {
    .slides .title_slide {
        font-size: 286%;
        margin-top: 0;
    }
}

@media(max-width: 767px) {
    .slides .title_slide {
        font-size: 171%;
        margin-top: 0;
    }
}


/* .container {
    width: 90%;
    margin: 0 auto;
    max-width: 1379px;
    padding-right: 15px;
    padding-left: 15px;
} */

.slides .short-info-slide {
    font-size: 143%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 20px;
}

@media(max-width: 767px) {
    .slides .title_slide {
        font-size: 171%;
    }

    .slides .short-info-slide {
        font-size: 114%;
    }
}

.slides .btn-slide {
    background: var(--main-color);
    padding: 10px 20px;
    display: block;
    width: max-content;
    color: #fff;
    font-size: 100%;
    border-radius: 50px;
    border: none;
}

@media(max-width: 767px) {
    .slides .btn-slide {
        font-size: 100%;
    }
}

.flexslider .flex-direction-nav {
    padding: 0px;
    margin: 0px;
}

.flexslider.no-slider .flex-direction-nav {
    display: none;
}

.flexslider .flex-direction-nav>li {
    list-style-type: none;
    position: absolute;
    top: 50%;
    right: 10px;
    font-size: 34px;
    margin-top: -24px;
    width: 40px;
    text-align: center;
    z-index: 2;
}

.flexslider .flex-direction-nav>li a {
    color: #fff;
}

.flexslider .flex-direction-nav>li.flex-next {
    left: 10px;
    right: auto;
}


/**/

.brand {
    padding: 21px 16px;
    background: #fff;
    border-radius: 4px;
    margin-top: 15px;
}

.brand .owl-controls {
    display: none !important;
}

@media(max-width: 767px) {
    .brand {
        border-radius: 0px;
        margin-bottom: 8px;
        padding: 12px 10px;
    }
}

.brand .item {
    text-align: center;
    padding: 0px 10px;
}

.brand .item img {
    height: 50px;
}

.brand .item .item a {
    display: block;
}

.brand .row .item a {
    display: block;
    margin: 10px 0px;
}

.brand .item span {
    display: block;
    font-size: 13px;
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 40px;
    padding: 0px 30px;
    margin-top: 7px;
}

@media(max-width: 767px) {
    .brand .item span {
        padding: 0px 0px;
    }
}

.brand .owl-buttons {
    padding: 0px;
    margin: 0px;
}

.brand .owl-buttons>div {
    list-style-type: none;
    position: absolute;
    top: 50%;
    left: 12px;
    font-size: 24px;
    margin-top: -18px;
    color: #222;
}

.brand .owl-buttons>div.owl-next {
    left: auto;
    right: 12px;
}


/**/

.brand-big {
    overflow: hidden;
    margin-top: 15px;
}

.brand-big .row {
    margin: 0px -8px;
}

.brand-big .item {
    padding: 0px 8px;
}

.brand-big .m8 .item {
    margin: 8px 0px;
}

@media(max-width: 767px) {
    .brand-big .row {
        margin: 0px -4px;
    }

    .brand-big .row>div {
        padding: 0px;
    }

    .brand-big .item {
        padding: 0px 4px;
    }
}

.brand-big .item>a {
    display: block;
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
}

.brand-big .item>a .img {
    display: block;
    position: relative;
    height: 0px;
    padding-bottom: 90%;
}

.brand-big .item>a .img img {
    height: 100%;
    width: 100%;
    position: absolute;
    object-fit: cover;
}

.brand-big .item>a span {
    font-size: 15px;
    text-align: center;
    margin: 20px 10px 17px;
    display: block;
    overflow: hidden;
    height: 44px;
}

.brand-big .item>a .img:before {
    content: '';
    background: url(../images/view.png) no-repeat center center;
    background-size: 35px;
    display: block;
    position: absolute;
    z-index: 2;
    width: 50px;
    height: 50px;
    top: 40%;
    margin-top: -25px;
    left: 50%;
    opacity: 0;
    margin-left: -25px;
    transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.brand-big .item>a .img:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    z-index: 1;
    opacity: 0;
    border-radius: 5px 5px 0px 0px;
    background: rgba(0, 0, 0, 0.4);
    transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.brand-big .item>a .img:hover:after {
    opacity: 1;
}

.brand-big .item>a .img:hover:before {
    top: 50%;
    opacity: 1;
}


/**/

.banner {
    margin-top: 15px;
}

.banner .row {
    margin: 0px -8px;
}

.banner .item {
    padding: 0px 8px;
}

.banner .item a {
    display: block;
    margin: 0px 0px 10px;
}

.banner .item a img {
    height: 100px;
}

@media(max-width: 767px) {
    .banner .item a {
        margin-bottom: 8px;
    }
}


/**/

.content-product {
    /* margin-top: 15px; */
}

.content-product .content {
    padding: 5px 12px;
    background: #fff;
    border-radius: 4px;
    margin-top: 0px;
}

@media(max-width: 767px) {
    .content-product .content {
        padding: 0px;
        background: none;
        margin-top: 4px;
    }
}

.block-title {
    /* margin: 22px 0px 20px; */
}

.block-title .title {
    /* margin: 0px 0px;
    float: left;
    font-size: 22px;
    text-transform: uppercase;
    border-left: 5px solid var(--main-color);
    padding-left: 12px;
    line-height: 1.3;
    font-weight: 500; */
}

@media(max-width: 767px) {
    .block-title {
        /* margin: 20px 0px 14px; */
    }

    .block-title .title {
        /* float: none;
        margin-bottom: 18px; */
    }
}

.block-title .title a,
.block-title .title span {
    /* color: var(--main-color); */
}

.block-title .title.title1 {
    color: var(--main-color);
    font-size: 240%;
    font-weight: 800;
}

.block-title .sub-title {
    float: left;
    padding: 0px;
    margin: 4px 0px 0px 0px;
    margin-left: 10px;
}

.block-title-4 {
    text-align: center;
}

.block-title-4 .title {
    font-size: 160%;
    margin: 35px auto 20px;
    font-weight: 600;
    line-height: 1.4;
    color: var(--main-color);
    max-width: 600px;
}

.block-title-4 .short_info {
    font-size: 120%;
    color: #444;
    line-height: 1.5;
    margin-bottom: 20px;
    margin-top: -14px;
}

@media(max-width: 767px) {
    .block-title .sub-title {
        margin: -8px 0px 0px 0px;
        float: none;
        white-space: nowrap;
        overflow-x: auto;
    }
}

.block-title .sub-title li {
    list-style-type: none;
    display: inline-block;
    margin: 0px 5px;
}

.block-title .sub-title li a {
    border-left: 1px solid var(--main-color);
    padding-left: 10px;
    line-height: 10px;
    display: block;
    font-size: 14px;
}

.block-title .sub-title li:first-child a {
    border: none;
    padding-left: 0px;
    margin-left: 0px;
}

.block-title-info {
    color: #777;
    margin: -10px 0 20px;
}


/**/

.content-product .content .block-content {}

.content-product .content .block-content .row {
    margin: 0px -6px;
}

@media(min-width: 992px) {
    .content-product .content .block-content .row .item.col-md-2 {
        width: 20%;
    }
}

.content-product .content .block-content .row .item {
    padding: 6px;
}

.view-all {
    text-align: center;
    margin: 20px 0px;
}

.view-all a {
    color: #fff;
    font-size: 14px;
    display: inline-block;
    background: var(--main-color);
    padding: 6px 20px;
    border-radius: 3px;
}

.view-all a:hover {
    background: var(--main-color-hover);
}

.view-all i {
    margin-left: 5px;
}

@media(max-width: 767px) {
    .content-product .content .block-content .row {
        margin: 0px -4px !important;
    }

    .content-product .content .block-content .row .row_home {
        padding: 0px;
    }

    .content-product .content .block-content .row .item {
        padding: 4px !important;
    }
}

.content-product .content .block-content .row .item .iframe {
    border: 1px solid #f2f2f2;
}

.content-product.content-product-combo .content .block-content .row .item .iframe {
    margin-right: 20px;
}

.content-product.content-product-combo .content .block-content .owl-item:last-child .item span.plus-combo {
    display: none;
}

.content-product.content-product-combo .content .block-content .row .item span.plus-combo {
    position: absolute;
    font-size: 16px;
    color: var(--main-color);
    height: 16px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 4px;
}

.content-product.content-product-combo .content .block-content .row .item .iframe .info h3 {
    font-size: 12px;
    height: 34px;
    margin-bottom: 2px;
}

.content-product.content-product-combo .content .block-content .row .item .iframe .info .price {
    font-size: 14px !important;
}

@media(max-width: 767px) {
    .content-product .content .block-content .row .item .iframe {
        background: #fff;
        padding: 5px;
        border-radius: 4px;
    }
}

.content-product .content .block-content .row .item .iframe:hover {
    border-color: var(--main-color);
}

.content-product .content .block-content .row .item .iframe:hover h3,
.content-product .content .block-content .row .item .iframe:hover a {
    color: var(--main-color);
}

.content-product .content .block-content .row .item .iframe .img {
    position: relative;
    height: 0px;
    width: 100%;
    padding-bottom: 100%;
}

.content-product .content .block-content .row .item .iframe .img .hh_vnd {
    position: absolute;
    background: #56ba47;
    color: #fff;
    font-size: 11px;
    border-radius: 0px 5px;
    padding: 1px 8px;
    top: 2px;
    right: 2px;
    font-weight: 500;
}

.content-product .content .block-content .row .item .iframe .img img {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
}

@media(max-width: 767px) {
    .content-product .content .block-content .row .item .iframe .img img {
        border-radius: 4px;
    }
}

.content-product .content .block-content .row .item .iframe .info {
    padding: 14px 14px 6px;
    height: 130px;
}

.user-no .content-product .content .block-content .row .item .iframe .info {
    height: 106px;
}

.content-product.content-product-combo .content .block-content .row .item .iframe .info {
    height: 68px;
    padding: 12px 8px 0px;
}

.user-no .content-product.content-product-combo .content .block-content .row .item .iframe .info {
    height: 68px;
}

.content-product .content .block-content .row .item .iframe .info.info_td p.sub {
    font-size: 12px;
    color: #666;
    font-weight: 400;
}

.content-product .content .block-content .row .item .iframe .info.info_td p.sub b {
    font-size: 12px;
    font-weight: 400;
}

.price .discount,
.price-detail .discount {
    position: relative;
    background: #ED1C24;
    border-radius: 3px;
    display: inline-block;
    color: #fff;
    font-size: 11px;
    padding: 2px 5px;
    text-align: center;
    top: -2px;
    font-weight: 400;
    margin-left: 8px;
}

.price-detail .discount {
    top: -6px;
}

.price .discount::before,
.price-detail .discount::before {
    right: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-right-color: #ED1C24;
    border-width: 4px;
    margin-top: -4px;
}

.content-product .content .block-content .row .item .iframe .info .price_sale {
    text-decoration: line-through;
    color: #999;
    font-size: 12px;
    height: 20px;
    margin: 0px;
    font-weight: 400;
}

@media(max-width: 767px) {
    .content-product .content .block-content .row .item .iframe .info {
        padding: 8px 6px 6px 6px;
        height: 120px;
    }

    .user-no .content-product .content .block-content .row .item .iframe .info {
        height: 100px;
    }
}

.content-product .content .block-content .row .item .iframe .info h3 {
    margin: 0px 0px 8px;
    font-size: 14px;
    line-height: 1.4;
    height: 38px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.content-product .content .block-content .row .item .iframe .info h3 a {}

.content-product .content .block-content .row .item .iframe .info .price {
    color: var(--main-color);
    font-size: 16px;
    margin: 0px;
    font-weight: 600;
}

.pagination>li>a,
.pagination>li>span {
    border: 1px solid #f1f1f1f1;
    font-size: 14px;
    color: #222;
    margin: 0px -1px;
    border-radius: 0px;
    border-right: 1px solid #f2f2f2;
}

.content-product .content .block-content .pagination>li>a i,
.content-product .content .block-content .pagination>li>span i {
    position: relative;
    top: -1px;
}

.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
    background: var(--main-color);
    border-color: var(--main-color);
}

.pagination>li {
    display: inline-block;
}

@media(max-width: 767px) {
    .pagination {
        white-space: nowrap;
        overflow-x: auto;
        width: 100%;
    }
}


/*menu-bottom*/

.menu-top-bottom {
    background: var(--main-color);
    padding: 2px 15px 0px;
    text-align: center;
    position: relative;
    display: none;
}

@media(max-width: 991px) {
    .menu-top-bottom {
        white-space: nowrap;
        overflow-y: auto;
        margin-top: 8px;
    }
}

.menu-top-bottom ul {
    margin: 0px;
    padding: 0px;
}

.menu-top-bottom li {
    display: inline-block;
    min-height: 46px;
    line-height: 46px;
    list-style: none;
}

@media(max-width: 767px) {
    .menu-top-bottom li {
        min-height: 38px;
        line-height: 38px;
    }
}

.menu-top-bottom li:first-child a {
    border: none;
}

.menu-top-bottom li a {
    border-left: 1px solid #fff;
    white-space: nowrap;
    padding: 0px 15px;
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 400;
}

.menu-top-bottom li.active a,
.menu-top-bottom li:hover a {
    color: #000;
}


/**/

.menu-bottom {
    padding: 20px 0;
}

@media(max-width: 767px) {
    .menu-bottom {
        padding: 5px 0;
    }
}

.menu-bottom .title {
    margin-bottom: 6px;
    font-weight: normal;
    margin-top: 0px;
}

.menu-bottom .title a {
    position: relative;
    display: block;
    margin-bottom: 0px;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2;
}

.menu-bottom .title a:hover {
    color: var(--main-color);
}

.menu-bottom ul {
    padding: 0px;
    margin: 0px;
    list-style: none;
    margin-bottom: 10px;
}

@media(max-width:767px) {
    .menu-bottom ul li a {
        word-break: break-word;
    }
}

.menu-bottom ul li a {
    color: #222;
    font-size: 14px;
    color: #9a9a9a;
}

.menu-bottom ul li a:hover {
    color: var(--main-color);
}

.menu-bottom ul li {
    padding: 6px 0px;
}

footer {
    background: #fff;
    position: relative;
    background-color: #0f172a;
    padding-top: 37px;
    border-bottom: 4px solid #0b111f;
    color: #fff;
    margin-top: 20px;
    z-index: 5;
}

.footer {
    padding: 20px 0px;
}

@media(max-width: 767px) {
    .footer {
        padding: 15px 0px 0px;
    }
}

.footer p {
    margin-bottom: 6px;
}

.copyright {
    padding: 12px 0px;
    background: #090f1c;
    color: #fff;
    text-align: center;
    position: relative;
    z-index: 5;
}

.copyright a {
    color: #fff;
}


/**/

.item-cate-news {
    /* background: #f9f9f9; */
    /* padding: 10px 0px; */
    /* text-align: left; */
}

.item-cate-news ul {
    padding: 0;
    margin: 0 -2px;
}

.item-cate-news ul li {
    list-style-type: none;
    list-style-type: none;
    width: auto;
    display: inline-block;
    padding: 0;
    float: none;
}

.item-cate-news ul li h2 {
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    display: flex;
    align-items: center;
    min-height: 30px;
    border: 1px solid #ededed;
    border-radius: 30px;
    padding: 7px 20px;
    margin: 2px;
    background: #fff;
}

.item-cate-news ul li h2 a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    padding: 2px 0;
}

.item-cate-news ul li h2 a i {
    font-size: 10px;
    margin-right: 4px;
    position: relative;
    top: -1px;
}


/*detail-product*/

.content-product-detail {}

@media(max-width: 767px) {
    .content-product-detail {
        padding-top: 0px;
    }
}

.content-product-detail .detail-product {
    background: #fff;
}

.content-product-detail .detail-product .images-product-detail {
    position: relative;
}

@media(max-width: 767px) {
    .content-product-detail .detail-product .images-product-detail {
        padding: 0px !important;
    }
}

.content-product-detail .detail-product .images-product-detail .thumbs {
    padding: 4px 1px 4px 4px;
}

.content-product-detail .detail-product .images-product-detail .thumbs>div {
    margin-bottom: 0px;
    padding: 0px;
}

.content-product-detail .detail-product .images-product-detail .thumbs .owl-item {
    margin: 0px 2px;
}

.content-product-detail .detail-product .images-product-detail .thumbs>div .item {
    margin: 0px 4px 0px 0px;
    border: 1px solid #ddd;
    padding: 2px;
    cursor: pointer;
    list-style-type: none;
    display: inline-block;
    padding-bottom: calc(100% - 7px);
    height: 0px;
    position: relative;
    width: 100%;
}

.content-product-detail .detail-product .images-product-detail .thumbs>div .item img {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    left: 0;
    top: 0;
}

.content-product-detail .detail-product .images-product-detail .thumbs>div .item:hover {
    border: 1px solid #56ba47;
}

.content-product-detail .detail-product .images-product-detail .thumbs .owl-buttons>div {
    position: absolute;
    left: 0px;
    top: 50%;
    background: rgb(0 0 0 / 50%);
    color: #fff;
    width: 16px;
    text-align: center;
    line-height: 19px;
    height: 20px;
    margin-top: -8px;
    font-size: 14px;
}

.content-product-detail .detail-product .images-product-detail .thumbs .owl-buttons>div.owl-next {
    left: auto;
    right: 2px;
    padding-left: 2px;
}

.content-product-detail .detail-product .targetarea {
    position: relative;
    background: #fff;
    padding-bottom: 100%;
    height: 0px;
    width: 100%;
}

.content-product-detail .detail-product .targetarea img {
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    bottom: 0px;
    top: 0px;
    left: 0px;
    right: 0px;
    margin: auto;
}

.content-product-detail .detail-product .infomation-product-detail {
    padding: 0px 8px;
}

.content-product-detail .detail-product .infomation-product-detail .wrap-scroll-detail {
    padding: 12px 8px;
}

@media(max-width: 767px) {
    .content-product-detail .detail-product .infomation-product-detail {
        padding: 0px;
        background: #fff;
    }

    .content-product-detail .detail-product .infomation-product-detail .wrap-scroll-detail {
        padding: 12px 10px;
    }

    .content-product-detail .detail-product .infomation-product-detail .wrap-scroll-detail .action {
        position: fixed;
        bottom: 0px;
        left: 0px;
        width: 100%;
        z-index: 99;
    }

    .content-product-detail .detail-product .infomation-product-detail .wrap-scroll-detail .action>button {
        width: 50%;
        float: left;
        min-width: inherit;
        border-radius: 0px;
        font-size: 14px;
        border-bottom: none !important;
        padding: 4px 4px;
        text-transform: none;
        min-height: 41px;
    }

    .content-detail {
        margin: 0px -8px 0px;
    }
}

.content-product-detail .detail-product .infomation-product-detail .title {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 10px;
    margin-top: 10px;
}

.content-product-detail .detail-product .infomation-product-detail .content-product-combo .title {
    padding: 0;
    border: none;
    font-size: 16px;
    margin-bottom: 6px;
    margin-top: 15px;
}

.content-product-detail .detail-product .infomation-product-detail .ma-sp {
    color: #888;
    font-size: 18px;
    display: block;
    margin-bottom: 6px;
    margin-right: 10px;
    font-weight: 600;
}

.content-product-detail .detail-product .infomation-product-detail .info {
    line-height: 24px;
    font-size: 14px;
    margin-bottom: 10px;
    color: #888;
}

.content-product-detail .detail-product .infomation-product-detail .info p {
    margin: 0px;
}

.content-product-detail .detail-product .infomation-product-detail .info_cashback {
    font-size: 13px;
    line-height: 20px;
}

.content-product-detail .detail-product .infomation-product-detail .info_cashback {
    font-size: 13px;
    line-height: 20px;
}

.content-product-detail .detail-product .infomation-product-detail .old-price-detail {
    font-size: 16px;
    color: #555;
    font-weight: 600;
    text-decoration: line-through;
}

.content-product-detail .detail-product .infomation-product-detail .price-detail {
    color: var(--main-color);
    font-size: 30px;
    font-weight: 700;
    margin: 0;
    min-height: 44px;
}

.content-product-detail .detail-product .infomation-product-detail .color {
    margin-bottom: 14px;
}

.content-product-detail .detail-product .infomation-product-detail .color label {
    padding-left: 0px;
    margin-bottom: 0px;
    height: 30px;
    line-height: 28px;
    white-space: nowrap;
}

.content-product-detail .detail-product .infomation-product-detail .wrap-quantity label {
    padding-left: 0px;
    margin-bottom: 0px;
    height: 30px;
    line-height: 28px;
    white-space: nowrap;
}

.content-product-detail .detail-product .infomation-product-detail .color ul {
    margin: 0px;
    padding: 0px;
}

.content-product-detail .detail-product .infomation-product-detail .color ul>li {
    float: left;
    margin-right: 5px;
    border: 2px solid #ddd;
    padding: 2px;
    border-radius: 50%;
    list-style: none;
}

.content-product-detail .detail-product .infomation-product-detail .color ul>li.active,
.content-product-detail .detail-product .infomation-product-detail .color ul>li:hover {
    border: 2px solid #56ba47;
}

.content-product-detail .detail-product .infomation-product-detail .color ul>li span {
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
}

.content-product-detail .detail-product .infomation-product-detail .size {}

.content-product-detail .detail-product .infomation-product-detail .size ul {
    padding: 0;
    margin: 0;
}

.content-product-detail .detail-product .infomation-product-detail .size ul li {
    display: inline-block;
    list-style-type: none;
    margin: 6px;
    text-align: center;
    cursor: pointer;
}

.content-product-detail .detail-product .infomation-product-detail .size ul li .img {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    margin: 0px auto 7px;
}

.content-product-detail .detail-product .infomation-product-detail .size ul li .img img {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
}

.content-product-detail .detail-product .infomation-product-detail .size ul li p {
    font-size: 13px;
    margin: 0;
}

.count-down-end-flash {
    float: left;
    margin: 0px 0px 12px 0px;
}

.count-down-end-flash span {
    display: inline-block;
    background: #000;
    color: #fff;
    margin: 0 2px;
    padding: 2px 8px;
    border-radius: 2px;
    font-size: 11px;
}

.count-down-end-flash span:first-child {
    background: none;
    color: #222;
    text-align: left;
    font-size: 14px;
    margin: 0 4px 0px 0;
    padding: 2px 0px;
}


/**/

.size_color {
    margin: 0 0 10px 0;
    position: relative;
}

.size_color_0:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.size_color>label {
    display: block;
    margin: 0 0 7px 0;
    font-weight: 600;
}

.size_color>.attr {
    display: inline-block;
}

.size_color>.attr>span {
    border: 1px solid #999;
    display: inline-block;
    padding: 2px 12px;
    border-radius: 4px;
    margin-right: 5px;
    cursor: pointer;
    font-size: 13px;
    color: #999;
    cursor: not-allowed;
}

.size_color_1.size_color>.attr>span,
.size_color.active>.attr>span {
    color: #333;
    border-color: #333;
    cursor: pointer;
}

.size_color>.attr>span.active {
    border-color: var(--main-color);
    background: var(--main-color);
    color: #fff;
    cursor: initial;
}

.cart_checkout .right .table tbody tr td a.name {
    margin-bottom: 10px;
    font-weight: 600;
}

.name_attr {
    margin: 2px 0 0 0;
    font-size: 12px;
    font-weight: 400;
}

.name_attr span {
    color: #222 !important;
    font-size: 12px !important;
}


/**/

.content-product-detail .nav-tabs {
    border: 1px solid rgba(240, 240, 240, 0.7);
    background: #f6f6f6;
    margin-top: 10px;
}

.detail-news .detail-content .nav-tabs {
    margin-top: 0px;
    margin-bottom: 15px;
}

.content-product-detail .nav-tabs>li>a {
    background: #E5E5E5;
    border: 0px solid #E5E5E5;
    border-top: 0px solid #E5E5E5;
    border-radius: 0px;
    margin-right: 2px;
    padding: 9px 25px;
    text-transform: uppercase;
    font-size: 14px;
    color: #717171;
}

@media(max-width: 767px) {
    .content-product-detail .nav-tabs {
        white-space: nowrap;
        overflow-x: auto;
        padding: 0px 6px;
    }

    .content-product-detail .nav-tabs li {
        float: none;
        margin: 0px;
        display: inline-block;
    }
}

.content-product-detail .nav li.active a,
.content-product-detail .nav li:hover a {
    list-style: none;
    background: var(--main-color);
}

.content-product-detail .nav-tabs>li.active>a,
.content-product-detail .nav-tabs>li:hover>a,
.content-product-detail .nav-tabs>li.active>a:focus,
.content-product-detail .nav-tabs>li.active>a:hover {
    border: none;
    color: #fff;
}

.content-product-detail .tab-content {
    background: #fff;
    padding: 15px;
    border: 1px solid rgba(240, 240, 240, 0.7);
    border-top: none;
}

.content-product-detail .content p {
    line-height: 1.5;
    font-size: 15px !important;
    margin-bottom: 5px;
    word-break: break-word;
}

.content-product-detail .content iframe {
    max-width: 100%;
    border: none;
}

.content-product-detail .content img {
    height: auto !important;
}


/**/

.traning-lever {
    margin-bottom: 15px;
}

.traning-lever ul {
    padding: 0px;
    margin: 0px;
}

.traning-lever ul li {
    list-style-type: none;
    margin: -1px auto;
    color: #fff;
    text-align: center;
    width: 100%;
    float: none;
    padding: 0 !important;
    border: none !important;
}

.traning-lever ul li .img {
    display: inline-block;
    position: relative;
}

.traning-lever ul li .img>.info {
    position: absolute;
    width: 100%;
    height: calc(100% - 4px);
    display: flex;
    align-items: center;
    top: 0;
}

.traning-lever ul li .img>.info .info1 {
    width: 100%;
    display: block;
}

.traning-lever ul li img {
    max-height: 64px;
    display: inline-block;
}

.traning-lever ul li.lever000 img {
    max-height: 90px;
}

@media (max-width: 767px) {
    .traning-lever ul li img {
        min-height: 50px;
    }

    .traning-lever ul li.lever000 img {
        max-height: 65px;
    }
}

.traning-lever ul li.lever1 img {
    max-height: 71px;
}

.traning-lever ul li.lever2 img {
    max-height: 71px;
}

.traning-lever ul li.lever3 img {
    max-height: 71px;
}

.traning-lever ul li.lever4 img {
    max-height: 76px;
}

.traning-lever ul li.lever5 img {
    max-height: 82px;
}

.traning-lever ul li.lever6 img {
    max-height: 115px;
}

.traning-lever ul li.lever7 img {
    max-height: 190px;
}

@media (max-width: 767px) {
    .traning-lever ul li.lever0 img {
        width: 360px;
        height: 50px;
    }

    .traning-lever ul li.lever1 img {
        width: 326px;
        height: 50px;
    }

    .traning-lever ul li.lever2 img {
        width: 292px;
        height: 48px;
    }

    .traning-lever ul li.lever3 img {
        width: 260px;
        height: 48px;
    }

    .traning-lever ul li.lever4 img {
        width: 226px;
        height: 46px;
    }

    .traning-lever ul li.lever5 img {
        width: 191px;
        height: 46px;
    }

    .traning-lever ul li.lever6 img {
        width: 152px;
        height: 74px;
    }

    .traning-lever ul li.lever7 img {
        width: 96px;
        height: 115px;
    }
}

.traning-lever ul li p {
    display: block;
    color: #fff;
    margin: 0px;
    z-index: 1;
    width: 100%;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1.3;
}

.traning-lever ul li.lever000 p {
    font-size: 20px;
}

.traning-lever ul li span {
    width: 100%;
    text-align: center;
    line-height: 1.2;
    display: block;
}

.traning-lever ul li.lever7 p {
    font-size: 20px;
    padding: 30px 20px 0px;
}

@media (max-width: 767px) {
    .traning-lever ul li.lever000 p {
        font-size: 18px;
    }

    .traning-lever ul li span {
        display: none;
    }

    .traning-lever ul li p {
        font-size: 16px;
    }

    .traning-lever ul li.lever3 p {
        padding: 0px 16%;
        font-size: 15px;
    }

    .traning-lever ul li.lever4 p {
        font-size: 14px;
    }

    .traning-lever ul li.lever5 p {
        font-size: 14px;
    }

    .traning-lever ul li.lever7 p {
        padding: 0 20px;
        font-size: 13px;
    }
}

.traning-lever ul li.lever6 span {
    padding: 0px 35px;
}

.traning-lever ul li.lever7 .info {
    top: 44%;
    height: 50%;
}

.traning-lever ul li.lever7 span {
    padding: 0px 31px;
}

.traning-lever ul li p span {
    display: block;
    font-size: 12px;
}

.traning-lever ul li p span:first-child {
    margin-top: 1px;
}


/**/

.traning-lever1 {
    margin-top: 40px;
}

.traning-lever1 .item {}

.traning-lever1 .item .title {
    text-align: center;
    position: relative;
    margin: 30px 0px 0px;
}

.traning-lever1 .item .title>p {
    font-size: 20px;
    text-align: center;
    position: relative;
    color: #aa6e51;
    font-weight: 600;
    margin-top: 10px;
    margin: 10px auto 0px;
    max-width: 600px;
    line-height: 1.3;
    text-transform: uppercase;
}

.traning-lever1 .item.item2 .title>p {
    color: #aa6e51;
}

.traning-lever1 .item.item3 .title>p {
    color: #8fa3b5;
}

.traning-lever1 .item.item4 .title>p {
    color: #8fa3b5;
}

.traning-lever1 .item.item5 .title>p {
    color: #c29644;
}

.traning-lever1 .item.item6 .title>p {
    color: #beaf91;
}

.traning-lever1 .item.item7 .title>p {
    color: #8685b6;
}

.traning-lever1 .item .title img {
    width: 50px;
    display: inline-block;
    background: #fff;
    margin: auto;
}

.traning-lever1 .item .title span {
    position: absolute;
    top: 50px;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    width: 100%;
    text-align: center;
    left: -3px;
    z-index: 1;
}

.traning-lever1 .item ul {
    padding: 0px;
    margin: 0px 0px 20px;
    text-align: center;
}

.traning-lever1 .item ul::after {
    content: "";
    display: block;
    clear: both;
}

.traning-lever1 .item ul li {
    list-style-type: none;
    display: inline-block;
    width: 24%;
    margin: 14px 0px;
    padding: 0px 12px;
}

@media (max-width: 767px) {
    .traning-lever1 .item ul li {
        width: 49%;
    }

    .traning-lever1 .item ul li:nth-child(2n+1) {
        clear: both;
    }

    .traning-lever1 .item .iframe .title1 {
        overflow: hidden;
    }
}

.traning-lever1 .item.item2 ul li:nth-child(4n+1) {
    clear: both;
}

.traning-lever1 .item ul li .img {
    background-image: linear-gradient(135deg, #7100b3, #57048c 26%, #6400a5 0, #6a00ac 39%, #7b1eb5 0, #6700a8 52%, #6e00b0 0, #4d0179 57%, #6a00aa 0, #4f0e77 78%, #6300a4 0, #440c67 90%, #5a019c 0, #7000b2);
    background-image: linear-gradient(135deg, #ffd900, #ffd900 26%, #ffc800 0, #ffc800 39%, #ffd900 0, #ffd900 52%, #ffc800 0, #ffc800 57%, #ffd900 0, #ffd900 78%, #ffc800 0, #ffc800 90%, #ffd900 0, #ffd900);
    background-image: linear-gradient(135deg, #0a8409, #099408 26%, #16a915 0, #1db318 39%, #0da70d 0, #0f970c 52%, #2da92b 0, #0c9e0c 57%, #0da50c 0, #0da70d 78%, #12920e 0, #0da00d 90%, #0da70d 0, #0da70d);
    background-image: linear-gradient(135deg, #af6e55, #b37554 26%, #a6684f 0, #b47556 39%, #b27156 0, #b27156 52%, #b06f54 0, #bf7b5b 57%, #ae6e53 0, #b27554 78%, #bb7b54 0, #b67857 90%, #b06f54 0, #b47357);
    width: 90px;
    height: 90px;
    border-radius: 50%;
    position: relative;
    border: 6px solid #fff;
    margin: 0px auto;
}

.traning-lever1 .item ul li .img:before {
    content: "";
    position: absolute;
    width: 102px;
    height: 102px;
    left: -12px;
    top: -12px;
    border: 6px solid #e5e5e5;
    border-radius: 50%;
}

.traning-lever1 .item ul li.active .img:before {
    border: 6px solid #7212af;
    border: 6px solid #ffc800;
    border: 6px solid #018304;
    border: 6px solid #b37057;
}

.traning-lever1 .item.item3 ul li .img,
.traning-lever1 .item.item4 ul li .img {
    background-image: linear-gradient(135deg, #768991, #8aa0ae 26%, #6f838d 0, #84979f 39%, #788d98 0, #7d939c 52%, #4d6d78 0, #7b909a 57%, #7d909e 0, #687983 78%, #688a9e 0, #545e61 90%, #8ca1af 0, #8ba1af);
}

.traning-lever1 .item.item3 ul li.active .img:before,
.traning-lever1 .item.item4 ul li.active .img:before {
    border: 6px solid #8fa3b5;
}

.traning-lever1 .item.item5 ul li .img {
    background-image: linear-gradient(135deg, #ffd695, #eca409 26%, #f9af10 0, #ffae01 39%, #ffb30e 0, #d29b24 52%, #feae07 0, #e4a110 57%, #eca406 0, #faaf0c 78%, #fdb009 0, #b97e02 90%, #feae07 0, #ffb016);
    background-image: linear-gradient(135deg, #d1b257, #b88c3f 26%, #c89f52 0, #c79a43 39%, #ae8240 0, #caa044 52%, #c9a047 0, #ac7e3f 57%, #c39946 0, #c39846 78%, #b08342 0, #c79c4a 90%, #eac87f 0, #c09547);
}

.traning-lever1 .item.item5 ul li.active .img:before {
    border: 6px solid #ffae01;
    border: 6px solid #c29644;
}

.traning-lever1 .item.item6 ul li .img {
    background-image: linear-gradient(135deg, #ded9b2, #ccc0a5 26%, #dfe0c2 0, #cdc590 39%, #d6d391 0, #e4dec3 52%, #dcca7e 0, #e1dcbb 57%, #f6f3e1 0, #bcae8c 78%, #d3c9ac 0, #b9a789 90%, #b9aa8a 0, #d9d4b2);
}

.traning-lever1 .item.item6 ul li.active .img:before {
    border: 6px solid #beaf91;
}

.traning-lever1 .item.item7 ul li .img {
    background-image: linear-gradient(135deg, #8585b5, #8788b8 26%, #9fa1cc 0, #9595c3 39%, #948abb 0, #9090be 52%, #8782b3 0, #8683b1 57%, #a399cd 0, #8a87b4 78%, #9898c6 0, #827eae 90%, #7872a5 0, #9a9ac7);
}

.traning-lever1 .item.item7 ul li.active .img:before {
    border: 6px solid #8685b6;
}

.traning-lever1 .item ul li .img:after {
    content: "";
    background-image: url(../../../../public/images/traning/stick.svg);
    position: absolute;
    bottom: 0px;
    right: -16px;
    width: 30px;
    display: block;
    height: 24px;
    background-size: cover;
}

.traning-lever1 .item ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti.png);
}

.traning-lever1 .item ul li .img img {
    position: absolute;
    top: 0px;
    bottom: 0px;
    margin: auto;
    left: 0px;
    right: 0px;
    width: 46px;
}

.traning-lever1 .item ul li h3 {
    margin: 20px 0px 0px;
    font-size: 17px;
    line-height: 1.25;
}

.traning-lever1 .item ul li h3 p {
    margin: 0px;
}

.traning-lever1 .item ul li h3 span {
    display: block;
}

.traning-lever1 .item .iframe {
    max-width: 960px;
    margin: 0px auto;
}

.traning-lever1 .item .iframe .title1 {
    color: #7300b3;
    color: #b37057;
    text-align: center;
    letter-spacing: 1px;
    margin: 0px 0px 16px;
    padding: 10px 0px 0px;
    line-height: 1.2;
    position: relative;
    font-size: 18px;
}

.traning-lever1 .item .iframe .title1 span {
    position: relative;
    background: #fff;
    padding: 0px 15px;
}

.traning-lever1 .item .iframe .title1 span:before {
    content: "";
    width: 80px;
    position: absolute;
    top: 50%;
    left: 100%;
    margin: auto;
    height: 1px;
    background: #ddd;
    background: #aa6e51;
    margin-top: -6px;
}

.traning-lever1 .item .iframe .title1 span::after {
    content: "";
    width: 80px;
    position: absolute;
    top: 50%;
    right: 100%;
    margin: auto;
    height: 1px;
    background: #ddd;
    background: #aa6e51;
    margin-top: -6px;
}

.traning-lever1 .item.item2 .iframe .title1 {
    color: #210057;
    color: #aa6e51;
}

.traning-lever1 .item.item3 .iframe .title1 {
    color: #0052d9;
    color: #8fa3b5;
}

.traning-lever1 .item.item4 .iframe .title1 {
    color: #018304;
    color: #8fa3b5;
}

.traning-lever1 .item.item5 .iframe .title1 {
    color: #ffae01;
    color: #c29644;
}

.traning-lever1 .item.item6 .iframe .title1 {
    color: #ff6c01;
    color: #beaf91;
}

.traning-lever1 .item.item7 .iframe .title1 {
    color: #d91e1f;
    color: #8685b6;
}

.traning-lever1 .item.item2 .title:before {
    border-top: 2px solid #210057;
}

.traning-lever1 .item.item3 .title:before {
    border-top: 2px solid #0052d9;
}

.traning-lever1 .item.item4 .title:before {
    border-top: 2px solid #018304;
}

.traning-lever1 .item.item5 .title:before {
    border-top: 2px solid #ffae01;
}

.traning-lever1 .item.item6 .title:before {
    border-top: 2px solid #ff6c01;
}

.traning-lever1 .item.item7 .title:before {
    border-top: 2px solid #d91e1f;
}

.traning-lever1 .item.item2 .iframe .title1 span:before {
    background: #210057;
    background: #aa6e51;
}

.traning-lever1 .item.item2 .iframe .title1 span::after {
    background: #210057;
    background: #aa6e51;
}

.traning-lever1 .item.item3 .iframe .title1 span:before {
    background: #0052d9;
    background: #8fa3b5;
}

.traning-lever1 .item.item3 .iframe .title1 span::after {
    background: #0052d9;
    background: #8fa3b5;
}

.traning-lever1 .item.item4 .iframe .title1 span:before {
    background: #018304;
    background: #8fa3b5;
}

.traning-lever1 .item.item4 .iframe .title1 span::after {
    background: #018304;
    background: #8fa3b5;
}

.traning-lever1 .item.item5 .iframe .title1 span:before {
    background: #ffae01;
    background: #c29644;
}

.traning-lever1 .item.item5 .iframe .title1 span::after {
    background: #ffae01;
    background: #c29644;
}

.traning-lever1 .item.item6 .iframe .title1 span:before {
    background: #ff6c01;
    background: #beaf91;
}

.traning-lever1 .item.item6 .iframe .title1 span::after {
    background: #ff6c01;
    background: #beaf91;
}

.traning-lever1 .item.item7 .iframe .title1 span:before {
    background: #d91e1f;
    background: #8685b6;
}

.traning-lever1 .item.item7 .iframe .title1 span::after {
    background: #d91e1f;
    background: #8685b6;
}


/**/

.traning-lever0 {
    margin-top: 20px;
    display: none;
}

.traning-lever0 .item {}

.traning-lever ul li.active .traning-lever0 {
    display: block;
}

.traning-lever0 .item .title {
    text-align: center;
    position: relative;
    margin: 30px 0px 0px;
}

.traning-lever0 .item .title>p {
    font-size: 20px;
    text-align: center;
    position: relative;
    color: #b92589;
    font-weight: 600;
    margin-top: 10px;
    margin: 10px auto 0px;
    max-width: 600px;
    line-height: 1.3;
    text-transform: uppercase;
    top: 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
}

.traning-lever0 .item.item1 .title>p {
    color: #8f42a3;
}

.traning-lever0 .item.item2 .title>p {
    color: #454098;
}

.traning-lever0 .item.item3 .title>p {
    color: #006caa;
}

.traning-lever0 .item.item4 .title>p {
    color: #148d46;
}

.traning-lever0 .item.item5 .title>p {
    color: #ffae01;
}

.traning-lever0 .item.item6 .title>p {
    color: #ff6c01;
}

.traning-lever0 .item.item7 .title>p {
    color: #b82827;
}

.traning-lever0 .item .title img {
    width: 50px;
    display: inline-block;
    background: #fff;
    margin: auto;
    max-height: inherit;
}

.traning-lever0 .item .title span {
    position: absolute;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    top: 50px;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    width: 100%;
    text-align: center;
    left: -3px;
    z-index: 1;
}

.traning-lever0 .item ul {
    padding: 0px;
    margin: 0px 0px 20px;
    text-align: center;
}

.traning-lever0 .item ul::after {
    content: "";
    display: block;
    clear: both;
}

.traning-lever0 .item ul li {
    list-style-type: none;
    display: inline-table;
    width: 24%;
    margin: 14px 0px;
    padding: 0px 12px;
}

@media (max-width: 767px) {
    .traning-lever0 .item ul li {
        width: 50%;
        float: left;
    }

    .traning-lever0 .item ul li:nth-child(2n+1) {
        clear: both;
    }

    .traning-lever0 .item .iframe .title1 {
        overflow: hidden;
    }
}

.traning-lever0 .item.item2 ul li:nth-child(4n+1) {
    clear: both;
}

.traning-lever0 .item ul li .img {
    background-image: linear-gradient(135deg, #7100b3, #57048c 26%, #6400a5 0, #6a00ac 39%, #7b1eb5 0, #6700a8 52%, #6e00b0 0, #4d0179 57%, #6a00aa 0, #4f0e77 78%, #6300a4 0, #440c67 90%, #5a019c 0, #7000b2);
    width: 90px;
    height: 90px;
    border-radius: 50%;
    position: relative;
    border: 6px solid #fff;
    margin: 0px auto;
    background: none !important;
}

.traning-lever0 .item ul li .img:before {
    content: "";
    position: absolute;
    width: 102px;
    height: 102px;
    left: -12px;
    top: -12px;
    border: 6px solid #e5e5e5;
    border-radius: 50%;
}

.traning-lever0 .item ul li.active .img:before {
    border: 6px solid #b92589;
}

.traning-lever0 .item.item1 ul li.active .img:before {
    border: 6px solid #8f42a3;
}

.traning-lever0 .item.item2 ul li.active .img:before {
    border: 6px solid #454098;
}

.traning-lever0 .item.item3 ul li.active .img:before {
    border: 6px solid #006caa;
}

.traning-lever0 .item.item4 ul li.active .img:before {
    border: 6px solid #148d46;
}

.traning-lever0 .item.item5 ul li.active .img:before {
    border: 6px solid #f4a51e;
}

.traning-lever0 .item.item6 ul li.active .img:before {
    border: 6px solid #ea6923;
}

.traning-lever0 .item.item7 ul li.active .img:before {
    border: 6px solid #b82827;
}

.traning-lever0 .item ul li .img:after {
    content: "";
    background-image: url(../../../../public/images/traning/stick.svg?v=1.0.02);
    position: absolute;
    bottom: 0px;
    right: -12px;
    width: 26px;
    display: block;
    height: 20px;
    background-size: cover;
}

.traning-lever0 .item ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti.png?v=1.0.03);
}

.traning-lever0 .item.item0 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti0.png?v=1.0.03);
}

.traning-lever0 .item.item1 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti1.png?v=1.0.03);
}

.traning-lever0 .item.item2 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti2.png?v=1.0.03);
}

.traning-lever0 .item.item3 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti3.png?v=1.0.03);
}

.traning-lever0 .item.item4 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti4.png?v=1.0.03);
}

.traning-lever0 .item.item5 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti5.png?v=1.0.03);
}

.traning-lever0 .item.item6 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti6.png?v=1.0.03);
}

.traning-lever0 .item.item7 ul li.active .img:after {
    background-image: url(../../../../public/images/traning/stick-acti7.png?v=1.0.03);
}

.traning-lever0 .item ul li .img img {
    position: absolute;
    top: 0px;
    bottom: 0px;
    margin: auto;
    left: 0px;
    right: 0px;
    width: 78px;
    filter: grayscale(100%);
    max-height: inherit;
}

@media(max-width: 767px) {
    .traning-lever0 .item ul li .img img {
        height: 78px;
    }
}

.traning-lever0 .item ul li.active .img img {
    filter: grayscale(0%);
}

.traning-lever0 .item ul li h3 {
    margin: 20px 0px 0px;
    font-size: 16px;
    line-height: 1.25;
    color: #333;
}

.traning-lever0 .item ul li h3 p {
    margin: 0px;
    position: static;
}

@media (max-width: 767px) {
    .traning-lever0 .item ul li h3 {
        margin: 15px 0px 0px;
    }

    .traning-lever0 .item ul li h3 p {
        display: none;
    }
}

.traning-lever0 .item ul li h3 span {
    display: block;
}

.traning-lever0 .item .iframe {
    max-width: 960px;
    margin: 0px auto;
}

.traning-lever0 .item .iframe .title1 {
    color: #b92589;
    text-align: center;
    letter-spacing: 1px;
    margin: 0px 0px 16px;
    padding: 10px 0px 0px;
    line-height: 1.2;
    position: relative;
    font-size: 18px;
}

.traning-lever0 .item .iframe .title1 span {
    position: relative;
    background: #fff;
    padding: 0px 15px;
    display: inline-block;
    width: auto;
    max-width: 660px;
    line-height: 1.4;
}

.traning-lever0 .item .iframe .title1 span:before {
    content: "";
    width: 80px;
    position: absolute;
    top: 50%;
    left: 100%;
    margin: auto;
    height: 1px;
    background: #8f42a3;
    margin-top: 0px;
}

.traning-lever0 .item .iframe .title1 span::after {
    content: "";
    width: 80px;
    position: absolute;
    top: 50%;
    right: 100%;
    margin: auto;
    height: 1px;
    background: #8f42a3;
    margin-top: 0px;
}

.traning-lever0 .item.item1 .iframe .title1 {
    color: #8f42a3;
}

.traning-lever0 .item.item2 .iframe .title1 {
    color: #454098;
}

.traning-lever0 .item.item3 .iframe .title1 {
    color: #006caa;
}

.traning-lever0 .item.item4 .iframe .title1 {
    color: #148d46;
}

.traning-lever0 .item.item5 .iframe .title1 {
    color: #ffae01;
}

.traning-lever0 .item.item6 .iframe .title1 {
    color: #ff6c01;
}

.traning-lever0 .item.item7 .iframe .title1 {
    color: #b82827;
}

.traning-lever0 .item.item1 .title:before {
    border-top: 2px solid #210057;
}

.traning-lever0 .item.item2 .title:before {
    border-top: 2px solid #0052d9;
}

.traning-lever0 .item.item3 .title:before {
    border-top: 2px solid #018304;
}

.traning-lever0 .item.item4 .title:before {
    border-top: 2px solid #ffae01;
}

.traning-lever0 .item.item5 .title:before {
    border-top: 2px solid #ff6c01;
}

.traning-lever0 .item.item6 .title:before {
    border-top: 2px solid #d91e1f;
}

.traning-lever0 .item.item2 .iframe .title1 span:before {
    background: #8f42a3;
}

.traning-lever0 .item.item2 .iframe .title1 span::after {
    background: #8f42a3;
}

.traning-lever0 .item.item3 .iframe .title1 span:before {
    background: #454098;
}

.traning-lever0 .item.item3 .iframe .title1 span::after {
    background: #454098;
}

.traning-lever0 .item.item4 .iframe .title1 span:before {
    background: #006caa;
}

.traning-lever0 .item.item4 .iframe .title1 span::after {
    background: #006caa;
}

.traning-lever0 .item.item5 .iframe .title1 span:before {
    background: #148d46;
}

.traning-lever0 .item.item5 .iframe .title1 span::after {
    background: #148d46;
}

.traning-lever0 .item.item6 .iframe .title1 span:before {
    background: #ffae01;
}

.traning-lever0 .item.item6 .iframe .title1 span::after {
    background: #ffae01;
}

.traning-lever0 .item.item7 .iframe .title1 span:before {
    background: #ff6c01;
}

.traning-lever0 .item.item7 .iframe .title1 span::after {
    background: #ff6c01;
}

.traning-lever0 .item.item8 .iframe .title1 span:before {
    background: #b82827;
}

.traning-lever0 .item.item8 .iframe .title1 span::after {
    background: #b82827;
}


/**/

.about {
    margin-bottom: 15px;
}

.about img {
    height: auto !important;
}

.about .about1 {
    margin: 15px 0px;
}

.about .title-about {
    margin: 0px 0px 20px;
    color: var(--main-color);
    text-transform: uppercase;
    font-size: 22px;
    border-bottom: 1px solid var(--main-color);
}

@media(max-width: 767px) {
    .about .title-about {
        margin-bottom: 15px;
        margin-top: 12px;
    }

    .about {
        margin-top: 8px;
    }

    .about .about1 {
        margin: 0px 0px 0px;
    }
}

.about .title-about span {
    background: #fff;
    display: inline-block;
    position: relative;
    top: 6px;
    padding-right: 6px;
}

.about .about1 p {
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 12px;
    line-height: 1.5;
    text-align: justify;
    margin-top: 10px;
}


/**/

.sidebar-content.news {
    margin: 0px 0px 0px;
    float: left;
    width: 100%;
    background: #fff;
    padding: 8px;
    border-radius: 4px;
}

.sidebar-content.news .item {
    list-style-type: none;
    float: left;
    width: 20%;
    padding: 3px;
}

.sidebar-content.news .item:nth-child(1),
.sidebar-content.news .item:nth-child(8) {
    width: 40%;
}

@media(max-width: 991px) {
    .sidebar-content.news .item {
        width: 50%;
    }

    .sidebar-content.news .item:nth-child(1),
    .sidebar-content.news .item:nth-child(8) {
        width: 100%;
    }
}

.sidebar-content.news .item article {
    position: relative;
}

.sidebar-content.news .item .img {
    display: block;
    height: 0px;
    width: 100%;
    overflow: hidden;
    background-position: center top;
    background-size: cover;
    padding-bottom: 100%;
}

.sidebar-content.news .item:nth-child(1) .img,
.sidebar-content.news .item:nth-child(8) .img {
    padding-bottom: 49.3%;
}

.sidebar-content.news .item .img .star-fa:after {
    top: 100%;
    left: 0;
    width: 0;
    height: 0;
    content: '';
    position: absolute;
    border-top: 7px solid #ffcc33;
    border-right: 7px solid transparent;
}

.sidebar-content.news .item .img .star-fa {
    position: absolute;
    left: 12px;
    top: 20px;
    color: #272727;
    padding: 4px 8px 4px;
    font-size: 12px;
    line-height: 12px;
    background: #ffcc33;
    text-transform: uppercase;
    z-index: 2;
    transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.sidebar-content.news .item article:hover .img .star-fa {
    top: 60px;
}

.sidebar-content.news .item .news-category:after {
    top: 100%;
    left: 0;
    width: 0;
    height: 0;
    content: '';
    position: absolute;
    border-top: 7px solid #bd2891;
    border-right: 7px solid transparent;
}

.sidebar-content.news .item .news-category.bd2891:after {
    border-top-color: #bd2891;
}

.sidebar-content.news .item .news-category.f7941d:after {
    border-top-color: #f7941d;
}

.sidebar-content.news .item .news-category.ffcc33:after {
    border-top-color: #ffcc33;
}

.sidebar-content.news .item .news-category.e02765:after {
    border-top-color: #e02765;
}

.sidebar-content.news .item .news-category.a238ce:after {
    border-top-color: #a238ce;
}

.sidebar-content.news .item .news-category.ff6b00:after {
    border-top-color: #ff6b00;
}

.sidebar-content.news .item .news-category.b33bd7:after {
    border-top-color: #b33bd7;
}

.sidebar-content.news .item .news-category.DF004A:after {
    border-top-color: #DF004A;
}

.sidebar-content.news .item .news-category {
    position: absolute;
    left: 12px;
    top: 60px;
    color: #fff;
    padding: 5px 8px;
    font-size: 12px;
    line-height: 12px;
    background: #bd2891;
    text-transform: uppercase;
    z-index: 2;
    transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

@media(max-width: 767px) {
    .sidebar-content.news .item .news-category {
        text-transform: none;
    }
}

.sidebar-content.news .item article:hover .news-category {
    top: 20px;
}

.sidebar-content.news .item .img>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    align-items: center;
    text-align: center;
    justify-content: center;
}

.sidebar-content.news .item h3 {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    bottom: 0px;
    height: 100%;
    width: 100%;
    left: 0px;
    position: absolute;
    z-index: 1;
    padding: 10px;
    margin: 0px;
    background: -moz-linear-gradient(top, rgba(39, 39, 39, 0) 60%, rgba(39, 39, 39, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(39, 39, 39, 0) 60%, rgba(39, 39, 39, 1) 100%);
    background: linear-gradient(to bottom, rgba(39, 39, 39, 0) 60%, rgba(39, 39, 39, .9) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00272727', endColorstr='#272727', GradientType=0);
}

.sidebar-content.news .item h3 a {
    color: #fff;
    position: absolute;
    left: 0px;
    bottom: 10px;
    padding: 0px 12px;
}

.sidebar-content.news .item h3 a i {
    margin-right: 8px;
}

.sidebar-content.news .item .info {
    font-size: 12px;
    font-weight: 400;
    color: #5C5C5C;
    height: 47px;
    overflow: hidden;
    display: none;
}


/**/

.block-news .block-content .row {
    margin: 0px -12px;
}

.block-news .block-content .row .wrap-item {
    padding: 0px 12px;
}

@media(max-width: 767px) {
    .block-news .block-content .row {
        margin: 0px -8px;
    }

    .block-news .block-content .row .wrap-item {
        padding: 0px 8px;
    }

    .block-news .block-content .row .row_home {
        padding: 0;
    }
}

.block-news .block-content .item {
    margin-bottom: 24px;
    position: relative;
    background-color: rgba(255, 255, 255, 0.4);
    border: 1px solid #FFF;
    border-radius: 4px;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    /* box-shadow: 0 0px 5px rgba(0, 0, 0, .2); */
    padding: 3px;
    background: #fff;
}

.block-news .block-content .item .wrap-info {
    color: #383838;
    margin: 0px 0px 0px 0px;
    padding: 0px 20px 20px;
    background: #fff;
    border-radius: 0px 0px 5px 5px;
    position: relative;
    height: 215px;
    padding: 10px 20px 20px 20px;
    background: #f8fbfb;
    margin-left: 20px;
    border: 1px solid #a7a7a7;
}

.block-news.related .block-content .item .wrap-info {
    height: 135px;
}

@media(max-width: 767px) {
    .block-news .block-content .item {
        margin-bottom: 8px;
    }

    .block-news .block-content .item .wrap-info {
        height: auto;
        padding: 0px 15px 15px;
    }
}

.block-news .block-content .item h3 {
    padding: 0px 0px 0px 0px;
    margin: 20px 0px 10px 0px;
    border: none;
    height: 42px;
    display: block;
    font-size: 16px;
    font-weight: 600;
    overflow: hidden;
    line-height: 1.34;
}

.block-news .block-content .item h3 a {
    color: #3e3d3c;
}

.block-news .block-content .item h3 a i {
    margin-right: 7px;
    color: #777;
}

.block-news .block-content .item .wrap-info .info {
    height: 80px;
    overflow: hidden;
    color: #666;
}

@media(max-width: 767px) {
    .block-news .block-content .item .wrap-info .info {
        height: auto;
        max-height: 80px;
    }

    .block-news .block-content .item h3 {
        padding: 0px 0px 0px 0px;
        height: auto;
        max-height: 42px;
    }

    .block-news .block-content .item h3 a {
        height: auto;
    }
}

.block-news .block-content .item .time {
    font-size: 12px;
    color: #aaa;
    padding: 0px 0px 12px;
    text-align: left;
}

.block-news .block-content .item .time span:first-child {
    margin-right: 10px;
}

.block-news .block-content .item .time span:first-child i {
    margin-right: 6px;
    padding-left: 1px;
    top: 0px;
}

.block-news .block-content .item .time span i {
    margin-right: 2px;
    position: relative;
    top: -1px;
    font-size: 14px;
}

.block-news .block-content .item .time span:last-child {
    float: right;
}

.block-news .block-content .item .img {
    display: block;
    width: 100%;
    height: 0px;
    position: relative;
    padding-bottom: 60%;
}

.block-news .block-content .item .img::before {
    content: "";
    position: absolute;
    border-top: 20px solid;
    border-left: 20px solid transparent;
    margin-left: 0;
    left: 0;
    bottom: -20px;
    color: #000;
}

.block-news .block-content .item .img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;
}

.block-news .block-content .item .img>i {
    position: absolute;
    z-index: 1;
    bottom: 0px;
    left: 0px;
    color: #fff;
    font-size: 22px;
    top: 0px;
    right: 0px;
    margin: auto;
    width: 44px;
    height: 40px;
    background: rgb(255 107 20 / 60%);
    padding: 8px 10px;
    text-align: center;
    line-height: 24px;
    border-radius: 3px;
}

.block-news .block-content .item .img>i:hover {
    background: rgb(255 107 20 / 100%);
}

.block-news .block-content .item .name_category {
    color: #fff;
    position: absolute;
    top: 20px;
    text-align: center;
    left: 10px;
}

.block-news .block-content .item .name_category a {
    background: #28bd7d;
    color: #fff;
    padding: 0px 10px;
    height: 26px;
    line-height: 26px;
    display: inline-block;
    position: relative;
    z-index: 9;
}

.block-news .block-content .item .name_category a:after {
    top: 100%;
    left: 0;
    width: 0;
    height: 0;
    content: '';
    position: absolute;
    border-top: 7px solid #28bd7d;
    border-right: 7px solid transparent;
}

.block-news .block-content .item .name_category a.bd2891:after {
    border-top-color: #bd2891;
}

.block-news .block-content .item .name_category a.f7941d:after {
    border-top-color: #f7941d;
}

.block-news .block-content .item .name_category a.ffcc33:after {
    border-top-color: #ffcc33;
}

.block-news .block-content .item .name_category a.e02765:after {
    border-top-color: #e02765;
}

.block-news .block-content .item .name_category a.a238ce:after {
    border-top-color: #a238ce;
}

.block-news .block-content .item .name_category a.ff6b00:after {
    border-top-color: #ff6b00;
}

.block-news .block-content .item .name_category a.b33bd7:after {
    border-top-color: #b33bd7;
}

.block-news .block-content .item .name_category a.DF004A:after {
    border-top-color: #DF004A;
}

.detail-news .detail-content {
    /* background: #fff;
    border-radius: 4px;
    padding: 25px; */
    margin-bottom: 15px;
}

.detail-news .right {
    padding-left: 0px;
}

.detail-news .detail-content .title {
    color: #272727;
    font-size: 22px;
    margin-bottom: 10px;
    font-weight: 600;
    margin-top: 0px;
}

.detail-news .detail-content .info {
    color: #858585;
    font-weight: 400;
    margin-bottom: 10px;
    font-size: 12px;
}

.detail-news .detail-content .content * {
    max-width: 100%;
    font-size: 15px;
}

.detail-news .detail-content .detail img {
    height: auto !important;
}


/*Supplier*/

.block-supplier {
    background: #f5f5f5;
    padding-bottom: 30px;
}

.block-supplier .form-search-supplier {
    position: static;
    display: block !important;
    margin-top: -10px !important;
    opacity: 1 !important;
    height: auto !important;
}

.block-supplier .form-search-supplier .search-supplier {
    border-radius: 50px;
    height: 38px;
    position: relative;
}

.block-supplier .form-search-supplier .search-supplier input {
    padding: 2px 52px 2px 15px;
    border-radius: 50px;
    font-size: 13px;
}

.block-supplier .form-search-supplier .search-supplier .btn {
    background: var(--main-color);
    position: absolute;
    right: 0px;
    top: 0px;
    height: 100%;
    color: #fff;
    text-transform: uppercase;
    border: none;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    transition: all 0.2s linear;
    border-radius: 0 20px 20px 0;
    padding: 8px 16px;
}

.block-supplier .form-search-supplier .search-supplier .btn img {
    width: 18px;
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
    -moz-filter: brightness(0) invert(1);
    -o-filter: brightness(0) invert(1);
    -ms-filter: brightness(0) invert(1);
}

.block-supplier.detail {
    padding-bottom: 0;
}

@media(max-width: 767px) {
    .block-supplier .form-search-supplier .search-supplier .btn {
        line-height: 20px;
    }

    .block-supplier {
        padding: 30px 0px 10px;
    }
}

.block-supplier .block-content {}

.block-supplier .block-content marquee {
    max-width: 800px;
    margin: 0px auto;
}

.block-supplier .block-content .img1 {
    text-align: center;
    margin-bottom: 30px;
}

.block-supplier .block-content .img1 img {
    height: 44px;
    display: inline-block;
    margin: 0px 4px;
    background: #fff;
    padding: 8px;
    border-radius: 2px;
}

.block-supplier .block-content .row {
    background: #fff;
    box-shadow: 0px 0px 10px #ddd;
    padding: 22px 8px;
    margin: 0px !important;
    border-radius: 8px;
}

.block-supplier.detail .block-content .row {
    background: none;
    padding: 0;
    box-shadow: none;
    margin: 0px -6px !important;
}

.block-supplier.detail .block-content .row>div {
    padding: 0px 6px;
}

.block-supplier .block-content .row .wrap-item {}

.block-supplier .block-content .row .wrap-item:nth-child(2n+1) {
    clear: both;
}

.block-supplier .block-content .row .wrap-item .item {
    border-top: 1px dashed #ddd;
    padding-top: 14px;
    margin-top: 14px;
}

.block-supplier.detail .block-content .row .wrap-item .item {
    background: #fff;
    padding: 13px !important;
    border-radius: 4px;
}

.block-supplier .block-content .row .wrap-item .item:after {
    content: '';
    display: block;
    clear: both;
}

.block-supplier .block-content .row .wrap-item:nth-child(1) .item,
.block-supplier .block-content .row .wrap-item:nth-child(2) .item {
    padding-top: 0px;
    border-top: none;
    margin-top: 0px;
}

@media(max-width: 767px) {
    .block-supplier .block-content .row .wrap-item:nth-child(2) .item {
        border-top: 1px dashed #ddd;
        padding-top: 14px;
        margin-top: 14px;
    }
}

.block-supplier .block-content .row .wrap-item .item .img {
    float: left;
    width: 200px;
    margin-right: 20px;
    height: 0px;
    padding-bottom: 32%;
    position: relative;
    border: 1px solid #f1f1f1;
    border-radius: 4px;
}

@media(max-width: 767px) {
    .block-supplier .block-content .row .wrap-item .item .img {
        width: 100px;
    }
}

.block-supplier .block-content .row .wrap-item .item .img img {
    position: absolute;
    /* height: 100%; */
    /* width: 100%; */
    /* object-fit: cover; */
    top: 0px;
    left: 0px;
    max-width: 100%;
    max-height: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
}

.block-supplier .block-content .row .wrap-item .item h3 {
    margin: 0px 0px 5px;
    line-height: inherit;
    font-size: inherit;
}

.block-supplier .block-content .row .wrap-item .item h3 a {
    color: #444;
    font-weight: 600;
    font-size: 15px;
}

.block-supplier .block-content .row .wrap-item .item:hover h3 a {
    color: #0099be;
}

.block-supplier .block-content .row .wrap-item .item .info {
    font-weight: 300;
    font-size: 13px;
    color: #999;
    max-height: 75px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.block-supplier .block-content .row .wrap-item .item .time {
    margin-top: 10px;
    font-size: 13px;
}

.block-supplier .block-content .row .wrap-item .item .time .map {
    color: #666;
    margin-bottom: 2px;
    display: block;
}

.block-supplier .block-content .row .wrap-item .item .time .map>i {
    margin-right: 2px;
    font-size: 15px;
}

.block-supplier .block-content .row .wrap-item .item .time .sum_product {
    color: var(--main-color);
}


/*Video*/

.block-video {}

.block-video .block-content {}

.block-video .block-content .row {
    margin: 0px -10px;
}

.block-video .block-content .row .wrap-item {
    padding: 0px 10px;
}

@media(max-width: 767px) {
    .block-video .block-content .row .row_home {
        padding: 0;
    }
}

.block-video .block-content .wrap-item {}

.block-video .block-content .wrap-item .item {
    margin: 10px 0px;
    border-radius: 4px;
    overflow: hidden;
}

@media(max-width: 767px) {
    .block-video .block-content .wrap-item .item {
        margin: 4px 0px;
    }
}

.block-video .block-content .wrap-item .item>a {
    display: block;
    height: 0;
    padding-bottom: 60%;
    position: relative;
}

.block-video .block-content .wrap-item .item>a img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    align-items: center;
}

.block-video .block-content .wrap-item .item>a i {
    color: #ed1c24;
    position: absolute;
    font-size: 38px;
    width: 30px;
    height: 17px;
    top: 50%;
    left: 0px;
    right: 0px;
    margin: auto;
    margin-top: -8px;
    background: #fff;
    line-height: 18px;
    border-radius: 18px;
}

.block-video .block-content .wrap-item .item h3 {
    margin: 0;
    font-size: 15px;
    text-align: center;
    padding: 18px;
    background: #fff;
    line-height: 1.4;
}

.block-video .block-content .wrap-item .item h3 a {
    display: block;
    height: 40px;
    overflow: hidden;
    text-overflow: ellipsis;
}


/*Album*/

.block-album {}

.block-album .block-content {}

.block-album .block-content .row {
    margin: 0px -10px;
}

.block-album .block-content .row .wrap-item {
    padding: 0px 10px;
}

@media(max-width: 767px) {
    .block-album .block-content .row {
        margin: 0px -8px;
    }

    .block-album .block-content .row .row_home {
        padding: 0;
    }

    .block-album .block-content .row .wrap-item {
        padding: 0px 8px;
    }
}

.block-album .block-content .wrap-item {}

.block-album .block-content .wrap-item .item {
    margin: 10px 0px;
    border-radius: 4px;
    overflow: hidden;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 1px 2px rgb(0 0 0 / 15%);
    box-shadow: 0 2px 2px rgb(0 0 0 / 15%);
}

@media(max-width: 767px) {
    .block-album .block-content .wrap-item .item {
        margin: 4px 0px;
    }
}

.block-album .block-content .wrap-item .item>a {
    display: block;
    height: 0;
    padding-bottom: 90%;
    position: relative;
    background: #fff;
}

.block-album .block-content .wrap-item .item>a img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    align-items: center;
}

.block-album .block-content .wrap-item .item h3 {
    padding: 25px 15px 18px;
    text-align: center;
    position: relative;
    margin: 0px;
    background: #fff;
}

.block-album .block-content .wrap-item .item h3 i {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: -21px;
    width: 36px;
    height: 36px;
    background: var(--main-color);
    margin-left: -18px;
    line-height: 24px;
    text-align: center;
    color: #fff;
    font-size: 13px;
    padding: 5px 0 0;
    border: 2px solid #fff;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.block-album .block-content .wrap-item .item h3 a {
    display: block;
    font-size: 14px;
    color: #444;
    text-decoration: none;
    line-height: 20px;
    height: 40px;
    overflow: hidden;
}


/**/

.sidebar-block-right {
    margin-bottom: 15px;
}

.sidebar-block-right>a {
    display: block;
    margin-bottom: 15px;
}

.sidebar-block-right>h3 {
    margin: 0 0 12px;
    font-size: 18px;
    border-left: 3px solid var(--main-color);
    color: var(--main-color);
    padding-left: 8px;
    text-transform: uppercase;
}

.sidebar-block-right .sidebar-content {
    margin: 0px;
    padding: 0px;
}

.sidebar-block-right .sidebar-content ul {}

.sidebar-block-right .sidebar-content li {
    list-style-type: none;
    background: #fff;
    margin: 0px 0px 8px;
    border-radius: 4px;
    padding: 6px;
}

.sidebar-block-right .sidebar-content li:after {
    content: '';
    display: block;
    clear: both;
}

.sidebar-block-right .sidebar-content li .img {
    float: left;
    width: 90px;
    margin-right: 10px;
    height: 65px;
    position: relative;
}

.sidebar-block-right .sidebar-content li .img>.fa.fa-youtube {
    position: absolute;
    color: #f41111;
    font-size: 18px;
    width: 24px;
    height: 23px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.sidebar-block-right .sidebar-content li .img>.fa.fa-youtube:before,
.sidebar-block-right .sidebar-content li .img>.fa.fa-image:before {
    position: relative;
    z-index: 1;
}

.sidebar-block-right .sidebar-content li .img>.fa.fa-youtube:after {
    content: '';
    position: absolute;
    width: 14px;
    height: 12px;
    top: 0;
    left: 0;
    right: 0;
    border: 0;
    margin: auto;
    background: #fff;
    z-index: 0;
    margin-top: 6px;
}

.sidebar-block-right .sidebar-content li .img>.fa.fa-image {
    position: absolute;
    color: var(--main-color);
    font-size: 20px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 22px;
    height: 20px;
}

.sidebar-block-right .sidebar-content li .img>.fa.fa-image:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #fff;
    z-index: 0;
    width: 18px;
    height: 14px;
    margin-top: 7px;
}

.sidebar-block-right.sidebar-block-product .sidebar-content li .img {
    height: 90px;
    border: 1px solid #f1f1f1;
}

.sidebar-block-right .sidebar-content li .img img {
    position: absolute;
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.sidebar-block-right .sidebar-content li h3 {
    margin: 5px 0px 0px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    max-height: 50px;
    overflow: hidden;
    float: left;
    width: calc(100% - 100px);
}

.sidebar-block-right .sidebar-content li h3 a {}


/*##### BREADCRUMB #####*/

.wrap-breadcrumb {}

.breadcrumb {
    white-space: nowrap;
    overflow-x: auto;
    background: transparent;
    border-radius: 0px;
    padding: 0px;
    font-size: 14px;
    font-weight: 400;
    color: #555;
    display: block;
    padding-bottom: 0px;
    border-bottom: none;
    margin: 8px 0px;
}

.breadcrumb li+li {
    margin-left: 3px;
}

.breadcrumb li a,
.breadcrumb li span {
    color: #414141;
    margin-right: 3px;
}

.breadcrumb li+li a {
    margin-left: 3px;
}

.breadcrumb li+li::before {
    content: "";
    padding: 0px;
}

.breadcrumb li a,
.breadcrumb li span {
    color: #000;
    line-height: 38px;
}


/*##### END BREADCRUMB #####*/

.modalAlert {
    text-align: center;
}

.modalAlert span.close {}

.modalAlert h3 {
    text-align: center;
    font-size: 30px;
    margin: 20px 0px 25px;
    color: var(--main-color);
}

.modalAlert p {
    text-align: center;
    font-size: 18px;
}

.modalAlert .btn {
    position: relative;
    float: none;
    width: 120px;
    opacity: 1;
    text-shadow: none;
    font-weight: 400;
    margin: 20px auto 10px;
    background: var(--main-color);
    border: none;
    border-bottom: 4px solid var(--main-color-hover);
    color: #fff;
    padding: 9px 0px;
    font-size: 15px;
}

.modal-header {
    text-align: center;
    font-weight: 600;
    font-size: 24px;
}

.modal-footer {
    border-top: none;
    padding-top: 0px;
    margin-bottom: 10px;
    text-align: center;
}

.bootstrap-dialog-message {
    font-size: 18px;
    text-align: center;
    margin: 15px 0px;
}

.img_add_cart {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -9999;
    width: 40px;
    height: 40px;
    margin: auto;
    visibility: hidden;
    opacity: 0;
}

.img_add_cart img {
    width: 0px;
}

.box_addcart_success {
    text-align: center;
    background: rgb(0 0 0 / 0.8);
    color: #fff;
    padding: 20px;
    border-radius: 12px;
    position: fixed;
    z-index: 99999;
    left: 0px;
    bottom: 0px;
    right: 0px;
    top: 0px;
    margin: auto;
    width: 220px;
    height: 115px;
    font-size: 16px;
    display: none;
    letter-spacing: 0.6px;
}

.box_addcart_success img {
    display: inline-block;
    width: 50px;
    margin-bottom: 8px;
}

.address-profile {
    padding: 0px;
    margin: 0;
}

.address-profile li {
    list-style-type: none;
}

.address-profile li label {
    font-weight: 500;
    cursor: pointer;
}

.page404 {
    background: #fff;
    text-align: center;
    padding: 80px 0px;
}

.page404 img {
    height: 160px;
}

.page404 .title1 {
    font-size: 40px;
}

.page404 .title2 {
    font-size: 20px;
}

.page404 .btn {
    margin-top: 20px;
}

.alert {
    position: fixed;
    width: 600px;
    margin: 40px auto 0px;
    left: 0px;
    right: 0px;
}


/**/

.galary-album {
    padding: 20px 0px;
    margin: 0px -3px;
}

.galary-album>ul {
    padding: 0px;
    margin: 0px;
}

.galary-album>ul>li {
    list-style: none;
    float: left;
    width: 16.66666667%;
    padding: 3px;
    overflow: hidden;
}

@media(max-width: 767px) {
    .galary-album>ul>li {
        width: 33.33%;
    }
}

.galary-album>ul>li a {
    display: block;
    height: 100%;
    width: 100%;
    cursor: pointer;
}

.galary-album>ul>li img:hover {
    opacity: 0.8;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.iframe-detail {
    width: 100%;
    border: none;
    margin-bottom: 15px;
}

.view_type_product {
    float: right;
}

.view_type_product span {
    display: inline-block;
    padding: 5px;
    font-size: 20px;
    cursor: pointer;
}

.view_type_product span.active {
    color: var(--main-color);
}


/**/

.download-app {
    box-shadow: 0px 0px 10px #ccc;
    color: #000000de;
    transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
    background-color: #fff;
    max-width: 600px;
    padding: 32px;
    margin: 30px auto;
    border-radius: 5px;
    text-align: center;
}

@media(max-width: 767px) {
    .download-app {
        padding: 15px;
    }
}

.download-app>h2 {
    margin: 12px 0px 25px;
    text-align: center;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 400;
}

.download-app>h4 {
    font-size: 18px;
    margin-bottom: 0;
    margin-top: 20px;
    line-height: 1.4;
}

.download-app>a>img {
    max-height: 120px;
    margin-top: 10px;
}

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

.down_app {
    text-align: center;
    padding: 0px;
}

.down_app a {
    background: #000;
    padding: 5px 20px;
    display: inline-block;
    border-radius: 5px;
    margin: 8px 0px;
}

.down_app img {
    display: inline-block;
    height: 48px;
}


/**/

.download_app {
    background: #f2f2f2;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    height: 80px;
    position: relative;
    line-height: 15px;
    padding: 8px 0px;
    white-space: nowrap;
    display: none;
}

@media(max-width: 767px) {
    .download_app {
        display: block;
    }
}

.download_app p {
    margin: 0px
}

.download_app>a img {
    width: 62px;
    float: left;
    border-radius: 10px;
    margin: 0px 10px 0px 40px;
    border: 1px solid #e8e8e8;
}

.download_app .name_app a {
    color: #333;
    font-weight: 600;
    font-size: 13px;
}

.download_app .author_app a {
    color: #666;
    font-size: 11px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    padding-right: 50px;
}

.download_app .start_app {
    display: inline-block;
    height: 9.5px;
    background-image: url(../images/start_app.svg);
    background-size: 10px 19px;
    width: 50px;
    white-space: nowrap;
    background-position: 0 9.5px;
    position: relative;
    top: -1px;
}

.download_app .start_app1 {
    background-position-x: 0;
    background-image: url(../images/start_app.svg);
    width: 45px;
    display: inline-block;
    height: 9.5px;
    background-size: 10px 19px;
    z-index: 1;
    position: absolute;
    top: 0px;
}

.download_app .view_app {
    position: absolute;
    right: 8px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    font-size: 18px;
    height: 26px;
    line-height: 26px;
}

.download_app .view_app a {
    color: var(--main-color);
}

.download_app .close_app {
    position: absolute;
    left: 10px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 24;
    height: 20px;
    text-align: center;
}

.download_app .close_app img {
    width: 15px;
}

.download_app .to_app span {
    display: inline-block;
    width: 18px;
    height: 1px;
    background: #000;
    position: relative;
    top: -4px;
    margin: 0px 3px 0px 2px;
}

.dropdown a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.dropdown a:hover {
    background-color: #f1f1f1
}

.dropdown:hover .dropdown-menu {
    display: block;
    font-size: 11px;
}


/*Banner*/

.top_banner {
    /* margin-top: 15px; */
}

.top_banner .no_flexslider {
    background: none;
    border-radius: 0px;
}

.top_banner .no_flexslider .slides li {
    margin-top: 15px;
}

.bottom_banner {
    padding: 10px 0px 20px;
    background: #fff;
    margin-top: 15px
}

.bottom_banner .row {
    margin: 0px -5px;
}

.bottom_banner .item {
    margin: 0;
    padding: 0px 5px;
}

.bottom_banner .item a {
    display: block;
    background: #fff;
    height: 80px;
    position: relative;
    border: 1px solid #f1f1f1;
    border-radius: 4px;
}

.bottom_banner .item a img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    padding: 10px;
}

.left_banner,
.right_banner {
    position: fixed;
    height: 0px;
    transition: all 0.5s ease-in-out;
    z-index: 9;
}

.left_banner {
    left: 0;
}

.right_banner {
    right: 0;
}

@media(max-width: 1409px) {

    .left_banner,
    .right_banner {
        display: none;
    }
}

.left_banner img,
.right_banner img {
    max-width: 120px;
    border: none;
    display: block;
}

.left_banner a+a img,
.right_banner a+a img {
    margin-top: 5px;
}

.bottom-left-banner,
.bottom-right-banner {
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 100;
    max-width: 12%;
    display: none;
}

@media(max-width: 767px) {

    .bottom-left-banner,
    .bottom-right-banner {
        display: none !important;
    }
}

.bottom-right-banner {
    left: auto;
    right: 0px;
}

.bottom-left-banner img,
.bottom-right-banner img {
    border: none;
    max-width: 100%;
}

.bottom-left-banner .close,
.bottom-right-banner .close {
    position: absolute;
    top: 0px;
    right: 15px;
    color: #414141;
    z-index: 100;
    font-size: 16px;
    cursor: pointer;
    padding: 6px;
    opacity: 1;
    font-weight: 400;
}

.bottom-left-banner .close,
.bottom-right-banner .close {
    right: 0px;
}

.popup-banner {
    position: fixed;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background: rgba(0, 0, 0, 0.6);
    z-index: 100;
    display: none;
}

.popup-banner img {
    max-width: 96%;
    max-height: 100%;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    margin: auto;
    border: none;
}

.popup-banner .close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 9;
    color: #fff;
    text-shadow: none;
    opacity: 1;
    background: #f00;
    padding: 9px;
    cursor: pointer;
}

.out_top_banner {
    text-align: center;
}

.out_top_banner img {
    width: 100%;
}

.sidebar_banner a+a {
    margin-top: 10px;
    display: block;
}


/**/

.block-option-1 {
    overflow: hidden;
    background: linear-gradient(to bottom, #fffaf5 0, #f8ecff 100%);
    padding: 40px 0px;
}

@media(max-width: 767px) {
    .block-option-1 {
        padding: 40px 0px 14px;
    }
}

.block-option-1 .row1 {
    /* padding-bottom: 50px; */
}

.block-option-1 .col-center {
    text-align: center;
}

.block-option-1 .col-center h2 {
    font-size: 200%;
    margin-bottom: 10px;
    max-width: 1000px;
    margin: 0 auto 10px;
    line-height: 1.4;
}

.block-option-1 .col-center .short_info {
    font-size: 130%;
    line-height: 1.4;
    max-width: 1000px;
    margin: 0 auto;
}

.block-option-1 .wrap-item {
    /* display: flex; */
    /* justify-content: space-between; */
    /* flex-wrap: wrap; */
}


/* .block-option-1 .wrap-item:nth-of-type(1) {
    width: 60%;
}

.block-option-1 .wrap-item:nth-of-type(2) {
    width: 40%;
}

.block-option-1 .wrap-item:nth-of-type(3) {
    width: 40%;
}

.block-option-1 .wrap-item:nth-of-type(4) {
    width: 60%;
} */

.block-option-1 .wrap-item:last-child {
    width: 100%;
}

.block-option-1 .wrap-item .item {
    /* display: flex; */
    justify-content: center;
    align-items: center;
    border: 1px solid #dbdbdb;
    border-radius: 7px;
    position: relative;
    background: #fff;
    margin-top: 20px;
}

.block-option-1 .img {
    float: left;
    width: 160px;
    margin-right: 14px;
    height: 127px;
}

.block-option-1 .img img {
    width: 100%;
    border-radius: 5px 0 0 5px;
    height: 100%;
    object-fit: cover;
}

.block-option-1 .content {
    padding: 20px;
}

.block-option-1 .item .content .title {
    color: #000;
    font-size: 130%;
    margin-top: 10px;
    word-break: break-word;
    margin-bottom: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 22px;
}

.block-option-1 .item .content .short_info {
    font-size: 110%;
    color: #000;
    line-height: 1.4;
    margin-bottom: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    min-height: 56px;
}

.block-option-1 .wrap-item:last-child .item .content .short_info {
    /* min-height: inherit; */
}

.block-option-1 .item .content .short_info p {
    margin-top: 10px;
    margin-bottom: 0;
}

.block-option-1 .item .content .wrap-point {
    position: absolute;
    right: -11px;
    top: 4px;
}

.block-option-1 .item .content .wrap-point .point {
    position: relative;
    background: var(--main-color);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 25px;
    font-size: 75%;
    color: #fff;
    line-height: 1.3;
    margin-bottom: 0;
}

.point i {
    transform: rotate(-30deg);
    transition: all .3s ease;
    font-size: 143%;
}

span.point:after {
    content: "";
    position: absolute;
    border-top: 8px solid;
    border-right: 11px solid #000000;
    margin-left: 11px;
    bottom: -8px;
    right: 0;
    transform: rotate(180deg);
}


/*  */

.btn-main {
    margin-top: 10px;
    background: var(--main-color);
    padding: 10px 25px;
    display: block;
    width: max-content;
    color: #fff !important;
    font-size: 110%;
    border-radius: 30px;
    border: none;
    font-weight: 400;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.btn-main:hover {
    background: var(--main-color-hover);
}

a.btn-main p {
    margin-bottom: 0;
}

.block-title .title {
    color: #000;
    font-size: 200%;
    margin: 30px 0 20px;
    font-weight: 600;
    max-width: 1000px;
    line-height: 1.2;
}

.block-title .short_info {
    font-size: 130%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 20px;
    /* max-width: 900px; */
}

.block-title .short_info_full {
    line-height: 1.6;
    margin: 0 0 20px 0;
    color: #666;
    text-align: justify;
}

.short_info.short_info1 {
    font-size: 160%;
    font-weight: 800;
}

.title_sub {
    color: #000;
    font-size: 164%;
    margin-top: 0;
    word-break: break-word;
}


/* .short_info_sub {
    font-size: 118%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 0;
    min-height: 80px;
} */


/**/

.block-option-11 {
    padding: 60px 0 40px;
    position: relative;
}

@media(max-width: 767px) {
    .block-option-11 {
        padding: 10px 0 20px;
    }
}

.block-option-11::before {
    content: '';
    position: absolute;
    background-image: linear-gradient(115deg, rgb(25 85 123 / 81%), rgb(7 29 45 / 72%));
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
    z-index: 1;
}

.block-option-11 .container {
    position: relative;
    z-index: 2;
}

.block-option-11 .left .row {
    margin: 0 -10px;
}

.block-option-11 .left .wrap-item {
    padding: 0 10px;
}

@media(max-width: 767px) {
    .block-option-11 .left .row {
        margin: 0 -8px;
    }

    .block-option-11 .left .wrap-item {
        padding: 0 8px;
    }
}

.block-option-11 .left .wrap-item .item {
    padding: 25px 20px;
    -webkit-box-shadow: 0 0 10px 5px rgba(203, 202, 202, 0.2);
    box-shadow: 0 0 10px 5px rgba(203, 202, 202, 0.2);
    background: white;
    margin-bottom: 20px;
    border-radius: 10px;
}

@media(max-width: 767px) {
    .block-option-11 .left .wrap-item .item {
        margin-bottom: 12px;
    }
}

.block-option-11 .left .wrap-item .item .img {}

.block-option-11 .left .wrap-item .item .img img {
    height: 60px;
}

.block-option-11 .left .wrap-item .item .title {
    margin: 10px 0;
    font-size: 140%;
}

.block-option-11 .left .wrap-item .item .title a {}

.block-option-11 .left .wrap-item .item .short_info {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.block-option-11 .left .wrap-item .item .short_info p {
    margin: 0px 0 0 0;
}

.block-option-11 .block-title .title,
.block-option-11 .block-title .short_info,
.block-option-11 .block-title .short_info_full {
    color: #fff;
}


/**/

.block-option-2 {
    background-size: cover;
    background-position: center center;
    padding: 50px 0;
}

@media(max-width: 767px) {
    .block-option-2 {
        padding: 20px 0
    }
}

.block-option-2 .container,
.block-option-3 .container {
    /* max-width: 1423px; */
}

.block-option-2 .block-title {
    /* padding-bottom: 50px; */
}

.block-option-2 .wrap-item {
    margin-top: 15px;
    margin-bottom: 15px;
}

@media(max-width: 767px) {
    .block-option-2 .wrap-item {
        margin-top: 6px;
        margin-bottom: 6px;
    }
}

.block-option-2 .item {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 1px 46px 0 rgb(0 0 0 / 6%);
    transition: .3s linear;
    padding: 30px 65px 20px 20px;
}

.block-option-2 .wrap-item:first-child .item {
    background: #e9ddff;
}

.block-option-2 .wrap-item:nth-child(2) .item {
    background: #ffdadb;
}

.block-option-2 .wrap-item:nth-child(3) .item {
    background: #d6edff;
}

.block-option-2 .wrap-item:nth-child(4) .item {
    background: #ffede1;
}

.block-option-2 .wrap-item:nth-child(5) .item {
    background: #fff6dd;
}

.block-option-2 .item img {
    object-fit: contain;
    position: absolute;
    height: 40px;
    right: 35px;
    bottom: 0;
    top: 0;
    margin: auto;
}

.block-option-2 .item:hover img {
    transform: rotateY(360deg);
    transition-duration: 1s;
}

.block-option-2 .item .short_info_sub {
    font-size: 110%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 0;
    min-height: 80px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.block-option-2 .item .short_info_sub p {
    margin: 10px 0 0 0;
}


/*  */


/*  */

.block-option-3 {
    padding: 40px 0px;
    overflow: hidden;
}

.block-option-3 .row1 {
    margin-top: 30px;
}

.equal-height-container {
    display: flex;
    flex-wrap: wrap;
}

.equal-height-container .items .item {
    flex: 1;
}

.block-option-3 .col-left .wrap-item {
    background: linear-gradient(to bottom, #b71c1c, #120421);
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 991px) {
    .block-option-3 .col-left .wrap-item {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px;
        background-position: top;
        height: 240px;
    }
}

@media (max-width: 767px) {
    .block-option-3 .col-left .wrap-item {
        display: none;
    }
}

.block-option-3 .col-left .wrap-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at top, rgba(0, 0, 0, 0.3), transparent 70%);
    pointer-events: none;
}

.block-option-3 .col-left .item {
    position: relative;
    color: #fff;
    padding: 32px;
}

.equal-height-container .items .item {
    flex: 1;
}

.block-option-3 .col-right .row {
    margin: 0 -6px;
}

.block-option-3 .col-right .wrap-item {
    padding: 0 6px;
}

.block-option-3 .col-right .item {
    margin-top: 20px;
    width: 100%;
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border-radius: 0.75rem;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    transition: all .2s;
    display: flex;
    overflow: hidden;
    text-align: center;
    box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px;
}

.block-option-3 .col-right>div:nth-child(1) .item,
.block-option-3 .col-right>div:nth-child(2) .item {
    /* margin-top: 0; */
}

.block-option-3 .col-right .item .img {
    height: 0;
    padding-bottom: 72%;
    position: relative;
}

.block-option-3 .col-right .item:hover {
    cursor: pointer;
    transform: translate(-8px, -8px);
}

@media (min-width: 1500px) {
    .block-option-3 .col-right .item .img {
        height: 150px;
        overflow: hidden;
    }
}

.block-option-3 .col-right .item .img img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
}

.block-option-3 .col-right .item .content {
    padding: 6px 12px 16px;
}

.block-option-3 .col-right .item .content .title_sub {
    font-size: 130%;
    margin: 4px 0 6px 0;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height: 45px;
    padding: 0 10px;
    color: var(--main-color);
    color: #111;
    font-weight: 600;
}

.block-option-3 .col-right .item .content .short_info_sub {
    font-size: 100%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 0;
    min-height: 66px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.block-option-3 .col-left .short_info {
    font-size: 143%;
    margin-bottom: 0;
    line-height: 1.4;
    min-height: 146px;
    color: #fff;
}

.block-option-3 .short_info {
    max-width: 100%;
}

@media(max-width: 767px) {
    .block-option-3 .col-right .item {
        margin: 8px 0px !important;
    }
}


/*  */

.block-option-4 {
    padding: 40px 0;
}

.block-option-4 .col-left .img {
    display: inline-block;
    width: 32%;
    margin-top: 15px;
    padding: 0 12px 0 0;
}

.block-option-4 .short_info1 {
    color: var(--main-color);
    font-weight: 600;
    font-size: 150%;
    margin: -12px 0 8px 0px;
}

.block-option-4 .col-left .img:last-child {
    padding-right: 0;
}

.fixedslideimg {
    /* overflow: hidden; */
    /* position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    transition-duration: 1s; */
}

.fixedslideimg img {
    /* width: 100%; */
}


/*  */

.block-option-5 {
    /* margin: 80px 0px; */
    background-image: linear-gradient(to right, #E2F5FF85, #FFE2D836);
    padding: 30px 0;
}

.block-option-5 .row {
    margin: 0 -6px;
}

.block-option-5 .row .wrap-item {
    padding: 0 6px;
}

.block-option-5 .item {
    overflow: hidden;
    position: relative;
    /* padding: 10px 0px; */
    border-radius: 12px;
    text-align: center;
    margin: 6px 0;
}

.block-option-5 .item .img {
    overflow: hidden;
    background-color: #000;
    scale: 1.04;
    transition-duration: 550ms;
    transition-property: scale;
    transition-timing-function: cubic-bezier(0.85, 0, 0, 1);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    height: 0;
    padding-bottom: 100%;
    position: relative;
}

.block-option-5 .item img {
    transition-duration: 0.7s;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
    filter: blur(0px);
    opacity: 0.3;
    scale: 1;
}

.block-option-5 .item:hover img {
    filter: blur(75px);
    opacity: .5;
    scale: 5;
    transition-duration: 550ms;
    transition-property: opacity, width, -webkit-filter;
    transition-property: filter, opacity, width;
    transition-property: filter, opacity, width, -webkit-filter;
    transition-timing-function: cubic-bezier(0.85, 0, 0, 1);
}

.block-option-5 .item .title_heading {
    position: absolute;
    top: 30px;
    left: 0;
    right: 0;
}

.block-option-5 .item .title_heading {
    color: #fff;
    font-size: 140%;
    padding: 0 20px;
    line-height: 1.3;
}

.block-option-5 .item:hover .content {
    left: 0;
}

.block-option-5 .item .content {
    position: absolute;
    transition-duration: 550ms;
    transition-property: left;
    transition-timing-function: cubic-bezier(0.85, 0, 0, 1);
    top: 90px;
    left: 450px;
    padding: 10px 15px;
    width: 100%;
    left: 0;
}

.block-option-5 .item .content {
    color: #fff;
    font-size: 118%;
    margin: 8px 0 0 0;
}

.block-option-5 .item .content p {}

.read-more-btn {
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    font-size: 120%;
    font-weight: 500;
}

.read-more-btn a {
    color: #fff;
}


/*  */

.block-option-6 {
    overflow: hidden;
}

.block-option-6 .item:nth-child(2) .block-title .title {
    color: var(--main-color);
    font-size: 240%;
    font-weight: 800;
}

.block-option-6 .item:nth-child(2) .block-title .short_info {
    font-size: 186%;
    font-weight: 800;
}

.block-option-6.line {
    width: 100%;
    position: relative;
    /* background: #f2f2f2; */
    padding: 40px 00px;
}

@media(max-width: 767px) {
    .block-option-6.line {
        padding: 0 0px 14px;
    }
}

.block-option-6.line:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-right: 1px solid #D9D9D9;
    height: 92%;
    width: 50%;
}

@media(max-width: 991px) {
    .block-option-6.line:before {
        height: 0;
    }
}

@media (min-width: 992px) {
    .block-option-6 .col-left {
        padding: 50px 0 0;
    }
}

.block-option-6 .col-left {
    padding: 0px 0;
    justify-content: center;
    position: relative;
}

.flex-center-list {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.block-option-6 .col-left:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    /* transform: translate(-50%, -50%); */
    bottom: 0;
    right: 0;
    background: #fff;
    height: 60px;
    width: 60px;
    border-radius: 50px;
    margin-top: -30px;
    margin-left: -30px;
}

@media (max-width: 767px) {
    .block-option-6 .col-left:before {
        height: 40px;
        width: 40px;
    }
}

.block-option-6 .col-left li {
    width: 50%;
    border-bottom: 1px solid #D9D9D9;
    border-right: 1px solid #D9D9D9;
    padding: 34px 20px;
}

@media (max-width: 767px) {
    .block-option-6 .col-left li {
        padding: 12px;
    }
}

.block-option-6 .col-left li:nth-child(2) {
    border-right: none;
}

.block-option-6 .col-left li:nth-child(3) {
    border-bottom: none;
}

.block-option-6 .col-left li:nth-child(4) {
    border-bottom: none;
    border-right: none;
}

.block-option-6 .col-left li .flex-center-list {
    justify-content: left;
    gap: 10px;
    align-items: center;
}

.block-option-6 .col-left img {
    width: 50px;
    /* width: auto; */
}

.block-option-6 .col-left .short_info {
    font-size: 230%;
    font-weight: 700;
    margin-left: 6px;
    margin-top: 0;
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .block-option-6 .col-left img {
        width: 35px;
        height: 35px;
    }

    .block-option-6 .col-left .short_info {
        font-size: 179%;
        margin: 0;
        display: contents;
    }
}

.block-option-6 .col-left .title_heading {
    padding-left: 69px;
    font-size: 130%;
    font-weight: 400;
}

@media (max-width: 767px) {
    .block-option-6 .col-left .title_heading {
        padding-left: 0px;
        font-size: 114%;
        text-align: center;
    }
}

.block-option-6 .col-right {
    padding: 36px 0;
    justify-content: center;
    position: relative;
}

@media (max-width: 767px) {
    .block-option-6 .col-right {
        padding: 0;
    }
}

.block-option-6 .col-right:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 35%;
    /* transform: translate(-150%, -50%); */
    bottom: 0;
    right: 0;
    border-radius: 50px;
    background: #fff;
    height: 60px;
    width: 60px;
    border-radius: 50px;
    margin-top: -30px;
    margin-left: -30px;
}

.block-option-6 .col-right:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 30%;
    /* transform: translate(50%, -50%); */
    bottom: 0;
    left: auto;
    background: #f2f2f2;
    height: 80px;
    width: 80px;
    border-radius: 50px;
    background: #fff;
    height: 60px;
    width: 60px;
    border-radius: 50px;
    margin-top: -30px;
    margin-left: -30px;
}

@media (max-width: 767px) {

    .block-option-6 .col-right:before,
    .block-option-6 .col-right:after {
        height: 40px;
        width: 40px;
        left: 46%;
        top: 50%;
        display: none;
    }

    .block-option-6 .col-right:after {
        display: none;
    }
}

.block-option-6 .col-right li {
    width: 30%;
    border-bottom: 1px solid #D9D9D9;
    border-right: 1px solid #D9D9D9;
    padding: 20px;
    text-align: center;
}

@media(max-width: 767px) {
    .block-option-6 .col-right li {
        width: 50%;
        border-bottom: 1px solid #D9D9D9 !important;
        border-right: 1px solid #D9D9D9 !important;
        border: 1px solid #D9D9D9 !important;
        margin: 0 -1px -1px 0;
    }
}

.block-option-6 .col-right li:nth-child(3) {
    border-right: none;
}

.block-option-6 .col-right li:nth-child(4) {
    border-bottom: none;
}

.block-option-6 .col-right li:nth-child(5) {
    border-bottom: none;
}

.block-option-6 .col-right li:nth-child(6) {
    border-right: none;
    border-bottom: none;
}

.block-option-6 .col-right li .img {
    height: 145px;
    position: relative;
    display: block;
}

.block-option-6 .col-right li img {
    height: auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    max-width: 90%;
}


/**/

.block-option-7 {
    background-color: var(--main-color);
    background-size: contain;
    background-position: right bottom;
    color: #fff;
    padding: 50px 0px;
    /* margin-top: 50px; */
    background-size: cover;
    position: relative;
}

.block-option-7:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: #00000075;
    top: 0;
    left: 0;
}

.block-option-7 .block-title {
    text-align: left;
}

.block-option-7 .block-title .title {
    color: #fff;
    line-height: 1.4;
    margin-bottom: 26px;
    margin-top: 0;
}

.block-option-7 .btn-main:hover {
    position: relative;
    background-color: var(--main-color-hover);
}


/* block-option-77 */

.block-option-77 {
    padding: 40px 0;
    background-color: #f9faff;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right;
}

.block-option-77 .row {
    text-align: center;
}

.block-option-77 .row .item {
    margin: 6px 0;
    padding: 0 6px;
    display: inline-block;
    float: none;
    width: 33%;
}

@media(max-width: 991px) {
    .block-option-77 .row .item {
        width: 49%;
    }
}

@media(max-width: 767px) {
    .block-option-77 .row .item {}
}

.block-option-77 .row .item .iframe {
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 0px 0px 8px rgba(30, 40, 117, 0.05);
    padding: 30px 20px 15px;
    height: 100%;
    text-align: left;
}

.block-option-77 .row .item .iframe .img {}

.block-option-77 .row .item .iframe .img img {
    height: 70px;
}

.block-option-77 .row .item .iframe .content {}

.block-option-77 .row .item .iframe .content .view {
    text-align: right;
}

.block-option-77 .row .item .iframe .content .view a {
    color: var(--main-color);
    /* text-decoration: underline; */
    font-weight: 500;
}

.block-option-77 .row .item .iframe .content .view a i {
    font-size: 90%;
    margin-left: 4px;
}

.block-option-77 .row .item .iframe .content .title_sub {
    font-size: 140%;
    color: #272830;
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 1.2;
    margin-top: 25px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.block-option-77 .row .item .iframe .content .title_sub a {}

.block-option-77 .row .item .iframe .content .short_info_sub {
    height: 70px;
    overflow: hidden;
    font-size: 110%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

@media(max-width: 767px) {
    .block-option-77 .row .item .iframe .content .short_info_sub {
        /* height: auto;
        -webkit-line-clamp: 10; */
    }
}

.block-option-77 .row .item .iframe .content .short_info_sub p {}


/*  */

.block-option-8 {
    overflow: hidden;
    padding: 80px 0px;
    background: linear-gradient(to right, #E2F5FF85, #FFE2D836);
}

@media(max-width: 767px) {
    .block-option-8 {
        padding: 20px 0;
    }
}

.block-option-8 .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.block-option-8 .wrap .nav-tabs {
    border-bottom: 0;
}

@media(max-width: 767px) {
    .block-option-8 .wrap .nav-tabs {
        white-space: nowrap;
        overflow-x: auto;
        padding-bottom: 12px;
        margin-bottom: 20px;
        padding-top: 20px;
    }
}

.block-option-8 .wrap .nav-tabs>li>a {
    border: 0 !important;
    background: transparent;
    padding: 0;
    margin: 0;
}

.block-option-8 .wrap .images {
    width: 50%;
    position: relative;
}

.block-option-8 .wrap .images li {
    width: 100%;
    position: relative;
}

@media(max-width: 991px) {
    .block-option-8 .wrap {
        display: block;
        margin-top: 0px;
    }

    .block-option-8 .wrap .images {
        width: 100%;
    }

    .block-option-8 .wrap .images li {
        width: 20%;
        position: relative;
    }
}

@media(max-width: 991px) {
    .block-option-8 .wrap .images li {
        width: 48%;
        position: relative;
    }
}

@media(max-width: 767px) {
    .block-option-8 .wrap .images li {
        width: 48%;
        position: relative;
        width: auto;
        float: none;
        display: inline-block;
        margin: 0 12px;
    }
}

.block-option-8 .wrap .images .img img {
    cursor: pointer;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 10px solid #efefef;
    box-shadow: 0 3px 25px -8px #a0a0a0;
    opacity: 0.5;
    transition: all ease 220ms;
    position: relative;
    z-index: 1;
}

.wrap .nav.nav-tabs>li .img img.active {
    cursor: pointer;
    opacity: 1;
    border: 5px solid #fff;
    transition: all ease 220ms;
}

.block-option-8 .wrap .images li:nth-child(1) .img img {
    margin: 28px 0px 0 38px;
}

.block-option-8 .wrap .images li:nth-child(2) .img img {
    margin: 0px 54px 0 auto;
}

.block-option-8 .wrap .images li:nth-child(3) .img img {
    margin: 0px 0px 0px 192px;
}

.block-option-8 .wrap .images li:nth-child(5) .img img {
    margin: -70px 76px 0px auto;
}

@media (max-width: 992px) {
    .block-option-8 .wrap .images li .img img {
        margin: 0 auto !important;
        width: 140px;
        height: 140px;
    }
}

.block-option-8 .content {
    width: 50%;
}

@media (max-width: 991px) {
    .block-option-8 .content {
        width: 100%;
        text-align: center;
    }
}

.block-option-8 .description h4 {
    font-size: 250%;
    color: #000;
    font-weight: 900;
}

@media(max-width: 767px) {
    .block-option-8 .description h4 {
        font-size: 200%;
    }
}

.block-option-8 .description h5 {
    font-size: 143%;
    color: #000;
    font-weight: 900;
    margin: 20px 0;
    line-height: 1.4;
}

.block-option-8 .description .info-detail {
    font-size: 134%;
    color: #000;
    line-height: 1.3;
    margin-bottom: 0;
    line-height: 1.6;
}

.block-option-8 .clients-btns {
    display: inline-block;
}

.block-option-8 .video-btn {
    box-shadow: 0px 0px 1px 1px #0000001a;
    margin-top: 22px;
    padding: 10px 20px;
    margin-right: 16px;
    color: #fff;
}

@media (max-width: 767px) {
    .block-option-8 .description .info-detail {
        font-size: 114%;
    }

    .block-option-8 .clients-btns {
        width: 100%;
    }

    .block-option-8 .video-btn {
        margin-top: 22px;
        padding: 14px 32px;
        margin-right: 0;
        width: 100%;
    }
}

.banner1 {
    background: #F7F9FB;
    margin: 0;
    padding: 60px 0 50px;
}

.banner1 .item1 {
    background-color: #fff;
    border-radius: 30px;
    box-shadow: 0 4px 12px 0 #0000001a;
    min-height: 150px;
    min-width: 168px;
    padding: 0px 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}

.banner1 .block-title {
    margin-bottom: 60px;
}

.banner1 .slick-slider .slick-arrow {
    display: none !important;
}

.view_all_option {}

@media(max-width: 767px) {
    .view_all_option {
        margin-bottom: 20px;
    }
}

.view_all_option .btn {
    background: var(--main-color);
    color: #fff;
    border-radius: 50px;
    padding: 9px 30px 10px;
}

.view_all_option .btn:hover {
    background: var(--main-color-hover);
}

.no-slick-arrow .slick-arrow {
    display: none !important;
}

/**/

/* Reset and Base Styles */
:root {
    --primary: #2563EB;
    --primary-magenta: #D946EF;
    --primary-orange: #F97316;
    --primary-yellow: #F59E0B;
    --on-primary: #ffffff;
    --surface: #F8FAFC;
    --on-surface: #0F172A;
    --surface-container: #F1F5F9;
    --surface-container-low: #F8FAFC;
    --surface-container-high: #E2E8F0;
    --surface-container-highest: #CBD5E1;
    --surface-container-lowest: #ffffff;
    --outline: #94A3B8;
    --outline-variant: #E2E8F0;
    --on-surface-variant: #475569;
    --error: #EF4444;

    --gutter: 24px;
    --container-padding-mobile: 20px;
    --container-padding-desktop: 60px;

    --headline-sm-size: 24px;
    --headline-sm-line: 32px;
    --body-md-size: 16px;
    --body-md-line: 24px;
    --body-lg-size: 18px;
    --body-lg-line: 28px;
    --label-sm-size: 12px;
    --label-sm-line: 16px;
    --label-md-size: 14px;
    --label-md-line: 20px;
    --display-lg-size: 48px;
    --display-lg-line: 56px;

    /* Base Colors */
    --color-blue: #00d2ff;
    --color-purple: #a549f9;
    --color-orange: #ffaa00;

    --background: #ffffff;
    --on-surface: #1a1c1e;
    --on-surface-variant: #434656;
    --surface-container-low: #f3f3f6;
    --surface-container-highest: #e2e2e5;
    --primary-cyan: #00d2ff;
    --primary-cyan-dark: #00a8cc;
    --primary-purple: #a549f9;
    --primary-purple-dark: #8e2ce6;
    --primary-orange: #ffaa00;
    --primary-orange-dark: #e69900;
}


/* Sticky App Header & Shrink on Scroll */
.app-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background-color: var(--surface-container-lowest, #ffffff);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    transition: all 0s cubic-bezier(0.16, 1, 0.3, 1);
}

.app-header.is-scrolled {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
    backdrop-filter: blur(10px);
    background-color: rgba(255, 255, 255, 0.95);
}

/* Nav Menu & Header Logo Responsive Layout */
.nav-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    height: 80px;
    transition: height 0.3s cubic-bezier(0.16, 1, 0.3, 1), padding 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.nav-menu .header-logo {
    display: flex;
    align-items: center;
    margin-right: 16px;
    flex-shrink: 0;
}

.nav-menu .header-logo .header-logo-img {
    height: 78px;
    max-height: 78px;
    width: auto;
    object-fit: contain;
    padding: 5px 0;
    transition: height 0.3s cubic-bezier(0.16, 1, 0.3, 1), max-height 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.nav-items-scroll {
    flex: 1;
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
    gap: 16px;
    height: 100%;
    overflow-x: auto;
    scrollbar-width: none;
    justify-content: center;
}

.nav-items-scroll::-webkit-scrollbar {
    display: none;
}

/* Scrolled state: shrink height to 46px */
.app-header.is-scrolled .nav-menu {
    height: 46px !important;
}

.app-header.is-scrolled .header-logo .header-logo-img {
    height: 42px !important;
    max-height: 42px !important;
}

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

.mobile-menu-toggle {
    display: none;
}

@media (max-width: 768px) {
    .nav-menu {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        height: auto !important;
        padding-top: 2px;
        padding-bottom: 2px;
        overflow: visible;
        transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        gap: 0px;
        padding: 2px 6px;
    }

    .nav-header-row {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 48px;
    }

    .nav-menu .header-logo {
        width: auto;
        margin-right: 0;
        padding-bottom: 0;
        flex-shrink: 0;
    }

    .nav-menu .header-logo .header-logo-img {
        height: 50px;
        max-height: 50px;
        width: auto;
        padding: 5px 0;
    }

    .mobile-menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        border-radius: 50%;
        background: #f1f5f9;
        border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
        color: #1e293b;
        cursor: pointer;
        transition: all 0.25s ease;
        padding: 0;
        outline: none;
    }

    .mobile-menu-toggle .menu-icon,
    .mobile-menu-toggle .close-icon {
        font-size: 22px;
        line-height: 1;
    }

    .mobile-menu-toggle .close-icon {
        display: none;
    }

    .app-header.mobile-menu-open .mobile-menu-toggle .menu-icon {
        display: none;
    }

    .app-header.mobile-menu-open .mobile-menu-toggle .close-icon {
        display: inline-block;
    }

    .app-header.mobile-menu-open .mobile-menu-toggle {
        background: rgba(239, 68, 68, 0.1);
        color: #ef4444;
        border-color: rgba(239, 68, 68, 0.2);
    }

    /* Hide nav items by default on mobile */
    .nav-items-scroll {
        display: none;
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: 4px;
        padding-top: 10px;
        padding-bottom: 8px;
        border-top: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
        margin-top: 6px;
        overflow: hidden;
    }

    /* Show nav items when mobile-menu-open class is active */
    .app-header.mobile-menu-open .nav-items-scroll {
        display: flex !important;
        animation: fadeInDown 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }

    .nav-items-scroll .nav-item {
        white-space: nowrap;
        width: 100%;
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 16px !important;
        border-radius: 12px;
        font-size: 14px !important;
        font-weight: 600;
        color: #334155;
        height: auto !important;
        transition: all 0.2s ease;
    }

    .nav-items-scroll .nav-item:hover,
    .nav-items-scroll .nav-item.active {
        color: var(--primary, #2563eb);
    }

    /* Scrolled state on mobile maintains full header structure with toggle */
    .app-header.is-scrolled .nav-menu {
        height: auto !important;
        max-height: none !important;
        padding-top: 4px !important;
        padding-bottom: 4px !important;
    }

    .app-header.is-scrolled .nav-header-row {
        height: 42px !important;
    }

    .app-header.is-scrolled .header-logo .header-logo-img {
        height: 42px !important;
        max-height: 42px !important;
    }
}

.nav-item {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 100%;
    padding: 0 15px;
    color: var(--on-surface-variant);
    font-size: var(--label-md-size);
    font-weight: 500;
    white-space: nowrap;
    transition: color 0.2s;
}

.nav-item:hover {
    background-image: linear-gradient(to right, #2B59FF, #BB2BFF, #FF5C00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

.nav-item.active {
    /* border-bottom: 2px solid var(--primary); */
    font-weight: 600;
    background-image: linear-gradient(to right, #2B59FF, #BB2BFF, #FF5C00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

.nav-item .material-symbols-outlined {
    font-size: 20px;
}



.social-links {
    display: flex;
    gap: 16px;
}

.social-links a {
    color: #fff;
}

.social-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s;
}

.social-btn:nth-child(1):hover {
    background-color: var(--primary);
}

.social-btn:nth-child(2):hover {
    background-color: var(--primary-magenta);
}

.social-btn:nth-child(3):hover {
    background-color: var(--primary-orange);
}

/* News Section & Cards Styles */
.news-section {
    padding-top: 15px;
    padding-bottom: 40px;
}

.news-container {
    width: 100%;
}

.news-header {
    margin-bottom: 24px;
}

.news-header .trend-label {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    display: block;
    margin-bottom: 4px;
}

.news-category-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 24px;
}

.news-cate-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 9999px;
    background: var(--surface-container-lowest, #ffffff);
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.1));
    font-size: 13px;
    font-weight: 600;
    color: var(--on-surface, #1e293b);
    transition: all 0.3s ease;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.news-cate-pill .icon {
    font-size: 16px;
    color: var(--primary-cyan, #00d2ff);
}

.news-cate-pill:hover {
    background: linear-gradient(135deg, rgba(0, 210, 255, 0.1), rgba(165, 73, 249, 0.1));
    border-color: var(--primary-cyan, #00d2ff);
    color: var(--primary, #2563eb);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 210, 255, 0.15);
}

/* News Grid Layout */
.news-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}

@media (min-width: 640px) {
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .news-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* News Card */
.news-card {
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 20px;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.4s ease;
}

.news-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px -10px rgba(0, 102, 255, 0.15);
    border-color: rgba(0, 210, 255, 0.4);
}

.news-img-box {
    width: 100%;
    aspect-ratio: 16 / 9;
    position: relative;
    overflow: hidden;
    background: #f1f5f9;
    display: block;
}

.news-img-box .news-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.news-card:hover .news-img-box .news-img {
    transform: scale(1.08);
}

.news-badge-date {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: rgba(15, 23, 42, 0.75);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 9999px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 1px solid rgba(255, 255, 255, 0.15);
}

.news-card-body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.news-card-title {
    margin: 0 0 10px 0;
}

.news-card-title a {
    font-size: 17px;
    font-weight: 700;
    color: var(--on-surface, #0f172a);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.2s ease;
}

.news-card-title a:hover {
    color: var(--primary-orange, #ffaa00);
}

.news-card-desc {
    font-size: 13px;
    color: var(--on-surface-variant, #64748b);
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 16px 0;
    flex: 1;
    font-weight: 400;
}

.news-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 12px;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    margin-top: auto;
}

.news-card-time {
    font-size: 12px;
    color: #94a3b8;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.btn-read-more {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    font-weight: 700;
    color: var(--primary, #2563eb);
    transition: all 0.2s ease;
}

.btn-read-more .icon {
    font-size: 16px;
    transition: transform 0.2s ease;
}

.btn-read-more:hover {
    color: var(--primary-orange, #ffaa00);
}

.btn-read-more:hover .icon {
    transform: translateX(4px);
}

.news-empty {
    text-align: center;
    padding: 60px 20px;
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 20px;
    border: 1px solid var(--outline-variant);
}

.news-empty .empty-icon {
    font-size: 48px;
    color: #94a3b8;
    margin-bottom: 12px;
}

.news-empty p {
    font-size: 15px;
    color: #64748b;
    font-weight: 500;
}

/* Detail News Article */
.news-article-card {
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 24px;
    padding: 32px;
    border: 1px solid var(--outline-variant);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
}

.news-article-title {
    font-size: 28px;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 12px;
}

.news-article-meta {
    display: flex;
    gap: 20px;
    font-size: 13px;
    color: #64748b;
    padding-bottom: 16px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--outline-variant);
    font-weight: 500;
}

.news-article-body {
    font-size: 15px;
    line-height: 1.8;
    color: #334155;
}

.news-article-body img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin: 16px 0;
}

/* Product Detail Styling - Harmonized with Home Theme */
.content-product-detail {
    padding-top: 15px;
    padding-bottom: 30px;
}

.product-detail-card {
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 24px;
    padding: 32px;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
}

@media (max-width: 768px) {
    .product-detail-card {
        padding: 16px;
        border-radius: 16px;
    }
}

.images-product-detail .zoom-image {
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    background: #f8fafc;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.images-product-detail .zoom-image img {
    max-height: 420px;
    object-fit: contain;
    border-radius: 12px;
}

.images-product-detail .thumbs {
    margin-top: 16px;
    position: relative;
}

.images-product-detail .thumbs .item {
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: all 0.2s ease;
    cursor: pointer;
    background: #f8fafc;
    padding: 4px;
}

.images-product-detail .thumbs .item.active,
.images-product-detail .thumbs .item:hover {
    border-color: var(--primary-cyan, #00d2ff);
    box-shadow: 0 0 12px rgba(0, 210, 255, 0.3);
}

.images-product-detail .thumbs .item img {
    border-radius: 8px;
}

/* Owl Carousel Buttons Navigation for Thumbs */
.thumbs .owl-controls {
    margin-top: 0;
}

.thumbs .owl-buttons {
    position: static;
}

.thumbs .owl-buttons .owl-prev,
.thumbs .owl-buttons .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.12));
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1e293b;
    font-size: 15px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    opacity: 0.85;
    padding: 0;
    margin: 0;
}

.thumbs .owl-buttons .owl-prev {
    left: -12px;
}

.thumbs .owl-buttons .owl-next {
    right: -12px;
}

.thumbs .owl-buttons .owl-prev:hover,
.thumbs .owl-buttons .owl-next:hover {
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    color: #ffffff;
    border-color: transparent;
    box-shadow: 0 6px 16px rgba(0, 210, 255, 0.4);
    transform: translateY(-50%) scale(1.15);
    opacity: 1;
}

.thumbs .owl-buttons .owl-prev i,
.thumbs .owl-buttons .owl-next i {
    line-height: 1;
    margin: 0;
}

.infomation-product-detail h1.title {
    font-size: 26px;
    font-weight: 800;
    color: var(--on-surface, #0f172a);
    line-height: 1.35;
    margin: 0 0 12px 0;
}

.detail-meta-pills {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.detail-meta-pills .meta-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
}

.detail-meta-pills .ma-sp {
    background: #f1f5f9;
    padding: 4px 12px;
    border-radius: 9999px;
    font-size: 12px;
    color: #334155;
    font-weight: 600;
}

.infomation-product-detail .short-desc {
    font-size: 14px;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 20px;
    padding: 12px 16px;
    background: #f8fafc;
    border-radius: 12px;
    border-left: 4px solid var(--primary-cyan, #00d2ff);
}

.price-box-card {
    background: linear-gradient(135deg, rgba(0, 210, 255, 0.04), rgba(165, 73, 249, 0.04));
    border: 1px solid rgba(0, 210, 255, 0.2);
    border-radius: 18px;
    padding: 20px;
    margin-bottom: 24px;
}

.price-box-card .price-row {
    display: flex;
    align-items: baseline;
    gap: 16px;
    flex-wrap: wrap;
}

.price-box-card .price-detail {
    font-size: 28px;
    font-weight: 800;
    color: var(--primary-orange, #ffaa00);
    line-height: 1;
    margin: 0;
}

.price-box-card .old-price-detail {
    font-size: 16px;
    color: #94a3b8;
    text-decoration: line-through;
    margin: 0;
    font-weight: 500;
}

.price-box-card .discount {
    background: linear-gradient(135deg, #ff416c, #ff4b2b);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    padding: 4px 10px;
    border-radius: 9999px;
    margin-left: 10px;
    display: inline-block;
    vertical-align: middle;
}

.count-down-end-flash {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed rgba(0, 0, 0, 0.1);
    font-size: 13px;
    color: #e11d48;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 6px;
}

.count-down-end-flash span {
    background: rgba(225, 29, 72, 0.1);
    padding: 4px 8px;
    border-radius: 6px;
}

/* Attributes Size/Color */
.size_color {
    margin-bottom: 18px;
}

.size_color label {
    font-size: 13px;
    font-weight: 700;
    color: var(--on-surface, #0f172a);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
    display: block;
}

.attr-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.attr-group .attr {
    margin: 0;
}

.attr-group .attr span {
    display: inline-block;
    padding: 8px 18px;
    border-radius: 12px;
    border: 1.5px solid var(--outline-variant, #cbd5e1);
    background: #ffffff;
    color: #334155;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.attr-group .attr span:hover,
.attr-group .attr.active span,
.attr-group .attr span.active {
    border-color: var(--primary-cyan, #00d2ff);
    background: rgba(0, 210, 255, 0.08);
    color: var(--primary, #2563eb);
    box-shadow: 0 4px 12px rgba(0, 210, 255, 0.15);
}

/* Member Cashback Box */
.info_cashback {
    background: #f8fafc;
    border-radius: 16px;
    border: 1px solid var(--outline-variant, #e2e8f0);
    padding: 16px;
    margin-bottom: 24px;
}

.info_cashback .cashback-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--on-surface);
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}

.info_cashback .cashback-title .icon {
    color: #10b981;
}

.cashback-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 10px;
}

.cashback-item {
    background: #ffffff;
    padding: 8px 12px;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    font-size: 12px;
    color: #475569;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cashback-item.highlight {
    background: rgba(16, 185, 129, 0.08);
    border-color: rgba(16, 185, 129, 0.3);
    color: #047857;
}

.cashback-item b {
    color: #0f172a;
}

/* Quantity input */
.wrap-quantity {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.wrap-quantity .qty-label {
    font-size: 14px;
    font-weight: 700;
    color: var(--on-surface);
    margin: 0;
}

.wrap-quantity .quantity {
    display: flex;
    align-items: center;
    border: 1px solid var(--outline-variant, #cbd5e1);
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
    height: 44px;
}

.wrap-quantity .quantity-button {
    width: 40px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f5f9;
    color: #334155;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    user-select: none;
    transition: background 0.2s;
}

.wrap-quantity .quantity-button:hover {
    background: #e2e8f0;
}

.wrap-quantity input#quantity {
    width: 50px;
    height: 44px;
    border: none;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
    box-shadow: none;
}

/* Action Buttons */
.infomation-product-detail .action {
    display: flex;
    gap: 16px;
    margin-top: 24px;
}

.infomation-product-detail .action .btn-width {
    flex: 1;
    height: 50px;
    border-radius: 9999px;
    font-size: 15px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: none;
    transition: all 0.3s ease;
}

.infomation-product-detail .action #add_cart {
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    color: #ffffff;
    box-shadow: 0 4px 18px rgba(0, 210, 255, 0.3);
}

.infomation-product-detail .action #add_cart:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 210, 255, 0.45);
}

.infomation-product-detail .action #buy_now {
    background: linear-gradient(135deg, #ffaa00, #ff5c00);
    color: #ffffff;
    box-shadow: 0 4px 18px rgba(255, 170, 0, 0.3);
}

.infomation-product-detail .action #buy_now:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(255, 170, 0, 0.45);
}

/* Description Tabs */
.content-detail {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid var(--outline-variant, #e2e8f0);
}

.content-detail .nav-tabs {
    border-bottom: none;
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
}

.content-detail .nav-tabs>li {
    float: none;
    margin: 0;
}

.content-detail .nav-tabs>li>a {
    border: 1px solid var(--outline-variant, #e2e8f0);
    border-radius: 9999px;
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 700;
    color: #475569;
    background: #ffffff;
    transition: all 0.3s ease;
    margin: 0;
}

.content-detail .nav-tabs>li.active>a,
.content-detail .nav-tabs>li.active>a:focus,
.content-detail .nav-tabs>li.active>a:hover {
    border: none;
    background: linear-gradient(135deg, #2b59ff, #a549f9);
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(43, 89, 255, 0.3);
}

.content-detail .tab-content {
    background: #ffffff;
    border-radius: 20px;
    padding: 24px;
    border: 1px solid var(--outline-variant, #e2e8f0);
}

.content-detail .tab-content .content {
    font-size: 15px;
    line-height: 1.8;
    color: #334155;
}

.content-detail .tab-content .content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin: 16px 0;
}

/* Login & Register Authentication Form Styles */
.form-login-v {
    padding: 60px 0;
    min-height: calc(100vh - 300px);
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at 50% 30%, rgba(0, 210, 255, 0.08), rgba(165, 73, 249, 0.04) 50%, transparent 80%);
}

.form-login-v .form-content {
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 28px;
    padding: 40px;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    box-shadow: 0 16px 40px -10px rgba(0, 102, 255, 0.12);
    position: relative;
    overflow: hidden;
}

.form-login-v .form-content-register {
    max-width: 520px;
}

.form-login-v .form-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9), var(--primary-orange, #ffaa00));
}

@media (max-width: 576px) {
    .form-login-v {
        padding: 30px 0;
    }

    .form-login-v .form-content {
        padding: 24px 20px;
        border-radius: 20px;
    }
}

.form-brand-header {
    text-align: center;
    margin-bottom: 28px;
}

.form-brand-logo {
    height: 80px;
    width: auto;
    margin-bottom: 0px;
    object-fit: contain;
}

.form-login-v .title-l {
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 6px 0;
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-align: center;
}

.form-brand-header .form-subtitle,
.form-login-v .title-l1 {
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
    margin: 0;
    text-align: center;
}

/* Form Action & Inputs */
.form-login-v .form-action .form-group {
    position: relative;
    margin-bottom: 20px;
    border: none;
    padding: 0;
    background: none;
}

.form-login-v .form-action .form-group input.form-control {
    height: 52px !important;
    border-radius: 14px !important;
    border: 1.5px solid var(--outline-variant, #cbd5e1) !important;
    padding: 14px 16px !important;
    font-size: 13px !important;
    font-weight: 400;
    color: var(--on-surface, #0f172a);
    background: #f8fafc;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: none;
}

.form-login-v .form-action .form-group .form-control:focus,
.form-login-v .form-action .form-group.active .form-control {
    border-color: var(--primary-cyan, #00d2ff);
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(0, 210, 255, 0.12);
    outline: none;
}

.form-login-v .form-content .form-action .form-group .name1 {
    position: absolute;
    left: 14px;
    top: -9px;
    background: #ffffff;
    padding: 0 6px;
    font-size: 11px;
    font-weight: 700;
    color: var(--primary, #2563eb);
    border-radius: 4px;
    pointer-events: none;
    line-height: 1;
}

.eye-password {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #94a3b8;
    z-index: 10;
    font-size: 16px;
}

.eye-password:hover {
    color: #334155;
}

/* Form Action Buttons & Links */
.form-action-row {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.form-action-row.flex-between {
    justify-content: space-between;
}

.form-action-row .a-login,
.form-action-row .link-forgot,
.form-action-row .link-forgot a {
    font-size: 13px;
    font-weight: 600;
    color: var(--primary, #2563eb);
    transition: color 0.2s ease;
    text-decoration: none;
}

.form-action-row .a-login:hover,
.form-action-row .link-forgot a:hover {
    color: var(--primary-orange, #ffaa00);
}

.have-account-text {
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
}

.form-login-v .btn-key,
.form-login-v #btn_submit {
    width: 100%;
    height: 50px;
    border-radius: 9999px;
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
    border: none;
    box-shadow: 0 4px 20px rgba(0, 210, 255, 0.35);
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    text-decoration: none;
}

.form-login-v .btn-key:hover,
.form-login-v #btn_submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 210, 255, 0.5);
    color: #ffffff;
}

.form-group-btns {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}

.form-group-btns .btn-default-cancel {
    flex: 1;
    height: 48px;
    border-radius: 9999px;
    background: #f1f5f9;
    color: #475569;
    font-weight: 700;
    font-size: 14px;
    border: none;
    transition: background 0.2s;
}

.form-group-btns .btn-default-cancel:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.btn-resend-otp {
    display: inline-block;
    margin-top: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--primary, #2563eb);
    cursor: pointer;
}

.btn-resend-otp:hover {
    color: var(--primary-orange, #ffaa00);
}

/* Article Page Styles - Harmonized with Home Theme */
.article-section {
    padding-top: 15px;
    padding-bottom: 40px;
}

.article-container {
    width: 100%;
}

.article-header {
    margin-bottom: 24px;
}

.article-header .trend-label {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    display: block;
    margin-bottom: 4px;
}

.article-list-card {
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 24px;
    padding: 32px;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
}

@media (max-width: 768px) {
    .article-list-card {
        padding: 20px 16px;
        border-radius: 16px;
    }
}

.article-items {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 28px;
}

.article-item-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: #f8fafc;
    border-radius: 16px;
    border: 1px solid var(--outline-variant, #e2e8f0);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    text-decoration: none;
}

.article-item-card:hover {
    background: #ffffff;
    border-color: rgba(0, 210, 255, 0.4);
    transform: translateX(6px);
    box-shadow: 0 6px 20px rgba(0, 210, 255, 0.12);
}

.article-item-left {
    display: flex;
    align-items: center;
    gap: 14px;
    flex: 1;
    min-width: 0;
}

.article-item-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(0, 210, 255, 0.1), rgba(165, 73, 249, 0.1));
    color: var(--primary, #2563eb);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.article-item-card:hover .article-item-icon {
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    color: #ffffff;
}

.article-item-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--on-surface, #0f172a);
    margin: 0;
    line-height: 1.4;
    transition: color 0.2s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.article-item-card:hover .article-item-title {
    color: var(--primary-orange, #ffaa00);
}

.article-item-arrow {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.3s ease;
    margin-left: 12px;
}

.article-item-card:hover .article-item-arrow {
    background: var(--primary-orange, #ffaa00);
    border-color: var(--primary-orange, #ffaa00);
    color: #ffffff;
    transform: translateX(4px);
}

/* Bottom Banner (Brand Partners) Section Styles */
.bottom-banner-section {
    padding: 40px 0;
    background: radial-gradient(circle at 50% 100%, rgba(165, 73, 249, 0.05), transparent 60%);
}

.banner-section-header {
    text-align: center;
    margin-bottom: 40px;
}

.banner-section-header .trend-label {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-bottom: 6px;
    display: inline-block;
}

.banner-section-header .products-title {
    margin: 0;
    display: inline-block;
}

.banner-logos-grid .owl_bottom_banner1 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 15px;
}

.banner-logos-grid .item {
    margin-bottom: 0;
}

.banner-logo-card {
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 20px;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    padding: 20px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    overflow: hidden;
}

.banner-logo-card:hover {
    transform: translateY(-4px);
    border-color: var(--primary-cyan, #00d2ff);
    box-shadow: 0 8px 24px -6px rgba(0, 210, 255, 0.2);
}

.banner-logo-card a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.banner-logo-img {
    max-height: 70px;
    width: auto;
    object-fit: contain;
    transition: all 0.3s ease;
}

@media (max-width: 1024px) {
    .banner-logos-grid .owl_bottom_banner1 {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
    }

    .banner-logo-card {
        height: 100px;
        padding: 16px;
    }

    .banner-logo-img {
        max-height: 60px;
    }
}

@media (max-width: 768px) {
    .bottom-banner-section {
        padding: 30px 0 0;
        border: none;
    }

    .banner-section-header {
        margin-bottom: 28px;
    }

    .banner-logos-grid .owl_bottom_banner1 {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .banner-logo-card {
        height: 90px;
        padding: 12px;
        border-radius: 14px;
    }

    .banner-logo-img {
        max-height: 54px;
    }

    .banner-logos-grid .item {
        margin-bottom: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 480px) {
    .banner-logos-grid .owl_bottom_banner1 {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .banner-logo-card {
        height: 80px;
        padding: 10px;
        border-radius: 12px;
    }

    .banner-logo-img {
        max-height: 46px;
    }
}

/* Contact Page Styles - Harmonized with Home Theme */
.contact-section {
    padding-top: 15px;
    padding-bottom: 40px;
}

.contact-info-card,
.contact-form-card {
    background: var(--surface-container-lowest, #ffffff);
    border-radius: 24px;
    padding: 32px;
    border: 1px solid var(--outline-variant, rgba(0, 0, 0, 0.08));
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
    height: 100%;
}

.contact-card-header {
    margin-bottom: 24px;
}

.contact-card-header .trend-label {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    display: inline-block;
    margin-bottom: 4px;
}

.contact-card-header .products-title,
.contact-card-header .contact-form-title {
    margin: 0 0 6px 0;
    padding: 5px 0 0 0;
    font-size: 25px;
    font-weight: 600;
}

.contact-form-subtitle {
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
    margin: 0;
}

.contact-info-body {
    font-size: 15px;
    line-height: 1.8;
    color: #334155;
}

.contact-info-body iframe {
    width: 100% !important;
    border-radius: 16px;
    border: 1px solid var(--outline-variant, #e2e8f0);
    margin-top: 16px;
}

/* Contact Form Elements */
.contact-form-group {
    margin-bottom: 20px;
    text-align: left;
}

.contact-field-label {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #475569;
    margin-bottom: 8px;
}

.contact-form-group .form-control {
    width: 100%;
    border-radius: 14px;
    border: 1.5px solid var(--outline-variant, #cbd5e1);
    padding: 12px 16px;
    font-size: 14px;
    font-weight: 500;
    color: var(--on-surface, #0f172a);
    background: #f8fafc;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: none;
}

.contact-form-group textarea.form-control {
    resize: vertical;
    min-height: 110px;
}

.contact-form-group .form-control:focus {
    border-color: var(--primary-cyan, #00d2ff);
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(0, 210, 255, 0.12);
    outline: none;
}

.btn-submit-contact {
    width: 100%;
    height: 48px;
    border-radius: 9999px;
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    border: none;
    box-shadow: 0 4px 20px rgba(0, 210, 255, 0.35);
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-submit-contact:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 210, 255, 0.5);
    color: #ffffff;
}

@media (max-width: 768px) {

    .contact-info-card,
    .contact-form-card {
        padding: 24px 20px;
        border-radius: 20px;
        height: auto;
    }

    .contact-info-card {
        margin-bottom: 24px;
    }
}

/* ==========================================================================
   DECOM BRAND IDENTITY & DESIGN SYSTEM HARMONIZATION
   Aligning other pages (Product, News, Contact, Login, etc.) with Home page style
   ========================================================================== */

:root {
    --main-color: #0066ff !important;
    --main-color-hover: #0052cc !important;
    --font-family-key: 'Inter', sans-serif !important;

    /* Branding Colors */
    --primary: #0066ff !important;
    --primary-orange: #f97316 !important;
    --primary-magenta: #d946ef !important;
    --surface-container-lowest: #ffffff !important;
    --surface-container: #f1f5f9 !important;
    --outline-variant: #e2e8f0 !important;
    --on-surface: #0f172a !important;
    --on-surface-variant: #475569 !important;
    --surface: #f8fafc !important;
}

body {
    font-family: 'Inter', 'Montserrat', sans-serif !important;
    background-color: #f8fafc !important;
    color: #0f172a !important;
}

/* Gradient text utilities */
.text-brand-gradient {
    background-image: linear-gradient(to right, #0066ff, #d946ef, #f97316) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    color: transparent !important;
}

.bg-brand-gradient {
    background-image: linear-gradient(to right, #0066ff, #d946ef, #f97316) !important;
}

.text-gradient-title {
    background-image: linear-gradient(to right, #0066ff, #a855f7, #f97316) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    color: transparent !important;
}

/* Breadcrumb Styling */
.wrap-breadcrumb {
    background: transparent !important;
    padding: 20px 0 0 0 !important;
    border-bottom: none !important;
    margin-bottom: 10px !important;
}

.breadcrumb {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

.breadcrumb li a {
    color: #64748b !important;
}

.breadcrumb li a:hover {
    color: #0066ff !important;
}

/* Buttons modernization (.btn-main, forms buttons) */
.btn-main,
.btn-submit-contact,
.btn-key,
button[type="submit"] {
    background: linear-gradient(135deg, #0066ff 0%, #a855f7 50%, #f97316 100%) !important;
    color: white !important;
    font-weight: 750 !important;
    font-size: 14px !important;
    border-radius: 9999px !important;
    padding: 15px 32px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 10px 20px -5px rgba(168, 85, 247, 0.35) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: inline-block !important;
    width: max-content !important;
    text-align: center !important;
}

.btn-main:hover,
.btn-submit-contact:hover,
.btn-key:hover,
button[type="submit"]:hover {
    background: linear-gradient(135deg, #0052cc 0%, #8e2ce6 50%, #ea580c 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 15px 25px -5px rgba(168, 85, 247, 0.5) !important;
}

/* Form Controls and Inputs modernization */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
textarea,
select,
.form-control {
    border-radius: 10px !important;
    border: 1px solid #cbd5e1 !important;
    padding: 12px 16px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: #1e293b !important;
    background-color: #ffffff !important;
    transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus,
.form-control:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.15) !important;
    outline: none !important;
}

.contact-field-label {
    font-weight: 700 !important;
    color: #334155 !important;
    font-size: 0.85rem !important;
    margin-bottom: 6px !important;
    display: inline-block !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

/* Glassmorphism layouts for Content Cards & Forms */
.contact-info-card,
.contact-form-card,
.news-article-card,
.login-card,
.register-card,
.product-detail-card,
.news-detail-section .news-container {
    background: rgba(255, 255, 255, 0.85) !important;
    border: 1px solid rgba(226, 232, 240, 0.8) !important;
    border-radius: 20px !important;
    padding: 2.5rem 2rem !important;
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.03) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
}

.contact-card-header {
    border-bottom: 1.5px dashed rgba(226, 232, 240, 0.8) !important;
    padding-bottom: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

/* Product list grid and card overrides */
.products-section {
    padding-top: 30px !important;
    background: #f8fafc !important;
}

.products-header-flex {
    margin-bottom: 30px !important;
}

.products-title {
    font-size: 2.5rem !important;
    font-weight: 900 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 10px 0 !important;
}

.products-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

@media (min-width: 1024px) {
    .products-grid {
        grid-template-columns: repeat(5, 1fr);
    }
}

@media (max-width: 767px) {
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
}

.product-card {
    background-color: #ffffff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
    border: 1px solid #e2e8f0 !important;
    display: flex !important;
    flex-direction: column !important;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.product-card:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08) !important;
    border-color: #0066ff !important;
    transform: translateY(-4px) !important;
}

.product-img-box {
    position: relative !important;
    overflow: hidden !important;
    padding-bottom: 100% !important;
    height: 0 !important;
}

.product-img-box img.product-img {
    transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.product-card:hover .product-img-box img.product-img {
    transform: scale(1.08) !important;
}

.btn-fav {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    width: 36px !important;
    height: 36px !important;
    background-color: rgba(255, 255, 255, 0.9) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #d946ef !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05) !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.btn-fav:hover {
    background-color: #ffffff !important;
    transform: scale(1.1) !important;
}

/* Pagination Overrides */
#page_html {
    display: inline-flex !important;
    gap: 6px !important;
    margin-top: 30px !important;
}

#page_html a,
#page_html span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #475569 !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
}

#page_html a:hover {
    border-color: #0066ff !important;
    color: #0066ff !important;
    background: rgba(0, 102, 255, 0.03) !important;
}

#page_html span.current {
    background: #0066ff !important;
    border-color: #0066ff !important;
    color: #ffffff !important;
}

html,
body {
    margin: 0;
    padding: 0;
    font-family: 'Inter', sans-serif;
    background-color: var(--surface);
    color: var(--on-surface);
    font-size: 14px;
    line-height: var(--body-md-line);
    overscroll-behavior: none;
}

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

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

button {
    cursor: pointer;
    border: none;
    background: none;
    font-family: inherit;
}

input {
    font-family: inherit;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Utilities */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.text-brand-gradient {
    background-image: linear-gradient(to right, #2563EB, #D946EF, #F97316);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

.bg-brand-gradient {
    background-image: linear-gradient(to right, #2563EB, #D946EF, #F97316);
}

.border-brand-gradient {
    border: 4px solid transparent;
    background: linear-gradient(white, white) padding-box,
        linear-gradient(to right, #2563EB, #D946EF, #F97316) border-box;
}

.text-gradient-title {
    background-image: linear-gradient(to right, #2B59FF, #BB2BFF, #FF5C00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

.text-gradient-benefit {
    background-image: linear-gradient(to right, #00B4D8, #E0008E, #FF7A00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

/* .px-container {
    padding-left: var(--container-padding-mobile);
    padding-right: var(--container-padding-mobile);
}

@media (min-width: 1024px) {
    .px-container {
        padding-left: var(--container-padding-desktop);
        padding-right: var(--container-padding-desktop);
    }
} */

/* Main Content */
.main-content {
    padding-bottom: 0px;
}

/* Banner Slider Container & Animations */
.banner-section {
    position: relative;
    margin-top: 20px;
    height: 550px;
}

@media(max-width: 767px) {
    .banner-section {
        padding: 0 !important;
    }
}

.banner-section .item {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 1;
}

.banner-section .item.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: 2;
}

.banner-container {
    position: relative;
    width: 100%;
    height: 550px;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.banner-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1.12);
    transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform, opacity;
}

.banner-section .item.active .banner-bg {
    transform: scale(1);
}

.banner-container:hover .banner-bg {
    transform: scale(1.05) !important;
}

.banner-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, var(--on-surface), rgba(15, 23, 42, 0.6), transparent);
}

.banner-content {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 64px;
    max-width: 42rem;
    z-index: 2;
}

.banner-title {
    font-weight: 700;
    color: white;
    margin: 0 0 16px 0;
    line-height: 1.2;
    font-size: 32px;
    opacity: 0;
    transform: translateY(35px);
    transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

.banner-desc {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.9);
    margin: 0 0 32px 0;
    max-width: 28rem;
    font-weight: 300;
    opacity: 0;
    transform: translateY(28px);
    transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

.banner-features {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 32px;
    margin-bottom: 32px;
    color: white;
    font-size: 14px;
    font-weight: 500;
}

.banner-feature-item {
    display: flex;
    align-items: center;
    gap: 8px;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

.banner-feature-item .material-symbols-outlined {
    font-size: 18px;
}

.btn-primary {
    background: linear-gradient(to right, #2563EB, #D946EF, #F97316);
    color: white;
    padding: 16px 40px;
    border-radius: 9999px;
    font-weight: bold;
    font-size: var(--label-md-size);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    display: inline-block;
    width: fit-content;
    opacity: 0;
    transform: translateY(20px) scale(0.95);
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

.btn-primary:hover {
    opacity: 0.95;
    transform: translateY(-2px) scale(1.02) !important;
}

/* Staggered Transitions when item becomes ACTIVE */
.banner-section .item.active .banner-title {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.15s;
}

.banner-section .item.active .banner-desc {
    opacity: 0.9;
    transform: translateY(0);
    transition-delay: 0.28s;
}

.banner-section .item.active .banner-feature-item:nth-child(1) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.38s;
}

.banner-section .item.active .banner-feature-item:nth-child(2) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.44s;
}

.banner-section .item.active .banner-feature-item:nth-child(3) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.50s;
}

.banner-section .item.active .banner-feature-item:nth-child(4) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.56s;
}

.banner-section .item.active .btn-primary {
    opacity: 1;
    transform: translateY(0) scale(1);
    transition-delay: 0.62s;
}

.banner-dots {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 10;
}

.dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

.dot:hover {
    background-color: rgba(255, 255, 255, 0.8);
}

.dot.active {
    width: 32px;
    border-radius: 9999px;
    background-color: white;
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.6);
}

/* Banner Section Responsive (Tablet & Mobile) */
@media (max-width: 1023px) {

    .banner-section,
    .banner-container {
        height: 480px;
    }

    .banner-content {
        padding: 0 40px;
        max-width: 36rem;
    }

    .banner-title {
        font-size: 32px;
        margin-bottom: 12px;
    }

    .banner-desc {
        font-size: 15px;
        margin-bottom: 24px;
    }

    .banner-features {
        gap: 12px 24px;
        margin-bottom: 24px;
        font-size: 13px;
    }

    .btn-primary {
        padding: 14px 32px;
    }
}

@media (max-width: 768px) {
    .banner-section {
        margin-top: 0;
        height: 440px;
        padding: 0;
        border-radius: 0;
    }

    .banner-container {
        height: 440px;
        border-radius: 0;
    }

    .banner-overlay {
        background: linear-gradient(to top, rgba(15, 23, 42, 0.92) 0%, rgba(15, 23, 42, 0.7) 60%, rgba(15, 23, 42, 0.35) 100%);
    }

    .banner-content {
        padding: 20px 20px 42px 20px;
        max-width: 100%;
        justify-content: flex-end;
        border-radius: 0;
    }

    .banner-title {
        font-size: 24px;
        margin-bottom: 10px;
        line-height: 1.25;
    }

    .banner-desc {
        font-size: 13px;
        margin-bottom: 16px;
        line-height: 1.5;
        max-width: 100%;
    }

    .banner-features {
        gap: 8px 16px;
        margin-bottom: 20px;
        font-size: 12px;
    }

    .banner-feature-item .material-symbols-outlined {
        font-size: 16px;
    }

    .btn-primary {
        padding: 12px 24px;
        font-size: 13px;
    }

    .banner-dots {
        bottom: 16px;
    }

    .dot {
        width: 8px;
        height: 8px;
    }

    .dot.active {
        width: 24px;
    }
}

@media (max-width: 480px) {

    .banner-section,
    .banner-container {
        height: 420px;
    }

    .banner-content {
        padding: 16px 16px 38px 16px;
    }

    .banner-title {
        font-size: 21px;
    }

    .banner-desc {
        font-size: 14px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .banner-features {
        gap: 6px 12px;
        margin-bottom: 16px;
    }

    .banner-feature-item {
        font-size: 11px;
    }
}

/* Roles */
.roles-section {
    margin-top: 40px;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    overflow-x: auto;
}

@media (max-width: 768px) {
    .roles-section {
        margin-top: 24px;
        flex-wrap: wrap;
        overflow-x: visible;
        gap: 12px;
    }

    .role-card {
        flex: 1 1 calc(50% - 6px);
        min-width: calc(50% - 6px);
        padding: 14px 10px;
    }
}

.role-card {
    position: relative;
    overflow: hidden;
    background-color: var(--surface-container-lowest);
    flex: 1;
    min-width: 160px;
    padding: 24px 20px;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid var(--outline-variant);
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
}

.role-card>.role-background {
    position: absolute;
    z-index: 0;
    opacity: 0.1;
    height: 85%;
    left: -20%;
    bottom: -20%;
    margin: auto;
    pointer-events: none;
    transition: transform 0.3s ease;
}

.role-card:hover>.role-background {
    transform: scale(1.1);
}

.role-icon {
    width: 48px !important;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px auto;
    position: relative;
    z-index: 1;
    flex-shrink: 0;
}

.role-icon>.material-symbols-outlined {
    font-size: 24px;
}

.role-card-content {
    position: relative;
    z-index: 1;
    width: 100%;
}

/* Color Variants for Role Cards (matching overview-grid style) */
.roles-section>.role-card:nth-child(1) {
    background: rgba(217, 70, 239, 0.05);
    border-color: rgba(217, 70, 239, 0.15);
}

.roles-section>.role-card:nth-child(1) .role-icon {
    color: var(--primary-magenta, #d946ef);
    background: rgba(217, 70, 239, 0.1);
}

.roles-section>.role-card:nth-child(2) {
    background: rgba(249, 115, 22, 0.05);
    border-color: rgba(249, 115, 22, 0.15);
}

.roles-section>.role-card:nth-child(2) .role-icon {
    color: var(--primary-orange, #f97316);
    background: rgba(249, 115, 22, 0.1);
}

.roles-section>.role-card:nth-child(3) {
    background: rgba(37, 99, 235, 0.05);
    border-color: rgba(37, 99, 235, 0.15);
}

.roles-section>.role-card:nth-child(3) .role-icon {
    color: var(--primary, #2563eb);
    background: rgba(37, 99, 235, 0.1);
}

.roles-section>.role-card:nth-child(4) {
    background: rgba(0, 210, 255, 0.05);
    border-color: rgba(0, 210, 255, 0.15);
}

.roles-section>.role-card:nth-child(4) .role-icon {
    color: #00d2ff;
    background: rgba(0, 210, 255, 0.1);
}

.roles-section>.role-card:nth-child(5) {
    background: rgba(245, 158, 11, 0.05);
    border-color: rgba(245, 158, 11, 0.15);
}

.roles-section>.role-card:nth-child(5) .role-icon {
    color: #f59e0b;
    background: rgba(245, 158, 11, 0.1);
}

.role-count {
    font-size: 24px;
    font-weight: 700;
    margin: 4px 0 2px 0;
    line-height: 1.2;
}

.role-title {
    font-weight: 700;
    color: var(--on-surface);
    font-size: 16px;
    margin: 0 0 4px 0;
}

.role-info {
    font-size: 13px;
    color: var(--on-surface-variant);
    line-height: 1.3;
}

/* Overview */
.overview-section {
    margin-top: 40px;
}

.section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

@media(max-width: 767px) {
    .overview-section {
        margin-top: 25px;
    }

    .section-header {
        display: block;
    }
}

.section-title {
    font-size: var(--headline-sm-size);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0;
    padding: 4px 0 0 0;
    line-height: 1.3;
}

@media(max-width:767px) {
    .section-title {
        font-size: 22px !important;
        letter-spacing: 0;
    }
}

.section-link {
    color: var(--primary);
    font-size: 14px;
    font-weight: 600;
}

.section-link:hover {
    text-decoration: underline;
}

.overview-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: var(--gutter);
}

@media (min-width: 768px) {
    .overview-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .overview-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .overview-grid {
        gap: 12px
    }
}

.stat-card {
    background-color: var(--surface-container-lowest);
    padding: 28px;
    border-radius: 16px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid var(--outline-variant);
    transition: border-color 0.2s;
    overflow: hidden;
    background: var(--outline-variant);
    border: 1px solid var(--outline);
}

/* Overview Grid Stat Cards Color Variants */
.overview-grid>.stat-card:nth-child(1) {
    background: rgba(0, 210, 255, 0.05);
    border-color: rgba(0, 210, 255, 0.1);
}

.overview-grid>.stat-card:nth-child(1) .stat-icon {
    color: #00d2ff;
    background: rgba(0, 210, 255, 0.1);
}

.overview-grid>.stat-card:nth-child(2) {
    background: rgba(37, 99, 235, 0.05);
    border-color: rgba(37, 99, 235, 0.1);
}

.overview-grid>.stat-card:nth-child(2) .stat-icon {
    color: var(--primary);
    background: rgba(37, 99, 235, 0.1);
}

.overview-grid>.stat-card:nth-child(3) {
    background: rgba(217, 70, 239, 0.05);
    border-color: rgba(217, 70, 239, 0.1);
}

.overview-grid>.stat-card:nth-child(3) .stat-icon {
    color: var(--primary-magenta);
    background: rgba(217, 70, 239, 0.1);
}

.overview-grid>.stat-card:nth-child(4) {
    background: rgba(249, 115, 22, 0.05);
    border-color: rgba(249, 115, 22, 0.1);
}

.overview-grid>.stat-card:nth-child(4) .stat-icon {
    color: var(--primary-orange);
    background: rgba(249, 115, 22, 0.1);
}

.stat-card>.stat-background {
    position: absolute;
    z-index: 0;
    opacity: 0.1;
    height: 85%;
    right: -20%;
    bottom: -20%;
    /* top: 0; */
    margin: auto;
}

.stat-card:hover {
    border-color: var(--primary);
}

.stat-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 20px 0;
    position: relative;
    z-index: 1;
}

.stat-icon>.stat-icon-img {
    height: 120px;
    margin: 0 0 0 0;
}

.stat-value {
    font-size: 24px;
    font-weight: bold;
    color: var(--on-surface);
    margin-bottom: 4px;
    padding: 2px 0 0 0;
    position: relative;
    z-index: 1;
}

.stat-label {
    font-size: 14px;
    color: var(--on-surface-variant);
    margin-bottom: 12px;
    position: relative;
    z-index: 1;
}

.stat-trend {
    /* display: flex; */
    align-items: center;
    /* gap: 6px; */
    font-size: 13px;
}

.trend-up {
    color: #10B981;
    font-weight: bold;
    display: block;
    font-size: 18px;
}

.trend-desc {
    color: #828fa2;
}

/**/
.roadmap-section {
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
    overflow: hidden;
    padding: 48px 0;
    z-index: 5;
}

@media (min-width: 768px) {
    .roadmap-section {
        padding: 64px 0;
    }
}

.roadmap-section .bg-overlay {
    position: absolute;
    inset: 0;
}

.roadmap-section .content-container {
    position: relative;
    z-index: 10;
    margin: 0 auto;
    padding: 0 var(--margin-desktop);
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Hero */
.roadmap-section .hero-text-wrapper {
    text-align: center;
    margin-bottom: 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 768px;
}

.roadmap-section .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 9999px;
    background-color: rgba(0, 210, 255, 0.1);
    border: 1px solid rgba(0, 210, 255, 0.2);
    margin-bottom: 16px;
    backdrop-filter: blur(12px);
}

.roadmap-section .hero-badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--primary-cyan);
    box-shadow: 0 0 8px rgba(0, 210, 255, 0.8);
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .5;
    }
}

.roadmap-section .hero-badge-text {
    font-size: 12px;
    color: var(--primary-cyan);
    text-transform: uppercase;
    letter-spacing: 0.2em;
    font-weight: 700;
}

.roadmap-section .hero-title {
    font-size: 30px;
    color: var(--on-surface);
    margin-bottom: 16px;
    text-align: center;
    line-height: 1.2;
    font-weight: 700;
    padding: 5px 0px 0 0;
}

@media (min-width: 768px) {
    .hero-title {}
}

.roadmap-section .hero-title-highlight {
    background: linear-gradient(to right, var(--primary-cyan), var(--primary-purple));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.roadmap-section .hero-subtitle {
    font-size: 16px;
    color: var(--on-surface-variant);
    text-align: center;
    max-width: 576px;
    font-weight: 500;
    display: none;
}

@media (min-width: 768px) {
    .roadmap-section .hero-subtitle {
        display: block;
    }
}

/* Roadmap Layout */
.roadmap-section .roadmap-layout {
    display: flex;
    width: 100%;
    position: relative;
}

.roadmap-section .path-column {
    width: 13%;
    position: relative;
    display: block;
    left: 30px;
}

.roadmap-section .path-svg-wrapper {
    position: absolute;
    right: 32px;
    top: 0;
    bottom: 0;
    width: 96px;
}

.roadmap-section .path-svg-wrapper .path-svg {
    height: 100%;
    width: 100%;
    overflow: visible;
}

.roadmap-section .path-svg-wrapper .path-glow {
    stroke-linecap: round;
    stroke-linejoin: round;
}

.roadmap-section .path-svg-wrapper .path-dashed {
    stroke-linecap: round;
}

.roadmap-section .path-nodes {
    position: absolute;
    right: 50px;
    top: 8%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    height: 100%;
    padding-bottom: 80px;
}

.roadmap-section .path-nodes .node-group {
    position: relative;
}

.roadmap-section .path-nodes .node-group.step-3 {
    margin-top: -80px;
    left: 80px;
}

.roadmap-section .path-nodes .node-group.step-2 {
    margin-top: 60px;
}

.roadmap-section .path-nodes .node-group.step-1 {
    margin-top: 100px;
}

.roadmap-section .path-nodes .node-number {
    font-size: 46px;
    position: absolute;
    right: 64px;
    top: 50%;
    transform: translateY(-50%);
    line-height: 1;
    font-weight: 900;
    user-select: none;
    z-index: 0;
    opacity: 0.3;
}

.roadmap-section .path-nodes .node-icon-wrapper {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: linear-gradient(to bottom right, #1a1a1a, #2a2a2a);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 10;
}

.roadmap-section .path-nodes .node-icon-wrapper.step-3 {
    border: 1px solid rgba(255, 170, 0, 0.5);
    box-shadow: 0 0 15px rgba(255, 170, 0, 0.5);
    width: 70px;
    height: 70px;
}

.roadmap-section .path-nodes .node-icon-wrapper.step-3 .node-icon {
    color: var(--primary-orange);
    font-size: 40px;
}

.roadmap-section .path-nodes .node-number.step-3 {
    color: var(--primary-orange);
    right: 80px;
    font-size: 70px;
}

.roadmap-section .path-nodes .node-icon-wrapper.step-2 {
    border: 1px solid rgba(165, 73, 249, 0.5);
    box-shadow: 0 0 15px rgba(165, 73, 249, 0.5);
    width: 60px;
    height: 60px;
}

.roadmap-section .path-nodes .node-icon-wrapper.step-2 .node-icon {
    color: var(--primary-purple);
}

.roadmap-section .path-nodes .node-number.step-2 {
    color: var(--primary-purple);
    font-size: 55px;
    right: 75px;
}

.roadmap-section .path-nodes .node-icon-wrapper.step-1 {
    border: 1px solid rgba(0, 210, 255, 0.5);
    box-shadow: 0 0 15px rgba(0, 210, 255, 0.5);
}

.roadmap-section .path-nodes .node-icon-wrapper.step-1 .node-icon {
    color: var(--primary-cyan);
}

.roadmap-section .path-nodes .node-number.step-1 {
    color: var(--primary-cyan);
}


.roadmap-section .content-column {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

@media (min-width: 768px) {
    .roadmap-section .content-column {
        width: 87%;
    }
}

/* Cards */
.roadmap-section .step-card-wrapper {
    position: relative;
    width: 100%;
}

.roadmap-section .step-card-wrapper.z-30 {
    z-index: 30;
}

.roadmap-section .step-card-wrapper.z-20 {
    z-index: 20;
}

.roadmap-section .step-card-wrapper.z-10 {
    z-index: 10;
}

.roadmap-section .step-card {
    position: relative;
    border-radius: 16px;
    padding: 10px;
    transition: all 0.5s;
    overflow: hidden;
}

@media (min-width: 768px) {
    .roadmap-section .step-card {
        padding: 10px;
    }
}

.roadmap-section .step-card.level-3 {
    background: linear-gradient(to bottom right, #FFFBEB, #ffffff);
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(40px);
    border: 2px solid rgba(255, 170, 0, 0.5);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
    float: right;
    width: 88%;
}

.roadmap-section .step-card.level-2 {
    background-color: #F5F3FF;
    backdrop-filter: blur(24px);
    border: 1px solid rgba(165, 73, 249, 0.3);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    width: 94%;
    float: right;
}

.roadmap-section .step-card.level-1 {
    background-color: #F0F7FF;
    backdrop-filter: blur(24px);
    border: 1px solid rgba(0, 210, 255, 0.2);
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.03);
}

.roadmap-section .step-card-inner {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

@media (min-width: 768px) {
    .roadmap-section .step-card-inner {
        flex-direction: row;
    }
}

@media(max-width: 767px) {
    .roadmap-section .step-card-inner {
        gap: 8px;
    }
}

.roadmap-section .step-info {
    flex: 1;
}

.roadmap-section .step-badge {
    display: inline-flex;
    padding: 4px 12px;
    font-size: 12px;
    font-weight: 900;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 8px;
}

.roadmap-section .step-badge.level-3 {
    background: linear-gradient(to right, rgba(255, 170, 0, 0.2), rgba(230, 153, 0, 0.2));
    color: var(--primary-orange-dark);
    border: 1px solid rgba(255, 170, 0, 0.5);
}

.roadmap-section .step-badge.level-2 {
    background-color: rgba(165, 73, 249, 0.15);
    color: var(--primary-purple-dark);
    border: 1px solid rgba(165, 73, 249, 0.3);
}

.roadmap-section .step-badge.level-1 {
    background-color: rgba(0, 210, 255, 0.1);
    color: var(--primary-cyan-dark);
    border: 1px solid rgba(0, 210, 255, 0.2);
}

.roadmap-section .step-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 4px;
    letter-spacing: -0.02em;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    margin-top: 0;
}

.roadmap-section .wrap-step-title {
    display: flex;
    gap: 5px;
    margin: 5px 0 10px;
    align-items: center;
}

@media(max-width: 767px) {
    .roadmap-section .wrap-step-title {
        flex-direction: column;
    }
}

.roadmap-section .wrap-step-title h3 {
    margin: 0;
}

@media (min-width: 768px) {
    .roadmap-section .step-title {
        font-size: 22px;
    }
}

.roadmap-section .step-title.level-3 {
    background-image: linear-gradient(to right, var(--primary-orange), var(--primary-orange-dark));
}

.roadmap-section .step-title.level-2 {
    background-image: linear-gradient(to right, var(--primary-purple), var(--primary-purple-dark));
}

.roadmap-section .step-title.level-1 {
    background-image: linear-gradient(to right, var(--primary-cyan), var(--primary-cyan-dark));
}

.roadmap-section .step-desc {
    font-size: 13px;
    color: var(--on-surface-variant);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0px;
    font-weight: 600;
    margin-left: 5px;
    line-height: 1.3;
}

@media(max-width: 767px) {
    .roadmap-section .step-desc {
        font-size: 12px;
        margin: 0;
    }
}

.roadmap-section .kpi-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.roadmap-section .kpi-box {
    border-radius: 8px;
    padding: 6px;
    text-align: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.roadmap-section .kpi-box.level-3 {
    background: linear-gradient(to bottom, #ffffff, #FFFBEB);
    border: 1px solid rgba(255, 170, 0, 0.4);
}

.roadmap-section .kpi-box.level-2 {
    background-color: #ffffff;
    border: 1px solid rgba(165, 73, 249, 0.3);
}

.roadmap-section .kpi-box.level-1 {
    background-color: #ffffff;
    border: 1px solid rgba(0, 210, 255, 0.2);
}

.roadmap-section .kpi-label {
    font-size: 9px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: -4px;
}

.roadmap-section .kpi-label.level-3 {
    color: var(--primary-orange-dark);
}

.roadmap-section .kpi-label.level-2 {
    color: var(--primary-purple-dark);
}

.roadmap-section .kpi-label.level-1 {
    color: var(--primary-cyan-dark);
}

.roadmap-section .kpi-value {
    font-size: 18px;
    font-weight: 900;
}

.roadmap-section .kpi-value.level-3 {
    color: var(--primary-orange);
}

.roadmap-section .kpi-value.level-2 {
    color: var(--primary-purple);
}

.roadmap-section .kpi-value.level-1 {
    color: var(--primary-cyan);
}

.roadmap-section .kpi-text {
    font-size: 11px;
    font-weight: 700;
    color: var(--on-surface);
    line-height: 1.2;
}

.roadmap-section .step-image-wrapper {
    width: 100%;
    height: 180px;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    flex-shrink: 0;
    display: none;
}

@media (min-width: 640px) {
    .roadmap-section .step-image-wrapper {
        display: block;
    }
}

@media (min-width: 768px) {
    .roadmap-section .step-image-wrapper {
        width: 30%;
        height: auto;
        min-height: 100%;
        align-self: stretch;
    }
}

.roadmap-section .step-image-wrapper .step-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.roadmap-section .step-image-wrapper.level-3 {
    border: 1px solid rgba(255, 170, 0, 0.4);
}

.roadmap-section .step-image-wrapper.level-2 {
    border: 1px solid rgba(165, 73, 249, 0.3);
}

.roadmap-section .step-image-wrapper.level-1 {
    border: 1px solid rgba(0, 210, 255, 0.2);
}

.roadmap-section .privileges-wrapper {
    margin-top: 8px;
    padding-top: 8px;
    overflow: hidden;
    transition: all 0.5s;
    /* Max-height and opacity handling simulated to always show for now as requested to preserve content visually */
    max-height: 160px;
    opacity: 1;
}

.roadmap-section .step-card-wrapper:hover .privileges-wrapper {
    max-height: 160px;
    opacity: 1;
}

.roadmap-section .privileges-wrapper.level-3 {
    border-top: 1px solid rgba(255, 170, 0, 0.3);
}

.roadmap-section .privileges-wrapper.level-2 {
    border-top: 1px solid rgba(165, 73, 249, 0.2);
}

.roadmap-section .privileges-wrapper.level-1 {
    border-top: 1px solid rgba(0, 210, 255, 0.2);
}

.roadmap-section .privileges-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

@media (min-width: 768px) {
    .roadmap-section .privileges-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.roadmap-section .privilege-item {
    display: flex;
    align-items: center;
    gap: 8px;
    background-color: rgba(255, 255, 255, 0.6);
    padding: 8px;
    border-radius: 4px;
}

.roadmap-section .privilege-item.level-3 {
    border: 1px solid rgba(255, 170, 0, 0.2);
}

.roadmap-section .privilege-item.level-2 {
    border: 1px solid rgba(165, 73, 249, 0.2);
}

.roadmap-section .privilege-item.level-1 {
    border: 1px solid rgba(0, 210, 255, 0.2);
}

.roadmap-section .privilege-icon {
    font-size: 20px;
}

.roadmap-section .privilege-icon.level-3 {
    color: var(--primary-orange-dark);
}

.roadmap-section .privilege-icon.level-2 {
    color: var(--primary-purple);
}

.roadmap-section .privilege-icon.level-1 {
    color: var(--primary-cyan);
}

.roadmap-section .privilege-text {
    font-size: 11px;
    font-weight: 700;
    color: var(--on-surface);
    line-height: 1.3;
}

/* Step Arrow Divider for Mobile */
.roadmap-section .step-arrow-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 8px 0;
    position: relative;
    z-index: 15;
}

@media (min-width: 768px) {
    .roadmap-section .step-arrow-divider {
        display: none;
    }
}

.roadmap-section .step-arrow-divider .arrow-icon {
    font-size: 26px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--primary-cyan), var(--primary-purple));
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 12px rgba(0, 210, 255, 0.5);
    animation: bounceUp 1.8s ease-in-out infinite;
}

@keyframes bounceUp {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }
}

@media (max-width: 767px) {
    .roadmap-section {
        margin-top: 25px !important;
        padding: 10px 0 0;
    }

    .roadmap-section .hero-text-wrapper {
        margin-bottom: 24px;
    }

    .roadmap-section .hero-title {
        font-size: 22px;
    }

    .roadmap-section .hero-subtitle {
        display: block;
        font-size: 13px;
    }

    .roadmap-section .roadmap-layout {
        display: flex;
        flex-direction: row;
        gap: 6px;
        align-items: stretch;
        position: relative;
    }

    .roadmap-section .path-column {
        width: 60px !important;
        position: relative;
        z-index: 50 !important;
        display: block !important;
        left: 0 !important;
        flex-shrink: 0;
    }

    .roadmap-section .path-svg-wrapper {
        width: 60px !important;
        right: auto !important;
        left: 0 !important;
        top: 0;
        bottom: 0;
        z-index: 45 !important;
    }

    .roadmap-section .path-svg-wrapper .path-svg {
        transform: scaleX(0.65);
        transform-origin: center center;
    }

    .roadmap-section .path-svg-wrapper .path-glow {
        stroke-width: 34px !important;
    }

    .roadmap-section .path-svg-wrapper .path-dashed {
        stroke-width: 8px !important;
    }

    .roadmap-section .path-nodes {
        right: auto !important;
        left: 0 !important;
        top: 0;
        width: 60px !important;
        height: 100%;
        padding-bottom: 0;
        align-items: center;
        justify-content: space-around;
        z-index: 55 !important;
    }

    .roadmap-section .path-nodes .node-group {
        left: 0 !important;
        margin-top: -265px !important;
        position: relative;
    }

    .roadmap-section .path-nodes .node-number {
        font-size: 30px !important;
        right: 10px !important;
        opacity: 0.6 !important;
        top: -30%;
    }

    .roadmap-section .path-nodes .node-number.step-2 {
        right: 27px !important;
        font-size: 22px !important;
    }

    .roadmap-section .path-nodes .node-number.step-1 {
        right: 42px !important;
        font-size: 14px !important;
        top: -20%;
    }

    .roadmap-section .path-nodes .node-icon-wrapper {
        width: 56px !important;
        height: 56px !important;
        border-radius: 12px !important;
    }

    .roadmap-section .path-nodes .node-icon-wrapper.step-3 {
        width: 60px !important;
        height: 60px !important;
    }

    .roadmap-section .path-nodes .node-icon {
        font-size: 28px !important;
    }

    .roadmap-section .content-column {
        flex: 1 !important;
        width: auto !important;
        min-width: 0;
        gap: 12px;
        position: relative;
        z-index: 51;
    }

    .roadmap-section .step-card-wrapper {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .roadmap-section .step-card.level-3,
    .roadmap-section .step-card.level-2,
    .roadmap-section .step-card.level-1 {
        width: 100% !important;
        float: none !important;
        padding: 12px;
    }

    .roadmap-section .step-title {
        font-size: 20px;
    }

    .roadmap-section .kpi-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .roadmap-section .privileges-wrapper {
        max-height: none;
    }

    .roadmap-section .privileges-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .roadmap-section .step-image-wrapper {
        display: block;
        width: 100%;
        height: 160px;
        min-height: 160px;
    }

    .roadmap-section .step-image-wrapper .step-image {
        position: relative;
        height: 100%;
    }
}

/**/

/* Leaderboards */
.leaderboards-section {
    margin-top: 0px;
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--gutter);
}

@media (min-width: 1024px) {
    .leaderboards-section {
        grid-template-columns: repeat(12, 1fr);
    }
}

@media(max-width: 767px) {
    .leaderboards-section {
        margin-top: 25px;
        gap: 12px;
    }

    .benefits-section {
        margin-top: 25px !important;
    }
}

.lb-card {
    background-color: var(--surface-container-lowest);
    padding: 20px 18px;
    border-radius: 24px;
    box-shadow: 0 10px 30px -10px rgba(0, 102, 255, 0.05);
    border: 1px solid rgba(0, 102, 255, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.lb-card:hover {
    box-shadow: 0 16px 40px -10px rgba(0, 102, 255, 0.1);
}

@media (min-width: 1024px) {
    .lb-card {
        grid-column: span 4;
    }
}

@media(max-width: 767px) {
    .lb-card {
        padding: 14px 12px;
        border-radius: 12px;
    }
}

.lb-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.lb-title {
    font-size: 18px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0;
    padding: 4px 0 0 0;
}

.lb-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.lb-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 6px;
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    border-radius: 16px;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    cursor: pointer;
    min-height: 50px;
}

.lb-item:hover {
    transform: translateX(4px) translateY(-2px);
    background: white;
    border-color: rgba(0, 102, 255, 0.25);
    box-shadow: 0 10px 25px -5px rgba(0, 102, 255, 0.12), 0 4px 6px -2px rgba(0, 0, 0, 0.03);
}

/* Rank Medals / Badges */
.lb-rank {
    font-weight: 800;
    font-size: 14px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: #e2e8f0;
    color: #64748b;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.lb-item:hover .lb-rank {
    transform: scale(1.1);
}

.lb-item:nth-child(1) .lb-rank {
    background: linear-gradient(135deg, #ffd700, #ffaa00);
    color: white;
    box-shadow: 0 4px 12px rgba(255, 170, 0, 0.4);
}

.lb-item:nth-child(2) .lb-rank {
    background: linear-gradient(135deg, #cbd5e1, #94a3b8);
    color: white;
    box-shadow: 0 4px 12px rgba(148, 163, 184, 0.35);
}

.lb-item:nth-child(3) .lb-rank {
    background: linear-gradient(135deg, #f97316, #c2410c);
    color: white;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.35);
}

.lb-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid white;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.lb-item:hover .lb-avatar {
    transform: scale(1.08);
}

.lb-info {
    flex: 1;
    min-width: 0;
}

.lb-name {
    font-weight: 700;
    font-size: 13px;
    color: var(--on-surface);
    margin-bottom: 0px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lb-role {
    font-size: 11px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 1px;
}

.lb-sales {
    margin-left: auto;
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    flex-shrink: 0;
}

.lb-sales-label {
    font-size: 10px;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    line-height: 1.1;
}

.lb-sales-val {
    font-weight: 800;
    font-size: 13px;
    background: linear-gradient(135deg, var(--primary-cyan, #00d2ff), var(--primary-purple, #a549f9));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1.2;
}

.lb-desc {
    font-size: 12px;
    color: #64748b;
    line-height: 1.3;
}

.lb-desc-val {
    font-weight: 700;
    color: var(--primary);
}

.activity-icon {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: transform 0.3s ease;
}

.lb-item:hover .activity-icon {
    transform: scale(1.08);
}

/* Benefits */
.benefits-section {
    margin-top: 40px;
}

.benefits-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

@media (min-width: 768px) {
    .benefits-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

.benefit-card {
    background-color: var(--surface-container-lowest);
    padding: 20px;
    border-radius: 16px;
    border: 1px solid var(--outline-variant);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
    transition: all 0.2s;
}

@media(max-width:767px) {
    .benefits-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .benefit-card {
        padding: 8px;
    }
}

.benefit-card:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.benefits-section .benefit-img-wrapper,
.benefit-img-wrapper {
    width: 100%;
    aspect-ratio: 1;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 8px;
    height: 0;
    padding-bottom: 100%;
    position: relative;
}

.benefits-section .benefit-img-wrapper img,
.benefits-section .benefit-img-wrapper .benefit-img,
.benefit-img-wrapper img,
.benefit-img-wrapper .benefit-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    transition: transform 0.5s ease;
}

.benefit-card:hover .benefit-img-wrapper img,
.benefit-card:hover .benefit-img-wrapper .benefit-img {
    transform: scale(1.1);
}

.benefit-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}

@media(max-width: 767px) {
    .benefit-title {
        font-size: 15px;
        line-height: 1.3;
        margin: 6px;
    }
}

.benefit-desc {
    font-size: 14px;
    color: var(--on-surface-variant);
    line-height: 1.4;
    margin: 0 0 14px 0;
    font-weight: 300;
}

/* Products */
.products-section {
    margin-top: 80px;
    padding-top: 64px;
    border-top: 1px solid var(--outline-variant);
}

@media(max-width: 767px) {
    .products-section {
        margin-top: 20px;
        padding-top: 24px;
    }
}

.products-header-flex {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 35px;
}

.trend-label {
    font-size: var(--label-md-size);
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.2em;
}

.products-title {
    font-size: 30px;
    font-weight: bold;
    margin: 8px 0 0 0;
}

.nav-buttons {
    display: flex;
    gap: 16px;
}

.nav-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-btn-prev {
    background-color: var(--surface-container-lowest);
    border: 1px solid var(--outline-variant);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    color: var(--on-surface);
}

.nav-btn-prev:hover {
    border-color: var(--primary);
}

.nav-btn-next {
    background-color: var(--on-surface);
    color: white;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.nav-btn-next:hover {
    background-image: linear-gradient(to right, #2563EB, #D946EF, #F97316);
}

.products-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

@media (min-width: 1024px) {
    .products-grid {
        grid-template-columns: repeat(5, 1fr);
    }
}

@media (max-width: 767px) {
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
}

.product-card {
    background-color: var(--surface-container-lowest);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid var(--outline-variant);
    display: flex;
    flex-direction: column;
    transition: all 0.5s;
}

.product-card:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    border-color: var(--primary);
}

.product-img-box {
    position: relative;
    height: 256px;
    overflow: hidden;
    padding-bottom: 100%;
    height: 0;
}

.product-img-box img.product-img {
    /* width: 100%; */
    /* height: 100%; */
    /* object-fit: cover; */
    transition: transform 0.7s;
    position: absolute;
    left: 0;
    top: 0;
    max-width: 100%;
    max-height: 100%;
    bottom: 0;
    right: 0;
    margin: auto;
}

.product-card:hover .product-img-box img.product-img {
    transform: scale(1.1);
}

.btn-fav {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-magenta);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.btn-fav:hover {
    background-color: white;
}

.btn-fav .material-symbols-outlined {
    font-size: 20px;
    font-variation-settings: 'FILL' 1;
}

.product-info {
    padding: 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

@media(max-width: 767px) {
    .product-info {
        padding: 10px;
    }
}

.product-info .price {
    color: var(--primary-orange);
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 5px;
}

.product-brand {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    color: var(--on-surface);
    font-weight: 600;
    font-size: 13px;
}

.product-brand>svg {
    width: 16px;
    height: 16px;
    color: var(--primary);
}

.product-name {
    margin: 0 0 0 0;
}

.product-name a {
    font-weight: 600;
    color: var(--on-surface);
    margin: 2px 0 10px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 16px;
    padding: 3px 0 0 0;
    line-height: 1.4;
    height: 46px;
}

@media(max-width: 767px) {
    .product-name a {
        font-size: 14px;
        height: 40px;
    }
}

.product-name a:hover {
    color: var(--primary-orange);
}

.product-stats {
    font-size: 13px;
    color: var(--on-surface-variant);
    font-weight: 500;
    margin-bottom: 12px;
}

.product-badge-wrap {
    margin-bottom: 19px;
}

.product-badge {
    background-color: rgba(249, 115, 22, 0.1);
    color: var(--primary-orange);
    font-size: 12px;
    font-weight: bold;
    padding: 6px 12px;
    border-radius: 9999px;
    border: 1px solid rgba(249, 115, 22, 0.2);
}

.product-actions {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.btn-link {
    width: 100%;
    padding: 10px;
    background: linear-gradient(to right, #2563EB, #D946EF, #F97316);
    color: white;
    border-radius: 9999px;
    font-weight: bold;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.btn-link .material-symbols-outlined {
    font-size: 18px;
}

@media(max-width: 767px) {
    .btn-link {
        font-size: 13px;
        padding: 6px;
    }

    .btn-link .material-symbols-outlined {
        display: none;

    }
}

.btn-detail {
    width: 100%;
    padding: 8px;
    color: var(--on-surface-variant);
    border-radius: 9999px;
    font-weight: bold;
    font-size: 14px;
}

.btn-detail:hover {
    background-color: var(--surface-container);
}

/* Footer */
.app-footer {
    background-color: #0f172a;
    color: white;
    padding: 48px 0;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
}

@media (min-width: 768px) {
    .footer-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

.footer-logo-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}

.footer-logo-img {
    height: 40px;
    width: auto;
    filter: brightness(0) invert(1);
}

.footer-logo-text {
    font-size: var(--headline-sm-size);
    font-weight: 600;
    letter-spacing: -0.02em;
}

.footer-desc {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.6;
    margin: 0;
}

.footer-title {
    font-weight: bold;
    margin: 0 0 24px 0;
}

.footer-links {
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.6);
}

.footer-link:hover {
    color: var(--primary-magenta);
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    margin-top: 48px;
    padding-top: 32px;
    text-align: center;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.4);
}

/* ==========================================================================
   Scroll Reveal & Animation Effects
   ========================================================================== */
.scroll-reveal {
    opacity: 0;
    transform: translateY(35px);
    transition: opacity 0.75s cubic-bezier(0.16, 1, 0.3, 1), transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

.scroll-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Staggered child cards reveal within sections */
.overview-grid>.stat-card,
.roles-section>.role-card,
.roadmap-grid>.roadmap-step,
.benefits-grid>.benefit-card,
.products-grid>.product-card {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.scroll-reveal.is-visible .stat-card,
.scroll-reveal.is-visible .role-card,
.scroll-reveal.is-visible .roadmap-step,
.scroll-reveal.is-visible .benefit-card,
.scroll-reveal.is-visible .product-card {
    opacity: 1;
    transform: translateY(0);
}

.scroll-reveal.is-visible .stat-card:nth-child(1),
.scroll-reveal.is-visible .role-card:nth-child(1),
.scroll-reveal.is-visible .roadmap-step:nth-child(1),
.scroll-reveal.is-visible .benefit-card:nth-child(1),
.scroll-reveal.is-visible .product-card:nth-child(1) {
    transition-delay: 0.08s;
}

.scroll-reveal.is-visible .stat-card:nth-child(2),
.scroll-reveal.is-visible .role-card:nth-child(2),
.scroll-reveal.is-visible .roadmap-step:nth-child(2),
.scroll-reveal.is-visible .benefit-card:nth-child(2),
.scroll-reveal.is-visible .product-card:nth-child(2) {
    transition-delay: 0.16s;
}

.scroll-reveal.is-visible .stat-card:nth-child(3),
.scroll-reveal.is-visible .role-card:nth-child(3),
.scroll-reveal.is-visible .roadmap-step:nth-child(3),
.scroll-reveal.is-visible .benefit-card:nth-child(3),
.scroll-reveal.is-visible .product-card:nth-child(3) {
    transition-delay: 0.24s;
}

.scroll-reveal.is-visible .stat-card:nth-child(4),
.scroll-reveal.is-visible .role-card:nth-child(4),
.scroll-reveal.is-visible .roadmap-step:nth-child(4),
.scroll-reveal.is-visible .benefit-card:nth-child(4),
.scroll-reveal.is-visible .product-card:nth-child(4) {
    transition-delay: 0.32s;
}

.scroll-reveal.is-visible .role-card:nth-child(5) {
    transition-delay: 0.40s;
}

/* ==========================================================================
   Roadmap Section V2 Scroll Animations
   ========================================================================== */
.roadmap-section-v2 .hero-text.scroll-reveal {
    opacity: 0;
    transform: translateY(35px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

.roadmap-section-v2 .hero-text.scroll-reveal.is-visible,
.roadmap-section-v2.is-visible .hero-text {
    opacity: 1;
    transform: translateY(0);
}

.roadmap-section-v2 .center-line {
    transform: translateX(-50%) scaleY(0);
    transform-origin: top center;
    transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
}

.roadmap-section-v2.is-visible .center-line,
.roadmap-section-v2 .roadmap-container.is-visible .center-line {
    transform: translateX(-50%) scaleY(1);
}

/* Step Wrapper Animations */
.roadmap-section-v2 .step-wrapper.scroll-reveal {
    opacity: 0;
    transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}

/* Step 1 (Normal: Slide from Left & Bottom) */
.roadmap-section-v2 .step-wrapper:not(.reverse):not(.step-3-wrapper).scroll-reveal {
    transform: translateX(-50px) translateY(20px);
}

/* Step 2 (Reverse: Slide from Right & Bottom) */
.roadmap-section-v2 .step-wrapper.reverse.scroll-reveal {
    transform: translateX(50px) translateY(20px);
}

/* Step 3 (Hub Manager: Scale Up & Slide Up) */
.roadmap-section-v2 .step-wrapper.step-3-wrapper.scroll-reveal {
    transform: translateY(50px) scale(0.95);
}

/* Mobile Responsiveness for Animations */
@media (max-width: 768px) {

    .roadmap-section-v2 .step-wrapper:not(.reverse):not(.step-3-wrapper).scroll-reveal,
    .roadmap-section-v2 .step-wrapper.reverse.scroll-reveal {
        transform: translateY(40px);
    }
}

/* Visible state for Step Wrappers */
.roadmap-section-v2 .step-wrapper.scroll-reveal.is-visible,
.roadmap-section-v2.is-visible .step-wrapper {
    opacity: 1;
    transform: translate(0, 0) scale(1) !important;
}

/* Connector Line & Dot animations */
.roadmap-section-v2 .connector-line {
    opacity: 0;
    width: 0% !important;
    transition: width 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.3s, opacity 0.4s ease 0.3s;
}

.roadmap-section-v2 .step-wrapper.is-visible .connector-line,
.roadmap-section-v2.is-visible .connector-line {
    opacity: 1;
    width: 10% !important;
}

.roadmap-section-v2 .connector-dot {
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.45s;
}

.roadmap-section-v2 .step-wrapper.is-visible .connector-dot,
.roadmap-section-v2.is-visible .connector-dot {
    transform: translate(-50%, -50%) scale(1);
}

.roadmap-section-v2 .step-3-dot {
    transform: scale(0);
    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.4s;
}

.roadmap-section-v2 .step-wrapper.is-visible .step-3-dot,
.roadmap-section-v2.is-visible .step-3-dot {
    transform: scale(1);
}

/* Background Numbers reveal */
.roadmap-section-v2 .bg-number {
    opacity: 0;
    transition: opacity 0.8s ease 0.2s, transform 0.8s ease 0.2s;
}

.roadmap-section-v2 .step-wrapper.is-visible .bg-number,
.roadmap-section-v2.is-visible .bg-number {
    opacity: 0.05;
}

/* Internal Card Elements (KPI & Perks) Staggered Fade-Up */
.roadmap-section-v2 .kpi-card,
.roadmap-section-v2 .perk-item {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1), transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.roadmap-section-v2 .step-wrapper.is-visible .kpi-card,
.roadmap-section-v2.is-visible .kpi-card,
.roadmap-section-v2 .step-wrapper.is-visible .perk-item,
.roadmap-section-v2.is-visible .perk-item {
    opacity: 1;
    transform: translateY(0);
}

.roadmap-section-v2 .step-wrapper.is-visible .kpi-card:nth-child(1) {
    transition-delay: 0.2s;
}

.roadmap-section-v2 .step-wrapper.is-visible .kpi-card:nth-child(2) {
    transition-delay: 0.3s;
}

.roadmap-section-v2 .step-wrapper.is-visible .perk-item:nth-child(1) {
    transition-delay: 0.35s;
}

.roadmap-section-v2 .step-wrapper.is-visible .perk-item:nth-child(2) {
    transition-delay: 0.45s;
}

.roadmap-section-v2 .step-wrapper.is-visible .perk-item:nth-child(3) {
    transition-delay: 0.55s;
}

/* Mobile Down Arrow for Roadmap Steps */
.mobile-step-arrow {
    display: none;
}

@media (max-width: 768px) {
    .mobile-step-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        margin: 10px auto 10px auto;
        border-radius: 50%;
        z-index: 15;
        position: relative;
        animation: bounceDown 2s infinite ease-in-out;
    }

    .mobile-step-arrow .material-symbols-outlined {
        font-size: 26px;
    }

    .step-1-arrow {
        background: rgba(0, 210, 255, 0.12);
        border: 1px solid rgba(0, 210, 255, 0.35);
        color: #00d2ff;
        box-shadow: 0 0 15px rgba(0, 210, 255, 0.3);
    }

    .step-2-arrow {
        background: rgba(165, 73, 249, 0.12);
        border: 1px solid rgba(165, 73, 249, 0.35);
        color: #a549f9;
        box-shadow: 0 0 15px rgba(165, 73, 249, 0.3);
    }
}

@keyframes bounceDown {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(6px);
    }
}