/* Quy trình triển khai: bố cục 4 giai đoạn tối giản, lấy cảm hứng từ mẫu emerald. */
.site-main-home .process-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 50px 0 83px;
    color: #f7ffea;
    background: linear-gradient(100deg, rgb(67, 123, 42) 0%, rgb(59, 115, 40) 52%, rgb(38, 86, 30) 100%) !important;
}

.site-main-home .process-section::before,
.site-main-home .process-section::after { display: none; }

.site-main-home .process-section > .site-container {
    width: min(1384px, calc(100% - 48px));
    max-width: none;
}

.site-main-home .process-heading {
    display: grid !important;
    justify-items: center;
    margin: 0 auto 4.9rem;
    text-align: center;
}

.site-main-home .process-heading .section-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 39px;
    padding: 0 1.35rem;
    border: 1px solid rgba(204, 220, 113, .38);
    border-radius: 999px;
    color: #eee38a;
    background: rgba(66, 123, 42, .62);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .14em;
}

.site-main-home .process-heading .section-kicker::before { display: none; }

.site-main-home .process-heading h2 {
    max-width: none;
    margin: 2.55rem 0 0;
    color: #f4f2df !important;
    width: 100%;
    text-shadow: 0 2px 18px rgba(5, 38, 10, .22);
    font-size: clamp(2.15rem, 3.25vw, 3.25rem) !important;
    font-weight: 420;
    letter-spacing: -.05em;
    line-height: 1.12;
    text-align: center;
    white-space: nowrap;
}

.site-main-home .process-heading h2 .process-heading-prefix { color: #f4f2df !important; font-weight: 420; }
.site-main-home .process-heading h2 .process-heading-highlight { color: #d8e275 !important; font-weight: 650; }

.site-main-home .process-heading > p {
    max-width: 650px;
    margin: 1.65rem auto 0 !important;
    padding: 0 !important;
    border: 0 !important;
    color: #d3d980 !important;
    text-shadow: 0 1px 8px rgba(5, 38, 10, .2);
    font-size: 1rem;
    line-height: 1.7;
    text-align: center;
}

.site-main-home .process-timeline {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px;
}

.site-main-home .process-timeline::before { display: none; }

.site-main-home .process-timeline article {
    position: relative;
    z-index: 1;
    min-height: 396px;
    padding: 3.25rem 2rem 2rem;
    overflow: hidden;
    border: 1px solid rgba(179, 204, 104, .25) !important;
    border-radius: 28px !important;
    background: linear-gradient(120deg, rgba(68, 125, 44, .88), rgba(43, 98, 36, .9)) !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, .035), 0 18px 36px rgba(12, 56, 18, .12) !important;
    backdrop-filter: blur(9px);
    transition: transform .3s ease, border-color .3s ease, background .3s ease, box-shadow .3s ease !important;
}

.site-main-home .process-timeline article::before {
    position: absolute;
    bottom: 37px;
    left: 2rem;
    width: 48px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #e2df77, #9bbb55, transparent);
    content: "";
}

.site-main-home .process-timeline article::after { display: none; }
.site-main-home .process-timeline article:hover { border-color: rgba(212, 226, 125, .5) !important; background: linear-gradient(120deg, rgba(77, 140, 48, .94), rgba(47, 110, 38, .96)) !important; box-shadow: inset 0 1px rgba(255, 255, 255, .08), 0 27px 46px rgba(8, 48, 14, .28) !important; transform: translateY(-8px) !important; }

.site-main-home .process-timeline b {
    display: block;
    width: auto;
    height: auto;
    margin: 0 0 .52rem;
    border: 0;
    border-radius: 0;
    color: #84aa53;
    background: transparent;
    box-shadow: none;
    font-size: 3.45rem;
    font-weight: 850;
    letter-spacing: -.07em;
    line-height: 1;
}

.site-main-home .process-timeline > article > i {
    display: grid;
    width: 54px;
    height: 54px;
    margin: .7rem 0 2rem;
    place-items: center;
    border: 1px solid rgba(234, 255, 157, .2);
    border-radius: 15px;
    color: #f0e68c;
    background: rgba(103, 150, 50, .34);
    font-size: 1.45rem;
    transition: transform .28s ease, color .28s ease, background .28s ease;
}

.site-main-home .process-timeline article:hover > i { color: #355f2a; background: #e4e47e; transform: rotate(-5deg) scale(1.06); }

.site-main-home .process-timeline span {
    display: block;
    color: #f7f5df;
    text-shadow: 0 1px 8px rgba(0, 24, 7, .3);
    font-size: 1.07rem;
    font-weight: 800;
    letter-spacing: -.025em;
    line-height: 1.35;
}

.site-main-home .process-timeline p {
    margin: .9rem 0 0;
    color: #c8d47f;
    text-shadow: 0 1px 7px rgba(0, 24, 7, .24);
    font-size: .88rem;
    line-height: 1.72;
}

@media (max-width: 991.98px) {
    .site-main-home .process-section { padding: 4.8rem 0; }
    .site-main-home .process-section > .site-container { width: min(920px, calc(100% - 40px)); }
    .site-main-home .process-heading { margin-bottom: 3rem; }
    .site-main-home .process-heading h2 { white-space: normal; }
    .site-main-home .process-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
    .site-main-home .process-timeline article { min-height: 340px; }
}

@media (max-width: 575.98px) {
    .site-main-home .process-section { padding: 3.9rem 0; }
    .site-main-home .process-heading { margin-bottom: 2.4rem; }
    .site-main-home .process-heading .section-kicker { min-height: 35px; padding: 0 1rem; font-size: .62rem; }
    .site-main-home .process-heading h2 { margin-top: 1.55rem; font-size: 1.9rem !important; }
    .site-main-home .process-heading > p { margin-top: 1.15rem !important; font-size: .87rem; }
    .site-main-home .process-timeline { grid-template-columns: 1fr; gap: 13px; }
    .site-main-home .process-section > .site-container { width: calc(100% - 30px); }
    .site-main-home .process-timeline article { min-height: 0; padding: 2.15rem 1.4rem 3.5rem; border-radius: 20px !important; }
    .site-main-home .process-timeline article::before { top: auto; bottom: 23px; left: 1.4rem; }
    .site-main-home .process-timeline b { font-size: 2.7rem; }
    .site-main-home .process-timeline > article > i { width: 46px; height: 46px; margin: .5rem 0 1.2rem; border-radius: 13px; font-size: 1.22rem; }
}

@media (prefers-reduced-motion: reduce) {
    .site-main-home .process-timeline article,
    .site-main-home .process-timeline > article > i { transition: none !important; }
}

/* Khóa giao diện Quy trình theo mẫu: ghi đè toàn bộ theme cũ của trang chủ. */
.site-home-luxury .site-main-home .process-section {
    padding: 38px 0 55px !important;
    background: linear-gradient(100deg, rgb(67, 123, 42) 0%, rgb(59, 115, 40) 52%, rgb(38, 86, 30) 100%) !important;
}

.site-home-luxury .site-main-home .process-section > .site-container {
    width: min(1384px, calc(100% - 48px)) !important;
    max-width: none !important;
}

.site-home-luxury .site-main-home .process-section .process-heading {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    align-items: center !important;
    width: 100%;
    margin-bottom: 3.25rem !important;
    text-align: center !important;
}
.site-home-luxury .site-main-home .process-section .process-heading > div {
    width: 100%;
    text-align: center !important;
}
.site-home-luxury .site-main-home .process-section .process-heading .section-kicker {
    justify-self: center;
    margin-right: auto;
    margin-left: auto;
    color: #fff !important;
    border-color: rgba(255, 255, 255, .68) !important;
    background: rgba(20, 70, 22, .72) !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, .14), 0 8px 18px rgba(16, 61, 20, .2);
}
.site-home-luxury .site-main-home .process-section .process-heading h2 {
    margin-top: 1.35rem;
    color: #f4f2df !important;
    text-align: center !important;
    text-shadow: none !important;
}
.site-home-luxury .site-main-home .process-section .process-heading h2 .process-heading-prefix { color: #f4f2df !important; }
.site-home-luxury .site-main-home .process-section .process-heading h2 .process-heading-highlight { color: #d8e275 !important; }
.site-home-luxury .site-main-home .process-section .process-heading > p {
    width: 100%;
    margin-top: .95rem !important;
    color: #d3d980 !important;
    text-align: center !important;
    text-shadow: none !important;
}

.site-home-luxury .site-main-home .process-section .process-timeline article {
    min-height: 396px;
    border-color: rgba(179, 204, 104, .25) !important;
    background: linear-gradient(120deg, rgba(68, 125, 44, .88), rgba(43, 98, 36, .9)) !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, .035), 0 18px 36px rgba(12, 56, 18, .12) !important;
}

.site-home-luxury .site-main-home .process-section .process-timeline article > b { color: #84aa53 !important; }

/* Hai số 03 và 04 dùng cùng một nền chuyển sắc. */
.site-home-luxury .site-main-home .process-section .process-timeline article:nth-child(3) > b,
.site-home-luxury .site-main-home .process-section .process-timeline article:nth-child(4) > b {
    color: #f4f2df !important;
    border-color: rgba(211, 229, 128, .28) !important;
    background: linear-gradient(135deg, #498428, #336a29) !important;
    box-shadow: 0 8px 18px rgba(19, 67, 24, .22) !important;
}
.site-home-luxury .site-main-home .process-section .process-timeline article > i { color: #f0e68c !important; background: rgba(103, 150, 50, .34) !important; }
.site-home-luxury .site-main-home .process-section .process-timeline article > span { color: #f7f5df !important; text-shadow: none !important; }
.site-home-luxury .site-main-home .process-section .process-timeline article > p { color: #c8d47f !important; text-shadow: none !important; }

@media (max-width: 991.98px) {
    .site-home-luxury .site-main-home .process-section { padding: 4.8rem 0 !important; }
    .site-home-luxury .site-main-home .process-section > .site-container { width: min(920px, calc(100% - 40px)) !important; }
    .site-home-luxury .site-main-home .process-section .process-heading { margin-bottom: 3rem !important; }
    .site-home-luxury .site-main-home .process-section .process-timeline article { min-height: 340px; }
}

@media (max-width: 575.98px) {
    .site-home-luxury .site-main-home .process-section { padding: 3.9rem 0 !important; }
    .site-home-luxury .site-main-home .process-section > .site-container { width: calc(100% - 30px) !important; }
    .site-home-luxury .site-main-home .process-section .process-heading { margin-bottom: 2.4rem !important; }
    .site-home-luxury .site-main-home .process-section .process-timeline article { min-height: 0; }
}

/* Thanh menu trang chủ chạy tràn toàn bộ chiều rộng theo bảng màu thương hiệu. */
.site-home-luxury .site-navbar,
.site-home-luxury .site-navbar.is-scrolled {
    background: linear-gradient(100deg, #336a29, #498428 54%, #336a29) !important;
}

/* Giữ chữ và biểu tượng dễ đọc trên nền xanh mới. */
.site-home-luxury .site-navbar .site-nav-links .nav-link,
.site-home-luxury .site-navbar .site-nav-icon,
.site-home-luxury .site-navbar .navbar-toggler {
    color: #f7f5df !important;
}

.site-home-luxury .site-navbar .site-nav-links .nav-link:hover,
.site-home-luxury .site-navbar .site-nav-links .nav-link.is-active,
.site-home-luxury .site-navbar .site-nav-links .nav-item.dropdown:hover > .nav-link {
    color: #ffffff !important;
    background: rgba(234, 239, 157, .15) !important;
}

@media (max-width: 991.98px) {
    .site-home-luxury .site-navbar .navbar-collapse {
        background: linear-gradient(100deg, #336a29, #498428 54%, #336a29) !important;
    }
}

/* Đồng bộ toàn bộ điều hướng với bảng màu xanh - vàng; không dùng chữ trắng. */
.site-home-luxury .site-topbar,
.site-home-luxury .site-topbar-inner,
.site-home-luxury .site-topbar a {
    color: #eaef9d !important;
}

.site-home-luxury .site-nav-links {
    border-color: rgba(234, 239, 157, .34) !important;
    background: rgba(51, 106, 41, .20) !important;
    box-shadow: inset 0 1px rgba(234, 239, 157, .10) !important;
}

.site-home-luxury .site-nav-links::before {
    display: none !important;
}

.site-home-luxury .site-navbar .site-nav-links .nav-link {
    color: #eaef9d !important;
    text-shadow: none !important;
}

.site-home-luxury .site-navbar .site-nav-links .site-nav-icon,
.site-home-luxury .site-navbar .site-account-chevron {
    color: #c1d95c !important;
}

.site-home-luxury .site-navbar .site-nav-links .nav-link:hover,
.site-home-luxury .site-navbar .site-nav-links .nav-link:focus-visible,
.site-home-luxury .site-navbar .site-nav-links .nav-link.is-active,
.site-home-luxury .site-navbar .site-nav-links .nav-item.dropdown:hover > .nav-link {
    color: #336a29 !important;
    background: linear-gradient(135deg, #eaef9d, #c1d95c) !important;
    box-shadow: 0 7px 15px rgba(30, 77, 27, .26) !important;
}

.site-home-luxury .site-navbar .site-nav-links .nav-link:hover .site-nav-icon,
.site-home-luxury .site-navbar .site-nav-links .nav-link:focus-visible .site-nav-icon,
.site-home-luxury .site-navbar .site-nav-links .nav-link.is-active .site-nav-icon,
.site-home-luxury .site-navbar .site-nav-links .nav-item.dropdown:hover > .nav-link .site-nav-icon {
    color: #336a29 !important;
}

.site-home-luxury .site-navbar .site-language,
.site-home-luxury .site-navbar .site-login-button,
.site-home-luxury .site-navbar .site-account {
    color: #eaef9d !important;
    border-color: rgba(234, 239, 157, .42) !important;
    background: rgba(51, 106, 41, .22) !important;
}

.site-home-luxury .site-navbar .site-account-role {
    color: #c1d95c !important;
}

.site-home-luxury .site-navbar .site-login-button:hover,
.site-home-luxury .site-navbar .site-account:hover,
.site-home-luxury .site-navbar .site-account[aria-expanded="true"] {
    color: #336a29 !important;
    border-color: #eaef9d !important;
    background: #eaef9d !important;
}

.site-home-luxury .site-topbar-consult-button {
    color: #336a29 !important;
    background: linear-gradient(135deg, #eaef9d, #c1d95c) !important;
}
