
:root {
    --ink: #11281e;
    --deep: #06603b;
    --navy: #06603b;
    --navy2: #04492d;
    --green: #06603b;
    --green2: #04492d;
    --gold: #c08327;
    --gold2: #df9e38;
    --saffron: #fd6d08;
    --saffron2: #e05d00;
    --ivory: #f8f7f4;
    --off: #f0eee8;
    --line: #e1e3e7;
    --muted: #606d7d;
    --white: #fff;
    --ease: cubic-bezier(.2, .75, .2, 1)
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    margin: 0;
    color: var(--ink);
    background: var(--ivory);
    font-family: "Segoe UI", Arial, sans-serif;
    -webkit-font-smoothing: antialiased
}

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

button,
input,
textarea,
select {
    font: inherit
}

button {
    cursor: pointer
}

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

::selection {
    background: #c08327;
    color: #fff
}

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

.clear {
    clear: both;
}

.container {
    width: 100% !important;
    max-width: 1320px;
    margin: 0 auto;
}

.container-fluid {
    position: relative;
    max-width: 1320px;
    margin: 0 auto;
}

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 10px;
    }

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

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

    .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;
}


/**/

/* --- Architectural Porcelain Luxury Header --- */
.header.header1 {
    position: relative;
    z-index: 1000;
    background: #fffdfb;
}

/* 1. Header Toolbar (Top Architectural Strip) */
.header-toolbar {
    background: var(--green);
    color: #fff;
    font-size: 11.5px;
    letter-spacing: 0.5px;
    min-height: 38px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    display: block;
}

.header-toolbar .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 38px;
}

.header-toolbar .support {
    display: flex;
    align-items: center;
    gap: 18px;
    float: none;
    margin: 0;
}

.header-toolbar .support span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    border: none;
    padding: 0;
    margin: 0;
    line-height: 38px;
    font-size: 11.5px;
}

.header-toolbar .support span i {
    color: #c08327;
    font-size: 12px;
}

.header-toolbar .support a {
    color: #ded6cf;
    text-decoration: none;
    transition: color 0.2s ease;
}

.header-toolbar .support a:hover {
    color: #ffffff;
}

.header-toolbar .toolbar-showroom-badge {
    background: rgba(196, 126, 98, 0.15);
    border: 1px solid rgba(196, 126, 98, 0.35);
    color: #e2a893 !important;
    font-size: 10px !important;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    padding: 2px 10px;
    border-radius: 12px;
    line-height: normal !important;
}

.header-toolbar .wrap-icon {
    float: none;
    margin: 0;
}

.header-toolbar .login-menu {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-toolbar .login-menu a {
    color: #fff;
    font-size: 11.5px;
    border: none;
    padding: 0;
    margin: 0;
    line-height: 38px;
    transition: color 0.2s;
    text-decoration: none;
}

.header-toolbar .login-menu a:hover {
    color: #ffffff;
}

.header-toolbar .login-menu a:first-child:after {
    content: '|';
    margin-left: 12px;
    color: rgba(255, 255, 255, 0.25);
}

@media (max-width: 767px) {
    .header-toolbar {
        min-height: 34px;
    }

    .header-toolbar .support {
        display: none;
    }

    .header-toolbar .container {
        justify-content: flex-end;
    }
}

/* 2. Main Architectural Header */
.header-main {
    position: sticky;
    top: 0;
    z-index: 999;
    background: rgba(255, 254, 251, 0.97);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid #eae3dc;
    box-shadow: 0 4px 24px rgba(37, 28, 22, 0.04);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.header-main.navbar-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background: rgba(255, 254, 251, 0.98);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid #e5dcce;
    box-shadow: 0 6px 30px rgba(37, 28, 22, 0.08);
}

.header-main .wrap-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 74px;
}

.header-main .logo {
    display: flex;
    align-items: center;
    line-height: normal;
    padding: 10px 0;
}

.header-main .logo img {
    max-height: 48px;
    width: auto;
    object-fit: contain;
    mix-blend-mode: multiply;
    transition: transform 0.25s ease;
}

.header-main .logo img:hover {
    transform: scale(1.02);
}

.wrap-menu-top {
    display: flex;
    align-items: center;
    margin: 0 auto;
}

.header-main .header-left {
    display: flex;
    align-items: center;
    gap: 14px;
    position: relative;
    padding-right: 0;
}

.header-left .btn-talk {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 38px;
    padding: 0 18px;
    border-radius: 20px;
    background: linear-gradient(135deg, #06603b 0%, #0a8453 100%);
    color: #ffffff !important;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    box-shadow: 0 4px 14px rgba(6, 96, 59, 0.3);
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    text-decoration: none;
    white-space: nowrap;
}

.header-left .btn-talk i {
    font-size: 12px;
}

.header-left .btn-talk:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(6, 96, 59, 0.45);
    color: #ffffff !important;
    text-decoration: none;
}

@media (max-width: 991px) {

    .header-main .header-left .btn,
    .header-left .btn-talk {
        display: none !important;
    }
}

.header-left .btn:hover,
.header-main.navbar-fixed .header-left .btn:hover {
    color: var(--main-color);
    border-color: var(--main-color);
}

.wrap-search {
    position: relative;
}

.wrap-header .nav-search .none {
    visibility: hidden;
}

.wrap-search .nav-search {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #f7f3ee;
    border: 1px solid #eae1d7;
    color: #4a423d;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    margin-right: 0;
    position: relative;
}

.wrap-search .nav-search:hover {
    background: #06603b;
    border-color: #06603b;
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(6, 96, 59, 0.35);
}

.wrap-search .nav-search:hover .search-close {
    color: #ffffff !important;
}

@media(max-width: 767px) {
    .wrap-search .nav-search:hover .search-close {
        color: #06603b !important;
    }
}

.search-block {
    position: absolute;
    top: calc(100% + 14px);
    right: 0;
    width: 330px;
    background: #ffffff;
    border: 1px solid #eae2da;
    border-radius: 8px;
    box-shadow: 0 16px 45px rgba(37, 28, 22, 0.14);
    padding: 14px;
    z-index: 1000;
    margin-top: 0;
}

.search-block:before {
    content: '';
    position: absolute;
    top: -6px;
    right: 14px;
    width: 12px;
    height: 12px;
    background: #ffffff;
    border-top: 1px solid #eae2da;
    border-left: 1px solid #eae2da;
    transform: rotate(45deg);
}

.search-block .form-control {
    background: #faf8f5;
    border: 1px solid #e3d9cf;
    border-radius: 4px;
    color: #2e2825;
    height: 42px;
    padding: 0 14px;
    font-size: 13px;
    box-shadow: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.search-block .form-control:focus {
    border-color: #06603b;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(6, 96, 59, 0.12);
    outline: none;
}

.wrap-menu-top .close {
    display: none;
}

.search-block label {
    width: 100%;
    display: inline-block;
    margin-bottom: 0px;
}

.wrap-search .nav-search #search {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.wrap-search .nav-search #search.none {
    display: none !important;
}

.wrap-search .nav-search .search-close {
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-weight: 300;
    color: inherit;
    cursor: pointer;
    transition: color 0.2s;
    line-height: 1;
}

.wrap-search .nav-search .search-close.hide {
    display: none !important;
}

.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: #ffffff;
    margin: 4px 0px;
    background: #222;
}

.header-main.navbar-fixed .icon-cate-mobi span,
.header-main.navbar-fixed .icon-menu-mobi span {
    background: #000;
}

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

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

@media(max-width: 991px) {
    .icon-cate-mobi {
        display: none;
    }

    .icon-menu-mobi {
        display: flex;
    }
}

.header-main .menu-top ul {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    list-style: none;
}

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

.header-main .menu-top ul>li {
    list-style-type: none;
    display: inline-block;
    position: relative;
}

.header-main .menu-top ul>li>a {
    padding: 27px 16px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    position: relative;
    color: #38332f;
    text-align: center;
    font-weight: 600;
    font-size: 13px;
    transition: color 0.25s ease;
    text-decoration: none;
}

.header-main .menu-top ul>li>a i {
    font-size: 11px;
    color: #9c8e83;
    transition: transform 0.25s ease, color 0.25s ease;
}

.header-main .menu-top ul>li:hover>a i {
    transform: rotate(180deg);
    color: #06603b;
}

.header-main .menu-top ul>li>a:hover,
.header-main .menu-top ul>li.active>a {
    color: #06603b;
    text-decoration: none;
}

/* Architectural gold indicator */
.header-main .menu-top ul>li>a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 16px;
    right: 16px;
    height: 2px;
    background: #c08327;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    border-radius: 2px 2px 0 0;
}

@media(max-width: 767px) {
    .header-main .menu-top ul>li>a:after {
        left: 0;
        right: 0;
        border-radius: 0;
    }
}

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

.header-main.navbar-fixed .menu-top ul>li>a {
    color: #38332f;
}

.header-main.navbar-fixed .menu-top ul>li>a:hover,
.header-main.navbar-fixed .menu-top ul>li.active>a {
    color: #06603b;
}

/* Submenu Dropdown Card */
.header-main .menu-top ul>li>.sub {
    position: absolute;
    width: 250px;
    top: 100%;
    left: 0px;
    background: #ffffff;
    border: 1px solid #ede5dc;
    border-radius: 6px;
    padding: 8px 0;
    box-shadow: 0 16px 40px rgba(37, 28, 22, 0.12);
    display: none;
    z-index: 1000;
}

@media(max-width: 991px) {
    .header-main .menu-top ul>li>.sub {
        width: 100%;
        position: relative;
        display: block;
        box-shadow: none;
        border: none;
        padding-left: 15px;
    }
}

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

.header-main .menu-top ul>li>.sub>li {
    display: block;
    border-top: none;
    list-style: none;
}

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

.header-main .menu-top ul>li>.sub>li>a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.2px;
    color: #4f4742;
    transition: all 0.2s ease;
    text-decoration: none;
    border-left: 2px solid transparent;
    text-transform: unset;
}

.header-main .menu-top ul>li>.sub>li:hover>a {
    background: #faf6f2;
    color: #06603b;
    border-left-color: #06603b;
    padding-left: 24px;
    text-decoration: none;
}

.header-main .menu-top ul>li>.sub>li.li-sub {}

.header-main .menu-top ul>li>.sub>li.li-sub>a {
    font-weight: 600;
    font-size: 16px;
}

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

.header-main .menu-top ul>li>.sub>li>.sub {
    position: relative;
    display: block;
    box-shadow: none;
    padding: 0;
}

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

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

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

    .header-main .menu-top {}

    .header-main .menu-top ul>li {
        display: block;
        border-top: 1px solid #f1f1f1;
        padding: 0px 8px !important;
    }

    .header-main .menu-top ul>li:first-child {
        border-top: unset;
    }

    .header-main .menu-top ul>li>a {
        text-align: left;
        padding: 10px 10px !important;
        font-size: 14px;
        font-weight: 400;
        color: #000;
    }
}

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

.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;
    }
}

.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;
    /* opacity: 0;
    visibility: hidden;
    -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; */
    padding: 10px 0px;
}

.menu-top ul>li:hover .wrap-sub {
    display: block;
    /* opacity: 1;
    visibility: visible; */
}

@media(max-width: 991px) {
    .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: 991px) {
    .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: 16px;
}

.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: 14px;
}


/**/

.icon-cart {
    position: absolute !important;
    top: 5px;
    right: 15px;
    z-index: 9;
    line-height: normal;
    color: #fff;
    color: #222;
}

.navbar-fixed .icon-cart {
    color: #333;
}

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

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

.icon-cart span {
    position: absolute;
    top: -8px;
    right: -7px;
    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;
}

@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 img {
        height: 30px;
    }
}


/**/

.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: 15px; */
}

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

.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;
    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 img {
    width: 100%;
    position: relative;
    z-index: 1;
}

.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;
    margin-top: -24px;
    z-index: 2;
    width: 60px;
    height: 60px;
    line-height: 60px;
    font-size: 20px;
    color: #fff;
    border: 1px solid #fff;
    text-align: center;
    border-radius: 50%;
    transition: 0.3s ease;
}

.flexslider .flex-direction-nav>li:hover {
    background: #fff;
}

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

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

.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 {
    width: 100%;
}

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


/**/

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

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

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

.block-title {
    text-align: center;
    max-width: 100%;
    overflow: hidden;
    margin: 20px 0px 30px;
}

.block-title .title {
    font-size: 28px;
    color: #000;
    margin: 10px auto 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    text-transform: uppercase;
    position: relative;
    line-height: 1.6;
}

.block-title .title:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 60%;
    height: 1px;
    background-color: #000;
    transform: translate(-50%, 0);
}

.block-title .title:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 60%;
    height: 1px;
    background-color: #000;
    transform: translate(50%, 0%);
}

.block-title .info {
    max-width: 60%;
    margin: 15px auto 0px;
}

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

    .block-title .title {
        float: none;
        margin-bottom: 0px;
        font-size: 20px;
        width: 100%;
    }

    .block-title .title:before {
        width: 35%;
    }

    .block-title .title:after {
        width: 35%;
    }
}

.block-title .title span,
.block-title .title a {
    background: #fff;
    padding: 0 5px;
    display: inline-block;
    position: relative;
    z-index: 1;
}

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

@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;
}

.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: 0px 0;
}

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

/* --- Ultra-Luxury Architectural Footer --- */
footer,
.footer1 {
    position: relative;
    margin-top: 0px;
    padding-top: 55px;
    padding-bottom: 0px;
    color: #eee7e0;
    background: #0b2d2b;
    line-height: normal;
    overflow: hidden;
}

footer a,
.footer1 a {
    color: #fff;
}

/* Metallic hairline accent along the top */
.footer-top-accent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, rgba(192, 131, 39, 0.15) 15%, #c08327 50%, rgba(192, 131, 39, 0.15) 85%, transparent 100%);
    box-shadow: 0 1px 8px rgba(192, 131, 39, 0.3);
}

.footer-main-row {
    margin-bottom: 45px;
}

/* Brand Column */

.foot-luxury-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: #c08327;
    margin-bottom: 14px;
}

.foot-luxury-tag .foot-tag-line {
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #c08327;
}

.logo-footer {
    text-align: left;
    margin-bottom: 16px;
}

.logo-footer img {
    max-height: 48px;
    max-width: 220px;
    width: auto;
    object-fit: contain;
    filter: brightness(1.15) drop-shadow(0 2px 8px rgba(0, 0, 0, 0.35));
    transition: transform 0.3s ease;
}

.logo-footer img:hover {
    transform: scale(1.02);
}

.foot-brand-desc {
    color: #fff;
    font-size: 13.5px;
    line-height: 1.85;
    margin-bottom: 20px;
    font-weight: 400;
}

/* Architectural badges */
.foot-luxury-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 22px;
}

.foot-badge-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    font-size: 11px;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.3px;
    backdrop-filter: blur(4px);
    transition: all 0.25s ease;
}

.foot-badge-item i {
    color: #c08327;
    font-size: 12px;
}

.foot-badge-item:hover {
    background: rgba(192, 131, 39, 0.1);
    border-color: rgba(192, 131, 39, 0.3);
    color: #ffffff;
    transform: translateY(-1px);
}

/* Left-aligned social jewelry */
.foot-col-brand .social.foot-social {
    justify-content: flex-start !important;
    margin: 18px 0 0 0 !important;
    gap: 10px !important;
}

.foot-col-brand .social.foot-social a.social-item,
.foot-social a.social-item {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #ded6cf !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 15px !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25) !important;
}

.foot-col-brand .social.foot-social a.social-item:hover,
.foot-social a.social-item:hover {
    background: #06603b !important;
    border-color: #c08327 !important;
    color: #ffffff !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 18px rgba(6, 96, 59, 0.4) !important;
}

.foot-col-brand .social.foot-social a.social-item.facebook:hover,
.foot-social a.social-item.facebook:hover {
    background: #1877f2 !important;
    border-color: #1877f2 !important;
}

.foot-col-brand .social.foot-social a.social-item.youtube:hover,
.foot-social a.social-item.youtube:hover {
    background: #e62117 !important;
    border-color: #e62117 !important;
}

.foot-col-brand .social.foot-social a.social-item.zalo:hover,
.foot-social a.social-item.zalo:hover {
    background: #0068ff !important;
    border-color: #0068ff !important;
}

/* Titles */
.title_footer {
    margin-bottom: 20px;
    margin-top: 0;
    padding-bottom: 12px;
    position: relative;
    display: block;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.3;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1.6px;
}

@media (max-width: 767px) {
    .title_footer {
        margin-top: 20px;
        margin-bottom: 15px;
    }
}

.title_footer:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 32px;
    height: 2px;
    background: linear-gradient(90deg, #c08327, #06603b);
    border-radius: 2px;
    border: none;
}

.title_footer a {
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1.6px;
    font-size: 13.5px;
}

.title_footer a:hover {
    color: #fd6d08;
}

/* Navigation Menu */
.menu-bottom {
    padding: 0;
}

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

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

    .menu-bottom>div {
        padding: 0;
    }
}

.menu-bottom ul li {
    padding: 9px 0;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.06);
}

.menu-bottom ul li:first-child {
    padding-top: 0;
}

.menu-bottom ul li:last-child {
    border-bottom: none;
}

.menu-bottom ul li a {
    font-size: 13.5px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    transition: all 0.25s ease;
    text-decoration: none;
}

.menu-bottom ul li a i {
    font-size: 10px;
    margin-right: 6px;
}

.menu-bottom ul li a:hover {
    color: #ffffff;
    transform: translateX(5px);
    text-decoration: none;
}

.menu-bottom ul li a:hover:before {
    opacity: 1;
    color: #ffffff;
}

/* Contact Column & Card */
.foot-col-contact .footer {
    padding: 0;
}

.footer-contact-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    padding: 22px 24px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 8px 24px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(6px);
}

.footer-contact-content {
    font-size: 13px;
    line-height: 1.5;
    color: #fff;
}

.footer-contact-content p {
    margin-bottom: 8px;
    color: #fff;
    line-height: 1.5;
}

.footer-contact-content a {
    color: #c08327;
    transition: color 0.2s ease;
    text-decoration: none;
}

.footer-contact-content a:hover {
    color: #fd6d08;
    text-decoration: underline;
}

.footer-contact-content b,
.footer-contact-content strong {
    color: #f1ebe5;
    font-weight: 600;
}

/* Hotline Bar */
.footer-hotline-bar {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.footer-hotline-bar .hotline-label {
    font-size: 12.5px;
    color: #a89f97;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.footer-hotline-bar .hotline-label i {
    color: #fd6d08;
    font-size: 13px;
}

.footer-hotline-bar .hotline-num {
    display: inline-flex;
    align-items: center;
    background: linear-gradient(135deg, #fd6d08 0%, #e05d00 100%);
    color: #ffffff;
    font-size: 13.5px;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 20px;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 12px rgba(253, 109, 8, 0.35);
    transition: all 0.25s ease;
    text-decoration: none;
}

.footer-hotline-bar .hotline-num:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(253, 109, 8, 0.5);
    color: #ffffff;
    text-decoration: none;
}

/* Copyright Bar */
.copyright {
    padding: 20px 0;
    color: #fff;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    background: #0b2d2b;
    font-weight: 400;
    font-size: 12.5px;
}

.copyright-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.foot-policy-links {
    display: flex;
    align-items: center;
    gap: 12px;
}

.foot-policy-links a {
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    transition: color 0.2s ease;
}

.foot-policy-links a:hover {
    color: #c08327;
    text-decoration: none;
}

.foot-policy-links .sep {
    color: rgba(255, 255, 255, 0.15);
}

@media (max-width: 991px) {
    .foot-col-brand {
        margin-bottom: 0px;
    }

    .foot-col-menu {
        margin-bottom: 35px;
    }
}

@media (max-width: 767px) {

    footer,
    .footer1 {
        padding-top: 40px;
    }

    .footer-main-row {
        margin-bottom: 30px;
    }

    .logo-footer {
        text-align: left;
    }

    .foot-col-brand .social.foot-social {
        justify-content: flex-start;
    }

    .copyright-wrap {
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }

    .foot-policy-links {
        justify-content: center;
        flex-wrap: wrap;
    }

    .footer-contact-card {
        padding: 18px 16px;
    }
}


/**/

.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 10px !important;
    }
}

.content-product-detail .detail-product .images-product-detail .thumbs {
    padding: 4px 0px;
    max-height: 253px;
    overflow: hidden;
    margin-top: 10px;
}

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

.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%;
    border-radius: 5px;
    overflow: hidden;
    max-width: 233px;
}

.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;
    max-width: 233px;
}

@media(max-width: 767px) {
    .content-product-detail .detail-product .images-product-detail .thumbs {
        max-height: 150px;
    }

    .content-product-detail .detail-product .images-product-detail .thumbs>div .item,
    .content-product-detail .detail-product .images-product-detail .thumbs>div .item img {
        max-width: 150px;
    }
}

.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%;
    border-radius: 10px;
    overflow: hidden;
    /* border: 1px solid #ddd; */
    box-shadow: 0px 0px 16px #ddd;
}

.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;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.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;
    padding: 0;
}

@media(max-width: 767px) {
    .content-product-detail .detail-product .infomation-product-detail {
        padding: 0px 2px;
        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: 700;
    margin-bottom: 10px;
    margin-top: 1px;
    background: linear-gradient(135deg, rgb(0, 45, 98) 0%, rgb(230, 95, 18) 100%) text;
    -webkit-text-fill-color: transparent;
}

.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 .content-product-combo .title {
    padding: 0;
    border: none;
    font-size: 16px;
    margin-bottom: 6px;
    margin-top: 5px;
}

.content-product-detail .detail-product .infomation-product-detail .ma-sp {
    color: #222;
    font-size: 28px;
    display: inline-block;
    margin-bottom: 2px;
    /* margin-right: 10px; */
    font-weight: 600;
}

.content-product-detail .detail-product .infomation-product-detail .pro-code {}

.content-product-detail .detail-product .infomation-product-detail .pro-code .sku {
    display: inline-block;
    background: var(--main-color);
    color: #fff;
    padding: 5px 28px;
    border-radius: 4px;
    border: 1px solid var(--MAIN-COLOR);
    margin: 0 0 5px;
}

.content-product-detail .detail-product .infomation-product-detail .pro-code .manufacturer_name {
    color: var(--main-color);
    font-size: 16px;
    margin: 0 0 6px 0;
    display: inline-block;
}

.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;
}



/**/

.about {
    margin-bottom: 15px;
}

/**/

.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: 24px;
    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: 20px;
    height: 16px;
}

.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-product {
    padding: 6px 0;
}

.galary-album>ul {
    padding: 0px;
    margin: 0px;
}

.galary-album>ul>li {
    list-style: none;
    float: left;
    width: 16.66666667%;
    padding: 3px;
    overflow: hidden;
}

.galary-product>ul>li {
    width: 25%;
}

.galary-product-2>ul>li {
    width: 50%;
}

@media(max-width: 767px) {
    .galary-album>ul>li {
        width: 33.33%;
    }

    .galary-product-2>ul>li,
    .galary-product>ul>li {
        width: 50%;
    }
}

.galary-album>ul>li a {
    display: block;
    height: 100%;
    width: 100%;
    cursor: pointer;
}

.galary-album>ul>li img {
    border-radius: 4px;
    border: 1px solid #ddd;
}

.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;
        margin: 8px 0;
    }
}

.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: 60px;
    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;
}


/*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: 0px 0px 20px;
    background: #fff;
    margin-top: 0px
}

.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;
    margin: 5px 0;
}

.bottom_banner .item a img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    padding: 10px;
    max-width: 100%;
    max-height: 100%;
    width: auto;
}

.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;
}

/**/

.article {
    margin-bottom: 15px;
}

.article .block-content {}

.article .block-content ul {
    padding: 0;
}

.article .block-content ul li {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.article .block-content ul li h3 {
    margin: 10px 0px;
    font-size: 15px;
    font-weight: 400;
}

.article .block-content ul li h3 i {}


/**/

.register11 {
    padding: 70px 0px 70px;
    /* background: url(../imgs/about1.jpeg) no-repeat; */
    /* background-size: cover; */
    position: relative;
}

/* .register11::before {
    content: '';
    position: absolute;
    background: rgb(255 255 255 / 0.7);
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
    z-index: 1;
}
 */
.register11 .content {
    padding: 25px;
    box-shadow: 0px 0px 25px #bfbfbf;
    position: relative;
    z-index: 2;
    background: #f9f9f9;
}

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

    .register11 .content {
        padding: 16px;
    }
}

.register11 .content .content1 {
    background: #fff;
    padding: 60px 30px;
}

@media(max-width: 767px) {
    .register11 .content .content1 {
        padding: 15px;
    }
}

.register11 .row .info .item {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 15px;
    position: relative;
    padding-top: 35px;
}

.register11 .row .item1 .iframe>h2 {
    margin: 0px 0px 15px;
    text-align: center;
    text-transform: uppercase;
    color: var(--main-color);
    font-size: 22px;
    font-weight: 600;
    line-height: 1.4;
    padding-top: 0px;
}

.register11 .row .item1 .iframe .form-group label {
    font-weight: 500;
    display: block;
}

.register11 .row .item1 .iframe .short_info {
    text-align: center;
    margin-bottom: 15px;
    margin-top: -10px;
}

.span-error {
    color: red;
    display: block;
    font-size: 13px;
    margin-top: 5px;
}


/*register-popup*/

.register-popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    outline: 0;
    -webkit-transition: opacity .15s linear;
    -o-transition: opacity .15s linear;
    transition: opacity .15s linear;
    visibility: hidden;
    opacity: 0;
}

.register-popup.active {
    opacity: 1;
    visibility: visible;
}

.register-popup .content {
    max-width: 550px;
    margin: 20px auto 0px;
    background: #fff;
    position: relative;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #999;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 6px;
    outline: 0;
    -webkit-box-shadow: 0 3px 9px rgb(0 0 0 / 50%);
    box-shadow: 0 3px 9px rgb(0 0 0 / 50%);
    padding: 25px 35px;
}

.register-popup .content .close {}

.register-popup .content .form {}

.register-popup .content .title {
    margin: 20px 0 20px;
    text-align: center;
}

.register-popup .content .information {
    text-align: center;
    line-height: 1.5;
}

.register-popup .content .form-default {}

.register-popup .content .form-group {}

.register-popup .content .form-group input,
.register-popup .content .form-group select,
.register-popup .content .form-group textarea {}

.overlay-form-popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 500;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .15s linear;
    -o-transition: opacity .15s linear;
    transition: opacity .15s linear;
}

.register-popup.active+.overlay-form-popup {
    opacity: 0.5;
    visibility: visible;
}


/*register-popup*/


/**/

.modal-form-success {}

.modal-form-success .modal-body {
    padding: 25px;
    text-align: center;
}

@media(max-width: 767px) {
    .modal-form-success .modal-body {
        padding: 20px 12px;
    }
}

.modal-form-success .modal-body button {
    opacity: 1;
    text-shadow: none;
    float: none;
    background: var(--main-color);
    border: 1px solid var(--main-color-hover);
    color: #fff;
    height: 46px;
    width: auto;
    border-radius: 3px;
    font-size: 15px;
    padding: 0px 30px;
    margin-top: 14px;
    text-transform: uppercase;
    box-shadow: 1px 1px 3px #999;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.modal-form-success .modal-body button:hover {
    background: var(--main-color-hover);
}

.modal-form-success .modal-body .in {
    color: var(--main-color);
    border: 1px solid var(--main-color);
    font-size: 60px;
    line-height: 80px;
    text-align: center;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin: 15px auto 0px;
}

.modal-form-success .modal-body h3 {
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    margin: 30px 0px 12px;
    line-height: 1.2;
    color: #555;
}

.modal-form-success .modal-body h4 {
    color: #555;
    font-size: 16px;
    margin-bottom: 10px;
}

.modal-form-success .modal-body p {
    text-align: center;
    font-size: 26px;
    font-weight: 300;
}


/**/

.owl-controls .owl-buttons div {
    position: absolute;
    top: 50%;
    left: 8px;
    font-size: 20px;
    height: 40px;
    width: 30px;
    line-height: 40px;
    text-align: center;
    margin-top: -21px;
    background: rgb(0 0 0 / 30%);
    color: #fff;
    -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;
}

.owl-controls .owl-buttons div:hover {
    background: var(--main-color);
}

.owl-controls .owl-buttons div.owl-next {
    left: auto;
    right: 8px;
}

.tab-content>.active {
    display: block;
}


/* Stock Display Styles */

.stock-info {
    margin: 8px 0;
}

.stock-label {
    font-size: 14px;
    color: #333;
}

.stock-value {
    font-weight: bold;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 13px;
}

.stock-available {
    color: #28a745;
    background-color: #d4edda;
}

.stock-out {
    color: #dc3545;
    background-color: #f8d7da;
}

.stock_label {
    position: absolute;
    top: 2px;
    right: 2px;
    background: rgba(40, 167, 69, 0.9);
    color: #fff;
    padding: 2px 6px;
    border-radius: 5px 0px;
    font-size: 12px;
    font-weight: 500;
    z-index: 2;
}

.slick-dots li.slick-active button,
.slick-dots li.slick-active span {
    background-color: #fff !important;
}

.logo-footer img {
    /* max-width: 350px; */
    /* margin-bottom: 20px; */
    padding-top: 50px;
}

.social-footer {
    list-style-type: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

.social-footer li {
    display: inline-block;
    margin: 0 6px 8px 0;
}

.social-footer li>a {
    width: 30px;
    height: 30px;
    font-size: 12px;
    color: #000;
    line-height: 28px;
    border: 1px solid #ccc9e9;
    display: inline-block;
    text-align: center;
    transition: all 0.2s linear;
    border-radius: 50%;
}

.social-footer li>a:hover {
    background: #284480;
    border-color: #284480;
    color: #fff;
}

.logo-footer {
    text-align: center;
}

.social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 18px;
    margin-bottom: 25px;
    padding: 0;
}

.social a.social-item,
.social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    color: #eee7e0;
    border: 1px solid rgba(255, 255, 255, 0.15);
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    transition: all 0.25s ease-in-out;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.social a.social-item:hover,
.social a:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.35);
    color: #ffffff;
    border-color: transparent;
}

.social a.social-item.facebook:hover,
.social a.facebook:hover {
    background: #1877f2;
}

.social a.social-item.youtube:hover,
.social a.youtube:hover {
    background: #ff0000;
}

.social a.social-item.tiktok:hover,
.social a.tiktok:hover {
    background: #000000;
}

.social a.social-item.zalo,
.social a.zalo {
    padding: 1px;
}

.social a.social-item.zalo:hover,
.social a.zalo:hover {
    background: #0068ff;
    border-color: #0068ff;
}

.social a.social-item.instagram:hover,
.social a.instagram:hover {
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
}

.social a.social-item svg,
.social a svg {
    display: block;
    width: 20px;
    height: 20px;
    transition: transform 0.2s ease;
}

.social a.social-item:hover svg,
.social a:hover svg {
    transform: scale(1.08);
}

@media (max-width:767px) {
    .logo-footer {
        text-align: left;
    }

    .logo-footer img {
        /* max-width: 300px; */
        margin: 0px auto 10px;
        padding-top: 0;
        max-width: 85%;
    }

    .social {
        margin-top: 10px;
        margin-bottom: 25px;
        gap: 10px;
        justify-content: flex-start;
    }

    .social a.social-item,
    .social a {
        width: 44px;
        height: 44px;
        font-size: 15px;
    }

    .social a.social-item svg,
    .social a svg {
        width: 18px;
        height: 18px;
    }
}

.flipbook-viewport {
    /* overflow: hidden; */
    width: 100%;
    height: 100%;
    margin: 0px auto;
    position: relative;
    box-sizing: border-box;
    padding: 20px 20px 44px;
    touch-action: none;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.flipbook-viewport .flipbook-bf {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.page-wrapper {
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.flipbook-pages {
    transition: margin-left 0.2s ease;
    overflow: hidden;
    z-index: 70;
}

.flipbook-viewport .page {
    backface-visibility: hidden;
    transform-style: preserve-3d;
    will-change: transform;
    pointer-events: auto;
}

.flipbook-pages .page::after {
    content: "";
    position: absolute;
    top: 0;
    width: 40px;
    height: 100%;
    z-index: 10;
    pointer-events: none;
}

.flipbook-viewport .page .page-item {
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    position: relative;
    /* height: 100%; */
}

.flipbook-pages .even .page-item::after {
    left: 0;
    background: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.15) 100%);
}

.flipbook-pages .odd .page-item::after {
    right: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.15) 100%);
}

.flipbook-viewport .page img {
    width: 100%;
    /* height: 100%; */
    object-fit: contain;
    display: block;
    image-rendering: auto;
    backface-visibility: hidden;
    transform-style: preserve-3d;
}

.flipbook-viewport .turn-prev,
.flipbook-viewport .turn-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 99;
    width: 70px;
    height: 70px;
    line-height: 70px;
    border: none;
    background: #cecece;
    border-radius: 100%;
    font-size: 150%;
    color: #fff;
    font-weight: 900;
    pointer-events: auto;
    z-index: 998;
}

.flipbook-viewport .turn-prev {
    left: 0;
}

.flipbook-viewport .turn-next {
    right: 0;
}

.turn-page {
    perspective: 1200px;
}

@media (max-width: 767px) {

    .flipbook-viewport .turn-prev,
    .flipbook-viewport .turn-next {
        width: 40px;
        height: 40px;
        line-height: 40px;
    }
}

.contact p {
    font-size: 15px;
    margin: 6px 0px;
}

/**/
.culture {
    padding: 50px;
}

.culture .title {
    font-size: 1.875rem;
    line-height: 2.25rem;
    color: #fff;
}

.shadow-xl {
    --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    background-color: #fff;
    padding: 25px;
    border-radius: 20px;
    margin: 20px 0 0 0;
}

.line-detail-pro {
    text-align: center;
    position: relative;
    margin: 10px 0 8px 0;
}

.line-detail-pro img {}

/**/

.orther_1 {}

.orther_1 ul {
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.orther_1 ul li {
    list-style-type: none;
    position: relative;
    padding: 0 0 0 54px;
    margin: 25px 0;
}

.orther_1 ul li img {
    height: 42px;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.orther_1 ul li .name {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    margin: 0px 0 2px;
    background: linear-gradient(135deg, rgb(0, 45, 98) 0%, rgb(230, 95, 18) 100%) text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

@media(max-width: 767px) {
    .orther_1 ul li img {
        height: 32px;
    }

    .orther_1 ul li {
        padding: 0 0 0 40px;
        margin: 10px 0;
    }

    .orther_1 ul li .name {
        font-size: 14px;
    }
}

.orther_1 ul li .info1 {}

/**/
.orther_2 {}

.orther_2 .title2,
.orther_3 .title2,
.orther_4 .title2,
.orther_6 .title2 {
    text-transform: uppercase;
    background: linear-gradient(135deg, rgb(0, 45, 98) 0%, rgb(230, 95, 18) 100%) text;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
    font-size: 20px;
    display: inline-block;
    margin: 5px 0 6px 0;
    padding: 4px 0 0 0;
}

.orther_2 ul,
.orther_4 ul {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.orther_4 ul,
.orther_6 ul {
    display: block;
}

@media(max-width: 767px) {
    .orther_4 ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .orther_3 {
        padding: 0 0px;
    }

    .orther_3 .galary-product {
        margin: 0;
    }

    .wrap_orther_3 .row {
        margin: 0 -10px;
    }

    .wrap_orther_3 .row>div {
        padding: 0 10px;
    }
}

.orther_2 ul li,
.orther_4 ul li {
    list-style-type: none;
    position: relative;
    padding: 0 0 0 0px;
    margin: 10px 6px 10px 0;
    display: inline-block;
}

.orther_4 ul li {
    display: block;
    padding: 0 0 0 42px;
    margin: 18px 0;
}

@media(max-width: 767px) {
    .orther_5 ul {
        grid-template-columns: repeat(1, 1fr);
    }

    .orther_5 ul li {
        padding: 0 0 0 35px;
        margin: 6px 0;
    }
}

.orther_2 ul li img {
    height: 26px;
    margin: 0 8px 4px 0;
}

.orther_4 ul li span {
    width: 30px;
    height: 26px;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    text-align: center;
}

.orther_4 ul li img {
    max-width: 100%;
    max-height: 100%;
}

.orther_2 ul li .name,
.orther_4 ul li .name {
    text-transform: uppercase;
    font-weight: 700;
    margin: 0px 0 2px;
    /* background: linear-gradient(135deg, rgb(0, 45, 98) 0%, rgb(230, 95, 18) 100%) text; */
    /* -webkit-text-fill-color: transparent; */
    display: inline-block;
    color: var(--totl-primary-font-color);
}

@media(max-width: 767px) {
    .orther_2 ul li .name {
        margin-top: 4px;
    }
}

.orther_5 ul li .name {
    text-transform: none;
}

/**/
.orther_3 {}

.orther_3 .owl1 {
    overflow: hidden;
    border-radius: 10px;
    border: 1px solid #ddd;
    margin: 10px 0 0 0;
}

.orther_3 .slick-dots {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 0;
}

/**/
.minhhoa {
    font-size: 15px;
    margin: 6px 0 0 0;
    font-style: italic;
}

.wrap_orther_4 {
    display: flex;
    margin: 25px 0;
}

.wrap_orther_4>div:first-child {
    border-right: 2px solid var(--totl-primary-font-color);
    padding-right: 30px;
}

.wrap_orther_4>div:last-child {
    padding-left: 30px;
}

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

    .wrap_orther_4 {
        display: block;
        margin: 0;
    }

    .wrap_orther_4>div:first-child,
    .wrap_orther_4>div:last-child {
        padding: 0;
        border: none;
    }
}

/**/
.orther_4_pk {
    text-align: center;
}

.orther_4_pk img {
    max-width: 80%;
    margin: 10px 0 0 0;
}

/**/

.orther_6 ul {
    padding: 0;
    margin: 10px 0 0 0;
}

.orther_6 ul li {
    list-style-type: none;
    /* display: flex; */
    align-items: center;
    justify-content: space-around;
    border: 1px solid #777;
    margin: -1px 0;
}

.orther_6 ul li .name {
    display: inline-block;
    min-width: 49%;
    padding: 6px 10px;
}

.orther_6 ul li .name:first-child {
    border-right: 1px solid #777;
}

/**/

/* product_detail_v2 */

.product_detail_v2 .section-padding {
    padding: 50px 0;
}

.product_detail_v2 .section-header {
    text-align: center;
    margin-bottom: 70px;
}

.product_detail_v2 .section-subtitle {
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--orange);
    margin-bottom: 15px;
    display: block;
}

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

    .product_detail_v2 .section-subtitle {
        margin-bottom: 15px;
        margin-top: 5px;
    }
}

.product_detail_v2 .section-title {
    font-size: 34px;
    color: var(--navy);
    font-weight: 600;
}

/* Hero Section */
.product_detail_v2 .hero-section {
    position: relative;
    height: 100vh;
    min-height: 600px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    color: #fff;
}

.product_detail_v2 .hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, rgba(26, 54, 93, 0.85) 0%, rgba(26, 54, 93, 0.3) 50%, rgba(0, 0, 0, 0) 100%);
}

.product_detail_v2 .hero-content {
    position: relative;
    z-index: 10;
    max-width: 700px;
    padding-top: 50px;
}

@media(max-width: 767px) {
    .product_detail_v2 .hero-section::before {
        background: linear-gradient(140deg, rgba(26, 54, 93, 0.85) 0%, rgba(26, 54, 93, 0.3) 70%, rgba(0, 0, 0, 0) 100%);
    }

    .product_detail_v2 .hero-content {
        padding-top: 50px;
    }
}

.product_detail_v2 .hero-pretitle {
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    letter-spacing: 4px;
    margin-bottom: 20px;
    color: var(--orange);
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 15px;
}

.product_detail_v2 .hero-pretitle::after {
    content: '';
    height: 1px;
    width: 60px;
    background-color: var(--orange);
}

.product_detail_v2 .hero-title {
    font-size: 60px;
    line-height: 1;
    margin-bottom: 20px;
    font-weight: 700;
    color: #fff;
    letter-spacing: -2px;
}

.product_detail_v2 .hero-code {
    font-family: 'Open Sans', sans-serif;
    font-size: 24px;
    letter-spacing: 2px;
    margin-bottom: 40px;
    font-weight: 300;
    color: rgba(255, 255, 255, 0.9);
}

.product_detail_v2 .hero-specs {
    display: block;
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.product_detail_v2 .hero-specs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 40px;
    width: 100%;
}

.product_detail_v2 .spec-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.product_detail_v2 .spec-group .label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, 0.6);
    text-align: left;
    padding: 0;
}

.product_detail_v2 .spec-group .value {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.2;
}

.product_detail_v2 .hero-features {
    display: flex;
    gap: 50px;
    margin: 20px 0;
}

.product_detail_v2 .hero-features:nth-last-child(2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    padding-bottom: 20px;
}

.product_detail_v2 .feature-item {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 120px;
}

.product_detail_v2 .feature-icon {
    color: var(--orange);
    width: 26px;
    text-align: center;
}

@media(max-width: 767px) {
    .product_detail_v2 .feature-icon {
        width: 40px;
        text-align: center;
    }

}

.product_detail_v2 .feature-icon span {
    font-size: 28px;
    font-weight: 300;
}

.product_detail_v2 .feature-icon img {
    height: 20px;
    width: auto;
}

.product_detail_v2 .feature-text {
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.4;
    font-weight: 500;
}

/* Gallery Section */
.product_detail_v2 .gallery-section {
    background-color: var(--bg-light);
}

@media(max-width: 767px) {
    .product_detail_v2 .gallery-section {
        padding: 30px 0px 12px !important;
    }
}

.product_detail_v2 .gallery-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0px;
}

.product_detail_v2 .gallery-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 20px;
}

.product_detail_v2 .gallery-text h2 {
    font-size: 40px;
    line-height: 1.2;
    margin-bottom: 20px;
    font-weight: 600;
}

@media(max-width: 767px) {
    .product_detail_v2 .gallery-text h2 {
        font-size: 24px;
        font-weight: 600;
    }

    .product_detail_v2 .feature-item {
        gap: 6px;
    }

    .product_detail_v2 .hero-specs {
        padding: 15px 10px;
    }

    .product_detail_v2 .hero-specs-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .product_detail_v2 .spec-group .label {
        font-size: 11px;
    }

    .product_detail_v2 .spec-group .value {
        font-size: 14px;
    }

    .product_detail_v2 .hero-features {
        gap: 15px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
}

.product_detail_v2 .gallery-text .short_info {
    color: var(--text-muted);
    font-size: 16px;
    font-weight: 300;
    max-width: 1000px;
}

@media(max-width: 767px) {
    .product_detail_v2 .gallery-text .short_info {
        font-size: 16px;
        line-height: 1.4;
        max-width: 100%;
        text-align: justify;
    }
}

.product_detail_v2 .btn-outline-navy {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--navy);
    color: var(--navy);
    padding: 16px 35px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 11px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.product_detail_v2 .btn-outline-navy:hover {
    background-color: var(--navy);
    color: #fff;
}

.product_detail_v2 .masonry-gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 300px);
    gap: 20px;
}

/* Quantity Queries for Masonry Gallery (Handles 1 to 5+ items dynamically) */

/* 1 Item */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(1)) {
    grid-template-rows: 600px;
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(1)) .masonry-item {
    grid-column: span 4;
    grid-row: span 1;
}

/* 2 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(2)) .masonry-item {
    grid-column: span 2;
    grid-row: span 2;
}

/* 3 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(3)) .masonry-item:nth-child(1) {
    grid-column: span 2;
    grid-row: span 2;
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(3)) .masonry-item:nth-child(n+2) {
    grid-column: span 2;
    grid-row: span 1;
}

/* 4 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(4)) .masonry-item:nth-child(1) {
    grid-column: span 2;
    grid-row: span 2;
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(4)) .masonry-item:nth-child(2) {
    grid-column: span 1;
    grid-row: span 2;
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(4)) .masonry-item:nth-child(n+3) {
    grid-column: span 1;
    grid-row: span 1;
}

/* 5 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(5)) .masonry-item:nth-child(1) {
    grid-column: span 2;
    grid-row: span 2;
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(5)) .masonry-item:nth-child(n+2) {
    grid-column: span 1;
    grid-row: span 1;
}

/* 6 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(6)) {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 250px);
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(6)) .masonry-item {
    grid-column: span 1;
    grid-row: span 1;
}

/* 7 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(7)) {
    grid-template-rows: repeat(2, 250px);
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(7)) .masonry-item:nth-child(-n+5) {
    grid-column: span 1;
    grid-row: span 1;
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(7)) .masonry-item:nth-child(n+6) {
    grid-column: span 2;
    grid-row: span 1;
}

/* 8 Items */
.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(8)) {
    grid-template-rows: repeat(2, 250px);
}

.product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(8)) .masonry-item {
    grid-column: span 1;
    grid-row: span 1;
}

/* Unified Image Gallery Styling */
.product_detail_v2 .masonry-item,
.product_detail_v2 .photo-grid-item,
.product_detail_v2 .factory-item-main,
.product_detail_v2 .factory-item-sub,
.product_detail_v2 .factory-item {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    border: 1px solid rgba(26, 54, 93, 0.15);
    box-shadow: 0 8px 30px rgba(26, 54, 93, 0.08);
    transition: border-color 0.4s, box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1), transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    background-color: #fff;
}

@media(max-width: 767px) {

    .product_detail_v2 .masonry-item,
    .product_detail_v2 .photo-grid-item,
    .product_detail_v2 .factory-item-main,
    .product_detail_v2 .factory-item-sub,
    .product_detail_v2 .factory-item {
        border-radius: 8px;
    }
}

.product_detail_v2 .masonry-item:hover,
.product_detail_v2 .photo-grid-item:hover,
.product_detail_v2 .factory-item-main:hover,
.product_detail_v2 .factory-item-sub:hover,
.product_detail_v2 .factory-item:hover {
    border-color: var(--orange);
    box-shadow: 0 20px 40px rgba(26, 54, 93, 0.16);
    transform: translateY(-4px);
}

.product_detail_v2 .masonry-item>a,
.product_detail_v2 .photo-grid-item>a,
.product_detail_v2 .factory-item-main>a,
.product_detail_v2 .factory-item-sub>a,
.product_detail_v2 .factory-item>a {
    display: block;
    width: 100%;
    height: 100%;
}

.product_detail_v2 .masonry-item img,
.product_detail_v2 .photo-grid-item img,
.product_detail_v2 .factory-item-main img,
.product_detail_v2 .factory-item-sub img,
.product_detail_v2 .factory-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
    /* position: absolute;
    left: 0;
    top: 0;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    bottom: 0;
    margin: auto; */
}

.product_detail_v2 .full-photo-grid-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media(max-width: 767px) {

    .product_detail_v2 .masonry-item img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
    }

    .product_detail_v2 .photo-grid-item img,
    .product_detail_v2 .factory-item-main img,
    .product_detail_v2 .factory-item-sub img,
    .product_detail_v2 .factory-item img {
        /* width: auto; */
        /* height: auto; */
        object-fit: cover;
        transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
        position: absolute;
        left: 0;
        top: 0;
        max-width: 100%;
        max-height: 100%;
        /* object-fit: contain; */
        bottom: 0;
        margin: auto;
    }

    .product_detail_v2 .full-photo-grid-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.product_detail_v2 .masonry-item:hover img,
.product_detail_v2 .photo-grid-item:hover img,
.product_detail_v2 .factory-item-main:hover img,
.product_detail_v2 .factory-item-sub:hover img,
.product_detail_v2 .factory-item:hover img {
    transform: scale(1.06);
}

.product_detail_v2 .masonry-item-large {
    grid-column: span 2;
    grid-row: span 2;
}

.product_detail_v2 .masonry-item-tall {
    grid-column: span 1;
    grid-row: span 2;
}

/* Product Story */
.product_detail_v2 .product-story-section {
    background-color: var(--bg-white);
    position: relative;
    overflow: hidden;
}

@media(max-width: 767px) {
    .product_detail_v2 .product-story-section {
        padding: 0px 0px 0px !important;
    }
}

.product_detail_v2 .story-container {
    display: flex;
    gap: 40px;
    align-items: center;
}

.product_detail_v2 .story-content {
    flex: 1;
    padding-right: 40px;
}

.product_detail_v2 .story-title {
    font-size: 40px;
    margin-bottom: 20px;
    font-weight: 600;
}

.product_detail_v2 .story-desc {
    color: var(--text-muted);
    font-size: 16px;
    line-height: 1.6;
    font-weight: 300;
    margin-bottom: 30px;
}

.product_detail_v2 .story-image-wrapper {
    flex: 1;
    position: relative;
}

.product_detail_v2 .story-image-wrapper::before {
    content: '';
    position: absolute;
    top: -20px;
    left: -20px;
    width: 100%;
    height: 100%;
    border: 1px solid var(--orange);
    z-index: 0;
    border-radius: 10px;
}

@media(max-width: 767px) {
    .product_detail_v2 .story-desc {
        margin-bottom: 20px;
    }

    .product_detail_v2 .story-image-wrapper::before {
        top: -5px;
        left: -5px;
        border-radius: 12px;
        display: none;
    }
}

.product_detail_v2 .story-image {
    position: relative;
    z-index: 1;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
    width: 100%;
    border-radius: 10px;
    border: 1px solid rgba(26, 54, 93, 0.15);
    box-shadow: 0 8px 30px rgba(26, 54, 93, 0.08);
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

@media(max-width: 767px) {
    .product_detail_v2 .story-image {
        border-color: var(--main-color);
    }
}

.product_detail_v2 .story-image:hover {
    transform: scale(1.06);
}

.product_detail_v2 .story-specs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.product_detail_v2 .story-spec-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.product_detail_v2 .story-spec-icon {
    color: var(--orange);
    background: rgba(243, 100, 33, 0.1);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product_detail_v2 .story-spec-icon span {
    font-size: 24px;
    font-weight: 300;
}

.product_detail_v2 .story-spec-info {
    display: flex;
    flex-direction: column;
}

.product_detail_v2 .story-spec-label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--text-muted);
    margin-bottom: 5px;
}

.product_detail_v2 .story-spec-value {
    font-family: 'Open Sans', sans-serif;
    font-size: 20px;
    color: var(--navy);
    font-weight: 600;
}

@media(max-width: 767px) {
    .product_detail_v2 .story-specs {
        gap: 15px;
    }

    .product_detail_v2 .story-spec-item {
        gap: 10px;
    }

    .product_detail_v2 .story-spec-value {
        font-size: 16px;
    }
}

/* Suitability */
.product_detail_v2 .suitability-section {
    background-color: var(--navy);
    color: #fff;
    position: relative;
    padding: 80px 0;
}

.product_detail_v2 .suitability-section .section-title {
    color: #fff;
}

.product_detail_v2 .suitability-section .section-header {
    text-align: left;
    margin-bottom: 50px;
}

@media(max-width: 767px) {
    .product_detail_v2 .suitability-section {
        padding: 50px 0px 15px;
    }

    .product_detail_v2 .suitability-section .section-header {
        margin-bottom: 20px;
    }

    .product_detail_v2 .suitability-section .section-title {
        font-size: 24px;
    }
}

.product_detail_v2 .suitability-section .section-subtitle {
    color: rgba(255, 255, 255, 0.7);
}

.product_detail_v2 .suitability-section .segment-display .info {
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
    max-width: 300px;
    margin: 0 auto;
}

.product_detail_v2 .photo-gallery-section {
    background-color: #fff;
    margin-bottom: 0px;
}

.product_detail_v2 .factory-gallery-section {
    background-color: #f9f9f9;
    margin-bottom: 0px;
}

.product_detail_v2 .suitability-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.product_detail_v2 .segment-display {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 60px;
    border-radius: 12px;
    text-align: center;
    backdrop-filter: blur(10px);
}

.product_detail_v2 .segment-seal {
    width: 200px;
    height: 200px;
    margin: 0 auto 30px;
    border: 2px dashed rgba(243, 100, 33, 0.4);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.product_detail_v2 .segment-seal>img {
    height: 30px;
}

.product_detail_v2 .segment-seal::after {
    content: '';
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.product_detail_v2 .segment-seal .icon {
    color: var(--orange);
    font-size: 36px;
    margin-bottom: 10px;
    font-weight: 300;
}

.product_detail_v2 .segment-seal .level {
    font-family: 'Open Sans', sans-serif;
    font-size: 28px;
    font-weight: 500;
    color: #fff;
    margin-bottom: 10px;
    z-index: 2;
}

.product_detail_v2 .segment-seal .stars {
    color: var(--orange);
    display: flex;
    gap: 4px;
    z-index: 2;
}

.product_detail_v2 .application-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.product_detail_v2 .app-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    transition: background 0.3s;
}

.product_detail_v2 .app-item:hover {
    background: rgba(243, 100, 33, 0.1);
}

.product_detail_v2 .app-icon {
    color: var(--orange);
}

.product_detail_v2 .app-icon>img {
    max-width: 32px;
    max-height: 30px;
}

.product_detail_v2 .app-icon span {
    font-size: 28px;
    font-weight: 300;
}

.product_detail_v2 .app-text {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.product_detail_v2 .app-title {
    font-weight: 700;
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.product_detail_v2 .app-desc {
    font-weight: 400;
    font-size: 12px;
    opacity: 0.8;
    text-transform: none;
    letter-spacing: normal;
}

/* Footer */
.product_detail_v2 .footer-cta {
    background-color: var(--navy);
    color: #fff;
    padding: 40px 0 50px;
}

.product_detail_v2 .cta-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.product_detail_v2 .cta-text h2 {
    font-size: 26px;
    margin-bottom: 20px;
    color: #fff;
    line-height: 1.4;
}

.product_detail_v2 .cta-text p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 16px;
    font-weight: 300;
}

.product_detail_v2 .cta-actions {
    display: flex;
    flex-direction: column;
    gap: 30px;
    min-width: 450px;
}

.product_detail_v2 .btn-group {
    display: flex;
    gap: 20px;
}

.product_detail_v2 .btn-solid-primary {
    background-color: var(--orange);
    color: #fff;
    padding: 18px 30px;
    text-align: center;
    flex: 1;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: background-color 0.3s;
}

.product_detail_v2 .btn-solid-primary:hover {
    background-color: var(--orange-light);
}

.product_detail_v2 .btn-outline-white {
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff;
    padding: 18px 30px;
    text-align: center;
    flex: 1;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: all 0.3s;
}

.product_detail_v2 .btn-outline-white:hover {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.1);
}

.product_detail_v2 .contact-info {
    display: flex;
    justify-content: space-between;
}

.product_detail_v2 .contact-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.product_detail_v2 .contact-item .material-symbols-outlined {
    color: var(--orange);
    font-weight: 300;
    font-size: 24px;
}

.product_detail_v2 .contact-item-text {
    display: flex;
    flex-direction: column;
}

.product_detail_v2 .contact-label {
    font-size: 10px;
    color: rgba(255, 255, 255, 0.5);
    letter-spacing: 1px;
    text-transform: uppercase;
}

.product_detail_v2 .contact-val {
    font-size: 14px;
    font-weight: 500;
    color: #fff;
}

.product_detail_v2 .contact-val a {
    color: #fff;
}

/* Sticky Bar */
.product_detail_v2 .sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    box-shadow: 0 -5px 30px rgba(0, 0, 0, 0.08);
    padding: 15px 0;
    z-index: 1000;
    border-top: 1px solid var(--border-color);
    transform: translateY(100%);
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.4s ease;
    opacity: 0;
    pointer-events: none;
}

.product_detail_v2 .sticky-bar.show {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}

.product_detail_v2 .sticky-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.product_detail_v2 .sticky-product {
    display: flex;
    align-items: center;
    gap: 20px;
}

.product_detail_v2 .sticky-thumb {
    width: 50px;
    height: 50px;
    border-radius: 4px;
    object-fit: cover;
    border: 1px solid rgba(26, 54, 93, 0.15);
    box-shadow: 0 8px 30px rgba(26, 54, 93, 0.08);
}

.product_detail_v2 .sticky-details h4 {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--navy);
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.product_detail_v2 .sticky-details p {
    font-size: 11px;
    color: var(--text-muted);
    letter-spacing: 1px;
    text-transform: uppercase;
}

.product_detail_v2 .sticky-price-area {
    display: flex;
    align-items: center;
    gap: 40px;
}

.product_detail_v2 .sticky-price {
    font-family: 'Open Sans', sans-serif;
    font-size: 26px;
    font-weight: 600;
    color: var(--orange);
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.product_detail_v2 .sticky-price p {
    margin: 0;
}

.product_detail_v2 .sticky-price span {
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    font-weight: 400;
    color: var(--text-muted);
}

.product_detail_v2 .btn-solid-orange {
    background-color: var(--orange);
    color: #fff;
    padding: 15px 35px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    border: none;
    cursor: pointer;
    border-radius: 4px;
    transition: background 0.3s;
}

.product_detail_v2 .btn-solid-orange:hover {
    background-color: var(--orange-light);
}

.product_detail_v2 .photo-grid-gallery {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 350px);
    gap: 20px;
}

.product_detail_v2 .photo-grid-item {
    grid-column: span 4;
    grid-row: span 1;
}

/* Dynamic Grid Layouts for Photo Grid Gallery */

/* 1 Item */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(1)) {
    grid-template-rows: 600px;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(1)) .photo-grid-item {
    grid-column: span 12;
    grid-row: span 1;
}

/* 2 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(2)) {
    grid-template-rows: 450px;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(2)) .photo-grid-item {
    grid-column: span 6;
    grid-row: span 1;
}

/* 3 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(3)) .photo-grid-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(3)) .photo-grid-item:nth-child(n+2) {
    grid-column: span 4;
    grid-row: span 1;
}

/* 4 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(4)) {
    grid-template-columns: repeat(24, 1fr);
    grid-template-rows: repeat(2, 260px);
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(4)) .photo-grid-item:nth-child(1) {
    grid-column: span 14;
    grid-row: span 2;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(4)) .photo-grid-item:nth-child(2),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(4)) .photo-grid-item:nth-child(3) {
    grid-column: span 5;
    grid-row: span 1;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(4)) .photo-grid-item:nth-child(4) {
    grid-column: span 10;
    grid-row: span 1;
}

/* 5 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(5)) {
    grid-template-rows: repeat(3, 350px);
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(5)) .photo-grid-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(5)) .photo-grid-item:nth-child(2),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(5)) .photo-grid-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(5)) .photo-grid-item:nth-child(n+4) {
    grid-column: span 6;
    grid-row: span 1;
}

/* 6 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(6)) {
    grid-template-rows: repeat(3, 350px);
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(6)) .photo-grid-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(6)) .photo-grid-item:nth-child(2),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(6)) .photo-grid-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(6)) .photo-grid-item:nth-child(n+4) {
    grid-column: span 4;
    grid-row: span 1;
}

/* 7 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(7)) {
    grid-template-rows: repeat(4, 180px);
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(7)) .photo-grid-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(7)) .photo-grid-item:nth-child(2),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(7)) .photo-grid-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(7)) .photo-grid-item:nth-child(n+4) {
    grid-column: span 6;
    grid-row: span 1;
}

/* 8 Items */
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) {
    grid-template-rows: repeat(4, 430px);
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(2),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(4),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(5),
.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(6) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(8)) .photo-grid-item:nth-child(n+7) {
    grid-column: span 6;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 300px);
    gap: 20px;
}

.product_detail_v2 .factory-item {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-item-main {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .factory-item-sub {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 40px;
    background: linear-gradient(to top, rgba(26, 54, 93, 0.9), transparent);
    color: #fff;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), padding-bottom 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.product_detail_v2 .factory-item-main:hover .factory-overlay,
.product_detail_v2 .factory-item:hover .factory-overlay {
    transform: translateY(-5px);
    padding-bottom: 45px;
}

/* Dynamic Grid Layouts based on Item Count */

/* 1 Item */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(1)) {
    grid-template-rows: 600px;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(1)) .factory-item {
    grid-column: span 12;
    grid-row: span 1;
}

/* 2 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(2)) {
    grid-template-rows: 450px;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(2)) .factory-item {
    grid-column: span 6;
    grid-row: span 1;
}

/* 3 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(3)) .factory-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(3)) .factory-item:nth-child(n+2) {
    grid-column: span 4;
    grid-row: span 1;
}

/* 4 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(4)) {
    grid-template-columns: repeat(24, 1fr);
    grid-template-rows: repeat(2, 240px);
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(4)) .factory-item:nth-child(1) {
    grid-column: span 14;
    grid-row: span 2;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(4)) .factory-item:nth-child(2),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(4)) .factory-item:nth-child(3) {
    grid-column: span 5;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(4)) .factory-item:nth-child(4) {
    grid-column: span 10;
    grid-row: span 1;
}

/* 5 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(5)) {
    grid-template-rows: repeat(3, 350px);
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(5)) .factory-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(5)) .factory-item:nth-child(2),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(5)) .factory-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(5)) .factory-item:nth-child(n+4) {
    grid-column: span 6;
    grid-row: span 1;
}

/* 6 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(6)) {
    grid-template-rows: repeat(3, 350px);
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(6)) .factory-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(6)) .factory-item:nth-child(2),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(6)) .factory-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(6)) .factory-item:nth-child(n+4) {
    grid-column: span 4;
    grid-row: span 1;
}

/* 7 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(7)) {
    grid-template-rows: repeat(4, 180px);
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(7)) .factory-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(7)) .factory-item:nth-child(2),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(7)) .factory-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(7)) .factory-item:nth-child(n+4) {
    grid-column: span 6;
    grid-row: span 1;
}

/* 8 Items */
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) {
    grid-template-rows: repeat(4, 180px);
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(1) {
    grid-column: span 8;
    grid-row: span 2;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(2),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(3) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(4),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(5),
.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(6) {
    grid-column: span 4;
    grid-row: span 1;
}

.product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(8)) .factory-item:nth-child(n+7) {
    grid-column: span 6;
    grid-row: span 1;
}

.product_detail_v2 .factory-overlay-subtitle {
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--orange);
    margin-bottom: 10px;
}

.product_detail_v2 .factory-overlay-title {
    font-size: 24px;
    font-weight: 600;
}

footer {
    /* display: none; */
}

/* Scroll Reveal Effect */
.product_detail_v2 .reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.product_detail_v2 .reveal.reveal-active {
    opacity: 1;
    transform: translateY(0);
}

.product_detail_v2 .reveal-delay-1 {
    transition-delay: 0.1s;
}

.product_detail_v2 .reveal-delay-2 {
    transition-delay: 0.2s;
}

.product_detail_v2 .reveal-delay-3 {
    transition-delay: 0.3s;
}

.product_detail_v2 .reveal-delay-4 {
    transition-delay: 0.4s;
}

.product_detail_v2 .reveal-delay-5 {
    transition-delay: 0.5s;
}

/* Responsive Design */
@media (max-width: 1024px) {

    .product_detail_v2 .container {
        padding: 0 30px;
    }

    .product_detail_v2 .hero-title {
        font-size: 72px;
    }

    .product_detail_v2 .story-container {
        gap: 30px;
    }

    .product_detail_v2 .story-title {
        font-size: 40px;
    }

    .product_detail_v2 .suitability-grid {
        gap: 30px;
    }
}

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

    .product_detail_v2 .section-padding {
        padding: 40px 0;
    }

    .product_detail_v2 .section-title {
        font-size: 22px;
        margin-top: 0;
        line-height: 1.3;
    }

    /* Hero Section */
    .product_detail_v2 .hero-section {
        height: auto;
        /* min-height: 100vh; */
        padding: 100px 0 20px;
    }

    .product_detail_v2 .hero-title {
        font-size: 48px;
        line-height: 1.1;
    }

    .product_detail_v2 .hero-code {
        font-size: 16px;
        margin-bottom: 25px;
    }

    .product_detail_v2 .hero-specs {
        margin-bottom: 10px;
        padding-bottom: 12px;
    }

    .product_detail_v2 .hero-specs-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .product_detail_v2 .hero-features {
        gap: 15px;
        padding-bottom: 12px !important;
        margin-top: 10px;
        margin-bottom: 10px !important;
    }

    /* Galleries on Mobile */
    .product_detail_v2 .masonry-gallery {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: auto !important;
        height: auto !important;
        gap: 12px !important;
    }

    .product_detail_v2 .masonry-item {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
        height: 160px !important;
        height: 0 !important;
        padding-bottom: 100%;
        position: relative;
    }

    /* Odd item count mobile override: stretch last item to full width and set aspect-ratio 1:1 (height equals width) */
    .product_detail_v2 .masonry-gallery:has(> :first-child:nth-last-child(odd)) .masonry-item:last-child {
        grid-column: span 2 !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
    }

    .product_detail_v2 .photo-grid-gallery {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: auto !important;
        height: auto !important;
        gap: 12px !important;
    }

    .product_detail_v2 .photo-grid-item {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
        height: 140px !important;
        height: 0 !important;
        padding-bottom: 100%;
    }

    .product_detail_v2 .photo-grid-item:nth-child(1) {
        grid-column: span 2 !important;
        height: 200px !important;
        height: 0px !important;
        padding-bottom: 100%;
    }

    /* 1 Item mobile layout override */
    .product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(1)) .photo-grid-item {
        grid-column: span 2 !important;
        height: 220px !important;
    }

    /* 2 Items mobile layout override */
    .product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(2)) .photo-grid-item {
        grid-column: span 2 !important;
        height: 180px !important;
    }

    /* 4 Items mobile layout override */
    .product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(4)) .photo-grid-item:nth-child(4) {
        grid-column: span 2 !important;
        height: 180px !important;
    }

    /* Even item count mobile override: stretch last item to full width */
    .product_detail_v2 .photo-grid-gallery:has(> :first-child:nth-last-child(even)) .photo-grid-item:last-child {
        grid-column: span 2 !important;
        height: 180px !important;
    }

    .product_detail_v2 .factory-grid-gallery {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: auto !important;
        height: auto !important;
        gap: 12px !important;
    }

    .product_detail_v2 .factory-item {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
        height: 120px !important;
        height: 0 !important;
        padding-bottom: 100%;
    }

    .product_detail_v2 .factory-item:nth-child(1) {
        grid-column: span 2 !important;
        height: 200px !important;
        height: 0 !important;
        padding-bottom: 100%;
    }

    /* 2 Items mobile layout override */
    .product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(2)) .factory-item {
        grid-column: span 2 !important;
        height: 180px !important;
    }

    /* 1 Item mobile layout override */
    .product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(1)) .factory-item {
        grid-column: span 2 !important;
        height: 220px !important;
    }

    /* 4 Items mobile layout override */
    .product_detail_v2 .factory-grid-gallery:has(> :first-child:nth-last-child(4)) .factory-item:nth-child(4) {
        grid-column: span 2 !important;
        height: 180px !important;
    }

    .product_detail_v2 .factory-item-main {
        grid-column: span 2 !important;
        grid-row: span 1 !important;
        height: 200px !important;
    }

    .product_detail_v2 .factory-item-sub {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
        height: 120px !important;
    }

    .product_detail_v2 .factory-overlay {
        padding: 20px;
    }

    .product_detail_v2 .factory-overlay-title {
        font-size: 16px;
    }

    /* Product Story */
    .product_detail_v2 .story-container {
        flex-direction: column-reverse;
        gap: 15px;
    }

    .product_detail_v2 .story-content {
        padding-right: 0;
    }

    .product_detail_v2 .story-specs {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .product_detail_v2 .story-title {
        font-size: 24px;
        font-weight: 600;
        margin-top: 5px;
        margin-bottom: 10px;
    }

    /* Suitability */
    .product_detail_v2 .suitability-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .product_detail_v2 .segment-display {
        padding: 30px 15px;
    }

    .product_detail_v2 .segment-seal {
        width: 140px;
        height: 140px;
    }

    .product_detail_v2 .segment-seal .level {
        font-size: 20px;
    }

    .product_detail_v2 .application-list {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    /* Footer CTA */
    .product_detail_v2 .cta-container {
        flex-direction: column;
        align-items: stretch;
        gap: 30px;
    }

    .product_detail_v2 .cta-actions {
        min-width: 0;
        width: 100%;
        gap: 20px;
    }

    .product_detail_v2 .btn-group {
        flex-direction: column;
        gap: 10px;
    }

    .product_detail_v2 .contact-info {
        flex-direction: column;
        gap: 15px;
    }

    /* Sticky Bar */
    .product_detail_v2 .sticky-bar {
        padding: 12px 0;
    }

    .product_detail_v2 .sticky-container {
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 0px 8px;
    }

    .product_detail_v2 .sticky-product {
        display: none !important;
    }

    .product_detail_v2 .sticky-price-area {
        width: 100% !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .product_detail_v2 .sticky-price {
        font-size: 22px !important;
        white-space: nowrap;
    }

    .product_detail_v2 .sticky-price span {
        font-size: 11px !important;
    }

    .product_detail_v2 .btn-solid-orange {
        padding: 10px 22px !important;
        font-size: 12px !important;
        white-space: nowrap;
    }
}



/* === style.css === */
:root{--ink:#162c31;--navy:#123139;--navy2:#0b242d;--orange:#c46e45;--orange2:#e5aa7e;--sand:#f4f1eb;--cream:#faf9f6;--line:#dfe2de;--muted:#6f7c7c;--white:#fff;--green:#45725c;--shadow:0 18px 55px rgba(16,39,44,.09);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'Arimo','DejaVu Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.65;font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.16}h1{font-size:clamp(43px,5.2vw,78px);font-weight:700}h2{font-size:clamp(30px,3.2vw,49px);font-weight:700}h3{font-size:23px;font-weight:650}.container{width:min(1240px,calc(100% - 80px));margin-inline:auto}.section{padding:106px 0}.section--tight{padding:75px 0}.section--sand{background:var(--sand)}.section--cream{background:var(--cream)}.section--ink{background:var(--navy);color:white}.section--border{border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:39px}.section-heading>div{max-width:760px}.section-heading p{max-width:410px;color:var(--muted);font-size:14px}.section-heading .light{color:#b5c7c9}.eyebrow{color:var(--orange);text-transform:uppercase;letter-spacing:.17em;font-weight:750;font-size:10px;display:flex;align-items:center;gap:11px;margin-bottom:20px}.eyebrow:before{content:'';width:28px;height:1px;background:currentColor;display:inline-block}.eyebrow--light{color:#e6a87e}.muted{color:var(--muted)}.lead{font-size:16px;line-height:1.95;color:#647476}.lead-light{color:#d2dcd8}.accent{color:var(--orange)}.tag{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:99px;padding:7px 12px;background:#edf2ed;color:#476857;display:inline-flex;align-items:center;gap:7px}.tag--orange{color:#a85632;background:#f9ece5}.tag--dark{background:#193f46;color:#cee0df}.tiny{font-size:11px}.right{text-align:right}.line{border:0;border-top:1px solid var(--line);margin:26px 0}.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:8px;font-weight:700;font-size:13px;min-height:50px;padding:12px 21px;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s;line-height:1.4}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 14px 25px #c46e4526}.btn-primary:hover{background:#a95534}.btn-dark{background:var(--navy);color:#fff}.btn-dark:hover{background:#245261}.btn-white{background:#fff;color:var(--navy)}.btn-ghost{background:transparent;border-color:#cad8d6;color:var(--ink)}.btn-outline-light{border:1px solid #829ba1;color:#fff;background:transparent}.btn-sm{min-height:40px;padding:9px 15px;font-size:12px}.arrow{font-size:19px;font-weight:400;line-height:0}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--orange);font-weight:750;font-size:13px}.text-link:hover{gap:17px}.focus-visible:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e2a47c;outline-offset:3px}
/* HEADER */
.announcement{background:#102e36;color:#dce8e7}.announce-inner{display:flex;justify-content:space-between;align-items:center;min-height:33px;gap:20px;font-size:10px;letter-spacing:.045em}.announce-inner a{color:#f4c5a9}.announce-inner .sep{padding:0 12px;color:#6d9297}.site-header{position:sticky;top:0;z-index:60;background:#fffcfaec;backdrop-filter:blur(18px);border-bottom:1px solid #e5e5e2}.nav-wrap{height:86px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-mark{width:45px;height:45px;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden;background:#f7f0eb}.brand-mark svg{width:41px;height:41px}.brand-name{font-size:21px;font-weight:800;letter-spacing:-.06em;white-space:nowrap;line-height:1}.brand-sub{font-weight:650;color:#7c898a;font-size:8px;letter-spacing:.14em;margin-top:6px;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:21px}.nav-links>a{font-size:11.5px;font-weight:700;white-space:nowrap;color:#43585d;position:relative}.nav-links>a:not(.nav-cta):after{content:'';position:absolute;bottom:-10px;left:0;width:0;height:2px;background:var(--orange);transition:width .2s}.nav-links>a:hover:after,.nav-links>a.active:after{width:100%}.nav-links>a.active{color:#c26b40}.nav-links .nav-cta{background:var(--orange);color:#fff;padding:11px 14px;border-radius:7px;font-size:11px}.menu-toggle{display:none;background:none;border:1px solid #d7dfdc;border-radius:6px;width:43px;height:41px;color:var(--navy);align-items:center;justify-content:center;font-size:20px}
/* LANDING HERO */
.hero{background:#f6f2eb;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;min-height:686px}.hero-copy{background:var(--navy);color:white;padding:94px clamp(35px,5vw,76px) 68px max(40px,calc((100vw - 1240px)/2));display:flex;flex-direction:column;justify-content:center;position:relative;isolation:isolate}.hero-copy:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 0 15%,#28515a 0,transparent 50%),linear-gradient(140deg,transparent 40%,#0a23294d);z-index:-1}.hero-copy h1{font-size:clamp(42px,4.3vw,69px);max-width:670px;line-height:1.12;letter-spacing:-.064em}.hero-copy h1 em{font-style:normal;color:#e3a67d}.hero-copy p{color:#c4d5d5;font-size:14px;line-height:1.95;max-width:530px;margin-top:27px}.hero-actions{margin-top:38px;display:flex;gap:13px;flex-wrap:wrap}.hero-footnote{display:flex;gap:17px;align-items:center;margin-top:61px;font-size:10px;letter-spacing:.065em;color:#9ab1b5;font-weight:700;text-transform:uppercase}.hero-footnote .divider-v{height:22px;background:#44636a;width:1px}.hero-media{position:relative;min-height:686px;overflow:hidden;background:#b8b8ae}.hero-media .hero-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,#3c443d14,#14252220);pointer-events:none}.hero-stamp{position:absolute;right:45px;top:43px;z-index:2;display:flex;align-items:center;gap:12px;color:var(--navy);background:#fffdf1ee;border:1px solid #ffffff70;border-radius:8px;padding:15px 17px;box-shadow:0 16px 45px #1a2e3144;backdrop-filter:blur(9px)}.hero-stamp .seal{font-size:22px;color:var(--orange);line-height:1}.hero-stamp strong{font-size:11px;display:block}.hero-stamp span{font-size:9px;color:#6b7d7e}.hero-bottom-card{position:absolute;left:36px;bottom:35px;right:36px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 27px;border-radius:12px;background:#fffef5ee;box-shadow:0 18px 46px #20302c3a;backdrop-filter:blur(14px)}.hero-bottom-card .num{font-size:26px;font-weight:800;letter-spacing:-.08em;color:var(--navy)}.hero-bottom-card .desc{font-size:10px;color:#6a7778;line-height:1.4}.hero-bottom-card .bar{height:40px;width:1px;background:#d2d7d1}.hero-bottom-card .content{text-align:center}
/* METRICS */
.metrics{border-bottom:1px solid var(--line)}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr)}.metrics-grid>div{padding:32px 0 31px 30px;border-right:1px solid var(--line)}.metrics-grid>div:first-child{padding-left:0}.metrics-grid>div:last-child{border:0}.metric-value{font-size:30px;font-weight:800;line-height:1.1;letter-spacing:-.07em}.metric-value span{color:var(--orange)}.metric-label{color:var(--muted);font-size:10px;margin-top:10px;font-weight:700;letter-spacing:.025em}
/* COMPONENTS */
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.feature-card{border:1px solid var(--line);padding:30px;background:#fff;border-radius:12px;transition:box-shadow .2s,transform .2s;min-height:220px}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.feature-num{font-size:12px;font-weight:800;color:var(--orange);margin-bottom:26px}.feature-card h3{font-size:19px;margin-bottom:13px}.feature-card p{color:var(--muted);font-size:12px;line-height:1.9}.icon-tile{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#f2ece3;color:var(--orange);font-size:20px;margin-bottom:29px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center}.two-col--wide{grid-template-columns:1.15fr .85fr}.callout{padding:25px 28px;background:#e9eee9;border-left:3px solid var(--green);color:var(--navy);border-radius:0 9px 9px 0}.callout p{font-size:12px;margin-top:7px;color:#56716e}.section-note{font-size:11px;color:var(--muted);margin-top:27px}.check-list{list-style:none;padding:0;margin:27px 0;display:grid;gap:17px}.check-list li{display:flex;gap:14px;align-items:flex-start;color:#4a6062;font-size:13px}.check-list li:before{content:'✓';display:inline-grid;place-items:center;border-radius:50%;height:22px;width:22px;color:#39735e;background:#e7f2e9;flex:none;font-size:12px;font-weight:900}.pill-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.pill{border:1px solid #d6dcd7;border-radius:99px;font-size:10px;padding:9px 13px;background:#fff;font-weight:700;color:#59706e}.image-card{min-height:340px;position:relative;overflow:hidden;background:#e3dfd4;border-radius:12px}.image-card>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .45s}.image-card:hover>img{transform:scale(1.035)}.image-caption{position:absolute;bottom:18px;left:18px;right:18px;background:#fffef9f0;backdrop-filter:blur(15px);border-radius:8px;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:14px}.image-caption strong{display:block;font-size:15px}.image-caption span{display:block;color:var(--muted);font-size:10px;margin-top:5px}
/* FLOW */
.flow-wrap{background:#f6f7f4;border:1px solid #dfe4df;border-radius:16px;padding:31px;box-shadow:0 12px 40px #22403909}.flow-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}.flow-stage{background:#fff;border-radius:10px;padding:25px 22px;position:relative;min-height:231px;border:1px solid #e3e8e3}.flow-stage.highlight{background:var(--navy);color:#fff;border-color:var(--navy)}.flow-stage .step-label{color:var(--orange);font-size:10px;font-weight:800;letter-spacing:.12em}.flow-stage .step-ico{font-size:25px;margin-top:21px;margin-bottom:21px;display:block}.flow-stage h3{font-size:17px;line-height:1.32}.flow-stage p{font-size:11px;line-height:1.85;color:#7b8a8a;margin-top:9px}.flow-stage.highlight p{color:#bed0d0}.flow-stage:not(:last-child):after{content:'→';position:absolute;right:-17px;top:50%;transform:translateY(-50%);color:var(--orange);font-size:23px;font-weight:800;z-index:3}.flow-caption{display:flex;justify-content:space-between;align-items:center;padding-top:18px;gap:20px;font-size:11px;color:#667779}.flow-caption span strong{color:#263f43}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.role-card{background:#fff;border:1px solid #e1e4df;border-radius:12px;padding:25px;min-height:195px}.role-card .role-num{color:#bc6b46;font-size:11px;font-weight:800}.role-card h3{font-size:17px;margin:15px 0}.role-card p{font-size:11px;color:var(--muted)}
/* CATALOG CARDS */
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-card{background:#fff;overflow:hidden;border-radius:10px;border:1px solid #e3e5e0;transition:box-shadow .2s,transform .2s}.product-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.product-img{height:245px;overflow:hidden;position:relative;background:#e9e5da}.product-img img{width:100%;height:100%;object-fit:cover}.product-img .badge-img{position:absolute;top:13px;left:13px;background:#fffdfaed;color:#344d4a;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.055em;padding:7px 10px;border-radius:5px}.product-card-body{padding:20px}.product-card-body h3{font-size:16px;margin-bottom:7px}.product-card-body .small-info{font-size:10px;color:var(--muted)}.product-card-body .meta{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:16px;padding-top:13px}.product-card-body .meta span{border:1px solid #dce2dc;background:#f8faf8;border-radius:4px;font-size:9px;padding:3px 6px;color:#62716d}.product-card-body .product-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.product-card-body .product-foot>a{font-size:11px;font-weight:700;color:var(--orange)}
/* PARTNERS */
.brand-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #e2e6e2;border-bottom:1px solid #e2e6e2}.brand-box{height:120px;display:grid;place-items:center;padding:20px;border-right:1px solid #e2e6e2;text-align:center}.brand-box:last-child{border-right:0}.brand-box .brand-text{font-family:'Arimo',Arial,sans-serif;font-size:20px;font-weight:800;letter-spacing:-.055em;color:#6d7776}.brand-box:nth-child(2) .brand-text{font-size:14px;letter-spacing:.08em}.brand-box:nth-child(3) .brand-text{color:#637978}.brand-box:nth-child(4) .brand-text{color:#7f837f}.brand-box:nth-child(5) .brand-text{font-size:14px;letter-spacing:.035em}.brand-box small{display:block;font-size:10px;color:#8a9895}
/* CTA */
.cta-panel{position:relative;overflow:hidden;background:linear-gradient(125deg,#12353d,#0e252c);border-radius:15px;color:white;padding:65px 75px;display:flex;justify-content:space-between;align-items:center;gap:60px}.cta-panel:before{content:'';position:absolute;right:-100px;top:-230px;width:600px;height:600px;border:1px solid #65818644;border-radius:50%;box-shadow:0 0 0 75px #63848613,0 0 0 180px #6384860b}.cta-panel h2{font-size:clamp(28px,3vw,45px);max-width:700px;position:relative}.cta-panel p{font-size:13px;color:#b9cecf;max-width:580px;margin-top:16px;line-height:1.9;position:relative}.cta-panel .cta-actions{display:flex;flex-direction:column;gap:10px;position:relative;flex:none}
/* FOOTER */
.site-footer{background:#0a2229;color:#e8f0ec;padding:69px 0 30px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:65px}.site-footer .brand-name{color:white}.site-footer .brand-sub{color:#a3bac0}.site-footer h4{font-size:12px;letter-spacing:.025em;margin-bottom:20px}.site-footer p,.site-footer a:not(.brand){font-size:11px;color:#afc2c3;line-height:2.15}.site-footer a:not(.brand):hover{color:#f1b58c}.footer-links{display:grid;gap:8px}.footer-about{max-width:310px;margin-top:25px}.footer-bottom{border-top:1px solid #2a454b;margin-top:53px;padding-top:23px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#9ab4b6;font-size:10px}.footer-bottom .status{color:#e4a77e}
/* INTERNAL PAGE HERO */
.page-hero{background:#f3f0e9;padding:93px 0 88px;position:relative;overflow:hidden}.page-hero .container{position:relative;z-index:2}.page-hero:before{content:'';position:absolute;right:-115px;bottom:-210px;border:1px solid #c8cfca;width:570px;height:570px;border-radius:50%;box-shadow:0 0 0 85px #cad2cd22,0 0 0 174px #cad2cd17}.page-hero .hero-kicker{color:var(--orange);text-transform:uppercase;font-size:10px;letter-spacing:.2em;font-weight:800;display:block;margin-bottom:21px}.page-hero h1{font-size:clamp(41px,4.4vw,67px);max-width:830px}.page-hero p{color:#617273;max-width:695px;font-size:15px;line-height:2;margin-top:21px}.breadcrumb{font-size:10px;margin-bottom:28px;color:#81918f}.breadcrumb a{color:#3d6462}.breadcrumb .sep{padding:0 9px}.page-hero--dark{background:#12343d;color:#fff}.page-hero--dark:before{border-color:#396167;box-shadow:0 0 0 85px #5b929711,0 0 0 174px #5b929709}.page-hero--dark p{color:#c2d5d4}.page-hero--dark .breadcrumb{color:#83a5a6}.page-hero--dark .breadcrumb a{color:#d9e8e4}.page-hero--image{min-height:420px;display:flex;align-items:center;background:linear-gradient(90deg,#112e36 0%,#112e36dd 45%,#112e3655),url('../images/factory.svg') center 44%/cover;color:#fff}.page-hero--image p{color:#d5e3dc}
/* ABOUT */
.editorial-block{background:#f5f0e9;padding:53px;border-radius:14px;position:relative;overflow:hidden}.editorial-block:before{content:'INDIA  ×  VIETNAM';position:absolute;right:-45px;bottom:15px;color:#ddd9d0;font-size:75px;font-weight:800;letter-spacing:-.07em;white-space:nowrap;pointer-events:none}.editorial-block>*{position:relative}.editorial-block h2{max-width:680px}.editorial-block p{max-width:850px;font-size:15px;margin-top:22px;color:#5a6868}.quote-panel{background:#153b43;color:#fff;border-radius:15px;padding:55px}.quote-panel .bigquote{font-size:48px;line-height:1;color:#de996a}.quote-panel h2{font-size:36px;line-height:1.38;margin:8px 0 30px}.quote-panel p{color:#b6cecf;font-size:12px}.mini-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.timeline-item{border-top:2px solid #d9e0dc;padding-top:24px;position:relative}.timeline-item:before{content:'';position:absolute;top:-6px;left:0;width:10px;height:10px;border-radius:50%;background:var(--orange)}.timeline-item strong{color:var(--orange);font-size:12px}.timeline-item h3{font-size:17px;margin:13px 0}.timeline-item p{font-size:11px;color:var(--muted)}
/* FACTORY */
.factory-display{overflow:hidden;border-radius:15px;min-height:450px;background:#d2d8d6;position:relative}.factory-display img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.factory-display .factory-overlay{position:absolute;left:35px;bottom:35px;background:#15323be8;border-radius:12px;padding:25px;color:#fff;max-width:420px}.factory-overlay p{color:#c4d4d1;font-size:12px;margin-top:8px}.capability-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.capability{padding:25px;border:1px solid #dce2dd;border-radius:10px;background:white}.capability .cap-num{color:var(--orange);font-size:12px;font-weight:850}.capability h3{font-size:18px;margin:15px 0 9px}.capability p{font-size:11px;color:var(--muted)}.qc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:#d8e0d9;border-radius:13px;overflow:hidden}.qc-step{background:white;padding:30px 24px}.qc-step strong{color:var(--orange);font-size:25px;letter-spacing:-.06em}.qc-step h3{font-size:17px;margin:16px 0 12px}.qc-step p{font-size:11px;color:var(--muted)}
/* OEM */
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid #e3e8e2;background:white;border-radius:12px;overflow:hidden}.service-card .tilehead{height:6px;background:linear-gradient(90deg,#b15d36,#e2b98c)}.service-card .cardinner{padding:29px}.service-card .n{color:var(--orange);font-weight:800;font-size:12px}.service-card h3{font-size:18px;margin-top:30px;margin-bottom:14px}.service-card p{font-size:11px;color:var(--muted)}.packaging-display{position:relative;min-height:435px;display:flex;align-items:center;justify-content:center;border-radius:16px;background:#e7e3d9;overflow:hidden}.package{width:260px;height:330px;border:1px solid #a9aaa3;background:#fbfbf6;box-shadow:23px 25px 30px #6264603d;transform:rotate(-8deg);padding:24px;position:relative}.package:after{content:'';position:absolute;right:-24px;top:10px;width:24px;height:329px;transform:skewY(35deg);background:#d3d0c8}.package .package-bar{background:#143f4c;width:56px;height:7px;margin-bottom:58px}.package .package-brand{font-weight:800;letter-spacing:-.05em;font-size:27px;color:#15353c}.package .package-brand small{font-size:9px;display:block;color:#7c8887;letter-spacing:.2em}.package .package-box{height:70px;background:linear-gradient(140deg,#e0d5c6,#f2eee5);margin-top:32px;border-radius:2px}.package .package-foot{font-size:8px;color:#8d9692;margin-top:10px}.package-chip{position:absolute;bottom:30px;right:30px;background:#153740;color:#fff;padding:15px 22px;border-radius:9px;font-size:11px;font-weight:750;box-shadow:0 8px 24px #15374044}.process-list{counter-reset:item;display:grid;gap:0}.process-row{display:grid;grid-template-columns:65px 1fr 1fr;gap:26px;padding:22px 0;border-bottom:1px solid #dfe4df;align-items:start}.process-row:before{counter-increment:item;content:counter(item,decimal-leading-zero);font-weight:850;color:#bc6a44;font-size:16px}.process-row h3{font-size:18px}.process-row p{font-size:11px;color:var(--muted)}
/* CATALOG FILTER */
.filters{display:flex;gap:14px;flex-wrap:wrap;align-items:end;margin-bottom:28px;padding:22px;background:#f8f9f7;border:1px solid #e3e8e3;border-radius:12px}.filter-field{min-width:170px;flex:1}.filter-field label{font-size:10px;display:block;font-weight:800;color:#5c6b6d;margin-bottom:7px}.filter-field input,.filter-field select{height:43px;width:100%;padding:9px 13px;border:1px solid #dbe2dd;border-radius:6px;background:#fff;color:var(--ink);outline:none;font-size:12px}.catalog-status{font-size:11px;color:var(--muted);margin-bottom:15px}.empty-catalog{display:none;text-align:center;padding:60px;border:1px dashed #c5d0ca;color:#6b807d;border-radius:12px}
/* PARTNER */
.partner-card{background:white;border:1px solid #e0e7e1;padding:32px;border-radius:12px;min-height:245px}.partner-card .logo-word{font-weight:850;font-family:'Arimo',Arial,sans-serif;font-size:25px;letter-spacing:-.06em;margin:15px 0 16px}.partner-card p{font-size:11px;color:var(--muted);line-height:1.85}.partner-card .status{font-size:10px;color:var(--orange);font-weight:750;margin-top:22px}.model-target{background:#13353e;color:white;border-radius:15px;padding:38px;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px}.model-target h2{font-size:36px}.target-math{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:13px}.target-math .tval{font-size:32px;font-weight:800;letter-spacing:-.08em}.target-math .tlabel{font-size:10px;color:#b1c6c6}.target-math .times{color:#d5a37d;font-size:27px}.model-target p{font-size:12px;color:#b3cbcb;margin-top:15px}
/* CONTACT */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.contact-info{background:#13363f;color:white;border-radius:14px;padding:47px}.contact-info h2{font-size:39px}.contact-info p{color:#bbd0cf;font-size:13px;margin-top:17px}.contact-detail{display:flex;gap:15px;margin-top:33px}.contact-detail .i{color:#db996d;font-size:20px}.contact-detail strong{display:block;font-size:12px}.contact-detail span{display:block;font-size:11px;color:#9ebaba;margin-top:5px}.form-card{background:#fff;border:1px solid #dfe6e1;box-shadow:var(--shadow);border-radius:13px;padding:36px}.form-card h3{margin-bottom:25px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{min-width:0}.field.full{grid-column:1/-1}.field>label,.line-field>label{display:block;font-weight:750;color:#415659;font-size:11px;margin-bottom:7px}.field label .req{color:#c36546}.control{border:1px solid #d6dfda;border-radius:7px;background:#fff;width:100%;min-height:46px;padding:11px 13px;outline:none;color:#1f3840;font-size:12px;transition:border-color .15s,box-shadow .15s}.control:focus{border-color:#cc8d6a;box-shadow:0 0 0 3px #d78a5820}.control::placeholder{color:#a7b0b0}.control:disabled{background:#f0f3f0;color:#8a9895}.textarea{min-height:105px;resize:vertical}.field small{color:#8a9895;font-size:10px;margin-top:5px;display:block}.field-error{color:#b95139!important;font-size:10px!important}.notice{padding:13px 15px;background:#eef5f1;border:1px solid #cce1d4;border-radius:7px;color:#35634f;font-size:11px;line-height:1.7}.notice--warm{background:#fff6e9;border-color:#f1d3af;color:#805f3f}.notice--dark{background:#143d42;color:#c7dcdb;border-color:#386568}
/* ORDER BUILDER */
.order-shell{display:grid;grid-template-columns:minmax(0,1fr) 328px;gap:28px;align-items:start;padding:45px 0 100px}.order-main{min-width:0}.order-side{position:sticky;top:118px;display:grid;gap:18px}.order-head{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:27px}.order-head h1{font-size:35px;letter-spacing:-.06em}.order-head p{font-size:12px;color:var(--muted);margin-top:11px}.order-ref{background:#eef4ef;border-radius:8px;color:#396254;padding:10px 12px;font-weight:700;font-size:10px;white-space:nowrap}.order-stepper{display:grid;grid-template-columns:repeat(4,1fr);border-radius:9px;overflow:hidden;border:1px solid #e2e7e2;margin-bottom:21px;background:#f7f8f6}.stepper-item{background:#f7f8f6;border:0;border-right:1px solid #e2e7e2;padding:16px 10px;display:flex;align-items:center;justify-content:center;gap:9px;color:#718180;font-size:10px;font-weight:750}.stepper-item:last-child{border-right:0}.stepper-item .round{height:24px;width:24px;display:grid;place-items:center;border-radius:50%;background:#e7ede8;color:#6b7f77;font-size:10px;flex:none}.stepper-item.active{background:#173c44;color:#fff}.stepper-item.active .round{background:#dd986e;color:white}.stepper-item.done .round{background:#539074;color:white}.order-panel{display:none;background:#fff;border:1px solid #e2e7e2;border-radius:13px;padding:32px}.order-panel.current{display:block}.order-panel h2{font-size:24px;margin-bottom:8px}.order-panel .panel-sub{color:var(--muted);font-size:11px;line-height:1.75;margin-bottom:27px}.order-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px}.order-actions .right-actions{display:flex;gap:10px;margin-left:auto}.order-summary{background:#12343c;color:white;border-radius:13px;padding:28px}.order-summary h3{font-size:17px;margin-bottom:18px}.summary-stat{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 0;border-top:1px solid #365760}.summary-stat span{font-size:11px;color:#bad0d0}.summary-stat strong{font-size:18px;letter-spacing:-.035em}.summary-stat small{font-size:9px;color:#a7bdbd}.summary-total{border-top:1px solid #729196;padding-top:19px;margin-top:12px}.summary-total strong{font-size:23px;color:#f4bc94}.side-helper{border:1px solid #dfe5df;background:#fbfcfa;padding:22px;border-radius:12px}.side-helper h4{font-size:12px}.side-helper p,.side-helper li{font-size:11px;color:#687a79;line-height:1.8}.side-helper ul{padding-left:18px}.side-helper li{margin-top:8px}.order-table-wrap{overflow-x:auto;border:1px solid #e0e5e0;border-radius:10px}.order-table{width:100%;border-collapse:collapse;min-width:975px}.order-table th{font-size:10px;color:#617574;font-weight:800;background:#f5f7f4;padding:12px 9px;text-align:left;white-space:nowrap;border-bottom:1px solid #e0e5e0}.order-table td{padding:10px 8px;border-bottom:1px solid #e8eeea;vertical-align:top}.order-table tr:last-child td{border-bottom:0}.order-table input,.order-table select{width:100%;border:1px solid #dce5de;border-radius:5px;min-height:37px;padding:7px 8px;background:#fff;font-size:10px;color:var(--ink);min-width:60px}.order-table .td-number{width:45px;font-size:11px;color:#8b9992;font-weight:800}.order-table .td-action{width:30px}.order-table .delete-line{border:0;background:#fff0ee;color:#b3544e;border-radius:5px;min-width:30px;height:34px}.order-table .calced{font-size:11px;font-weight:800;color:#345c4e;white-space:nowrap;padding-top:8px}.table-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:17px 0}.table-tools .subtext{font-size:10px;color:var(--muted)}.radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.radio-card{border:1px solid #dce4de;border-radius:8px;padding:15px;cursor:pointer;display:flex;gap:10px;align-items:start;font-size:12px;font-weight:700}.radio-card input{accent-color:#c46e45;margin-top:4px}.radio-card:has(input:checked){border-color:#c46e45;background:#fff7f1}.review-block{border:1px solid #e1e6e1;padding:23px;border-radius:10px;margin-top:18px}.review-title{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #e5ebe6;padding-bottom:12px;margin-bottom:14px}.review-title h3{font-size:16px}.review-definition{display:grid;grid-template-columns:1fr 1fr;gap:14px}.review-definition dt{color:#8a9995;font-size:10px;margin-bottom:3px}.review-definition dd{margin:0;color:#314b4a;font-weight:700;font-size:11px;overflow-wrap:anywhere}.review-list{display:grid;gap:8px}.review-line{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#f8faf7;border-radius:7px;padding:12px 14px;font-size:11px}.review-line strong{font-size:11px}.order-success{border-radius:10px;background:#edf5ef;border:1px solid #cde3d2;padding:22px;margin-top:19px;color:#2d614b}.order-success h3{font-size:17px;margin-bottom:9px}.order-success p{font-size:11px;line-height:1.9}.order-success .btn{margin-top:17px}.draft-list{max-height:240px;overflow:auto}.draft-item{border-top:1px solid #e4eae4;padding:12px 0;font-size:11px}.draft-item strong{display:block}.draft-item small{display:block;color:var(--muted);margin-top:3px}.draft-item button{border:0;background:transparent;color:var(--orange);padding:0;font-size:10px;font-weight:800;margin-top:6px}.print-only{display:none}.mobile-order-bar{display:none}.snackbar{position:fixed;z-index:160;right:20px;bottom:22px;max-width:410px;background:#163a42;color:#fff;border-radius:9px;padding:15px 20px;box-shadow:0 20px 60px #091f2460;transform:translateY(140px);opacity:0;transition:transform .3s,opacity .3s;font-size:12px}.snackbar.show{transform:translateY(0);opacity:1}
/* RESPONSIVE */
@media(max-width:1250px){.container{width:min(1170px,calc(100% - 60px))}.nav-links{gap:12px}.nav-links>a{font-size:10px}.brand-name{font-size:18px}.brand-sub{font-size:7px}.hero-copy{padding-left:40px}.hero-copy h1{font-size:56px}.product-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1020px){.nav-wrap{height:73px}.menu-toggle{display:flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #e1e6e1;box-shadow:0 20px 35px #142c3120;padding:20px 30px;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links>a{font-size:13px;border-bottom:1px solid #edf0ed;padding:13px 5px}.nav-links>a.active:after,.nav-links>a:not(.nav-cta):after{display:none}.nav-links>a.nav-cta{margin-top:12px;text-align:center}.hero-grid{min-height:620px;grid-template-columns:1.1fr .9fr}.hero-copy{padding:65px 35px}.hero-copy h1{font-size:48px}.hero-media{min-height:620px}.hero-stamp{right:20px;top:24px}.hero-bottom-card{left:14px;right:14px;bottom:18px;padding:16px}.hero-bottom-card .num{font-size:20px}.hero-bottom-card .desc{font-size:9px}.two-col{gap:35px}.card-grid,.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-grid{grid-template-columns:repeat(3,1fr)}.flow-stage{padding:20px 13px}.flow-stage h3{font-size:14px}.flow-stage p{font-size:10px}.footer-grid{gap:35px}.order-shell{grid-template-columns:minmax(0,1fr) 250px}.order-side{top:92px}.order-panel{padding:23px}.radio-cards{grid-template-columns:1fr}}
@media(max-width:760px){body{font-size:13px}.container{width:calc(100% - 36px)}.section{padding:67px 0}.section--tight{padding:54px 0}.section-heading{display:block;margin-bottom:28px}.section-heading p{margin-top:16px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:63px 20px 60px;min-height:525px}.hero-copy h1{font-size:clamp(42px,9vw,58px)}.hero-copy p{font-size:13px}.hero-media{min-height:430px}.hero-stamp{top:17px;right:17px}.hero-bottom-card{left:12px;right:12px;bottom:13px}.hero-footnote{margin-top:39px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metrics-grid>div,.metrics-grid>div:first-child{padding:24px 15px;border-bottom:1px solid var(--line)}.metrics-grid>div:nth-child(2n){border-right:0}.metrics-grid>div:nth-child(n+3){border-bottom:0}.metric-value{font-size:26px}.two-col,.two-col--wide{grid-template-columns:1fr;gap:31px}.card-grid,.service-grid{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:repeat(2,1fr);gap:13px}.product-img{height:208px}.product-card-body{padding:14px}.product-card-body h3{font-size:14px}.flow-row,.role-grid,.qc-steps{grid-template-columns:repeat(2,1fr)}.flow-stage:nth-child(2):after{display:none}.flow-stage .step-ico{margin:13px 0}.flow-wrap{padding:14px}.brand-strip{grid-template-columns:repeat(3,1fr)}.brand-box{height:98px;border-bottom:1px solid #e2e6e2}.brand-box:nth-child(3){border-right:0}.brand-box .brand-text{font-size:15px}.cta-panel{padding:36px 26px;display:block}.cta-panel .cta-actions{margin-top:24px;align-items:flex-start}.footer-grid{grid-template-columns:repeat(2,1fr);gap:34px}.footer-about{max-width:400px}.site-footer{padding-top:54px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:9px}.page-hero{padding:70px 0}.page-hero h1{font-size:clamp(39px,8vw,58px)}.page-hero p{font-size:13px}.editorial-block{padding:34px}.editorial-block:before{font-size:36px}.mini-timeline{grid-template-columns:1fr 1fr}.capability-row{grid-template-columns:1fr 1fr}.factory-display{min-height:330px}.process-row{grid-template-columns:45px 1fr;gap:10px}.process-row p{grid-column:2}.model-target{grid-template-columns:1fr;gap:26px}.target-math .tval{font-size:25px}.contact-grid{grid-template-columns:1fr;gap:22px}.order-shell{grid-template-columns:1fr;padding:28px 0 82px}.order-side{position:static;grid-row:1;display:grid;grid-template-columns:1fr 1fr}.order-head h1{font-size:29px}.order-head{flex-wrap:wrap}.order-summary{padding:20px}.order-summary h3{font-size:15px}.summary-stat strong{font-size:16px}.side-helper{padding:18px}.stepper-item{padding:12px 8px;font-size:9px}.stepper-item .round{width:20px;height:20px}.order-panel{padding:22px}.form-grid{gap:13px}.form-card{padding:24px}}
@media(max-width:520px){.announce-inner{font-size:9px}.announce-inner .announce-right{display:none}.brand-name{font-size:18px}.brand-mark{width:40px;height:40px}.brand-mark svg{width:38px}.hero-copy{min-height:530px}.hero-copy h1{font-size:43px}.hero-actions{display:grid;grid-template-columns:1fr;max-width:300px}.hero-media{min-height:350px}.hero-stamp{padding:10px}.hero-bottom-card .desc{font-size:8px}.hero-bottom-card .num{font-size:17px}.hero-bottom-card .bar{height:34px}.card-grid,.service-grid,.capability-row{grid-template-columns:1fr}.role-grid{grid-template-columns:1fr 1fr;gap:10px}.role-card{min-height:170px;padding:20px}.flow-stage{min-height:185px}.flow-stage h3{font-size:14px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-img{height:170px}.product-card-body .meta{display:none}.product-card-body .product-foot{margin-top:12px}.brand-box{padding:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:29px}.footer-grid>div:first-child{grid-column:1/-1}.mini-timeline{grid-template-columns:1fr}.factory-overlay{left:15px;right:15px;bottom:15px;padding:19px}.qc-steps{grid-template-columns:1fr 1fr}.qc-step{padding:20px 13px}.packaging-display{min-height:360px}.package{transform:rotate(-8deg) scale(.8)}.package-chip{right:15px;bottom:12px}.contact-info{padding:30px}.contact-info h2{font-size:31px}.form-grid{grid-template-columns:1fr}.form-card{padding:20px}.order-side{grid-template-columns:1fr}.order-ref{font-size:9px}.stepper-item{font-size:0;gap:0}.stepper-item .round{font-size:10px;width:28px;height:28px}.order-panel{padding:17px}.order-panel h2{font-size:21px}.order-actions{flex-wrap:wrap}.order-actions .right-actions{width:100%;justify-content:end}.order-actions .right-actions .btn{padding:10px 12px}.review-definition{grid-template-columns:1fr 1fr}.radio-cards{grid-template-columns:1fr}.page-hero--image{min-height:365px}}
@media print{.announcement,.site-header,.site-footer,.order-stepper,.order-side,.order-actions,.table-tools,.mobile-order-bar,.no-print,.snackbar,.page-hero,.btn{display:none!important}body{font-family:Arial,sans-serif;font-size:11px;color:#111;background:#fff}.container{width:100%;max-width:none}.order-shell{display:block;padding:0}.order-main{width:100%}.order-head{border-bottom:2px solid #111;padding-bottom:15px}.order-panel{display:none!important;border:0;padding:0}.order-panel.current{display:block!important}.print-only{display:block!important}.print-meta{display:flex;justify-content:space-between}.review-block{border:1px solid #ddd;break-inside:avoid}.order-table{min-width:0}.order-table-wrap{overflow:visible}}
/* Brand lockup: keep English descriptor below Vietnamese wordmark */
.brand-name,.brand-sub{display:block}
.nav-links>a.nav-cta.active{color:#fff}
.file-control{padding:9px;cursor:pointer;height:auto}.file-control::file-selector-button{background:#e8f0e9;border:0;border-radius:5px;color:#315f4a;font-weight:750;padding:8px 12px;margin-right:12px;cursor:pointer}
/* Ensure the highlighted current navigation CTA remains readable */
.nav-links>a.nav-cta.active:hover{color:#fff}

/* ===============================================================
   GACHANDO.VN 13-page expansion: structured navigation & services
   =============================================================== */
:focus-visible{outline:3px solid #db9469;outline-offset:3px}
.nav-links{gap:17px}
.nav-group{position:relative;flex:none}
.nav-group summary{list-style:none;display:flex;align-items:center;gap:6px;cursor:pointer;font-size:11.5px;font-weight:700;color:#43585d;white-space:nowrap;user-select:none}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group .nav-chevron{color:#9baba9;font-size:16px;line-height:1;transition:transform .2s}
.nav-group[open] .nav-chevron{transform:rotate(180deg)}
.nav-group summary:hover,.nav-group.selected summary,.nav-group[open] summary{color:var(--orange)}
.nav-group .nav-menu{position:absolute;display:none;left:-17px;top:calc(100% + 19px);width:250px;background:#fff;border:1px solid #e1e8e3;box-shadow:0 20px 45px #102b3333;padding:10px;border-radius:11px;z-index:100}
.nav-group .nav-menu:before{content:"";position:absolute;height:23px;left:0;right:0;top:-21px}
.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu,.nav-group[open] .nav-menu{display:grid}
.nav-group .nav-menu a{display:block;font-size:11.5px;font-weight:700;color:#496063;border-radius:6px;padding:12px 13px;line-height:1.3;transition:background .15s}
.nav-group .nav-menu a:hover,.nav-group .nav-menu a.active{background:#f8f1ea;color:#ac5e39}
.nav-links>a.nav-cta{font-size:10.5px;padding:12px 13px}

.mini-kicker{color:var(--orange);font-size:10px;font-weight:800;letter-spacing:.1em;display:block;text-transform:uppercase}
.home-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.home-services-grid>a{display:flex;flex-direction:column;min-height:245px;border:1px solid #dde6e1;background:#fff;border-radius:12px;padding:30px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.home-services-grid>a:after{position:absolute;content:"↗";top:22px;right:24px;color:#d8ada0;font-size:26px}
.home-services-grid>a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.home-services-grid span{color:#c26b40;font-weight:800;font-size:10px;letter-spacing:.12em}
.home-services-grid strong{font-size:25px;letter-spacing:-.05em;margin-top:24px}
.home-services-grid p{color:#738281;font-size:12px;line-height:1.8;margin-top:8px}
.home-services-grid b{font-size:11px;margin-top:auto;color:#ac5837;padding-top:20px}
.home-catalogue-banner{border-radius:14px;display:flex;gap:30px;justify-content:space-between;align-items:center;background:#e8eeea;border:1px solid #d5e0d9;padding:33px 37px;margin-top:25px}
.home-catalogue-banner h3{font-size:23px;margin-top:10px}
.home-catalogue-banner p{font-size:12px;color:#667b77;margin-top:10px}
.home-catalogue-banner .btn{flex:none}

.factory-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.factory-brand-profile{background:#fff;border-radius:13px;overflow:hidden;border:1px solid #dce4de;box-shadow:0 10px 30px #18353c08}
.factory-brand-visual{height:243px;position:relative;display:flex;align-items:center;justify-content:center;padding:32px;overflow:hidden}
.factory-brand-visual:before,.factory-brand-visual:after{content:"";position:absolute;border:1px solid #ffffff38;width:330px;height:330px;border-radius:50%;top:-180px;right:-190px}
.factory-brand-visual:after{top:auto;bottom:-190px;right:auto;left:-210px;width:400px;height:400px}
.factory-brand-visual.rock{background:radial-gradient(circle at 20% 15%,#667f75,#3b594e 56%,#24463f);color:#fff}
.factory-brand-visual.millennium{background:radial-gradient(circle at 20% 10%,#315a78,#133a56 58%,#092c44);color:#fff}
.factory-brand-visual.network{background:radial-gradient(circle at 70% 25%,#d9c8b4,#b8a58e 52%,#98856f);color:#152e31}
.brand-wordmark{z-index:1;text-align:center;font-weight:850;letter-spacing:-.075em;font-size:38px;line-height:1.07}
.brand-wordmark--rock{font-size:36px;letter-spacing:-.06em}.brand-wordmark--rock i{display:block;font-size:12px;letter-spacing:.47em;font-style:normal;font-weight:600;margin-top:14px}
.brand-wordmark--mill{font-size:31px;letter-spacing:.04em}.brand-wordmark--mill small{display:block;font-size:13px;letter-spacing:.65em;font-weight:550;margin-top:12px}
.brand-wordmark--network{font-size:27px;line-height:1.1;letter-spacing:-.03em}.signal-dots{display:block;color:#694937;letter-spacing:.6em;margin-top:12px;font-size:17px}
.source-chip{position:absolute;z-index:1;bottom:17px;left:20px;border:1px solid #ffffff70;color:#fff;border-radius:4px;font-size:9px;font-weight:750;letter-spacing:.08em;padding:5px 9px}
.factory-brand-visual.network .source-chip{color:#193437;border-color:#19343765}
.factory-brand-info{padding:27px 28px 31px}
.factory-brand-info h3{font-size:20px;margin-top:13px;margin-bottom:12px}
.factory-brand-info p{font-size:12px;line-height:1.9;color:#6f7d7b;min-height:115px}
.chip-line{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 25px}
.chip-line span{font-size:9px;font-weight:750;background:#f2f5f1;border:1px solid #e7ebe7;padding:6px 9px;border-radius:4px;color:#5b716d}

.cat-toolbar{display:flex;align-items:center;gap:19px;flex-wrap:wrap;margin-bottom:27px;padding:16px 20px;background:#f7f8f5;border:1px solid #e0e5e0;border-radius:9px}
.cat-search-wrap{flex:1;min-width:205px;display:flex;align-items:center;gap:7px;border-bottom:1px solid #9caca6;padding-bottom:7px;font-size:23px;color:#8a9a93}
.cat-search-wrap input{font-size:12px;outline:none;border:0;background:transparent;flex:1;min-width:80px;color:var(--ink);height:28px}
.cat-tabs{display:flex;flex-wrap:wrap;gap:5px}
.cat-tabs button{font-size:11px;color:#556965;background:#fff;border:1px solid #e1e6df;border-radius:30px;padding:9px 14px;font-weight:750}
.cat-tabs button.active,.cat-tabs button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.cat-result{font-size:10px;font-weight:700;color:#80928e}
.catalogue-download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.cat-download-card{border-radius:13px;border:1px solid #dce2dd;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 13px 33px #102e3610}
.cat-cover{height:330px;background:#13353e;color:#fff;padding:26px 26px 20px;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:17px}
.cat-download-card:nth-child(2) .cat-cover{background:#5e4c43}
.cat-download-card:nth-child(3) .cat-cover{background:#526a60}
.cat-cover-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px;font-weight:750;letter-spacing:.06em}
.cat-cover-top span:first-child{font-size:13px;font-weight:850;letter-spacing:-.045em}
.cat-cover-title{display:flex;flex-direction:column;gap:8px;max-width:270px}
.cat-cover-title small{font-size:9px;color:#cfb8a8;letter-spacing:.18em}
.cat-cover-title strong{font-size:35px;line-height:1.05;letter-spacing:-.07em;font-weight:750}
.cat-cover-images{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;flex:1;min-height:105px;max-height:132px;margin-top:auto;transform:skewY(-2deg) scale(1.05);overflow:hidden}
.cat-cover-images img{width:100%;height:100%;object-fit:cover;min-width:0}
.cover-demo{position:absolute;bottom:8px;right:13px;color:#f0e6dc;font-size:9px;font-weight:800;letter-spacing:.17em;background:#12333ebb;padding:5px 8px}
.cat-download-body{padding:29px 27px 28px;display:flex;flex-direction:column;flex:1}
.cat-download-body h3{font-size:20px;margin-top:12px;margin-bottom:13px}
.cat-download-body p{font-size:12px;color:#6a7b77;line-height:1.85;min-height:91px}
.cat-card-actions{margin-top:auto;display:flex;align-items:center;flex-wrap:wrap;gap:19px;padding-top:22px}
.cat-card-actions .text-link{font-size:11px}
.doc-workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.doc-workflow>div{border:1px solid #dce2dd;background:#fff;padding:24px;border-radius:11px;position:relative}
.doc-workflow>div:not(:last-child):after{content:"→";position:absolute;right:-15px;top:25px;font-size:19px;color:#bc704b;z-index:1}
.doc-workflow b{font-size:25px;letter-spacing:-.07em;color:#c17853}
.doc-workflow h3{font-size:17px;margin:15px 0 7px}
.doc-workflow p{font-size:11px;color:#71827d;line-height:1.75}

.import-visual{min-height:440px;background:#173740;border-radius:14px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden;color:#fff;padding:45px}
.import-visual:before{content:"";position:absolute;width:510px;height:510px;border-radius:50%;border:1px solid #7aabb24d;box-shadow:0 0 0 55px #74a8a610,0 0 0 120px #74a8a605}
.import-globe{position:absolute;top:13px;right:30px;font-size:100px;color:#74979b49}
.imp-route{position:relative;display:flex;justify-content:space-between;align-items:center;gap:13px;width:100%;max-width:550px}
.imp-route div{display:grid;gap:9px}
.imp-route div:last-child{text-align:right}
.imp-route strong{font-size:28px;letter-spacing:-.05em}
.imp-route small{font-size:11px;color:#bbced1}
.route-track{color:#dfaa82;font-size:20px;white-space:nowrap}
.import-foot{position:absolute;bottom:28px;left:25px;right:25px;display:flex;justify-content:space-around;gap:6px;flex-wrap:wrap;border-top:1px solid #64878a55;padding-top:17px}
.import-foot span{font-size:10px;letter-spacing:.08em;color:#d4e3df}
.operating-roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.operating-roadmap>div{background:#fff;padding:27px 29px;border-radius:10px;border:1px solid #e1e5de;position:relative;min-height:183px}
.operating-roadmap>div span{display:inline-block;font-size:12px;color:#be7551;font-weight:800;letter-spacing:.12em;margin-bottom:20px}
.operating-roadmap h3{font-size:18px;margin-bottom:11px}
.operating-roadmap p{font-size:12px;color:#7c8785}
.trade-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:23px}
.trade-card{border:1px solid #dce4de;border-radius:12px;padding:38px;background:#f8faf8;min-height:265px;display:flex;flex-direction:column}
.trade-card.featured{background:#e8efea;border-color:#d4dfd6}
.trade-card h3{font-size:27px;margin:23px 0 12px}
.trade-card p{font-size:12px;color:#627b73;line-height:1.85}
.trade-card .text-link{margin-top:auto;padding-top:20px}

.logistics-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:27px;align-items:start}
.logistics-layout .section-heading{margin-bottom:24px}
.ship-planner{background:#fff;border:1px solid #dce4dc;border-radius:14px;padding:29px;box-shadow:0 12px 34px #173c450a}
.ship-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px}
.ship-actions span{font-size:10px;color:#738985}
.shipping-summary{background:#12343c;color:#fff;padding:37px;border-radius:13px;position:relative;overflow:hidden}
.shipping-summary h3{font-size:23px;margin-top:17px}
.shipping-summary .summary-stat{color:#cbdcdb;border-color:#43676b}
.shipping-summary .summary-stat strong{font-size:14px;color:#fff}
.shipping-summary .mini-footnote{color:#aac0c0}
.route-map{display:grid;grid-template-columns:1fr;gap:14px;padding:30px 0;margin:25px 0;border-top:1px solid #3d5f63;border-bottom:1px solid #3d5f63}
.route-map>div{display:grid;grid-template-columns:13px 1fr;column-gap:13px;align-items:center}
.route-map strong{font-size:17px}
.route-map small{grid-column:2;color:#b1c9c8;font-size:10px}
.route-dot{width:11px;height:11px;border-radius:50%;background:#9bc4b4;border:2px solid #4d7d77;box-shadow:0 0 0 4px #3a625c}
.route-dot.orange{background:#e2a783;border-color:#aa6746;box-shadow:0 0 0 4px #835d48}
.route-middle{padding-left:16px;color:#bdcdd0;font-size:9px;letter-spacing:.14em;display:flex;gap:15px;align-items:center}
.route-middle i{width:100px;height:1px;background:#7eaaac}
.mini-footnote{font-size:10px;color:#899e9b;line-height:1.75;margin-top:17px}
.milestone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.milestone-grid>div{padding:27px 26px;min-height:152px;border-radius:11px;border:1px solid #dfe6e0;display:flex;flex-direction:column;gap:11px}
.milestone-grid b{font-size:13px;color:#bd6943}
.milestone-grid strong{font-size:17px;letter-spacing:-.025em}
.milestone-grid span{font-size:11px;color:#7e8d89}

.customs-layout{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(295px,.87fr);gap:26px;align-items:start}
.customs-panel{background:#fff;border:1px solid #dce5dc;border-radius:13px;overflow:hidden;box-shadow:0 18px 42px #1a3d430a}
.check-head{padding:32px 32px 23px;display:flex;justify-content:space-between;align-items:center;gap:19px}
.check-head h3{margin-top:9px;font-size:21px}
.check-count{color:#bd6946;font-size:27px;font-weight:850;white-space:nowrap}
.progress-rail{height:7px;background:#eaf0e9;margin:0 32px 10px;border-radius:9px;overflow:hidden}
.progress-rail div{height:100%;background:#39745c;transition:width .25s}
.customs-checklist{padding:3px 32px}
.customs-checklist label{display:flex;align-items:center;gap:14px;border-bottom:1px solid #e7ebe6;padding:17px 5px;cursor:pointer}
.customs-checklist label:last-child{border:0}
.customs-checklist input{accent-color:#39745c;width:19px;height:19px;flex:none}
.customs-checklist label>span{display:grid;gap:2px}
.customs-checklist strong{font-size:12px;color:#284246}
.customs-checklist small{font-size:10px;color:#728480}
.customs-checklist label:has(input:checked) strong{color:#658179}
.customs-actions{display:flex;flex-wrap:wrap;gap:12px;padding:20px 32px;border-top:1px solid #e2e8e2}
.customs-panel>.mini-footnote{margin:0;padding:0 32px 26px}
.customs-aside{background:#16353c;color:white;border-radius:13px;padding:38px}
.customs-aside h3{font-size:26px;margin-top:13px}
.customs-aside ol{counter-reset:none;padding:0;margin:28px 0;list-style:none;display:grid;gap:21px}
.customs-aside li{border-bottom:1px solid #496970;padding-bottom:20px}
.customs-aside li:last-child{border:0}
.customs-aside li strong{font-size:13px;color:#ebf2ef}
.customs-aside li p{font-size:11px;color:#b3c9c7;margin-top:6px}
.customs-advice{background:#244a51;border-radius:9px;padding:17px;color:#d8e6e3;font-size:11px;line-height:1.85;margin-bottom:26px}
.customs-aside .text-link{color:#efa67c}

@media(max-width:1170px){.nav-links{gap:12px}.nav-group summary{font-size:10.5px}.nav-links>a.nav-cta{font-size:10px}.nav-wrap{gap:16px}}
@media(max-width:1020px){
  .nav-links{max-height:calc(100dvh - 73px);overflow-y:auto;align-items:stretch;padding:14px 25px 28px;gap:0}
  .nav-group{width:100%;border-bottom:1px solid #edf0ed}
  .nav-group summary{font-size:13px;padding:13px 5px;justify-content:space-between}
  .nav-group .nav-menu{position:static;top:auto;left:auto;width:100%;border:0;border-radius:0;box-shadow:none;padding:0 0 12px 13px;background:#f8f9f7;display:none}
  .nav-group .nav-menu:before{display:none}
  .nav-group:hover:not([open]) .nav-menu,.nav-group:focus-within:not([open]) .nav-menu{display:none}
  .nav-group[open] .nav-menu{display:grid}
  .nav-group .nav-menu a{padding:12px 15px;font-size:12px}
  .nav-links>a{font-size:13px}
  .nav-links>a.nav-cta{font-size:12px}
}
@media(max-width:920px){
  .factory-brand-grid,.catalogue-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .operating-roadmap{grid-template-columns:repeat(2,1fr)}
  .logistics-layout,.customs-layout{grid-template-columns:1fr}
  .home-services-grid{gap:12px}
  .home-services-grid>a{padding:22px}
}
@media(max-width:760px){
  .home-services-grid,.factory-brand-grid,.catalogue-download-grid{grid-template-columns:1fr}
  .home-catalogue-banner{padding:25px;display:block}
  .home-catalogue-banner .btn{margin-top:19px}
  .factory-brand-visual{height:240px}
  .factory-brand-info p{min-height:0}
  .cat-toolbar{align-items:stretch;flex-direction:column}
  .cat-search-wrap{min-width:0}
  .cat-cover{height:350px}
  .cat-download-body p{min-height:0}
  .doc-workflow{grid-template-columns:repeat(2,1fr)}
  .doc-workflow>div:after{display:none}
  .import-visual{min-height:325px}
  .imp-route strong{font-size:19px}
  .route-track{font-size:12px}
  .trade-grid{grid-template-columns:1fr}
  .milestone-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .doc-workflow,.operating-roadmap,.milestone-grid{grid-template-columns:1fr}
  .home-catalogue-banner h3{font-size:20px}
  .cat-cover{height:320px}
  .cat-cover-title strong{font-size:31px}
  .factory-brand-info{padding:25px}
  .ship-planner,.shipping-summary,.customs-aside{padding:24px}
  .check-head{padding:24px 22px 19px}
  .check-head h3{font-size:17px}
  .customs-checklist{padding:0 18px}
  .progress-rail{margin-left:22px;margin-right:22px}
  .customs-actions{padding:18px}
  .customs-panel>.mini-footnote{padding:0 22px 22px}
  .ship-actions .btn{width:100%;justify-content:center}
  .imp-route{gap:3px}
  .import-visual{padding:28px 20px}
  .route-track{font-size:10px}
}
@media print{
  .nav-group,.cat-toolbar,.cat-card-actions,.customs-actions,.ship-actions{display:none!important}
}


/* === brand-global.css === */

/* GACHANDO GLOBAL EDITION • exact provided logo artwork */
:root{--ink:#102640;--navy:#071c36;--navy2:#08182e;--orange:#bf8b38;--orange2:#e5c278;--sand:#f6f3ec;--cream:#fcfaf6;--line:#e2e6e6;--muted:#647487;--green:#1b6b48;--shadow:0 22px 56px rgba(10,29,53,.095)}
body{color:var(--ink);background:#fff;font-family:'DejaVu Sans',Arial,sans-serif}
h1,h2,h3,h4{letter-spacing:-.049em}h1{letter-spacing:-.066em}
.eyebrow,.feature-num,.text-link{color:var(--orange)}
.section-heading h2{font-family:Georgia,'DejaVu Serif',serif;font-weight:700;letter-spacing:-.055em;line-height:1.18}
.announcement{background:#06172d;color:#e4e8ed}
.site-header{background:#ffffffeb;border-color:#e4e9ec;box-shadow:0 2px 14px #0b234408}
.nav-wrap{height:88px;gap:19px}
.site-header .brand{gap:0;flex:none;display:flex;align-items:center}
.official-site-logo{width:232px;height:60px;object-fit:contain;object-position:left center;filter:drop-shadow(0 1px 0 #00000003)}
.nav-links{gap:16px}
.nav-links>a,.nav-group summary{color:#183654}
.nav-links>a.active,.nav-group summary:hover{color:#ad7a2d}
.nav-links .nav-cta{background:linear-gradient(120deg,#d9aa54,#ad7728);color:#091b34!important;box-shadow:0 5px 16px #a9813322;border-radius:28px;padding:13px 18px;font-size:11px}
.nav-links>a:not(.nav-cta):after{background:#bd8b3c}
.btn-primary{background:linear-gradient(120deg,#f3d68d,#c3913c);color:#081a33;box-shadow:0 15px 30px #b7833740;border-radius:9px}
.btn-primary:hover{background:linear-gradient(120deg,#ffdfa3,#ac782d)}
.btn-dark{background:#071d38}.btn-dark:hover{background:#15365a}
.btn-outline-light{border-color:#bb974f;background:#0a234470}
.text-link{color:#a77935}
.tag--orange{color:#a47322;background:#f8eedb}
.tag--dark{background:#162f4c;color:#dfe9ee}
.hero{background:#07182c}.hero-grid{grid-template-columns:1.07fr 1fr;min-height:728px}
.hero-copy{background:linear-gradient(153deg,#06172d 15%,#0b294b 67%,#071b30);padding-top:50px;padding-bottom:57px;min-height:728px}
.hero-copy:before{background:radial-gradient(ellipse at 5% 10%,#20466a80,transparent 54%),linear-gradient(145deg,transparent 60%,#c79b260d)}
.hero-brand-lockup{display:flex;gap:13px;align-items:center;width:max-content;max-width:100%;margin-bottom:20px}
.hero-brand-icon{width:58px;height:57px;object-fit:contain;filter:drop-shadow(0 4px 9px #0004)}
.hero-brand-lockup strong{display:block;color:#fff9e9;font-family:Georgia,'DejaVu Serif',serif;font-size:19px;letter-spacing:.035em}
.hero-brand-lockup span{font-size:9px;display:block;margin-top:4px;letter-spacing:.16em;color:#efc66f}
.hero-copy h1{font-size:clamp(39px,4.1vw,62px);max-width:620px;letter-spacing:-.065em}
.hero-copy h1 em{color:#e6bf70}
.hero-copy p{color:#d6e1ec;font-size:13px;line-height:1.88;max-width:570px;margin-top:21px}
.hero-copy .eyebrow{color:#e0b966;margin-bottom:21px}
.hero-actions{margin-top:30px}
.hero-footnote{margin-top:43px;color:#aabed2}
.hero-media{min-height:728px;background:#b9b2a2}
.hero-media .hero-scene{object-fit:cover;object-position:48% center}
.hero-media:after{background:linear-gradient(180deg,transparent 30%,#071e3655 100%)}
.hero-stamp{background:#fdfbf7ee;border:1px solid #f7efe2;right:32px;top:27px;padding:11px 17px;gap:10px}
.hero-stamp-icon{width:32px;height:32px;object-fit:contain}
.hero-stamp span:not(.seal){color:#64758b}
.hero-bottom-card{background:#ffffffee;border:1px solid #f4f0e4;box-shadow:0 20px 38px #06192a48}
.hero-bottom-card .num,.metric-value{color:#0f2a48}
.metrics{border-bottom:1px solid #e7e9ea}
.section--sand{background:#f7f4ed}.section--cream{background:#fcfaf6}
.feature-card,.product-card,.partner-card,.factory-brand-profile,.catalogue-card,.service-card{border-color:#e3e7e9;box-shadow:0 5px 12px #122f4810}
.cta-panel{background:linear-gradient(130deg,#071a32,#15365a)}
.flow-stage.highlight{background:#0d2a4a;border-color:#0d2a4a}
.brand-strip{border-color:#dfe6e9;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;border:0}
.brand-box{height:135px;border:1px solid #e2e7e9!important;border-radius:13px;background:#fff;overflow:hidden;min-width:0;box-shadow:0 7px 20px #0c22350d;padding:9px}
.brand-box .official-logo-link{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:12px;text-decoration:none;border-radius:9px}
.brand-box .official-oem-logo{width:100%;height:58px;object-fit:contain}
.brand-box .official-logo-link small{font-size:8px;letter-spacing:.055em;text-align:center;color:#86919d}
.brand-box--ftiles{background:#061c36;border-color:#061c36!important}
.brand-box--ftiles .official-oem-logo{height:80px;max-width:122px}
.brand-box--ftiles .official-logo-link small{color:#c5d2e1}
.brand-box--rock .official-oem-logo{max-width:167px;height:54px}
.brand-box--millennium .official-oem-logo{max-width:176px;height:57px}
.partner-card--logo .official-partner-logo{height:90px;display:flex;align-items:center;justify-content:center;border-radius:9px;border:1px solid #e8edf0;overflow:hidden;background:#fff;margin:16px 0 19px;padding:13px}
.partner-card--logo .partner-mark{max-width:100%;width:100%;height:100%;object-fit:contain}
.partner-card--ftiles .official-partner-logo{background:#071c37;border-color:#071c37}
.partner-card--ftiles .partner-mark{max-width:133px}
.partner-card--rock .partner-mark{max-width:230px}
.factory-brand-visual.rock,.factory-brand-visual.millennium{background:linear-gradient(160deg,#fdfdfb,#edf1f4 85%);color:#102940}
.factory-brand-visual.rock{background:linear-gradient(145deg,#fbfbf8,#f5f1eb)}
.factory-official-logo{z-index:2;width:82%;height:112px;object-fit:contain}
.factory-official-logo--rock{width:74%;height:116px}
.factory-official-logo--millennium{width:90%;height:114px}
.factory-brand-visual.rock .source-chip,.factory-brand-visual.millennium .source-chip{color:#87652d;border-color:#c3a67199;background:#fffbf2;border-radius:4px}
.site-footer{background:#06172b}
.site-footer .brand{width:max-content;max-width:100%;background:#fcfaf7;padding:6px 15px;border-radius:10px;box-shadow:0 10px 22px #00000027}
.site-footer .brand .official-site-logo{height:64px;width:239px}
.site-footer h4{color:#ead5a8}
.site-footer a:not(.brand):hover{color:#efcf86}
.order-brand-reference{margin:20px 0 24px}
.order-brands-title{font-size:10px;letter-spacing:.12em;font-weight:800;color:#9b712f;margin-bottom:12px}
.order-brands-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.order-brand-btn{height:82px;display:flex;justify-content:center;align-items:center;padding:11px;border:1px solid #d7e0e6;border-radius:10px;background:#fff;box-shadow:0 3px 10px #10264408;transition:all .18s}
.order-brand-btn:hover,.order-brand-btn[aria-pressed="true"]{border-color:#c49643;box-shadow:0 0 0 2px #c496432b}
.order-brand-btn--ftiles{background:#071c37;border-color:#071c37}
.order-brand-btn--ftiles:hover,.order-brand-btn--ftiles[aria-pressed="true"]{border-color:#d8ad5d;box-shadow:0 0 0 2px #d8ad5d88}
.order-brand-logo{max-height:55px;max-width:100%;object-fit:contain}
.order-brand-btn--ftiles .order-brand-logo{max-height:64px;max-width:115px}
.order-brand-btn--millennium .order-brand-logo{max-height:50px}
.order-brand-btn--rock .order-brand-logo{max-height:45px}
.print-brand-lockup{width:215px;height:auto;object-fit:contain;margin:0 0 16px}
@media(max-width:1170px){.site-header .brand .official-site-logo{width:213px;height:56px}.nav-links{gap:10px}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-copy{min-height:550px;padding:58px 35px 50px}.hero-media{min-height:460px}.brand-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header .brand .official-site-logo{width:224px}.hero-footnote{margin-top:25px}}
@media(max-width:760px){.section-heading h2{font-size:clamp(29px,7vw,39px)}.hero-copy h1{font-size:clamp(39px,8vw,53px)}.hero-copy{padding:55px 24px 48px}.hero-copy .eyebrow{font-size:9px}.hero-media{min-height:410px}.brand-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-box{height:128px}.site-footer .brand .official-site-logo{width:200px}.order-brands-row{gap:8px}.order-brand-btn{height:72px}}
@media(max-width:520px){.site-header .brand .official-site-logo{width:194px;height:52px}.nav-wrap{height:76px}.hero-brand-icon{width:48px;height:47px}.hero-brand-lockup strong{font-size:16px}.hero-brand-lockup span{font-size:8px}.hero-copy h1{font-size:40px}.hero-copy{min-height:560px}.hero-media{min-height:340px}.hero-stamp{right:16px;top:16px}.brand-strip{gap:9px}.brand-box{height:110px}.brand-box .official-oem-logo{height:46px}.brand-box--ftiles .official-oem-logo{height:65px}.order-brands-row{grid-template-columns:repeat(3,minmax(0,1fr))}.order-brand-btn{height:65px;padding:9px}.order-brand-btn--ftiles .order-brand-logo{max-width:80px}.factory-official-logo--rock{width:82%}}
@media print{.site-footer .brand{background:white}.print-brand-lockup{display:block}}


/* === brand-identity.css === */

/* Indian factory & OEM identity layout */
.verified-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:30px 0 15px}
.verified-mini-brand{position:relative;min-height:123px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:10px;border:1px solid #e4e9ed;background:linear-gradient(145deg,#fff,#fbfaf7);box-shadow:0 8px 21px #1023420a;border-radius:14px;padding:17px 13px;color:#0c2b4c;text-decoration:none;text-align:center;min-width:0;transition:transform .2s,border-color .2s,box-shadow .2s}
.verified-mini-brand:hover{transform:translateY(-3px);border-color:#ceaa65;box-shadow:0 15px 33px #10234215}
.verified-mini-brand__glyph{font-family:Arial,sans-serif;font-size:clamp(16px,1.6vw,23px);font-weight:900;letter-spacing:.005em;line-height:1.1;overflow-wrap:anywhere;max-width:100%}
.verified-mini-brand small{font-size:10px;color:#718296;font-weight:600}
.verified-mini-brand__arrow{position:absolute;right:11px;top:9px;color:#ba8a42}
.factory-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:29px}
.factory-directory-card{min-height:245px;display:flex;flex-direction:column;padding:23px 24px;border-radius:15px;border:1px solid #e2e6ec;background:#fff;box-shadow:0 8px 25px #0721430b;min-width:0;transition:transform .2s,border-color .2s,box-shadow .2s}
.factory-directory-card:hover{transform:translateY(-3px);border-color:#cfad6b;box-shadow:0 18px 37px #07214316}
.factory-directory-card__upper{display:flex;justify-content:space-between;align-items:center;color:#ac7a3a;font:700 10px Arial,sans-serif;letter-spacing:.13em}
.factory-directory-card__symbol{font-size:19px;color:#c69a56}
.factory-directory-card__brand{font:900 clamp(19px,2vw,28px)/1.15 Arial,sans-serif;color:#0d2b4d;letter-spacing:.005em;min-height:48px;display:flex;align-items:center;overflow-wrap:anywhere}
.factory-directory-card h3{font:700 15px/1.45 Arial,sans-serif;letter-spacing:-.01em;margin:7px 0;color:#163652}
.factory-directory-card p{font-size:11px;color:#677b8f;margin:2px 0 16px;line-height:1.7}
.factory-directory-card a{font:700 11px Arial,sans-serif;color:#9c753d;text-decoration:none;margin-top:auto;align-self:flex-start;border-bottom:1px solid #dec69b;padding-bottom:5px}
.factory-directory-card a:hover{color:#503814}
.factory-public-note{display:flex;align-items:flex-start;gap:12px;background:#f7f3eb;border:1px solid #e4d9c5;border-radius:12px;color:#5f6774;padding:18px 20px;font-size:12px;line-height:1.85;margin-top:25px}
.factory-public-note strong{color:#163755}
.factory-public-note__icon{color:#b28a4c;font-size:18px;flex:none;margin-top:-1px}
.oem-logos-public{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:28px 0 18px}
.oem-logo-example{border:1px solid #e1e6eb;border-radius:13px;min-height:122px;background:#fff;display:flex;align-items:center;justify-content:center;padding:23px 18px;box-shadow:0 8px 24px #1024400b}
.oem-logo-example img{width:100%;max-width:210px;height:68px;object-fit:contain}
.oem-logo-example--ftiles{background:#081d36;border-color:#081d36}.oem-logo-example--ftiles img{height:82px;max-width:170px}
.oem-logo-example--millennium img{max-width:240px}.oem-logo-example--rock img{max-width:230px}
.site-target--single{max-width:960px;margin:auto;text-align:center}.site-target--single .public-target-number{font-size:clamp(50px,7vw,82px)}
@media(max-width:900px){.verified-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.factory-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.verified-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.verified-mini-brand{min-height:99px;padding:13px 8px}.verified-mini-brand__glyph{font-size:16px}.verified-mini-brand small{font-size:9px}.factory-directory-grid{grid-template-columns:1fr;gap:11px}.factory-directory-card{min-height:180px;padding:19px 19px}.factory-directory-card__brand{min-height:38px}.factory-directory-card p{margin-bottom:12px}.oem-logos-public{grid-template-columns:1fr;gap:9px}.oem-logo-example{min-height:107px}.factory-public-note{padding:15px 14px}}


/* === public-brand.css === */

/* Public GACHANDO OEM factory edition */
.public-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:27px 0 20px}
.public-brand-tile{min-height:104px;padding:17px 12px;border:1px solid #dfe6eb;background:#fff;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;box-shadow:0 8px 20px #061a310d;min-width:0;text-align:center}
.public-brand-tile img{width:80%;max-width:205px;height:55px;object-fit:contain}
.public-brand-tile small{font-size:10px;letter-spacing:.02em;color:#728397}
.public-brand-text strong{font-family:Arial,sans-serif;font-size:clamp(15px,2vw,23px);color:#153355;letter-spacing:.02em;max-width:100%;overflow-wrap:anywhere}
.public-brand-grid--directory{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
.public-brand-grid--directory .public-brand-tile{min-height:120px}
.public-brand-disclaimer{color:#647487;font-size:12px;line-height:1.75;border-top:1px solid #e4e9ed;padding-top:17px}
.public-factory-directory{margin-top:65px}
.public-factory-directory h2{font-family:Georgia,'DejaVu Serif',serif;color:#102640;font-size:clamp(24px,3vw,38px);margin-top:8px}
.public-factory-directory>p{color:#647487;max-width:800px;font-size:13px;line-height:1.8}
.section-bottom-link{display:flex;align-items:center;gap:24px;margin-top:23px;flex-wrap:wrap}
.public-oem-panel{background:linear-gradient(145deg,#091d38,#153b62);padding:42px;border-radius:16px;box-shadow:0 24px 54px #071c3632;color:#edf3f7}
.public-oem-logo{display:flex;align-items:center;justify-content:center;background:#061627;border:1px solid #2d4b6d;border-radius:12px;min-height:132px;padding:28px;margin:25px 0 16px}
.public-oem-logo img{width:200px;max-width:100%;height:80px;object-fit:contain}
.public-oem-panel p{font-size:12px;color:#afc2d5;line-height:1.75}
.public-your-brand{margin:25px 0;padding:13px 0;border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;font-family:Georgia,serif;font-size:27px;color:#e3bb70;letter-spacing:.01em}
.public-your-brand span{display:block;font:700 10px Arial,sans-serif;letter-spacing:.18em;color:#f1f1ed;margin-top:6px}
.public-target-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(120deg,#0a203f,#153c64);border-radius:15px;color:#fff;padding:38px 42px}
.public-target-banner h2{font:700 clamp(27px,3vw,41px)/1.2 Georgia,serif;color:#fff;margin:12px 0}
.public-target-banner p{color:#cbd8e8;font-size:13px;line-height:1.85;max-width:580px}
.public-target-number{font-family:Georgia,serif;font-size:clamp(58px,8vw,94px);font-weight:700;white-space:nowrap;color:#ebc078;line-height:1}
.public-target-number span{display:block;color:#e5e8ef;font:700 11px/1.55 Arial,sans-serif;letter-spacing:.11em;text-align:right;padding-top:11px}
.order-brand-btn--new{color:#d4ab60;background:#0a2445;font-weight:800;letter-spacing:.08em;font-size:11px}
@media(max-width:900px){.public-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-brand-grid--directory{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-row[style*="grid-template-columns:repeat(3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.public-brand-grid,.public-brand-grid--directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.public-brand-tile{padding:12px 9px;min-height:103px}.public-brand-tile img{height:46px}.public-oem-panel{padding:24px}.public-target-banner{flex-direction:column;align-items:flex-start;padding:29px 24px}.public-target-number span{text-align:left}.flow-row[style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr !important}}
@media(max-width:760px){.two-col,.two-col--wide{grid-template-columns:minmax(0,1fr)}.two-col>*{min-width:0}}


/* === factory-network.css === */

/* Official factory profiles: ROCK & Millennium Tiles */
.manufacturer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:29px 0 22px}
.manufacturer-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:395px;padding:28px 28px 26px;border-radius:18px;border:1px solid #e4e8ed;background:#fff;box-shadow:0 18px 55px rgba(8,33,64,.08);overflow:hidden}
.manufacturer-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#bd8a42,#ebc985)}
.manufacturer-card--rock:before{background:linear-gradient(90deg,#a84e33,#cf957d)}
.manufacturer-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.09em;color:#648091}
.manufacturer-card__status{font-size:9px;padding:7px 10px;background:#f3f6f8;border-radius:22px;color:#0e3154;letter-spacing:.045em}
.manufacturer-card__logo{min-height:132px;display:flex;justify-content:center;align-items:center;margin:22px 0 14px;padding:18px 25px;border:1px solid #ebedf0;border-radius:12px;background:linear-gradient(180deg,#fff,#fafbfb)}
.manufacturer-card__logo img{width:100%;max-width:360px;height:90px;object-fit:contain}
.manufacturer-card--rock .manufacturer-card__logo img{max-width:330px;height:88px}
.manufacturer-card h3{font:700 clamp(22px,2.3vw,30px)/1.2 Georgia,'DejaVu Serif',serif;letter-spacing:-.035em;color:#0b2b4f;margin:0 0 12px}
.manufacturer-card p{font-size:12px;line-height:1.8;color:#526a7d;margin:0 0 18px}
.manufacturer-card__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.manufacturer-card__tags span{font:600 10px/1.4 Arial,sans-serif;color:#516d7c;background:#f3f6f5;border:1px solid #e8ecec;border-radius:24px;padding:6px 10px}
.manufacturer-card__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:21px}
.manufacturer-card .manufacturer-link{color:#9d753e;font-size:12px;font-weight:700;text-decoration:none}
.manufacturer-card .manufacturer-link:hover{text-decoration:underline}
.factory-network-caveat{font-size:12px;line-height:1.8;color:#667b87;margin:17px 0 0;padding:16px 20px;border-left:3px solid #cfaa69;background:#fbf9f4;border-radius:3px 10px 10px 3px}
.oem-logos-public--customer{grid-template-columns:repeat(2,minmax(0,1fr))}
.oem-your-brand-tile{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:120px;border:1px dashed #b8c9d8;background:linear-gradient(125deg,#f3f7fb,#ffffff);border-radius:14px;color:#0f3152;text-align:center;padding:20px}
.oem-your-brand-tile strong{font:700 clamp(19px,2vw,27px)/1.15 Georgia,serif;letter-spacing:.04em}
.oem-your-brand-tile small{font-size:11px;color:#687e8f}
@media(max-width:700px){.manufacturer-grid{grid-template-columns:minmax(0,1fr);gap:15px}.manufacturer-card{min-height:unset;padding:19px}.manufacturer-card__logo{min-height:115px;margin:17px 0 13px;padding:15px}.manufacturer-card__logo img{height:80px}.manufacturer-card__actions{gap:13px}.oem-logos-public--customer{grid-template-columns:1fr}.factory-network-caveat{padding:13px 15px}}


/* === oem-1000-refresh.css === */

/* OEM per-brand 100-1000 containers/year; logo refresh 2026-10-27 */
:root { --navy:#0a2345; --gold:#bd924c; }
.site-header .brand .official-site-logo{width:230px;height:59px;object-fit:contain;object-position:left center}
.site-footer .brand .official-site-logo{width:240px;height:63px}
.metric-value--range{font:800 clamp(25px,2.25vw,33px)/1.05 Arial,sans-serif!important;letter-spacing:-.045em!important;white-space:nowrap}
.metric-value--range span{font:700 10px/1.5 Arial,sans-serif!important;display:block;letter-spacing:.09em;margin-top:5px;color:#b48645!important}
.hero-bottom-card .num--range{font:800 clamp(19px,1.9vw,26px)/1.15 Arial,sans-serif!important;letter-spacing:-.065em;white-space:nowrap}
.public-target-number{font-family:Arial,sans-serif!important;font-size:clamp(45px,5.5vw,76px)!important;letter-spacing:-.055em;white-space:nowrap}
.public-target-number span{letter-spacing:.08em!important}
.manufacturer-grid--featured{margin-top:25px}
.section--factories{background:#f7f7f5}
.section--factories .manufacturer-grid{margin-top:28px}
.field-help{display:block;color:#6a7d89;font-size:11px;margin-top:7px;line-height:1.6}
/* Footer logo has white wordmark and colored icon, appropriate on navy. */
.site-footer .brand .official-site-logo{filter:none}
@media(max-width:1024px){.site-header .brand .official-site-logo{max-width:213px}}
@media(max-width:680px){.site-header .brand .official-site-logo{width:192px;height:51px}.public-target-number{font-size:clamp(40px,10vw,60px)!important}.metric-value--range{font-size:clamp(21px,5.3vw,27px)!important}.hero-bottom-card .num--range{font-size:17px!important}.manufacturer-grid--featured{grid-template-columns:1fr}.announcement .announce-inner{font-size:8px;letter-spacing:.02em}}



/* === HOMEPAGE SPECIFIC OVERRIDES & FIXES === */
body[data-page="home"] .container {
    width: min(1240px, calc(100% - 80px)) !important;
    margin-inline: auto !important;
}
@media(max-width:1250px){
    body[data-page="home"] .container {
        width: min(1170px, calc(100% - 60px)) !important;
    }
}
@media(max-width:760px){
    body[data-page="home"] .container {
        width: calc(100% - 36px) !important;
    }
}
.site-header .brand {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}
.site-header .official-site-logo {
    display: block !important;
}


/* --- PAGE HEAD & GENERAL HEADERS --- */
.rock-contact-wrap .pagehead,
.rock-catalogue-wrap .pagehead,
.catalogue .pagehead,
.pagehead {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 22px;
}

.rock-contact-wrap .pagehead .kicker,
.rock-catalogue-wrap .pagehead .kicker,
.catalogue .pagehead .kicker,
.pagehead .kicker {
    color: var(--rock-gold, #c08327);
    letter-spacing: 2.2px;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 750;
    margin-bottom: 8px;
    display: block;
}

.rock-contact-wrap .pagehead h1,
.rock-contact-wrap .pagehead h2,
.rock-catalogue-wrap .pagehead h1,
.rock-catalogue-wrap .pagehead h2,
.catalogue .pagehead h1,
.catalogue .pagehead h2,
.pagehead h1,
.pagehead h2 {
    font-family: var(--rock-font-display, Georgia, serif);
    font-size: 38px;
    font-weight: 550;
    letter-spacing: -0.6px;
    color: var(--rock-dark, #292723);
    margin: 4px 0 8px;
    line-height: 1.15;
}

.rock-contact-wrap .pagehead p,
.rock-catalogue-wrap .pagehead p,
.catalogue .pagehead p,
.pagehead p {
    font-size: 13px;
    color: var(--rock-muted, #7c736a);
    margin: 0;
}

/* --- CATALOGUE BAR --- */
.rock-catalogue-wrap .cataloguebar,
.catalogue .cataloguebar,
.cataloguebar {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    flex-wrap: wrap;
    margin: 18px 0 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--rock-line, #eee6df);
}

.rock-catalogue-wrap .cataloguebar .tabs,
.catalogue .cataloguebar .tabs,
.cataloguebar .tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

.rock-catalogue-wrap .cataloguebar .smallprint,
.catalogue .cataloguebar .smallprint,
.cataloguebar .smallprint {
    font-size: 12px;
    line-height: 1.5;
    color: var(--rock-muted, #8c8078);
    font-weight: 500;
}

/* Tabs / Chips */
.rock-contact-wrap .dealertabs,
.dealertabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 20px;
}

.rock-contact-wrap .chip,
.rock-catalogue-wrap .chip,
.catalogue .chip,
.cataloguebar .chip,
.dealertabs .chip,
.chip {
    border: 1px solid #ddd4ca;
    background: #ffffff;
    padding: 9px 18px;
    color: #625d59;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    border-radius: 30px;
    cursor: pointer;
    transition: all 0.2s ease;
    outline: none;
    line-height: 1.2;
}

.rock-contact-wrap .chip:hover:not(.active),
.rock-catalogue-wrap .chip:hover:not(.active),
.catalogue .chip:hover:not(.active),
.cataloguebar .chip:hover:not(.active),
.dealertabs .chip:hover:not(.active),
.chip:hover:not(.active) {
    background: #fbf7f2;
    border-color: #c9bcaf;
    color: #292723;
}

.rock-contact-wrap .chip.active,
.rock-catalogue-wrap .chip.active,
.catalogue .chip.active,
.cataloguebar .chip.active,
.dealertabs .chip.active,
.chip.active {
    background: var(--rock-rust);
    border-color: var(--rock-rust);
    color: #ffffff;
    font-weight: 600;
    box-shadow: 0 3px 10px rgba(164, 79, 51, 0.25);
}

.rock-contact-wrap .dealerlayout {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 22px;
    margin-top: 10px;
    align-items: stretch;
}

.rock-contact-wrap .dealer-map {
    position: relative;
    min-height: 440px;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--rock-line);
    background: #eee8de;
    border-radius: 4px;
    background-image:
        linear-gradient(22deg, transparent 45%, #fffefa 46%, #fffefa 49%, transparent 50%),
        linear-gradient(91deg, transparent 40%, #fffefa 41%, #fffefa 45%, transparent 46%),
        linear-gradient(159deg, transparent 38%, #d8e2d6 39%, #d8e2d6 46%, transparent 47%),
        linear-gradient(53deg, transparent 38%, #fffefa 39%, #fffefa 43%, transparent 44%);
    background-size: 170px 160px, 125px 155px, 270px 260px, 220px 220px;
}

.rock-contact-wrap .dealer-map:before {
    content: "";
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(140deg, transparent 0 30px, rgba(253, 251, 247, 0.4) 30px 32px, transparent 32px 60px);
    pointer-events: none;
}

.rock-contact-wrap .mapzone {
    position: absolute;
    top: 24px;
    left: 24px;
    background: rgba(255, 255, 255, 0.96);
    padding: 14px 18px;
    min-width: 190px;
    z-index: 2;
    border: 1px solid #eee8e1;
    border-radius: 3px;
    box-shadow: var(--rock-shadow-sm);
}

.rock-contact-wrap .mapzone strong {
    font-size: 13px;
    font-weight: 700;
    display: block;
    color: var(--rock-dark);
    margin-bottom: 3px;
}

.rock-contact-wrap .mapzone span {
    font-size: 11px;
    color: #8e7d6d;
}

.rock-contact-wrap .mappin {
    position: absolute;
    width: 39px;
    height: 39px;
    background: var(--rock-rust);
    border-radius: 50% 50% 50% 4px;
    transform: translate(-50%, -50%) rotate(-45deg);
    display: grid;
    place-items: center;
    color: #ffffff;
    box-shadow: 0 10px 25px rgba(6, 96, 59, 0.4);
    z-index: 2;
    border: 3px solid #ffffff;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 0;
    outline: none;
}

.rock-contact-wrap .mappin i,
.rock-contact-wrap .mappin svg {
    transform: rotate(45deg);
    font-size: 15px;
    stroke: #ffffff;
    fill: none;
    stroke-width: 2;
}

.rock-contact-wrap .mappin:hover {
    background: var(--rock-rust-hover);
    transform: translate(-50%, -55%) rotate(-45deg) scale(1.08);
}

.rock-contact-wrap .mapfoot {
    position: absolute;
    bottom: 16px;
    left: 18px;
    z-index: 2;
    padding: 8px 14px;
    background: rgba(255, 253, 250, 0.94);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.8px;
    color: #8a7b6d;
    border-radius: 2px;
}

.rock-contact-wrap .dealerlist {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rock-contact-wrap .dealeritem {
    background: #ffffff;
    border: 1px solid var(--rock-line);
    padding: 18px 22px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: center;
    border-radius: 3px;
    transition: all 0.2s ease;
}

.rock-contact-wrap .dealeritem:hover,
.rock-contact-wrap .dealeritem.active {
    border-color: var(--rock-rust);
    box-shadow: var(--rock-shadow-sm);
    background: #fffdfb;
}

.rock-contact-wrap .dealeritem h3 {
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 5px;
    color: var(--rock-dark);
}

.rock-contact-wrap .dealeritem p {
    font-size: 12px;
    color: #8c8078;
    line-height: 1.6;
    margin: 0;
}

.rock-contact-wrap .dealeritem .dealer-note {
    color: #ab6a50;
    font-size: 10.5px;
    margin-top: 4px;
}

.rock-contact-wrap .dealeritem .dealer-link,
.rock-contact-wrap .dealeritem button[data-action="contactScroll"],
.rock-contact-wrap .dealeritem button {
    font-size: 11px;
    color: var(--rock-rust);
    font-weight: 750;
    background: none;
    border: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 0;
    transition: transform 0.2s ease, color 0.2s ease;
    white-space: nowrap;
    text-decoration: none;
}

.rock-contact-wrap .dealeritem .dealer-link:hover,
.rock-contact-wrap .dealeritem button[data-action="contactScroll"]:hover,
.rock-contact-wrap .dealeritem button:hover {
    color: var(--rock-rust-hover);
    transform: translateX(3px);
}

.rock-contact-wrap .dealer-info-card {
    padding: 22px 24px;
    background: #f4ece4;
    border: 1px solid #e8dcd0;
    border-radius: 3px;
}

.rock-contact-wrap .dealer-info-card .kicker {
    color: var(--rock-rust);
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 10px;
    font-weight: 750;
    margin-bottom: 8px;
    display: block;
}

.rock-contact-wrap .dealer-info-card h3.display {
    font-family: var(--rock-font-display, Georgia, serif);
    font-size: 27px;
    font-weight: 400;
    color: var(--rock-dark);
    margin: 4px 0 10px;
    line-height: 1.2;
}

.rock-contact-wrap .dealer-info-card .smallprint {
    font-size: 11.5px;
    line-height: 1.7;
    color: var(--rock-muted);
    margin: 0 0 12px;
}

.rock-contact-wrap .dealer-info-card .textlink {
    border: 0;
    background: none;
    color: var(--rock-rust);
    font-weight: 750;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 0;
    font-size: 12px;
    cursor: pointer;
    transition: transform 0.2s ease;
    text-decoration: none;
}

.rock-contact-wrap .dealer-info-card .textlink:hover {
    transform: translateX(3px);
    color: var(--rock-rust-hover);
}

/* Consultation & Contact Form Box */
.rock-contact-wrap .contactsection {
    background: #ffffff;
    border: 1px solid var(--rock-line);
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 30px;
    padding: 32px 35px;
    margin-top: 25px;
    border-radius: 4px;
    box-shadow: var(--rock-shadow-sm);
    margin-bottom: 15px;
}

.rock-contact-wrap .contactsection h2 {
    font-family: var(--rock-font-display);
    font-size: 28px;
    font-weight: 500;
    margin: 0 0 10px;
    color: var(--rock-dark);
}

.rock-contact-wrap .contactsection .lead {
    font-size: 13px;
    color: var(--rock-muted);
    line-height: 1.7;
    margin-bottom: 20px;
}

.rock-contact-wrap .contactsection .benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
    font-size: 12px;
    color: #554e48;
}

.rock-contact-wrap .contactsection .benefit-item i {
    color: var(--rock-rust);
    font-size: 15px;
    margin-top: 2px;
}

.rock-contact-wrap .contactsection .contact-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.rock-contact-wrap .field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.rock-contact-wrap .field.full {
    grid-column: span 2;
}

.rock-contact-wrap .field label {
    font-size: 11px;
    font-weight: 700;
    color: #554d45;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin: 0;
}

.rock-contact-wrap .field input,
.rock-contact-wrap .field select,
.rock-contact-wrap .field textarea {
    border: 1px solid #ded5cb;
    background: #ffffff;
    color: #383430;
    padding: 11px 14px;
    border-radius: 2px;
    font-size: 13px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.2s ease;
}

.rock-contact-wrap .field input:focus,
.rock-contact-wrap .field select:focus,
.rock-contact-wrap .field textarea:focus {
    border-color: var(--rock-rust);
    box-shadow: 0 0 0 3px rgba(164, 79, 51, 0.1);
}

.rock-contact-wrap .field textarea {
    min-height: 85px;
    resize: vertical;
}

.rock-contact-wrap .contactsection .btn-rock {
    grid-column: span 2;
    justify-self: start;
    margin-top: 5px;
}

.rock-contact-wrap .contactsection .kicker {
    color: var(--rock-rust);
    letter-spacing: 2.2px;
    text-transform: uppercase;
    font-size: 10px;
    font-weight: 750;
    margin-bottom: 8px;
    display: block;
}

.rock-contact-wrap .contactsection .smallprint {
    font-size: 11.5px;
    line-height: 1.7;
    color: var(--rock-muted);
    margin: 0;
}

.rock-contact-wrap .icon {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    display: inline-block;
    vertical-align: middle;
}

.rock-contact-wrap .icon.small {
    width: 14px;
    height: 14px;
    stroke-width: 2;
}

/* --- MODALS & OVERLAYS --- */
.rock-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(23, 19, 16, 0.68);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

.rock-overlay.active {
    opacity: 1;
    visibility: visible;
}

.rock-modal {
    background: #ffffff;
    width: 100%;
    max-width: 600px;
    max-height: 90vh;
    overflow-y: auto;
    border-radius: 4px;
    padding: 30px;
    box-shadow: 0 30px 100px rgba(0, 0, 0, 0.3);
    position: relative;
    transform: translateY(20px);
    transition: transform 0.25s ease;
}

.rock-overlay.active .rock-modal {
    transform: translateY(0);
}

.rock-modalhead {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
    border-bottom: 1px solid var(--rock-line);
    margin-bottom: 20px;
    padding-bottom: 15px;
}

.rock-modalhead h2 {
    font-family: var(--rock-font-display);
    font-size: 26px;
    font-weight: 500;
    margin: 0;
    color: var(--rock-dark);
}

.rock-modalclose {
    font-size: 28px;
    line-height: 1;
    color: #928377;
    cursor: pointer;
    background: transparent;
    border: 0;
    padding: 0;
}

.rock-modalclose:hover {
    color: var(--rock-rust);
}

.rock-modal-detail-grid {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 20px;
    align-items: start;
}

.rock-modal-detail-img {
    width: 100%;
    height: 240px;
    border-radius: 3px;
    object-fit: cover;
    background: #eae2da;
}

.rock-specs-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.rock-specs-table tr {
    border-bottom: 1px dashed #eee5dd;
}

.rock-specs-table td {
    padding: 8px 4px;
}

.rock-specs-table td:first-child {
    color: #8c7e73;
    font-weight: 600;
    width: 40%;
}

.rock-specs-table td:last-child {
    color: var(--rock-dark);
    font-weight: 600;
}

.rock-fav-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid #f0e8e0;
}

.rock-fav-row img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 2px;
}

/* --- REQUEST QUOTE MODAL (#rock-quote-modal) --- */
#rock-quote-modal.rock-overlay {
    background: rgba(23, 21, 19, 0.72);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 10005;
}

#rock-quote-modal .rock-modal {
    max-width: 520px;
    width: 100%;
    background: #ffffff;
    border: 1px solid #ede5dc;
    border-radius: 6px;
    padding: 28px 32px 30px;
    box-shadow: 0 25px 70px rgba(23, 21, 19, 0.35);
    position: relative;
    transform: translateY(25px) scale(0.98);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
}

#rock-quote-modal.active .rock-modal {
    transform: translateY(0) scale(1);
}

#rock-quote-modal .rock-modalhead {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px solid #ede5dc;
    margin-bottom: 16px;
    padding-bottom: 14px;
}

#rock-quote-modal .rock-modalhead .eyebrow {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 700;
    color: #c08327;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 3px;
}

#rock-quote-modal .rock-modalhead h2 {
    font-family: 'Cinzel', serif;
    font-size: 22px;
    font-weight: 700;
    color: #171513;
    margin: 0;
    letter-spacing: -0.2px;
}

#rock-quote-modal .rock-modalclose {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    line-height: 1;
    color: #928377;
    cursor: pointer;
    background: #faf7f3;
    border: 1px solid #ede5dc;
    transition: all 0.2s ease;
    flex-shrink: 0;
    padding: 0;
}

#rock-quote-modal .rock-modalclose:hover {
    color: #ffffff;
    background: #06603b;
    border-color: #06603b;
    transform: rotate(90deg);
}

#rock-quote-modal p {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px !important;
    color: #7a6e65 !important;
    line-height: 1.55;
    margin-bottom: 18px !important;
    background: #faf7f3;
    padding: 11px 15px;
    border-left: 3px solid #06603b;
    border-radius: 0 4px 4px 0;
}

#rock-quote-modal p strong,
#rock-quote-modal #quote-modal-product-name {
    color: #06603b !important;
    font-weight: 700;
}

#rock-quote-modal .field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 14px !important;
    text-align: left;
}

#rock-quote-modal .field label {
    font-size: 11.5px;
    font-weight: 700;
    color: #403b36;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Montserrat', sans-serif;
    margin: 0;
}

#rock-quote-modal .field input[type="text"],
#rock-quote-modal .field input[type="tel"],
#rock-quote-modal .field select,
#rock-quote-modal .field textarea {
    width: 100%;
    border: 1px solid #ded5cb;
    background: #ffffff;
    color: #171513;
    padding: 10px 14px;
    border-radius: 3px;
    font-size: 13px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#rock-quote-modal .field input:focus,
#rock-quote-modal .field select:focus,
#rock-quote-modal .field textarea:focus {
    border-color: #06603b;
    box-shadow: 0 0 0 3px rgba(6, 96, 59, 0.12);
}

#rock-quote-modal .field input::placeholder,
#rock-quote-modal .field textarea::placeholder {
    color: #a89d93;
    font-size: 12.5px;
}

#rock-quote-modal .field select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306603b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 12px;
    padding-right: 36px;
    cursor: pointer;
}

#rock-quote-modal .field textarea {
    min-height: 75px !important;
    resize: vertical;
    line-height: 1.5;
}

#rock-quote-modal .btn-rock {
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding: 10px 22px;
    border-radius: 3px;
    transition: all 0.2s ease;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

#rock-quote-modal .btn-rock.outline.sm {
    background: transparent;
    border: 1px solid #ded5cb;
    color: #5a524a;
}

#rock-quote-modal .btn-rock.outline.sm:hover {
    background: #faf7f3;
    border-color: #171513;
    color: #171513;
}

#rock-quote-modal button[type="submit"].btn-rock {
    background: #06603b;
    color: #ffffff;
    border: 1px solid #06603b;
}

#rock-quote-modal button[type="submit"].btn-rock:hover {
    background: #04492d;
    border-color: #04492d;
    box-shadow: 0 4px 14px rgba(6, 96, 59, 0.3);
    transform: translateY(-1px);
}

#rock-quote-modal button[type="submit"].btn-rock i {
    font-size: 11px;
}

#rock-quote-modal button[type="submit"].btn-rock:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    pointer-events: none;
    transform: none;
    box-shadow: none;
}

#rock-quote-modal .span-error {
    color: #c9302c;
    font-size: 11.5px;
    font-weight: 500;
    margin-top: 4px;
    display: block;
    line-height: 1.3;
}

@media (max-width: 576px) {
    #rock-quote-modal {
        padding: 12px;
    }

    #rock-quote-modal .rock-modal {
        padding: 20px 16px 22px;
        border-radius: 4px;
    }

    #rock-quote-modal .rock-modalhead h2 {
        font-size: 19px;
    }

    #rock-quote-modal form div[style*="justify-content:flex-end"] {
        flex-direction: column-reverse;
        gap: 8px !important;
    }

    #rock-quote-modal .btn-rock {
        width: 100%;
        justify-content: center;
    }
}

/* Toast Notice */
.rock-toast {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 10000;
    background: #2a221d;
    color: #ffffff;
    padding: 14px 22px;
    border-radius: 3px;
    font-size: 13px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.25);
    border-left: 4px solid var(--rock-rust);
    display: flex;
    align-items: center;
    gap: 12px;
    transform: translateY(100px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.rock-toast.show {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

/* --- Gáº¡ch áº¤n Äá»™ DIALOG SUCCESS THEME (.rock-dialog-custom) --- */
.bootstrap-dialog.rock-dialog-custom .modal-dialog {
    max-width: 480px;
    margin: 50px auto;
}

.bootstrap-dialog.rock-dialog-custom .modal-content {
    background: #ffffff;
    border: 1px solid #ded5cb;
    border-top: 4px solid #06603b;
    border-radius: 4px;
    box-shadow: 0 25px 60px rgba(23, 21, 19, 0.28);
    overflow: hidden;
    font-family: 'Montserrat', sans-serif;
    border: none;
}

.bootstrap-dialog.rock-dialog-custom .modal-header {
    background: #faf6f0;
    border-bottom: 1px solid #ebd8c8;
    padding: 13px 20px;
    padding: 0;
}

.bootstrap-dialog.rock-dialog-custom .bootstrap-dialog-header {
    display: flex;
    align-items: center;
    border-radius: 0;
    justify-content: center;
    padding: 14px 0;
}

.bootstrap-dialog.rock-dialog-custom .bootstrap-dialog-title {
    font-size: 13px;
    font-weight: 700;
    color: #3b322a;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    display: flex;
    align-items: center;
}

.bootstrap-dialog.rock-dialog-custom .bootstrap-dialog-close-button .close {
    font-size: 24px;
    font-weight: 300;
    color: #8c7d70;
    opacity: 0.8;
    line-height: 1;
    margin-top: 1px;
    transition: color 0.2s ease, opacity 0.2s ease;
    margin-right: -2px;
}

.bootstrap-dialog.rock-dialog-custom .bootstrap-dialog-close-button .close:hover {
    color: #06603b;
    opacity: 1;
}

.bootstrap-dialog.rock-dialog-custom .modal-body {
    padding: 24px 22px 18px;
    background: #ffffff;
}

.bootstrap-dialog.rock-dialog-custom .bootstrap-dialog-message {
    margin: 0;
    font-size: 14px;
    text-align: center;
}

/* Success Box inside Dialog */
.rock-success-box {
    text-align: center;
}

.rock-success-badge {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #faf5ee;
    border: 2px solid #c08327;
    color: #c08327;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin: 0 auto 12px;
    box-shadow: 0 6px 18px rgba(192, 131, 39, 0.18);
    position: relative;
    animation: rockBadgePop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes rockBadgePop {
    0% {
        transform: scale(0.6);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.rock-success-eyebrow {
    font-size: 10.5px;
    font-weight: 700;
    color: #c08327;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    margin-bottom: 5px;
}

.rock-success-title {
    font-size: 19px;
    font-weight: 700;
    color: #171513;
    margin: 0 0 10px;
    letter-spacing: -0.2px;
}

.rock-success-desc {
    font-size: 13.5px;
    color: #524a43;
    line-height: 1.55;
    margin: 0 0 14px;
}

.rock-success-desc strong {
    color: #06603b;
    font-weight: 600;
}

/* Detail Box (Card tÃƒÂ³m tÃ¡ÂºÂ¯t thÃƒÂ´ng tin gÃ¡Â»Â­i) */
.rock-success-detail {
    background: #faf7f2;
    border: 1px solid #ebd8c8;
    border-radius: 4px;
    padding: 10px 14px;
    margin-bottom: 14px;
    text-align: left;
}

.rock-detail-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
    font-size: 12.5px;
    border-bottom: 1px dashed #e8d9cc;
}

.rock-detail-row:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.rock-detail-row:first-child {
    padding-top: 0;
}

.rock-detail-row span {
    color: #7d7065;
    font-size: 12px;
}

.rock-detail-row strong {
    color: #171513;
    font-weight: 600;
    text-align: right;
    max-width: 65%;
    word-break: break-word;
}

.rock-success-sub {
    font-size: 12px;
    color: #7d7065;
    line-height: 1.55;
    margin: 0;
}

/* Footer & Button */
.bootstrap-dialog.rock-dialog-custom .modal-footer {
    background: #faf6f0;
    border-top: 1px solid #ebd8c8;
    padding: 12px 20px;
    text-align: center;
}

.bootstrap-dialog.rock-dialog-custom .bootstrap-dialog-footer-buttons {
    display: flex;
    justify-content: center;
    width: 100%;
}

.bootstrap-dialog.rock-dialog-custom .btn-primary,
.bootstrap-dialog.rock-dialog-custom .btn-primary.btn-width {
    background: #06603b !important;
    border: 1px solid #06603b !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    padding: 10px 34px !important;
    border-radius: 3px !important;
    min-width: 150px;
    box-shadow: 0 4px 14px rgba(6, 96, 59, 0.28) !important;
    transition: all 0.2s ease !important;
    cursor: pointer;
}

.bootstrap-dialog.rock-dialog-custom .btn-primary:hover,
.bootstrap-dialog.rock-dialog-custom .btn-primary.btn-width:hover {
    background: #04492d !important;
    border-color: #04492d !important;
    box-shadow: 0 6px 20px rgba(6, 96, 59, 0.4) !important;
    transform: translateY(-1px);
}

@media (max-width: 576px) {
    .bootstrap-dialog.rock-dialog-custom .modal-dialog {
        max-width: calc(100% - 24px);
        margin: 24px auto;
    }

    .bootstrap-dialog.rock-dialog-custom .modal-body {
        padding: 18px 14px 14px;
    }

    .bootstrap-dialog.rock-dialog-custom .rock-success-title {
        font-size: 17px;
    }

    .bootstrap-dialog.rock-dialog-custom .rock-detail-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
        padding: 5px 0;
    }

    .bootstrap-dialog.rock-dialog-custom .rock-detail-row strong {
        text-align: left;
        max-width: 100%;
    }

    .bootstrap-dialog.rock-dialog-custom .btn-primary.btn-width {
        width: 100% !important;
    }
}

/* Floating Quick Badge for Favorites */
.rock-floating-fav {
    position: fixed;
    bottom: 30px;
    left: 30px;
    z-index: 99;
    background: #ffffff;
    border: 1px solid #e2d7cc;
    border-radius: 30px;
    padding: 10px 18px;
    display: flex;
    align-items: center;
    gap: 9px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
    color: var(--rock-dark);
    transition: all 0.2s ease;
}

.rock-floating-fav:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.15);
    border-color: var(--rock-rust);
    color: var(--rock-rust);
}

.rock-floating-fav .count-bubble {
    background: var(--rock-saffron, #fd6d08);
    color: #ffffff;
    min-width: 18px;
    height: 18px;
    border-radius: 10px;
    font-size: 10px;
    display: grid;
    place-items: center;
    padding: 0 4px;
}

/* --- ROCK NEWS & JOURNAL SYSTEM --- */
.rock-news-wrap,
.rock-news-detail-wrap {
    padding-top: 25px;
    padding-bottom: 60px;
}

.news-top-banner {
    margin-bottom: 25px;
}

.news-top-banner img {
    width: 100%;
    border-radius: 4px;
    object-fit: cover;
}

/* Category Filter Chips in News */
.news-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 28px;
}

.news-tabs .chip {
    text-decoration: none !important;
    color: #625d59;
}

.news-tabs .chip:hover {
    color: #292723;
}

.news-tabs .chip.active {
    color: #ffffff !important;
}

/* News Grid Layout */
.newsgrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 40px;
}

/* Luxury News Card */
.newscard {
    background: #ffffff;
    border: 1px solid var(--rock-line, #ded5cb);
    border-radius: 4px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 4px 14px rgba(45, 36, 30, 0.04);
}

.newscard:hover {
    transform: translateY(-5px);
    border-color: #c9bcaf;
    box-shadow: 0 14px 30px rgba(45, 36, 30, 0.12);
}

.newscard .photo-link {
    position: relative;
    display: block;
    width: 100%;
    height: 220px;
    overflow: hidden;
    background: #2b2520;
    text-decoration: none !important;
}

.newscard .photo-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.newscard:hover .photo-link img {
    transform: scale(1.06);
}

.newscard .badge-tag {
    position: absolute;
    top: 14px;
    left: 14px;
    background: rgba(29, 24, 21, 0.75);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    color: #e5c3b1;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 4px 10px;
    border-radius: 20px;
    z-index: 2;
    border: 1px solid rgba(255, 255, 255, 0.18);
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.newscard .newsbody {
    padding: 22px 22px 24px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.newscard .newsmeta {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 11.5px;
    color: var(--rock-muted, #8c8078);
    margin-bottom: 10px;
    font-weight: 500;
}

.newscard .newsmeta i {
    color: var(--rock-rust, #06603b);
    margin-right: 4px;
}

.newscard .newstitle {
    font-family: var(--rock-font-display, Georgia, serif);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.38;
    margin: 0 0 10px;
    color: var(--rock-dark, #292723);
}

.newscard .newstitle a {
    color: inherit;
    text-decoration: none !important;
    transition: color 0.2s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.newscard:hover .newstitle a {
    color: var(--rock-rust, #06603b);
}

.newscard .newsdesc {
    font-size: 13px;
    line-height: 1.6;
    color: #6b635c;
    margin: 0 0 18px;
    flex-grow: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.newscard .readmore {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    font-weight: 700;
    color: var(--rock-rust, #06603b);
    text-transform: uppercase;
    letter-spacing: 0.8px;
    text-decoration: none !important;
    transition: all 0.2s ease;
    margin-top: auto;
    width: fit-content;
}

.newscard:hover .readmore {
    color: var(--rock-rust-hover, #04492d);
    gap: 10px;
}

/* News Empty State */
.news-empty {
    text-align: center;
    padding: 60px 20px;
    background: #ffffff;
    border: 1px dashed var(--rock-line, #ded5cb);
    border-radius: 4px;
    margin: 20px 0 40px;
}

.news-empty i {
    font-size: 48px;
    color: var(--rock-muted, #95867a);
    margin-bottom: 16px;
    display: block;
}

.news-empty p {
    font-size: 15px;
    color: var(--rock-dark, #292723);
    margin-bottom: 20px;
}

/* Pagination Overrides */
.rock-pagination {
    margin: 35px 0 20px;
}

.rock-pagination .pagination {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    margin: 0;
}

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

.rock-pagination .pagination>li>a,
.rock-pagination .pagination>li>span {
    border: 1px solid var(--rock-line, #ded5cb);
    background: #ffffff;
    color: var(--rock-dark, #292723);
    font-size: 13px;
    font-weight: 600;
    min-width: 38px;
    height: 38px;
    line-height: 36px;
    padding: 0 12px;
    border-radius: 4px;
    text-align: center;
    text-decoration: none !important;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.rock-pagination .pagination>li>a:hover {
    background: #faf4ef;
    border-color: var(--rock-rust, #06603b);
    color: var(--rock-rust, #06603b);
}

.rock-pagination .pagination>.active>a,
.rock-pagination .pagination>.active>span {
    background: var(--rock-rust, #06603b) !important;
    border-color: var(--rock-rust, #06603b) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 10px rgba(164, 79, 51, 0.25);
}

/* --- ARTICLE DETAIL BOX & EDITORIAL TYPOGRAPHY --- */
.article-detail-box {
    background: #ffffff;
    border: 1px solid var(--rock-line, #ded5cb);
    border-radius: 4px;
    padding: 44px 50px;
    box-shadow: 0 4px 18px rgba(45, 36, 30, 0.04);
    margin-bottom: 40px;
}

.article-header {
    margin-bottom: 30px;
    padding-bottom: 24px;
    border-bottom: 1px solid #eee5dc;
}

.article-header .kicker {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: var(--rock-rust, #06603b);
    display: block;
    margin-bottom: 12px;
}

.article-title {
    font-family: var(--rock-font-display, Georgia, serif);
    font-size: 26px;
    font-weight: 500;
    line-height: 1.25;
    color: var(--rock-dark, #292723);
    margin: 0 0 16px;
    letter-spacing: -0.4px;
}

.article-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 14px;
    font-size: 12.5px;
    color: var(--rock-muted, #8c8078);
}

.article-meta .meta-item {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.article-meta .meta-item i {
    color: var(--rock-rust, #06603b);
}

.article-meta .meta-dot {
    color: #d1c5b8;
}

.article-meta .meta-category {
    color: var(--rock-rust, #06603b);
    font-weight: 600;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.article-meta .meta-category:hover {
    color: var(--rock-rust-hover, #04492d);
}

/* Article Content Body */
.article-content {
    font-size: 15.5px;
    line-height: 1.85;
    color: #38332f;
}

.article-content p {
    margin: 0 0 20px;
}

.article-content h2,
.article-content h3,
.article-content h4 {
    font-family: var(--rock-font-display, Georgia, serif);
    color: var(--rock-dark, #292723);
    margin: 32px 0 14px;
    line-height: 1.3;
}

.article-content h2 {
    font-size: 24px;
    font-weight: 600;
    padding-bottom: 8px;
    border-bottom: 1px solid #f2ede6;
}

.article-content h3 {
    font-size: 20px;
    font-weight: 600;
}

.article-content img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 4px;
    margin: 20px auto;
    display: block;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

.article-content blockquote {
    margin: 26px 0;
    padding: 18px 24px;
    background: #faf6f0;
    border-left: 3px solid var(--rock-gold, #c08327);
    border-radius: 0 4px 4px 0;
    font-style: italic;
    color: #4e4742;
    font-size: 16px;
    line-height: 1.7;
}

.article-content ul,
.article-content ol {
    padding-left: 24px;
    margin: 0 0 22px;
}

.article-content li {
    margin-bottom: 8px;
    line-height: 1.7;
}

.article-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 24px 0;
}

.article-content table th,
.article-content table td {
    padding: 10px 14px;
    border: 1px solid #ded5cb;
    font-size: 14px;
}

.article-content table th {
    background: #f5efe8;
    font-weight: 600;
    color: #292723;
}

.article-footer {
    margin-top: 38px;
    padding-top: 24px;
    border-top: 1px solid #eee5dc;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    background: none;
    overflow: visible;
}

/* Sidebar in Article Detail */
.rock-sidebar .sidebar-block-right {
    background: #ffffff;
    border: 1px solid var(--rock-line, #ded5cb);
    border-radius: 4px;
    padding: 22px 24px;
    margin-bottom: 24px;
    box-shadow: 0 4px 14px rgba(45, 36, 30, 0.04);
}

.rock-sidebar .sidebar-block-right h3 {
    font-family: var(--rock-font-display, Georgia, serif);
    font-size: 17px;
    font-weight: 600;
    color: var(--rock-dark, #292723);
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #eee5dc;
}

.rock-sidebar .sidebar-content {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rock-sidebar .sidebar-content li {
    padding: 12px 0;
    border-bottom: 1px solid #f3ede6;
}

.rock-sidebar .sidebar-content li:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.rock-sidebar .sidebar-content li article {
    display: flex;
    gap: 14px;
    align-items: center;
}

.rock-sidebar .sidebar-content li .img {
    width: 72px;
    height: 56px;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
    border-radius: 3px;
    background: #2b2520;
    display: block;
}

.rock-sidebar .sidebar-content li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.rock-sidebar .sidebar-content li article:hover .img img {
    transform: scale(1.08);
}

.rock-sidebar .sidebar-content li h3 {
    font-family: var(--rock-font-sans, sans-serif);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
    padding: 0;
    border: 0;
}

.rock-sidebar .sidebar-content li h3 a {
    color: var(--rock-dark, #292723);
    text-decoration: none !important;
    transition: color 0.2s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.rock-sidebar .sidebar-content li article:hover h3 a {
    color: var(--rock-rust, #06603b);
}

/* --- RESPONSIVE MEDIA QUERIES --- */


@media (max-width: 992px) {




















    .rock-contact-wrap .dealerlayout,
    .dealerlayout {
        grid-template-columns: 1fr;
    }

    .rock-contact-wrap .contactsection,
    .contactsection {
        grid-template-columns: 1fr;
        padding: 24px;
    }

    .rock-catalogue-wrap .cataloguerow,
    .catalogue .cataloguerow,
    .cataloguerow {
        grid-template-columns: 75px 1fr auto;
    }

    .rock-catalogue-wrap .cataloguerow .type-badge,
    .catalogue .cataloguerow .type-badge,
    .cataloguerow .type-badge {
        display: none;
    }

    .newsgrid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

/* ============================================================== */
/* MOBILE RESPONSIVE OPTIMIZATIONS (<= 768px and <= 480px)        */
/* ============================================================== */

@media (max-width: 991px) {

    /* --- 1. GLOBAL & HEADER MOBILE --- */
    body.menu-open {
        overflow: hidden !important;
        touch-action: none;
    }

    .header-toolbar {
        display: none !important;
    }

    .header-main {
        padding: 8px 0 !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
        background: rgba(255, 254, 251, 0.98) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border-bottom: 1px solid #ede5dc !important;
        box-shadow: 0 2px 12px rgba(23, 21, 19, 0.06) !important;
    }

    .header-main .wrap-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        position: relative !important;
        min-height: 52px !important;
    }

    .header-main .wrap-menu-top,
    .wrap-menu-top {
        order: 1 !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
    }

    .header-main .logo {
        order: 2 !important;
        flex: 1 1 auto !important;
        text-align: center !important;
        padding: 0 8px !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .header-main .logo img {
        max-height: 38px !important;
        width: auto !important;
        max-width: 170px !important;
        margin: 0 auto !important;
        display: inline-block !important;
        object-fit: contain !important;
    }

    .header-main .header-left,
    .header-left {
        order: 3 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: 0 0 auto !important;
    }

    .header-left .btn-talk {
        display: none !important;
    }

    .wrap-search {
        position: static !important;
        display: flex !important;
        align-items: center !important;
    }

    .icon-menu-mobi {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        width: 40px !important;
        height: 40px !important;
        position: static !important;
        padding: 0 !important;
        border-radius: 6px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }

    .icon-menu-mobi:hover,
    .icon-menu-mobi:active {
        background: #ede5dc !important;
        border-color: #c69c6d !important;
    }

    .icon-menu-mobi span,
    .icon-menu-mobi .icon-bar {
        display: block !important;
        width: 20px !important;
        height: 2px !important;
        background: #171513 !important;
        margin: 2px 0 !important;
        border-radius: 1px !important;
        transition: all 0.25s ease !important;
    }

    .wrap-search .nav-search,
    .header-left .nav-search {
        width: 40px !important;
        height: 40px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #faf7f3 !important;
        border: 1px solid #ede5dc !important;
        border-radius: 6px !important;
        color: #171513 !important;
        cursor: pointer !important;
        box-shadow: 0 1px 3px rgba(23, 21, 19, 0.05) !important;
        position: relative !important;
        padding: 0 !important;
        margin: 0 !important;
        transition: all 0.2s ease !important;
    }

    .wrap-search .nav-search:hover,
    .wrap-search .nav-search:active,
    .wrap-search .nav-search.active,
    .header-left .nav-search:hover,
    .header-left .nav-search:active {
        background: #ede5dc !important;
        border-color: #c08327 !important;
        color: #06603b !important;
    }

    .wrap-search .nav-search #search {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        font-size: 15px !important;
    }

    .wrap-search .nav-search #search.none {
        display: none !important;
    }

    .wrap-search .nav-search .search-close {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        position: absolute !important;
        font-size: 24px !important;
        font-weight: 300 !important;
        line-height: 1 !important;
        color: inherit !important;
        cursor: pointer !important;
    }

    .wrap-search .nav-search .search-close.hide {
        display: none !important;
    }

    .search-block {
        position: absolute !important;
        top: calc(100% + 4px) !important;
        left: 10px !important;
        right: 10px !important;
        width: calc(100% - 20px) !important;
        margin-top: 0 !important;
        background: #ffffff !important;
        border: 1px solid #ded5cb !important;
        border-radius: 8px !important;
        box-shadow: 0 12px 32px rgba(23, 21, 19, 0.16) !important;
        padding: 10px !important;
        z-index: 1001 !important;
    }

    .search-block:before {
        content: '' !important;
        position: absolute !important;
        top: -6px !important;
        right: 18px !important;
        width: 12px !important;
        height: 12px !important;
        background: #ffffff !important;
        border-top: 1px solid #ded5cb !important;
        border-left: 1px solid #ded5cb !important;
        transform: rotate(45deg) !important;
        display: block !important;
    }

    .search-block .form-search {
        width: 100% !important;
        margin: 0 !important;
    }

    .search-block label.search {
        width: 100% !important;
        margin: 0 !important;
        display: block !important;
        position: relative !important;
    }

    .search-block .form-control#keyword,
    .search-block .form-control {
        height: 38px !important;
        font-size: 14px !important;
        padding: 0 40px 0 14px !important;
        border-radius: 6px !important;
        background: #faf7f3 !important;
        border: 1.5px solid #ede5dc !important;
        color: #171513 !important;
        box-shadow: none !important;
        width: 100% !important;
        transition: all 0.2s ease !important;
    }

    .search-block .form-control#keyword:focus,
    .search-block .form-control:focus {
        border-color: #06603b !important;
        background: #ffffff !important;
        box-shadow: 0 0 0 3px rgba(6, 96, 59, 0.15) !important;
        outline: none !important;
    }

    .search-block label.search:after {
        content: '\f002';
        font-family: 'FontAwesome';
        position: absolute;
        right: 14px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 15px;
        color: #06603b;
        pointer-events: none;
    }

    /* Off-canvas Mobile Menu Drawer */
    .wrap-menu-top .menu-top {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 290px !important;
        max-width: 82vw !important;
        height: 100vh !important;
        background: #faf7f3 !important;
        z-index: 10001 !important;
        padding: 22px 18px 40px !important;
        margin: 0 !important;
        border-right: 1px solid #ede5dc !important;
        box-shadow: 6px 0 30px rgba(23, 21, 19, 0.25) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        transform: translateX(-100%) !important;
        transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s !important;
        visibility: hidden !important;
        display: block !important;
    }

    .wrap-menu-top .menu-top.open {
        transform: translateX(0) !important;
        visibility: visible !important;
    }

    .wrap-menu-top .close {
        position: absolute !important;
        top: 8px !important;
        right: 6px !important;
        width: 32px !important;
        height: 32px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 20px !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        color: #63574e !important;
        background: #ede5dc !important;
        border-radius: 50% !important;
        cursor: pointer !important;
        z-index: 10002 !important;
        opacity: 1 !important;
        transition: all 0.2s !important;
        padding-bottom: 3px;
    }

    .wrap-menu-top .close:hover,
    .wrap-menu-top .close:active {
        background: #06603b !important;
        color: #ffffff !important;
    }

    .ovlay-catefory {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: rgba(23, 21, 19, 0.65) !important;
        backdrop-filter: blur(3px) !important;
        -webkit-backdrop-filter: blur(3px) !important;
        z-index: 10000 !important;
        display: none;
        opacity: 0;
        transition: opacity 0.25s ease !important;
    }

    .ovlay-catefory.open {
        display: block !important;
        opacity: 1 !important;
    }

    /* Mobile Menu List Items */
    .header-main .menu-top ul {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    .header-main .menu-top ul>li {
        display: block !important;
        width: 100% !important;
        border-top: none !important;
        border-bottom: 1px solid #ede5dc !important;
        padding: 0 !important;
        margin: 0 !important;
    }

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

    .header-main .menu-top ul>li>a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 12px 6px !important;
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: #171513 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
        text-decoration: none !important;
        transition: color 0.2s !important;
    }

    .header-main .menu-top ul>li>a:hover,
    .header-main .menu-top ul>li.active>a {
        color: #06603b !important;
    }

    .header-main .menu-top ul>li>a i {
        font-size: 13px !important;
        color: #8c8178 !important;
    }

    /* Submenu inside mobile menu */
    .header-main .menu-top ul>li>.sub {
        position: static !important;
        width: 100% !important;
        background: #f4ece4 !important;
        border: none !important;
        border-radius: 4px !important;
        box-shadow: none !important;
        padding: 4px 0 6px 10px !important;
        margin: 0 0 8px 0 !important;
        display: block !important;
    }

    .header-main .menu-top ul>li>.sub>li {
        display: block !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .header-main .menu-top ul>li>.sub>li>a {
        display: block !important;
        padding: 7px 10px !important;
        font-size: 12.5px !important;
        font-weight: 500 !important;
        color: #4a423d !important;
        text-transform: none !important;
        border-left: 2px solid transparent !important;
        transition: all 0.2s !important;
        text-decoration: none !important;
    }

    .header-main .menu-top ul>li>.sub>li>a:hover {
        color: #06603b !important;
        background: transparent !important;
        border-left-color: #06603b !important;
        padding-left: 14px !important;
    }
}

@media (max-width: 768px) {

    .wrap-breadcrumb {
        padding: 10px 0 !important;
    }

    .wrap-breadcrumb .breadcrumb {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        padding: 0 !important;
        margin: 0 !important;
        font-size: 11.5px !important;
        align-items: center;
    }

    .wrap-breadcrumb .breadcrumb::-webkit-scrollbar {
        display: none;
    }

    /* --- 3. SECTION HEADS & TABS --- */
    .rock-catalogue-wrap .sectionhead,
    .catalogue .sectionhead,
    .sectionhead {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 6px !important;
        margin-bottom: 16px !important;
        padding-bottom: 10px !important;
        margin: 16px 0 15px;
    }

    .rock-catalogue-wrap .sectionhead h2,
    .catalogue .sectionhead h2,
    .sectionhead h2 {
        font-size: 22px !important;
        line-height: 1.3 !important;
    }

    .sectionhead p {
        font-size: 12.5px !important;
    }

    .rock-contact-wrap .pagehead,
    .rock-catalogue-wrap .pagehead,
    .rock-news-wrap .pagehead,
    .rock-product-wrap .pagehead,
    .catalogue .pagehead,
    .pagehead {
        align-items: flex-start !important;
        flex-direction: column !important;
        margin-bottom: 16px !important;
        gap: 6px !important;
    }

    .rock-contact-wrap .pagehead h1,
    .rock-contact-wrap .pagehead h2,
    .rock-catalogue-wrap .pagehead h1,
    .rock-catalogue-wrap .pagehead h2,
    .rock-news-wrap .pagehead h1,
    .rock-product-wrap .pagehead h1,
    .catalogue .pagehead h1,
    .pagehead h1 {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }

    .rock-tabs,
    .tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none;
        gap: 6px !important;
        padding-bottom: 6px !important;
        margin-bottom: 18px !important;
    }

    .rock-tabs::-webkit-scrollbar,
    .tabs::-webkit-scrollbar {
        display: none;
    }

    .chip {
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        padding: 7px 14px !important;
        font-size: 12px !important;
    }

    /* --- 5. COLLECTION & APPLICATION GRIDS --- */
    .collectiongrid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .collectiontile,
    .collectiontile.wide {
        grid-column: span 1 !important;
        height: 190px !important;
        border-radius: 4px !important;
    }

    .collectiontile .copy h3 {
        font-size: 20px !important;
    }

    .collectiontile .copy p {
        font-size: 11.5px !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .applicationgrid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .applicationcard {
        grid-column: span 1 !important;
        height: 200px !important;
        border-radius: 4px !important;
    }

    .applicationcard .copy b {
        font-size: 18px !important;
    }

    /* --- 6. PROMO BANNER --- */
    .rock-catalogue-wrap .homebanner,
    .catalogue .homebanner,
    .homebanner {
        height: 290px !important;
        margin-top: 20px !important;
        border-radius: 4px !important;
    }

    .rock-catalogue-wrap .homebanner h2,
    .catalogue .homebanner h2,
    .homebanner h2 {
        font-size: 22px !important;
        line-height: 1.25 !important;
    }

    .rock-catalogue-wrap .homebanner .copy,
    .catalogue .homebanner .copy,
    .homebanner .copy {
        left: 16px !important;
        right: 16px !important;
        bottom: 18px !important;
    }

    .homebanner .copy div[style*="display:flex"] {
        flex-direction: column !important;
        gap: 8px !important;
    }

    .homebanner .copy .btn-rock {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 10px 14px !important;
        font-size: 12px !important;
    }

    /* --- 7. CATALOGUES LIST --- */
    .rock-catalogue-wrap .cataloguebar,
    .catalogue .cataloguebar,
    .cataloguebar {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }

    .rock-catalogue-wrap .cataloguerow,
    .catalogue .cataloguerow,
    .cataloguerow {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        padding: 14px !important;
        border-radius: 4px !important;
    }

    .catalogue-actions {
        width: 100% !important;
        display: flex !important;
        gap: 8px !important;
    }

    .catalogue-actions .btn-rock {
        flex: 1 !important;
        justify-content: center !important;
        text-align: center !important;
        font-size: 11.5px !important;
        padding: 9px 8px !important;
    }

    /* --- 8. DEALERS & CONTACT SECTION --- */
    .rock-contact-wrap .dealerlayout,
    .dealerlayout {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .dealer-map {
        height: 220px !important;
        border-radius: 4px !important;
    }

    .rock-contact-wrap .contactsection,
    .contactsection {
        grid-template-columns: 1fr !important;
        padding: 20px 16px !important;
        border-radius: 4px !important;
    }

    .contactsection h2 {
        font-size: 22px !important;
    }

    .rock-contact-wrap .contactsection form,
    .contactsection form {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .rock-contact-wrap .field.full,
    .field.full,
    .rock-contact-wrap .contactsection .btn-rock,
    .contactsection .btn-rock {
        grid-column: span 1 !important;
        width: 100% !important;
        justify-content: center !important;
    }

    /* --- 9. NEWS & JOURNAL --- */
    .newsgrid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .newscard .photo-link {
        height: 180px !important;
    }

    .article-detail-box {
        padding: 20px 16px !important;
        border-radius: 4px !important;
    }

    .article-title {
        font-size: 22px !important;
        line-height: 1.35 !important;
    }

    .article-body img {
        max-width: 100% !important;
        height: auto !important;
    }

    .news-sidebar-col {
        margin-top: 25px !important;
    }

    /* --- 10. MODALS OVERLAYS --- */
    .rock-overlay {
        padding: 10px !important;
    }

    .rock-modal {
        max-width: 100% !important;
        padding: 20px 16px 22px !important;
        border-radius: 4px !important;
        max-height: 94vh !important;
    }

    .rock-modalhead {
        margin-bottom: 14px !important;
        padding-bottom: 10px !important;
    }

    .rock-modalhead h2 {
        font-size: 20px !important;
    }

    .rock-modal-detail-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .rock-modal-detail-img {
        height: 180px !important;
    }

    .rock-floating-fav {
        left: 15px !important;
        bottom: 15px !important;
        padding: 8px 14px !important;
        font-size: 12px !important;
    }

    .rock-toast {
        left: 15px !important;
        right: 15px !important;
        bottom: 20px !important;
        justify-content: center !important;
        text-align: center !important;
        font-size: 12.5px !important;
        padding: 12px 16px !important;
    }
}

/* ============================================================== */
/* ROCK PRODUCT SYSTEM - SYNCHRONIZED WITH HOMEPAGE LUXURY DESIGN */
/* ============================================================== */
.rock-product-wrap {
    padding-top: 25px;
}

.rock-product-wrap .content-product {
    min-height: 350px;
}

/* Category Tabs (Chips) */
.rock-product-wrap .product-tabs,
.rock-product-wrap .product-sub-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 8px;
    margin-bottom: 24px;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.rock-product-wrap .product-tabs::-webkit-scrollbar,
.rock-product-wrap .product-sub-tabs::-webkit-scrollbar {
    display: none;
}

.rock-product-wrap .product-tabs .chip,
.rock-product-wrap .product-sub-tabs .chip {
    white-space: nowrap;
    padding: 8px 18px;
    border-radius: 2px;
    border: 1px solid #e3ded8;
    background: #ffffff;
    color: #4a433d;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.rock-product-wrap .product-tabs .chip:hover,
.rock-product-wrap .product-sub-tabs .chip:hover {
    border-color: #06603b;
    color: #06603b;
    background: #fdfbf9;
}

.rock-product-wrap .product-tabs .chip.active,
.rock-product-wrap .product-sub-tabs .chip.active {
    background: #06603b;
    border-color: #06603b;
    color: #ffffff;
    font-weight: 600;
}

.rock-product-wrap .product-sub-tabs .chip {
    padding: 6px 14px;
    font-size: 12px;
    background: #faf7f3;
}

/* Toolbar: short_price & tags */
.rock-product-wrap .rock-product-toolbar,
.rock-product-wrap .short_price {
    display: flex !important;
    align-items: center;
    justify-content: flex-start !important;
    flex-wrap: wrap;
    gap: 12px;
    margin: 10px 0 24px;
    padding: 10px 16px;
    background: #faf7f3;
    border: 1px solid #ede5dc;
    border-radius: 4px;
    float: none !important;
    text-align: left !important;
}

.rock-product-wrap .short_price #short_product {
    height: 38px !important;
    max-width: 230px !important;
    line-height: 36px !important;
    font-size: 13px !important;
    font-family: 'Montserrat', sans-serif !important;
    padding: 0 32px 0 12px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    border: 1px solid #ded5cb !important;
    border-radius: 3px !important;
    color: #302d29 !important;
    background-color: #ffffff !important;
    outline: none !important;
    cursor: pointer !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.rock-product-wrap .short_price #short_product:focus,
.rock-product-wrap .short_price #short_product:hover {
    border-color: #06603b !important;
    box-shadow: 0 0 0 2px rgba(6, 96, 59, 0.15) !important;
}

/* Tag filter dropdown in toolbar */
.rock-product-wrap .tag-filter-dropdown {
    position: relative !important;
    display: inline-block !important;
    text-align: left !important;
    vertical-align: middle !important;
}

.rock-product-wrap .tag-filter-btn {
    width: 100% !important;
    min-width: 180px !important;
    max-width: 260px !important;
    height: 38px !important;
    line-height: 36px !important;
    font-size: 13px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    color: #302d29 !important;
    background-color: #ffffff !important;
    border: 1px solid #ded5cb !important;
    border-radius: 3px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    outline: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
}

.rock-product-wrap .tag-filter-btn:hover,
.rock-product-wrap .tag-filter-btn:focus,
.rock-product-wrap .tag-filter-btn:active,
.rock-product-wrap .tag-filter-dropdown.open .tag-filter-btn {
    color: #06603b !important;
    background-color: #ffffff !important;
    border-color: #06603b !important;
    box-shadow: 0 0 0 2px rgba(6, 96, 59, 0.15) !important;
    outline: none !important;
}

.rock-product-wrap .tag-filter-label {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 190px !important;
    display: inline-block !important;
}

.rock-product-wrap .tag-filter-btn .caret {
    margin-left: 8px !important;
    margin-top: 0 !important;
    border-top-color: #7a6e65 !important;
    transition: transform 0.2s ease, border-top-color 0.2s ease !important;
}

.rock-product-wrap .tag-filter-btn:hover .caret,
.rock-product-wrap .tag-filter-dropdown.open .tag-filter-btn .caret {
    border-top-color: #06603b !important;
}

.rock-product-wrap .tag-filter-dropdown.open .tag-filter-btn .caret {
    transform: rotate(180deg) !important;
}

.rock-product-wrap .tag-filter-menu {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 340px !important;
    padding: 8px !important;
    margin: 4px 0 0 !important;
    background: #ffffff !important;
    border: 1px solid #ded5cb !important;
    border-radius: 4px !important;
    box-shadow: 0 10px 28px rgba(23, 21, 19, 0.12) !important;
    z-index: 1050 !important;
}

.rock-product-wrap .tag-search-box {
    padding: 4px 4px 8px !important;
    border-bottom: 1px solid #ede5dc !important;
    margin-bottom: 6px !important;
}

.rock-product-wrap .tag-search-input {
    height: 32px !important;
    border: 1px solid #ded5cb !important;
    border-radius: 3px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    font-family: inherit !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.rock-product-wrap .tag-search-input:focus {
    border-color: #06603b !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(145, 97, 71, 0.15) !important;
}

.rock-product-wrap .tag-option-item {
    padding: 4px 6px !important;
    border-radius: 3px !important;
    transition: background-color 0.15s !important;
}

.rock-product-wrap .tag-option-item:hover {
    background-color: #faf7f3 !important;
}

.rock-product-wrap .tag-option-item label {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: normal !important;
    cursor: pointer !important;
    color: #403b36 !important;
}

.rock-product-wrap .tag-option-item.parent-tag-item label {
    font-weight: 700 !important;
}

.rock-product-wrap .tag-option-item input[type="checkbox"] {
    margin: 0 8px 0 0 !important;
    cursor: pointer !important;
    accent-color: #06603b !important;
}

.rock-product-wrap .parent-tag-item {
    font-weight: 600 !important;
    border-top: 1px dashed #f0e9e1 !important;
    margin-top: 4px !important;
    padding-top: 6px !important;
}

.rock-product-wrap .child-tag-item {
    padding-left: 20px !important;
    color: #6a625b !important;
}

/* Category Section Head & Block */
.rock-product-wrap .product-category-section {
    margin-bottom: 45px;
}

.rock-product-wrap .sectionhead {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 25px 0 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid #ede5dc;
}

.rock-product-wrap .sectionhead h2 {
    font-size: 20px;
    font-weight: 700;
    color: #171513;
    margin: 0 0 4px;
    letter-spacing: -0.2px;
}

.rock-product-wrap .sectionhead h2 a {
    color: #171513;
    text-decoration: none;
    transition: color 0.2s;
}

.rock-product-wrap .sectionhead h2 a:hover {
    color: #06603b;
}

.rock-product-wrap .sectionhead p {
    font-size: 13px;
    color: #8c827a;
    margin: 0;
}

.rock-product-wrap .sectionhead .textlink {
    color: #06603b;
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.rock-product-wrap .sectionhead .textlink:hover {
    color: #04492d;
    transform: translateX(3px);
}

/* Product Card Grid */
.rock-product-wrap .content-product .row {
    margin-left: -10px;
    margin-right: -10px;
}

.rock-product-wrap .content-product .product-main-row {
    margin: 0;
}

.rock-product-wrap .content-product .row .item {
    padding: 10px;
}

/* Card Outer: .iframe */
.rock-product-wrap .content-product .item .iframe {
    background: #ffffff;
    border: 1px solid #eee8e2;
    border-radius: 3px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 2px 8px rgba(23, 21, 19, 0.03);
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.rock-product-wrap .content-product .item .iframe:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(23, 21, 19, 0.09);
    border-color: #ded5cb;
}

/* Card Photo: .img */
.rock-product-wrap .content-product .item .iframe .img {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 90%;
    overflow: hidden;
    background: #ede8e1;
}

.rock-product-wrap .content-product .item .iframe .img a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.rock-product-wrap .content-product .item .iframe .img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.rock-product-wrap .content-product .item .iframe:hover .img img {
    transform: scale(1.06);
}

/* Badge Code */
.rock-product-wrap .content-product .item .iframe .img .code {
    position: absolute;
    top: 10px;
    left: 10px;
    bottom: auto;
    right: auto;
    background: rgba(255, 255, 255, 0.94);
    padding: 3px 9px;
    color: #8c5946;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 2px;
    backdrop-filter: blur(4px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    text-transform: uppercase;
    z-index: 2;
}

/* Coming Soon Label */
.rock-product-wrap .content-product .item .iframe .img .coming_soon_label {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(194, 112, 78, 0.94);
    color: #ffffff;
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 2px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    z-index: 2;
}

/* Commission badge */
.rock-product-wrap .content-product .item .iframe .img .hh_vnd {
    position: absolute;
    bottom: 8px;
    right: 8px;
    background: rgba(85, 124, 85, 0.92);
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 2px;
    z-index: 2;
}

/* Card Body: .info */
.rock-product-wrap .content-product .item .iframe .info {
    padding: 14px 16px 16px;
    background: #ffffff;
    border-top: 1px solid #f6f1ec;
    display: flex;
    flex-direction: column;
    flex: 1;
    height: auto;
}

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

.rock-product-wrap .content-product .item .iframe .info .manufacturer_name {
    display: block;
    color: #999089;
    font-size: 11px;
    margin: 4px 0 12px;
}

.rock-product-wrap .content-product .item .iframe .info .card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #f3ece4;
    padding-top: 10px;
    margin-top: 6px;
}

.rock-product-wrap .content-product .item .iframe .info h3 a {
    color: #171513;
    text-decoration: none;
    transition: color 0.2s ease;
}

.rock-product-wrap .content-product .item .iframe:hover .info h3 a {
    color: #06603b;
}

.rock-product-wrap .content-product .item .iframe .info .price {
    font-size: 13px;
    color: #fd6d08;
    font-weight: 600;
    margin: 0;
    display: flex;
    align-items: baseline;
    gap: 6px;
    flex-wrap: wrap;
}

.rock-product-wrap .content-product .item .iframe .info .price b {
    color: #fd6d08;
    font-size: 14px;
    font-weight: 700;
}

.rock-product-wrap .content-product .item .iframe .info .price font {
    font-size: 11px;
    font-weight: 600;
    text-decoration: underline;
}

.rock-product-wrap .content-product .item .iframe .info .price .discount {
    font-size: 10px;
    background: #fff0e6;
    color: #fd6d08;
    padding: 1px 6px;
    border-radius: 2px;
    font-weight: 700;
    border: none;
    margin-left: 4px;
    top: 0;
}

.rock-product-wrap .content-product .item .iframe .info .price .discount::before {
    display: none;
}

.rock-product-wrap .content-product .item .iframe .info .price_sale {
    font-size: 11px;
    color: #999089;
    text-decoration: line-through;
    margin: 2px 0 0;
}

.rock-product-wrap .content-product .item .iframe .info.info_td p.sub {
    font-size: 11px;
    color: #7a6e65;
    margin: 4px 0 0;
}

.rock-product-wrap .content-product .item .iframe .info.info_td p.sub b {
    color: #171513;
    font-weight: 600;
}

/* Category Banner */
.rock-product-wrap .banner.header-slider {
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 25px;
    box-shadow: 0 4px 15px rgba(23, 21, 19, 0.05);
}

.rock-product-wrap .banner.header-slider img {
    width: 100%;
    display: block;
}

/* Pagination */
.rock-product-wrap #page_html {
    margin: 35px 0 20px;
    text-align: center;
}

.rock-product-wrap #page_html .pagination {
    display: inline-flex;
    gap: 6px;
    padding: 0;
    margin: 0;
    border-radius: 0;
}

.rock-product-wrap #page_html .pagination>li>a,
.rock-product-wrap #page_html .pagination>li>span {
    border: 1px solid #ded5cb !important;
    background: #ffffff !important;
    color: #4a433d !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 14px !important;
    border-radius: 3px !important;
    margin: 0 !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

.rock-product-wrap #page_html .pagination>li>a:hover {
    background: #faf7f3 !important;
    border-color: #06603b !important;
    color: #06603b !important;
}

.rock-product-wrap #page_html .pagination>li.active>a,
.rock-product-wrap #page_html .pagination>li.active>span {
    background: #06603b !important;
    border-color: #06603b !important;
    color: #ffffff !important;
}

/* View More Button for Category Section */
.rock-product-wrap .category-view-more {
    text-align: center;
    margin-top: 15px;
    padding-top: 10px;
}

/* Empty State */
.rock-product-wrap .empty-product-state {
    text-align: center;
    padding: 60px 20px;
    background: #ffffff;
    border: 1px solid #ede5dc;
    border-radius: 4px;
    margin: 20px 0;
}

.rock-product-wrap .empty-product-state i {
    font-size: 36px;
    color: #c69c6d;
    margin-bottom: 12px;
    display: block;
}

.rock-product-wrap .empty-product-state p {
    font-size: 15px;
    color: #7a6e65;
    margin-bottom: 18px;
}

/* Filter Sidebar: 2-column layout (col-md-3) */
.rock-product-wrap .filter-sidebar {
    background: #ffffff;
    border: 1px solid #ede5dc;
    border-radius: 4px;
    margin-bottom: 30px;
    padding: 20px 18px;
    box-shadow: 0 2px 10px rgba(23, 21, 19, 0.03);
}

@media (min-width: 992px) {
    .rock-product-wrap .filter-sidebar {
        position: sticky;
        top: 90px;
        z-index: 10;
    }
}

.rock-product-wrap .filter-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 2px solid #ede5dc;
}

.rock-product-wrap .filter-header h4 {
    margin: 0;
    color: #171513;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Montserrat', sans-serif;
}

.rock-product-wrap .filter-header h4 i {
    color: #06603b;
    margin-right: 6px;
}

.rock-product-wrap .filter-group {
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid #f2ece4;
}

.rock-product-wrap .filter-group:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.rock-product-wrap .filter-group-title {
    font-size: 12px;
    font-weight: 700;
    color: #06603b;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin: 0 0 12px 0;
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Montserrat', sans-serif;
}

.rock-product-wrap .filter-group-title i {
    font-size: 13px;
    color: #c08327;
}

/* Group 1: Sidebar category list */
.rock-product-wrap .sidebar-category-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rock-product-wrap .sidebar-category-list li {
    margin-bottom: 3px;
}

.rock-product-wrap .sidebar-category-list li a {
    display: flex;
    align-items: center;
    padding: 7px 10px;
    color: #4a433d;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    border-radius: 3px;
    transition: all 0.2s ease;
}

.rock-product-wrap .sidebar-category-list li a i {
    font-size: 11px;
    color: #999089;
    margin-right: 8px;
    transition: transform 0.2s ease, color 0.2s ease;
}

.rock-product-wrap .sidebar-category-list li a:hover {
    background: #faf7f3;
    color: #06603b;
    padding-left: 14px;
}

.rock-product-wrap .sidebar-category-list li a:hover i {
    color: #06603b;
    transform: translateX(2px);
}

.rock-product-wrap .sidebar-category-list li.active a {
    background: #faf7f3;
    color: #06603b;
    font-weight: 700;
    border-left: 3px solid #06603b;
    padding-left: 10px;
}

.rock-product-wrap .sidebar-category-list li.active a i {
    color: #06603b;
}

/* Group 2: Sidebar tags tree */
.rock-product-wrap .filter-search {
    margin-bottom: 12px;
}

.rock-product-wrap .filter-search .input-group {
    width: 100%;
}

.rock-product-wrap .filter-search .tag-search-input {
    height: 34px !important;
    font-size: 12px !important;
    border: 1px solid #ded5cb !important;
    border-right: none !important;
    border-radius: 3px 0 0 3px !important;
    box-shadow: none !important;
    color: #302d29 !important;
    background: #faf7f3 !important;
    transition: all 0.2s ease !important;
}

.rock-product-wrap .filter-search .tag-search-input:focus {
    background: #ffffff !important;
    border-color: #06603b !important;
}

.rock-product-wrap .filter-search .input-group-addon {
    background: #faf7f3 !important;
    border: 1px solid #ded5cb !important;
    border-left: none !important;
    border-radius: 0 3px 3px 0 !important;
    color: #8c827a !important;
    padding: 6px 12px !important;
}

.rock-product-wrap .tag-option-item {
    padding: 5px 0;
    transition: background 0.15s ease;
}

.rock-product-wrap .tag-option-item label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-size: 12.5px;
    color: #4a433d;
    cursor: pointer;
    font-weight: 500;
}

.rock-product-wrap .tag-option-item label:hover {
    color: #06603b;
}

.rock-product-wrap .tag-option-item input[type="checkbox"] {
    margin: 0;
    accent-color: #06603b;
    width: 15px;
    height: 15px;
    cursor: pointer;
    flex-shrink: 0;
}

.rock-product-wrap .tag-option-item.check-all-item {
    border-bottom: 1px dashed #ded5cb;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.rock-product-wrap .tag-option-item.check-all-item label {
    font-weight: 700;
    color: #171513;
}

.rock-product-wrap .tag-option-item.parent-tag-item {
    font-weight: 600;
}

.rock-product-wrap .tag-option-item.child-tag-item {
    padding-left: 20px;
    position: relative;
}

.rock-product-wrap .tag-option-item.child-tag-item::before {
    content: "";
    position: absolute;
    left: 8px;
    top: 50%;
    width: 8px;
    height: 1px;
    background: #ded5cb;
}

.rock-product-wrap .tag-option-item input[type="checkbox"]:checked~.tag-name {
    color: #06603b;
    font-weight: 700;
}

/* Product Content: 2-column layout (col-md-9) */
.rock-product-wrap .product-content {
    margin-bottom: 30px;
}

.rock-product-wrap .product-content .short_price {
    margin-top: 0;
}

/* Product Card in 3-column grid */
@media (min-width: 992px) {
    .rock-product-wrap .product-content .row .item.col-md-4 {
        width: 33.33333333%;
        float: left;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .rock-product-wrap .product-content .row .item.col-sm-6 {
        width: 50%;
        float: left;
    }
}

@media (max-width: 767px) {
    .rock-product-wrap .product-content .row .item.col-xs-6 {
        width: 50%;
        float: left;
    }
}

/* Product Mobile Responsive Optimizations (<= 767px) */
@media (max-width: 767px) {
    .rock-product-wrap {
        padding-top: 15px;
    }

    .rock-product-wrap .content-product .row {
        margin-left: -5px;
        margin-right: -5px;
    }

    .rock-product-wrap .content-product .product-main-row {
        margin: 0 -5px !important;
    }

    /* Filter Sidebar on Mobile */
    .rock-product-wrap .filter-sidebar {
        position: static !important;
        margin-bottom: 18px;
        padding: 14px 14px 16px;
        border-radius: 4px;
        box-shadow: 0 1px 6px rgba(23, 21, 19, 0.04);
    }

    .rock-product-wrap .filter-header {
        margin-bottom: 12px;
        padding-bottom: 8px;
    }

    .rock-product-wrap .filter-header h4 {
        font-size: 13px;
    }

    .rock-product-wrap .filter-group {
        margin-bottom: 16px;
        padding-bottom: 14px;
    }

    .rock-product-wrap .filter-group-title {
        font-size: 11.5px;
        margin-bottom: 10px;
    }

    .rock-product-wrap .sidebar-category-list {
        max-height: 180px;
        overflow-y: auto;
    }

    .rock-product-wrap .sidebar-category-list li a {
        padding: 6px 8px;
        font-size: 12px;
    }

    .rock-product-wrap .tag-options-list {
        max-height: 180px;
        overflow-y: auto;
    }

    .rock-product-wrap .tag-option-item label {
        font-size: 12px;
    }

    /* Toolbar on Mobile */
    .rock-product-wrap .rock-product-toolbar,
    .rock-product-wrap .short_price {
        width: 100% !important;
        margin: 0 0 14px !important;
        padding: 8px 10px !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }

    .rock-product-wrap .short_price #short_product {
        width: 100% !important;
        max-width: 100% !important;
        height: 36px !important;
        font-size: 12px !important;
        padding: 0 28px 0 10px !important;
    }

    /* Product Cards in Grid (2 columns on mobile) */
    .rock-product-wrap .product-content {
        padding: 0 5px !important;
        margin-bottom: 20px;
    }

    .rock-product-wrap .product-content .row .item {
        padding: 5px !important;
    }

    .rock-product-wrap .content-product .item .iframe {
        border-radius: 4px;
    }

    .rock-product-wrap .content-product .item .iframe .img {
        padding-bottom: 100% !important;
    }

    .rock-product-wrap .content-product .item .iframe .img .code {
        top: 6px;
        left: 6px;
        font-size: 9px;
        padding: 2px 6px;
    }

    .rock-product-wrap .content-product .item .iframe .img .coming_soon_label {
        top: 6px;
        right: 6px;
        font-size: 9px;
        padding: 2px 6px;
    }

    .rock-product-wrap .content-product .item .iframe .info {
        padding: 8px 8px 10px !important;
    }

    .rock-product-wrap .content-product .item .iframe .info h3 {
        font-size: 12px !important;
        height: 32px !important;
        line-height: 1.35 !important;
        margin: 0 0 2px !important;
    }

    .rock-product-wrap .content-product .item .iframe .info .manufacturer_name {
        font-size: 9.5px !important;
        margin: 2px 0 6px !important;
        color: #999089 !important;
    }

    .rock-product-wrap .content-product .item .iframe .info .price {
        font-size: 11.5px !important;
        gap: 3px !important;
    }

    .rock-product-wrap .content-product .item .iframe .info .price b {
        font-size: 12px !important;
    }

    .rock-product-wrap .content-product .item .iframe .info .price .discount {
        font-size: 9px !important;
        padding: 1px 4px !important;
    }

    .rock-product-wrap .content-product .item .iframe .info .price_sale {
        font-size: 10px !important;
    }

    .rock-product-wrap .content-product .item .iframe .info .card-footer {
        padding-top: 5px !important;
        margin-top: 4px !important;
        border-top: 1px solid #f3ece4;
    }

    .rock-product-wrap .content-product .item .iframe .info .card-footer .textlink {
        font-size: 10.5px !important;
        gap: 4px !important;
    }

    .rock-product-wrap .sectionhead {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 6px !important;
        margin-bottom: 14px;
    }

    .rock-product-wrap .sectionhead h2 {
        font-size: 19px !important;
    }

    .rock-product-wrap #page_html {
        margin: 20px 0 10px !important;
    }

    .rock-product-wrap #page_html .pagination>li>a,
    .rock-product-wrap #page_html .pagination>li>span {
        padding: 6px 11px !important;
        font-size: 12px !important;
    }
}