.banner-policy .banner-layers {
    max-width: 1350px;
}
.banner-policy p {
    font-size: 20px;
    font-weight: 600;
}
.banner-policy .text-box-2 p {
    font-size: 16px;
    line-height: 22px;
}
.banner-policy .text-box-2 .col-2 .icon-box {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    padding-left: 10px;
    padding-right: 10px;
}
.banner-policy .text-box-2 .col{
    padding: unset;
    margin: unset;
}
.banner-policy .text-box-2 .col-3 .icon-box,
.banner-policy .text-box-2 .col-4 .icon-box{
    border-right: 1px solid #fff;
    padding-left: 10px;
    padding-right: 10px;
}
.banner-policy .text-box-2 .col-1 .icon-box {
    padding-right: 10px;
}
.banner-policy .text-box-2 .col-5 .icon-box{
    padding-left: 10px;
}

.policy-breadcrumb{
    padding-bottom: unset !important;
}
.policy-breadcrumb .col{
    padding-left: unset;
    padding-bottom: unset;
}
.policy-breadcrumb .custom-breadcrumb li{
    margin-left: unset;
}

.section1-policy h2,
.section2-policy h2{
    color: var(--hg-primary);
    margin-bottom: unset;
}
.section1-policy .row-title p,
.section2-policy .row-title p{
    color: var(--hg-text);
}
.section1-policy .row-title .col-inner,
.section2-policy .row-title .col-inner{
    border-left: 5px solid var(--hg-primary);
    padding-left: 15px;
}
.section1-policy .row-content .col-inner{
    background-color: #EAF6F2;
    padding: 16px;
    border-radius: 16px;
    height: 270px;
}
.section1-policy .row-content .sub-title,
.section2-policy .row-content .sub-title{
    font-size: 20px;
    font-weight: 600;
    color: var(--hg-primary);
    margin-bottom: unset;
}
.section1-policy .row-content p,
.section2-policy .row-content p{
    color: var(--hg-text);
}
.section1-policy .row-content .button,
.section2-policy .row-content .button{
    margin: unset;
    padding-top: 15px;
    position: relative;
}
.section1-policy .row-content .button:before,
.section2-policy .row-content .button:before{
    content: '';
    position: absolute;
    background-image: url(/wp-content/uploads/2026/10/icon-right-green.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    left: 135%;
    top: 70%;
    transform: translate(-135%, -70%);
}
.section1-policy .row-content .button span,
.section2-policy .row-content .button span{
    font-size: 14px;
    font-weight: 600;
    color: var(--hg-primary);
}

.section2-policy:after{
    content: '';
    position: absolute;
    background-image: url(/wp-content/uploads/2026/10/img-policy.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 510px;
    height: 350px;
    right: 0;
    bottom: 0;
    z-index: 2;
}
.section2-policy .row-content .col-inner{
    background-color: #fff;
    padding: 16px;
    border-radius: 16px;
    box-shadow: 0 4px 14px color-mix(in srgb, var(--hg-primary) 12%, transparent);
    height: 320px;
}

.section3-policy h2{
    color: var(--hg-primary);
}
.section3-policy h2 span{
    color: var(--green-natural);
}
.section3-policy .row-title .col-inner{
    padding-left: 15px;
    border-left: 5px solid var(--hg-primary);
}


/* Trang con */
/* Banner trang chính sách: luôn tràn hết màn hình (kể cả khi lỡ đặt trong Row) */
.banner-policy-sub {
	width: 100vw !important;
	max-width: 100vw;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}
.banner-policy-sub .text-box { width: 90% !important; max-width: 900px; }

/* Bỏ thẻ rỗng do trình soạn thảo sinh ra */
.banner-policy-sub h1:empty, .banner-policy-sub p:empty { display: none; }
.banner-policy-sub .text-inner > p { margin: 0; }

/* Breadcrumb chữ trắng, căn giữa, mục hiện tại màu xanh lá */
.banner-policy-sub .custom-breadcrumb ol { justify-content: center; flex-wrap: wrap; }
.banner-policy-sub .custom-breadcrumb li{
    margin-left: unset;
}
.banner-policy-sub .custom-breadcrumb,
.banner-policy-sub .custom-breadcrumb a,
.banner-policy-sub .custom-breadcrumb .cb-item,
.banner-policy-sub .custom-breadcrumb svg { color: #fff !important; }
.banner-policy-sub .custom-breadcrumb a:hover { opacity: .8; }
.banner-policy-sub .custom-breadcrumb [aria-current="page"],
.banner-policy-sub .custom-breadcrumb [aria-current="page"] span { color: var(--green-natural) !important; }
.banner-policy-sub { margin-bottom: 0 !important; }

/* ===== Dùng cho nội dung soạn kiểu cũ (danh sách số làm tiêu đề) ===== */
.page-wrapper:has(.banner-policy-sub) .banner-policy-sub + * { margin-top: 44px !important; }
/* Mục "1. Đặt chỗ và Thanh toán", "2. Chính sách hủy…" → tiêu đề xanh primary */
.page-wrapper:has(.banner-policy-sub) .col-inner > ol {
	margin: 36px 0 14px !important;
	padding: 0 0 10px !important;
	border-bottom: 1px solid color-mix(in srgb, var(--hg-text) 12%, transparent);
	list-style-position: inside;
}
.page-wrapper:has(.banner-policy-sub) .col-inner > ol > li {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--hg-primary);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
}
.page-wrapper:has(.banner-policy-sub) .col-inner > ol > li::before { display: none; } /* bỏ chấm xanh */
.page-wrapper:has(.banner-policy-sub) .col-inner > ol > li::marker { color: var(--hg-primary); }
.page-wrapper:has(.banner-policy-sub) .col-inner > ol > li strong { color: inherit; font-weight: inherit; }

/* Chữ đậm đứng riêng (2.1…, 3.1…, "Thanh toán nội địa"…) → xanh primary */
.page-wrapper:has(.banner-policy-sub) .col-inner > p > strong { color: var(--hg-primary); font-weight: 700; }

/* Đoạn mở đầu (đoạn đầu tiên ngay dưới banner) → khung nổi bật */
.page-wrapper:has(.banner-policy-sub) .banner-policy-sub + p {
	padding: 18px 20px;
	border-left: 4px solid var(--hg-primary);
	border-radius: 0 10px 10px 0;
	background: color-mix(in srgb, var(--hg-primary) 6%, #fff);
}
.page-wrapper:has(.banner-policy-sub) .banner-policy-sub + p strong { color: var(--hg-text); font-weight: 600; }

@media (max-width: 549px) {
	.page-wrapper:has(.banner-policy-sub) .col-inner > ol > li { font-size: 19px; }
}


/* ---------- Responsive ---------- */
@media (min-width: 1100px) and (max-width: 1440px) {
    .banner-policy .text-box{
        left: 15px;
    }
    .policy-breadcrumb{
	    padding-left: 15px !important;
	}
	.section2-policy:after{
	    width: 310px;
        height: 250px;
	}
}
@media (min-width: 850px) and (max-width: 1099px) {
    .banner-policy {
        padding-top: 400px !important;
    }
    .banner-policy .text-box {
        width: 90% !important;
        left: 15px;
        top: 22%;
    }
    .banner-policy .text-box-2 {
        top: 70%;
        left: 30px;
    }
    .policy-breadcrumb .col {
        padding-bottom: unset !important;
    }
    .policy-breadcrumb {
        padding-left: 15px !important;
    }
    .section1-policy .row-content .col-inner{
        height: 300px;
    }
    .section2-policy .row-content .col-inner{
        height: 350px;
    }
    .section2-policy:after{
        width: 400px;
        height: 260px;
    }
}
@media (min-width: 550px) and (max-width: 849px) {
    .banner-policy {
        padding-top: 400px !important;
    }
    .banner-policy h1,
    .banner-policy-sub h1{
        font-size: 44px !important;
    }
    .banner-policy .text-box {
        width: 95% !important;
        left: 15px;
        top: 28%;
    }
    .banner-policy .text-box-2 {
        top: 70%;
        left: 30px;
    }
    .policy-breadcrumb .col {
        padding-bottom: unset !important;
    }
    .policy-breadcrumb {
        padding-left: 15px !important;
    }
    .section2-policy:after{
        width: 400px;
        height: 280px;
    }
}
@media (max-width: 549px) {
    .banner-policy h1,
    .banner-policy-sub h1{
        font-size: 38px !important;
    }
    .banner-policy .text-box {
        width: 90% !important;
        left: 15px;
        top: 15%;
    }
    .banner-policy .text-box-2 {
        top: 48%;
    }
    .banner-policy .text-box-2 .row { 
        display: grid !important; 
        grid-template-columns: 1fr 1fr; 
        gap: 10px; 
        margin: 0 !important; 
    }
    .banner-policy .text-box-2 .col {
		flex: none !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}
	.banner-policy .text-box-2 .col::before, 
	.banner-policy .text-box-2 .col::after { 
	    display: none !important; 
	}
	.banner-policy .text-box-2 .col-inner {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100%;
		padding: 14px 8px;
		border: 1px solid rgba(255, 255, 255, .25) !important;
		border-radius: 14px;
		background: rgba(255, 255, 255, .12);
		-webkit-backdrop-filter: blur(8px);
		backdrop-filter: blur(8px);
	}
	.banner-policy .text-box-2 .col-inner .icon-box{
	    border-right: unset;
	}
	.banner-policy .text-box-2 .col-2 .icon-box{
	    border-left: unset;
	}
	.banner-policy .text-box-2 .icon-box { display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; }
	.banner-policy .text-box-2 .icon-box-img { width: 30px !important; margin: 0 !important; }
	.banner-policy .text-box-2 .icon-box-text p { margin: 0 !important; font-size: 13px; font-weight: 600; line-height: 1.3; }
	.banner-policy .text-box-2 .col:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.banner-policy .text-box-2 .col:last-child:nth-child(odd) .col-inner { padding: 12px 16px; }
	.banner-policy .text-box-2 .col:last-child:nth-child(odd) .icon-box { flex-direction: row; gap: 10px; }
    .banner-policy p{
        font-size: 16px;
    }
    .policy-breadcrumb .col {
        padding-bottom: unset !important;
    }
    .policy-breadcrumb {
        padding-left: 15px !important;
    }
    .banner-policy .text-box-2 .col-2 .icon-box,
    .banner-policy .text-box-2 .col-4 .icon-box{
        border-right: unset;
    }
    .section2-policy:after{
        width: 300px;
        height: 220px;
    }
}