/* VHIS comparison page (enhancements) */
.bx-vhis-compare .hero-compare .hero__kicker {
    font-size: 18px;
    line-height: 26px;
    font-weight: 700;
    color: #00457a;
    background: rgba(0, 69, 122, 0.08);
    border: 1px solid rgba(0, 69, 122, 0.15);
    padding: 8px 12px;
    border-radius: 999px;
}
.bx-vhis-compare .bx-plan-experience-section,
.bx-vhis-compare .bx-plan-experience-section .bx-section {
    background: #FBFBFB;
}
.bx-vhis-compare-remark {
    display: flex;
    flex-direction: column;
}
.bx-vhis-compare .bx-vhis-compare-remark .remarkPage {
    opacity: 1;
    gap: 124px;
    padding-top: 10px;
    padding-bottom: 128px;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    vertical-align: middle;
    color: #000000B2;
    max-width: 1200px;
    margin: 0px auto;
    padding-left: 24px;
    padding-right: 24px;
}
    .bx-vhis-compare .bx-vhis-compare-remark .remarkPage .content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 12px;
    }
    .bx-vhis-compare .compare-navnote {
        margin: 10px 0 0;
        color: rgba(10, 20, 32, 0.7);
        font-weight: 600;
    }

.bx-vhis-compare .grid-compare-4 {
    /* Desktop + Mobile: single-line horizontal scroll */
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    padding-top: 32px;
    padding-bottom: 64px;
    -ms-overflow-style: none; /* IE/Edge */
    scrollbar-width: none; /* Firefox */
    padding-right: 144px;
}

.bx-vhis-compare .hero-section {
    height: 774px;
    position: relative;
    background-image: none;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    background-color: rgba(193, 234, 253,1);
}

.bx-vhis-compare .hero-bg-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
    max-width: 1440px;
    margin: auto;
}

.bx-vhis-compare .hero-section .container {
    position: relative;
    z-index: 1;
}

.bx-vhis-compare .hero-section .container {
    /* padding-left: 0;
  padding-right: 0; */
}

/* Make the horizontal scroller “full-bleed” (ignore .container padding) */
.bx-vhis-compare .hero-section .grid-compare-4 {
    /* margin-left: calc(-1 * var(--container-pad)); */
    /* margin-right: calc(-1 * var(--container-pad));
  width: calc(100% + (2 * var(--container-pad))); */
}

.bx-vhis-compare .insurancePlan-section {
    background-color: #C1EAFD;
    position: relative;
    padding: 128px 0;
}

.bx-vhis-compare .insurancePlan-title {
    color: #005697;
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    margin: 0;
}

/* Make the horizontal scroller “full-bleed” (ignore .container padding) */
.bx-vhis-compare .insurancePlan-section .grid-compare-4 {
    margin-left: calc(-1 * var(--container-pad));
    margin-right: calc(-1 * var(--container-pad));
    width: calc(100% + (2 * var(--container-pad)));
}

.bx-vhis-compare .grid-compare-4::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
}

/* Card sizing (desktop) */
.bx-vhis-compare .grid-compare-4 h2 {
    margin: 0;
}

.bx-vhis-compare .product-card {
    position: relative;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px;
    padding: 32px 24px;
    width: 348px;
    height: 112px;
    background-color: #fff;
    scroll-snap-align: start;
    flex-shrink: 0;
}

.bx-vhis-compare .insurancePlan-card-content {
    position: relative;
    background: #fff;
    border-radius: 24px;
    padding: 24px;
    width: 370px;
    min-height: 715px;
    background-color: #fff;
    scroll-snap-align: start;
    flex-shrink: 0;
}

.bx-vhis-compare .insuranceGrid-compare-4 {
    /* Desktop + Mobile: single-line horizontal scroll */
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-top: 48px;
    -ms-overflow-style: none; /* IE/Edge */
    scrollbar-width: none; /* Firefox */
  padding-right: 144px;

}

.bx-vhis-compare .reviews__grid {
    /* Desktop + Mobile: single-line horizontal scroll */
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -ms-overflow-style: none; /* IE/Edge */
    scrollbar-width: none; /* Firefox */
  padding-right: 144px;

}

.bx-vhis-compare .product-card-content {
    position: relative;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px 16px 0 0;
    padding: 32px 0 24px 24px;
    width: 348px;
    background-color: #fff;
    scroll-snap-align: start;
    flex-shrink: 0;
}

.bx-vhis-compare .product-normal-content {
    position: relative;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px;
    padding: 32px 22px;
    width: 348px;
    height: 112px;
    background-color: #fff;
    scroll-snap-align: start;
    flex-shrink: 0;
}

.bx-vhis-compare .product-coupon {
    background-color: #E42558;
    padding: 4px 0 4px 24px;
    border-radius: 0 0 16px 16px;
    color: #FFFFFF;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
}

.bx-vhis-compare .product-card__badge {
    position: absolute;
    left: -6px;
    top: -5px;
    align-items: center;
    gap: 8px;
    padding: 6px 24px 6px 12px;
    background: #0095A4;
    color: #fff;
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 20px;
        clip-path: polygon(
  0 0,
  100% 0,
  calc(100% - 20px) 50%,
  100% 100%,
  0 100%
);
}

.bx-vhis-compare .product-card-title {
    color: #005697;
    font-weight: 600;
    font-style: normal;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0;
}
html[lang="en"] .bx-vhis-compare .grid-compare-4 .product-card-content {
    width: 380px;
}
.bx-vhis-compare .insuranceTitle {
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    display: flex;
    flex-direction: column;
    margin-bottom: 14px;
}

.bx-vhis-compare .title-type {
    display: inline-block;
    padding: 4px 12px;
    color: #B30635;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    background-color: #FCE6EC;
    border-radius: 100px;
    margin: 0;
    margin-top: 8px;
}

.bx-vhis-compare .title-type-Introduction {
    display: inline-block;
    padding: 4px 12px;
    color: #002742;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    background-color: #EAF2FD;
    border-radius: 100px;
    margin: 0;
    flex-shrink: 0;
    margin-top: 8px;
}

.bx-vhis-compare .title-type-priavate {
    display: inline-block;
    padding: 4px 12px;
    color: #005697;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    background-color: rgba(4, 175, 255, 0.1);
    border-radius: 100px;
    margin: 0;
    margin-top: 8px;
}

.bx-vhis-compare .insurance-card-title {
    color: #005697;
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    margin: 0;
    letter-spacing: 0;
    flex-shrink: 0;
}

.bx-vhis-compare .product-card__subtitle {
    margin-top: 8px;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000;
}
html[lang="en"] .bx-vhis-compare .product-card__subtitle{
    /* height:20px; */
}

.bx-vhis-compare .pill-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin: 10px 0 0;
}

.bx-vhis-compare .table-compare-wrap {
    overflow: auto;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: var(--radius);
    background: #fff;
}

.bx-vhis-compare .table-compare {
    width: 100%;
    border-collapse: collapse;
    min-width: 980px;
}

    .table-compare th,
    .bx-vhis-compare .table-compare td {
        padding: 12px 14px;
        border-bottom: 1px solid rgba(229, 231, 235, 0.9);
        vertical-align: top;
    }

    .bx-vhis-compare .table-compare th {
        background: #f8fbff;
        text-align: left;
        font-size: 13px;
        font-weight: 800;
    }

    .bx-vhis-compare .table-compare td {
        font-size: 14px;
        font-weight: 700;
        color: #0a1420;
    }

.bx-vhis-compare .section-divider {
    height: 1px;
    background: rgba(0, 0, 0, 0.06);
    margin: 22px 0;
}

.bx-vhis-compare .stage-shell {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: var(--radius);
    background: #fff;
    padding: 14px;
}

.bx-vhis-compare .stage-row {
    display: flex;
    gap: 14px;
    overflow-x: auto;
    padding: 8px 2px 12px;
    scroll-snap-type: x mandatory;
}

.bx-vhis-compare .stage-card {
    flex: 0 0 min(520px, 88vw);
    scroll-snap-align: start;
    border-radius: var(--radius);
    border: 1px solid rgba(229, 231, 235, 0.95);
    background: #fff;
    padding: 16px;
    box-shadow: 0 10px 18px rgba(10, 20, 32, 0.04);
}

.bx-vhis-compare .stage-bottom-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 6px;
    height: 56px;
    position: relative;
}

.bx-vhis-compare .stage-img {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    border: 1px solid rgba(229, 231, 235, 0.95);
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    position: relative;
    transform-origin: 50% 80%;
    transition: transform 0.35s ease;
    box-shadow: 0 10px 18px rgba(15, 23, 42, 0.06);
}

    .bx-vhis-compare .stage-img::after {
        content: "";
        position: absolute;
        inset: 11px;
        border-radius: 10px;
        background: radial-gradient( circle at 30% 30%, rgba(4, 175, 255, 0.95), rgba(4, 175, 255, 0.18) );
        border: 1px solid rgba(4, 175, 255, 0.18);
    }

.bx-vhis-compare .grid-compare-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

@media (max-width: 768px) {
    .bx-vhis-compare .grid-compare-3 {
        grid-template-columns: 1fr;
    }
}

.bx-vhis-compare .faq-accordion {
    background: #fff;
}

.bx-vhis-compare .faq-item {
    border-bottom: 1px solid #E5E7EB;
    overflow: hidden;
    background: #fff;
}

    .bx-vhis-compare .faq-item:first-child {
        border-top: 1px solid #E5E7EB;
    }

.bx-vhis-compare .faq-question {
    width: 100%;
    text-align: left;
    border: 0;
    min-height: 88px;
    background: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 32px;
    color: #005697;
    align-items: center;
    padding: 0 16px;
}

    .bx-vhis-compare .faq-question:focus {
        outline: 0;
        outline-offset: 0;
    }

.bx-vhis-compare .chev {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00457a;
    font-weight: 900;
    transition: transform 0.25s ease;
    flex: 0 0 auto;
}
.bx-vhis-compare .chev-img{
    width: 100%;
    height: 100%;
}

.bx-vhis-compare .faq-item.active .chev {
    transform: rotate(180deg);
}

.bx-vhis-compare .faq-answer {
    display: none;
    padding: 0 72px 32px 16px;
    color: #002742;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
}

.bx-vhis-compare .faq-item.active .faq-answer {
    display: block;
}

.bx-vhis-compare .reviews-row {
    display: flex;
    gap: 14px;
    overflow-x: auto;
    padding: 8px 2px 14px;
    scroll-snap-type: x mandatory;
}

.bx-vhis-compare .review-card {
    width: 320px;
    min-height: 300px;
    scroll-snap-align: start;
    border-radius: var(--radius);
    background: #F9FAFB;
    padding: 24px;
    flex-shrink: 0;
    position: relative;
    display: flex;
    flex-direction: column;
}

.bx-vhis-compare .review-bottom {
    /*position: absolute;*/
    bottom: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
}

.bx-vhis-compare .review-user {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.bx-vhis-compare .review-user-iva {
    width: 48px;
    height: 48px;
    border-radius: 48px;
    overflow: hidden;
    
}

.bx-vhis-compare .review-card h3 {
    margin: 0 0 16px;
    font-size: 20px;
    line-height: 28px;
    color: #005697;
}

.bx-vhis-compare .review-card p,
.bx-vhis-compare .review-card span {
    margin: 0;
    color: #000;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
}

.bx-vhis-compare .hero__media {
    width: 600px;
}

.bx-vhis-compare .questions-section {
    padding: 128px 0;
    background-color: #fff;
}

.bx-vhis-compare .quection-title {
    margin: 0;
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    color: #005697;
    margin-bottom: 40px;
}
.bx-vhis-compare .btn-quote-now{
  width: 322px;
  height: 48px;
  background-color: #E00842;
  color: #fff;
}
.bx-vhis-compare .btn-quote-now:hover{
  background-color: #B30635;
}
/* Mobile: hero__media should be on top (right on top, left below) */


.bx-vhis-compare .anchor-ani .anchor-disclaimer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px 0px;
    box-sizing: border-box;
    background: #F7FDFF;
    height: 50px;
    opacity: 1;
    gap: 12px;
}
.bx-vhis-compare .anchor-ani .anchor-disclaimer span {
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    vertical-align: middle;
}

@media (max-width: 850px) {
  .bx-vhis-compare .anchor-content{
    padding: 35px 24px 0 24px;
  }
}

@media (max-width: 768px) {
    .bx-vhis-compare .hero__grid {
        grid-template-columns: 1fr;
        grid-template-areas:
            "media"
            "content";
    }

    .bx-vhis-compare .hero__media {
        grid-area: media;
        width: 100%;
    }

    .bx-vhis-compare .hero__content {
        grid-area: content;
        padding: 0 16px;
        width: 520px;
    }
}


.bx-vhis-compare .price-box {
    font-family: Arial, sans-serif;
    color: #005697;
    margin-bottom: 24px;
}

.bx-vhis-compare .price-top {
    display: flex;
}
/* 左上角 HK$ */
.bx-vhis-compare .currency-top {
    font-size: 14px;
    margin-bottom: 2px; /* 和下面价格的距离 */
    margin-right: 8px;
    font-weight: 500;
    line-height: 20px;
}

/* 主价 */
.bx-vhis-compare .current-price {
    margin-bottom: 6px;
    display: flex;
    align-items: end;
}

.bx-vhis-compare .amount {
    font-size: 40px;
    font-weight: 500;
    line-height: 48px;
    vertical-align: middle;
}

.bx-vhis-compare .decimal {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    vertical-align: top;
}

.per,
.bx-vhis-compare .note {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    vertical-align: top;
}

/* 原价 + 折扣 */
.bx-vhis-compare .old-price-row {
    font-size: 14px;
    margin-top: 16px;
}

.bx-vhis-compare .old-price {
    text-decoration: line-through;
    margin-right: 8px;
    color: #00457A99;
}

.bx-vhis-compare .discount-tag {
    background-color: #005697;
    color: #fff;
    padding: 2px 4px;
    border-radius: 4px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
}

.bx-vhis-compare .list-content {
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

.bx-vhis-compare .plan-list {
    display: flex;
    align-items: flex-start;
    gap:8px;
}
    .bx-vhis-compare .plan-list .list-text sup {
        font-size: 0.75em;
        vertical-align: super;
        line-height: 0;
    }

    .bx-vhis-compare .plan-list:last-child {
        margin-bottom: 0;
    }

.bx-vhis-compare .plan-img {
    width: 20px;
    height: 20px;
    line-height: 20px;
}

.bx-vhis-compare .list-text {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    margin: 0;
}
.bottom-btn {
    pointer-events: auto;
}
.bx-vhis-compare .bottom-btn {
    display: flex;
    margin-top: 24px;
    height: 48px;
    align-items: center;
    cursor: pointer;
    position: absolute;
    bottom: 24px;
}

.bx-vhis-compare .step-btn {
    display: flex;
    margin-top: 24px;
    height: 36px;
    align-items: center;
    cursor: pointer;
}

.bx-vhis-compare .step-back {
    background-color: #C0EDFF;
    padding-top: 32px;
    position: relative;
}

.bx-vhis-compare .step-back2 {
    background-color: #D7FDFF;
}

.bx-vhis-compare .step-back3 {
    background-color: #F2FCFF;
}

.bx-vhis-compare .step-text {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #005697;
}

.bx-vhis-compare .btn-img {
    width: 20px;
    height: 20px;
    margin-right: 8px;
}

.bx-vhis-compare .step-btn-img {
    width: 20px;
    height: 20px;
    margin-left: 8px;
}

.bx-vhis-compare .bottom-text {
    color: #005697;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    margin: 0;
}

.bx-vhis-compare .insuranc-explanation {
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    margin: auto 0px;
    padding-top: 48px;
    width: 95%;
}

.bx-vhis-compare .insurance-desc {
    display: flex;
    margin-bottom: 12px;
}

    .bx-vhis-compare .insurance-desc:last-child {
        margin-bottom: 0;
    }

    .bx-vhis-compare .insurance-desc p {
        margin: 0;
    }

    .bx-vhis-compare .insurance-desc .insurance-desc-left {
        width: 12px;
        margin-right: 10px;
        flex-shrink: 0;
    }

.bx-vhis-compare .offer-title {
    text-align: center;
    color: #005697;
    font-weight: 500;
    margin: 0;
    font-size: 40px;
    line-height: 48px;
    margin-bottom: 32px;
}

.bx-vhis-compare .offer-desc {
    margin: 0;
    text-align: center;
    font-weight: 400;
    font-size: 16px;
    color: #000;
    line-height: 24px;
    margin-bottom: 48px;
}

.bx-vhis-compare .offers-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 52px;
    gap:16px;
}

    .bx-vhis-compare .offers-bottom a {
        flex-shrink: 0;
    }

.bx-vhis-compare .caseStudy {
    height: 900px;
    background-color: #F9FAFB;
    padding-top: 128px;
    position: relative;
}

.bx-vhis-compare .caseStudy-compare {
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    padding-top: 48px;
    -ms-overflow-style: none; /* IE/Edge */
    scrollbar-width: none; /* Firefox */
}

.bx-vhis-compare .caseStudy-card {
    width: 373px;
    height: 548px;
    position: relative;
    flex-shrink: 0;
}

.bx-vhis-compare .caseStudy h2 {
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    color: #005697;
    margin: 0;
}

.bx-vhis-compare .caseStudy-img {
    position: absolute;
    bottom: 0;
    width: 373px;
    height: 480px;
}

.bx-vhis-compare .caseStudy-img2 {
    position: absolute;
    top: 0;
    width: 373px;
    height: 480px;
}

.bx-vhis-compare .caseStudy-content {
    background-color: #fff;
    border-radius: 16px;
    padding: 16px;
    bottom: 16px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 341px;
}

.bx-vhis-compare .caseStudy-content2 {
    background-color: #fff;
    border-radius: 16px;
    padding: 16px;
    bottom: 84px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 341px;
}

.bx-vhis-compare .case-title {
    display: flex;
    align-items: baseline;
    margin-bottom: 16px;
}

.bx-vhis-compare .case-name {
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    color: #005697;
}

.bx-vhis-compare .case-desc {
    margin-left: 24px;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: rgba(0, 0, 0,0.7);
}

.bx-vhis-compare .case-line {
    display: inline-block;
    width: 1px;
    height: 12px;
    background-color: rgba(0, 39, 66, 0.5);
    margin: 0 12px;
}

.bx-vhis-compare .case-content {
    display: inline-block;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000;
    margin: 0;
}



.bx-vhis-compare .caseStudy-content a {
    display: inline-block;
    color: #005697;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
    vertical-align: middle;
    height: 48px;
    line-height: 48px;
    letter-spacing: -0.3px;
}

.bx-vhis-compare .caseStudy-content2 a {
    display: inline-block;
    color: #005697;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
    vertical-align: middle;
    height: 48px;
    line-height: 48px;
}

.bx-vhis-compare .caseStudy-bottom {
    position: fixed;
    bottom: 24px;
    left: 24px;
    width: 480px;
    min-height: 280px;
    background-color: #E42558;
    border-radius: 16px;
    padding: 24px;
    z-index: 1000;
}

.bx-vhis-compare .case-popup-content {
    border-radius: 16px;
    font-weight: 500;
    font-size: 16px;
    line-height: 36px;
    letter-spacing: -3%;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.bx-vhis-compare .case-popup-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #FFFFFF;
}
.bx-vhis-compare .case-popup-text1 {
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    letter-spacing: 0px;
    color: #FFFFFF;
}
.bx-vhis-compare .case-popup-text2 {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -3%;
    color: #FFFFFF;
}

.bx-vhis-compare .case-popup-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 24px;
    height: 24px;
    cursor: pointer;
}

.bx-vhis-compare .case-popup-content h2 {
    margin: 0;
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    letter-spacing: -3%;
    margin-bottom: 16px;
    color: #fff;
}

.bx-vhis-compare .case-popup-content p {
    margin: 0;
    margin-bottom: 16px;
}

.bx-vhis-compare .btn-popup-btn {
    height: 48px;
    border-radius: 50px;
    border-width: 1px;
    opacity: 1;
    gap: 10px;
    padding-top: 12px;
    padding-right: 24px;
    padding-bottom: 12px;
    padding-left: 24px;
    color: #005697;
    border: 1px solid #04AFFF;
    width: 155px;
    background: #fff;
}

    .bx-vhis-compare .btn-popup-btn:hover {
        color: #00457A;
        background-color: #EAF8FF;
        border: 1px solid #04AFFF;
    }

.bx-vhis-compare .supportsection {
    background-color: #fff;
    padding: 128px 0;
}

.bx-vhis-compare .support-title {
    margin: 0;
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    color: #005697;
}

.bx-vhis-compare .supportsection .container {
    display: flex;
    align-items: center;
}

.bx-vhis-compare .support-content {
    display: flex;
    align-items: center;
}

.bx-vhis-compare .support-titlecontent {
    width: 292px;
    flex-shrink: 0;
}
    .bx-vhis-compare .support-titlecontent h2 {
        font-size: 40px;
        line-height: 48px;
        color: #005697;
        font-weight: 500;
    }
.bx-vhis-compare .health-blog {
    background-color: #FBFBFB;
    padding: 128px 0;
}

@media (max-width: 768px) {
    .bx-vhis-compare .case-popup-text1,
    .bx-vhis-compare .promocode-modal-desc1 {
        font-size: 22px;
        line-height: 30px;
    }
    .bx-vhis-compare .supportsection {
        padding: 64px 0;
    }

    .bx-vhis-compare .reviews {
        padding: 128px 0;
    }

    .bx-vhis-compare .questions-section {
        padding: 64px 0;
    }

    .bx-vhis-compare .health-blog {
        padding: 64px 0;
    }

    .bx-vhis-compare .support-content {
        display: flex;
        flex-wrap: wrap;
    }
}

.bx-vhis-compare .health-title {
    margin: 0;
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    color: #005697;
    text-align: center;
}

.bx-vhis-compare .health-bottom {
    display: flex;
    justify-content: center;
    margin-top: 48px;
}

.bx-vhis-compare .btn-health {
    width: 128px;
    height: 56px;
    background-color: #fff;
    color: #005697;
    border: 1px solid #04AFFF;
}

    .bx-vhis-compare .btn-health:hover {
        color: #00457A;
        background-color: #EAF8FF;
        border: 1px solid #04AFFF;
    }

.bx-vhis-compare .anchor-ani {
    height: 900px;
    overflow: hidden;
    position: relative;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    background-color: #fff;
}

.bx-vhis-compare .ani-img {
    width: 2400px;
    height: 2400px;
    max-width: 2400px;
    position: absolute;
    left: 50%;
    top: 300px;
    transform: translateX(-50%) rotate(0deg);
    transform-origin: 50% 50%;
    transition: transform 0.35s ease;
}

.bx-vhis-compare .anchor-content {
    padding: 148px 144px 0 144px;
}

.bx-vhis-compare .anchor-title {
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    color: #005697;
    text-align: center;
    margin: 0;
    margin-bottom: 12px;
}
.bx-vhis-compare .anchor-minertitle{
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #005697;
    text-align: center;
    margin: 0;
    margin-bottom: 8px;
}
.bx-vhis-compare .content-img {
    width: 590px;
    margin: 0 auto;
    position: relative;
    display: block;
}

.bx-vhis-compare .quotation-img {
    position: absolute;
    inset: 0;
    object-fit: cover; /* 如果想铺满 */
    z-index: 0;
    pointer-events: none;
    width: 100%;
}

.bx-vhis-compare .qutation-contet {
    padding: 24px 63px;
    display: flex;
}

    .bx-vhis-compare .qutation-contet p {
        margin-top: 0;
        margin-bottom: 0;
        display: inline-block;
        color: #000;
    }

.bx-vhis-compare .qutation-left {
    margin-right: 24px;
    width: 80px;
    flex-shrink: 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
}

.bx-vhis-compare .qutation-right {
    font-size: 16px;
    line-height: 24px;
}

.bx-vhis-compare .anchor-bottom {
    margin-top: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.bx-vhis-compare .anchor-mobile {
    display: none;
}

.bx-vhis-compare .anchor-left-btn {
    width: 48px;
    height: 48px;
    cursor: pointer;
    z-index: 9;
}

.bx-vhis-compare .anchor-right-btn {
    width: 48px;
    height: 48px;
    cursor: pointer;
    z-index: 9;
}

.bx-vhis-compare .anchor-bottom-text {
    display: inline-block;
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    color: #000;
    width: 656px;
    text-align: center;
    margin: 0;
}

.bx-vhis-compare .last-question {
    margin: 0 0 16px 0;
    color: #000;
    letter-spacing: 0;
}

.bx-vhis-compare .anchor-bottom-content {
    position: absolute;
    padding: 16px 24px;
    bottom: 64px;
    left: 32px;
    background-color: #FFFFFF;
    border-radius: 16px;
    box-shadow: 0px 4px 16px 0px #0000001F;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.bx-vhis-compare .anchor-bottom-content-text1 {
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;
    color: #000;
    margin: 0;
}

.bx-vhis-compare .anchor-bottom-content-text2 {
    font-weight: 600;
    font-size: 20px;
    line-height: 28px;
    color: #005697;
    margin: 0;
}

.bx-vhis-compare .anchor-bottom-content-text3 {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000;
    margin: 0;
    width:65%;
}

.bx-vhis-compare .anchor-bottom-content-btn {
    min-width: 108px;
    color: #fff;
    background-color: #E00842;
    padding: 8px 16px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
}
.anchor-bottom-content-gap16 {
    display: flex;
    gap: 16px;
}
.anchor-bottom-content-gap24 {
    display: flex;
    gap: 8px;
    align-items: stretch;
    flex-direction: column;
}
.anchor-bottom-content-gap8 {
    display: flex;
    flex-direction: row;
    gap: 8px;
    justify-content: space-between;
}

.bx-vhis-compare .anchor-bottom-content-btn:hover {
    background-color: #B30635;
}

.bx-vhis-compare .table-wrap {
    overflow: auto;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 12px;
    background: #fff;
    max-width: 900px;
}

/* FAQ: allow horizontal scroll for wide tables */
.bx-vhis-compare .faq-table-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none; /* IE/Edge */
    scrollbar-width: none; /* Firefox */
    width: 100%;
}

    .bx-vhis-compare .faq-table-scroll::-webkit-scrollbar {
        display: none; /* Chrome/Safari */
    }

    .table-wrap table,
    .bx-vhis-compare .faq-table-scroll table {
        width: 100%;
    }

.bx-vhis-compare table {
    width: 100%;
    border-collapse: collapse;
    min-width: 700px;
    border: 1px solid #E5E7EB;
    margin-bottom: 16px;
}

.bx-vhis-compare th, .bx-vhis-compare td {
    padding: 12px 14px;
    border-bottom: 1px solid rgba(229, 231, 235, 0.9);
    border-right: 1px solid #E5E7EB;
    vertical-align: top;
}

.bx-vhis-compare th {
    background: #F2FCFF;
    text-align: left;
    font-size: 14px;
    font-weight: 500;
    color: #000;
    text-align: center;
    line-height: 20px;
}

.bx-vhis-compare td {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #000;
    text-align: center;
}

.bx-vhis-compare tr:last-child td {
    border-bottom: 0;
}

.bx-vhis-compare td:last-child {
    border-right: 0;
}

.bx-vhis-compare .th-w354 {
    width: 354px;
}

.bx-vhis-compare .th-w140 {
    width: 140px;
}

.bx-vhis-compare .th-w308 {
    width: 308px;
}

.bx-vhis-compare .mobile-header-section {
    background-color: #C1EAFD;
    padding: 0 0 64px 0;
    display: none;
}

.bx-vhis-compare .mobile-header-img {
    width: 100%;
    height: 100%;
}

.bx-vhis-compare .mobile-header-backimg {
    width: 100%;
    height: 100%;
}

.bx-vhis-compare .mobile-content {
    padding: 0 16px;
    padding-top: 32px;
}

.bx-vhis-compare .mobile-title {
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    color: #00457A;
    text-align: center;
    margin: 0;
}

.bx-vhis-compare .title-sec-color {
    color: #04AFFF;
}

.bx-vhis-compare .mobile-header-bottom {
    padding: 64px 16px 0 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.bx-vhis-compare .mobile-bottom-text {
    text-align: center;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #000;
    margin: 0;
    letter-spacing: 0;
}

.bx-vhis-compare .mobile-moredetail-a {
    display: inline-block;
    margin: auto;
    height: 48px;
    font-size: 14px;
    line-height: 48px;
    color: #00457A;
    padding: 0 4px;
}

.bx-vhis-compare .mobile-bottom-btngroup {
    margin-top: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
}

.bx-vhis-compare .mobile-btn-conpare {
    width: 358px;
    height: 56px;
    background-color: #04Afff;
    color: #fff;
}

    .bx-vhis-compare .mobile-btn-conpare:hover {
        background-color: #00A9FF;
        color: #00457A;
    }

.bx-vhis-compare .mobile-btn-bacWhite {
    width: 358px;
    height: 56px;
    background-color: #fff;
    color: #005697;
    border: 1px solid #04AFFF;
}

    .bx-vhis-compare .mobile-btn-bacWhite:hover {
        color: #00457A;
        background-color: #EAF8FF;
        border: 1px solid #04AFFF;
    }
/* Mobile: grid-compare-4 should be single-line horizontal scroll + hide scrollbar */
@media (max-width: 768px) {
    .bx-vhis-compare .anchor-bottom-content-text3 {
        width: 60%;
    }
    .bx-vhis-compare .product-card-title {
        font-size: 16px;
        line-height: 24px;
    }

    .bx-vhis-compare .mobile-content {
        padding-top: 32px;
    }
    .anchor-bottom-content-gap8 {
        display: flex;
        flex-direction: row;
        gap: 8px;
    }
    .bx-vhis-compare .anchor-ani .anchor-disclaimer {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        padding: 16px;
        box-sizing: border-box;
        background: #F7FDFF;
        height: auto;
        opacity: 1;
        gap: 12px;
        text-align: left;
    }
    .anchor-bottom-content-gap24 {
        display: flex;
        gap: 16px;
        align-items: stretch;
        flex-direction: column;
    }


    .bx-vhis-compare .hero-section {
        display: none;
    }

    .bx-vhis-compare .mobile-header-section {
        display: block;
    }

    .bx-vhis-compare .grid-compare-4 {
        display: flex;
        flex-wrap: nowrap;
        gap: 16px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        padding-bottom: 0;
        -ms-overflow-style: none; /* IE/Edge */
        scrollbar-width: none; /* Firefox */
        padding-right: 144px;
    }

        .bx-vhis-compare .grid-compare-4::-webkit-scrollbar {
            display: none; /* Chrome/Safari */
        }

        .bx-vhis-compare .grid-compare-4 > .product-card {
            flex: 0 0 86vw;
            scroll-snap-align: start;
        }

    .bx-vhis-compare .insurancePlan-title {
        font-size: 28px;
        line-height: 36px;
    }

    .bx-vhis-compare .insurancePlan-section {
        padding: 64px 0;
    }

    .bx-vhis-compare .anchor-nav__tab {
        display: none;
    }

    .bx-vhis-compare .anchor-ani {
        height: 790px;
        overflow: hidden;
        position: relative;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        background-color: #fff;
    }

    .bx-vhis-compare .ani-img {
        width: 2400px;
        height: 2400px;
        max-width: 2400px;
        position: absolute;
        left: 50%;
        top: 120px;
        transform: translateX(-50%) rotate(0deg);
        transform-origin: 50% 50%;
        transition: transform 0.35s ease;
    }

    .bx-vhis-compare .anchor-content {
        padding: 64px 16px 0 16px;
    }

    .bx-vhis-compare .anchor-title {
        font-weight: 500;
        font-size: 28px;
        line-height: 36px;
        color: #005697;
        text-align: center;
        margin: 0;
        margin-bottom: 32px;
        padding: 0 24px;
    }
    .bx-vhis-compare .anchor-minertitle{
        display: none;
    }
    .bx-vhis-compare .content-img {
        display: none;
    }

    .bx-vhis-compare .anchor-bottom {
        display: none;
    }

    .bx-vhis-compare .anchor-mobile {
        display: block;
    }

    .bx-vhis-compare .anchor-bottom-text {
        margin: 0;
        font-weight: 400;
        font-size: 20px;
        line-height: 26px;
        color: #000;
        width: 100%;
    }

    .bx-vhis-compare .anchor-hover {
        display: flex;
        margin-top: 8px;
        height: 72px;
        width: 100%;
        justify-content: center;
        align-items: center;
        cursor: pointer;
    }

    .bx-vhis-compare .anchor-info-imgdiv {
        position: relative;
        display: flex;
    }

    .bx-vhis-compare .anchor-hover-bubble {
        position: absolute;
        left: 50%;
        top: calc(100% + 11px);
        transform: translateX(-50%);
        width: 200px;
        background: #04AFFF;
        border-radius: 16px;
        box-shadow: 0 10px 26px rgba(10, 20, 32, 0.12);
        padding: 14px 16px;
        z-index: 20;
        display: none;
    }

        .bx-vhis-compare .anchor-hover-bubble::before {
            content: '';
            position: absolute;
            top: -8px;
            left: 50%;
            transform: translateX(-50%);
            width: 0;
            height: 0;
            border-left: 10px solid transparent;
            border-right: 10px solid transparent;
            border-bottom: 8px solid #04AFFF; /* 三角形 */
        }

    .bx-vhis-compare .anchor-hover-bubble-inner {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .bx-vhis-compare .anchor-hover-bubble-text {
        margin: 0;
        color: #fff;
        font-weight: 400;
        font-size: 14px;
        line-height: 20px;
    }

    .bx-vhis-compare .qutation-left {
        text-align: center;
        margin: 0;
        margin-right: 8px;
        width: auto;
    }

    .bx-vhis-compare .anchor-info-img {
        width: 16px;
        height: 16px;
    }

    .bx-vhis-compare .anchor-mobile-btn {
        margin-top: 84px;
        display: flex;
        justify-content: space-between;
        z-index: 8;
    }

    .bx-vhis-compare #life-stage {
        padding: 0;
    }

    .bx-vhis-compare .anchor-nav__tab_top {
        padding: 0;
    }
}

/* ===== Case-a-btn Popup (shared) ===== */
.bx-vhis-compare .case-a-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 9999;
    display: none;
}

.bx-vhis-compare .case-a-modal {
    position: fixed;
    z-index: 10000;
    background: #fff;
    border-radius: 24px;
    display: none;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0,0,0,0.25);
}

/* Desktop: 969 x 864 (scaled in JS) */
@media (min-width: 769px) {
    .bx-vhis-compare .case-a-modal {
        width: 969px;
        height: 864px;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}

/* Mobile: full width, height = viewport - 64px */
@media (max-width: 768px) {
    .bx-vhis-compare .case-a-modal {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: 100vw;
        height: calc(100vh - 64px);
        border-radius: 24px 24px 0 0;
        transform: none;
    }
}

.bx-vhis-compare .case-a-modal-close {
    position: absolute;
    top: 24px;
    right: 24px;
    border: 0;
    background: rgba(0,0,0,0);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

    .bx-vhis-compare .case-a-modal-close img {
        width: 24px;
        height: 24px;
    }

.bx-vhis-compare .case-a-modal-inner {
    height: 100%;
    padding: 60px 32px 32px;
    box-sizing: border-box;
}

.bx-vhis-compare .case-a-modal-scroll {
    height: 100%;
    overflow: auto;
}

.bx-vhis-compare .case-a-modal-title {
    margin: 32px 0 16px;
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    color: #005697;
    text-align: center;
}


.bx-vhis-compare .case-a-modal-body {
}

.bx-vhis-compare .case-a-modal-avatar {
    display: flex;
    justify-content: center;
    align-items: center;
}

.bx-vhis-compare .case-a-modal-avatar-img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}

.bx-vhis-compare .case-a-modal-desc {
    margin: 0;
    padding: 0 80px;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #000;
    box-sizing: border-box;
    text-align: center;
}

.bx-vhis-compare .case-a-modal-tags {
    margin: 32px 0 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: rgba(0, 0, 0, 0.7);
}

/* Mobile tags: hidden by default, shown in @media */
.bx-vhis-compare .case-a-modal-tags-mobile {
    display: none;
    width: 100%;
    margin: 32px 0 48px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
    color: rgba(0, 0, 0, 0.7);
}

.bx-vhis-compare .case-a-modal-tags-mobile-row {
    display: flex;
    justify-content: center;
    align-items: center;
}


.bx-vhis-compare .case-a-tag {
    display: flex;
    align-items: center;
}

.bx-vhis-compare .case-a-tag-label {
    margin-right: 8px;
}

.bx-vhis-compare .case-a-tag-value {
    font-weight: 400;
}

.bx-vhis-compare .case-a-tag-divider {
    display: inline-block;
    width: 0;
    height: 12px;
    border-left: 1px solid rgba(0, 39, 66, 0.5);
    margin: 0 12px;
}

/* ===== Case-a content wrap ===== */
.bx-vhis-compare .case-a-content-wrap {
    padding: 24px;
    border: 1px solid #E5E7EB;
    border-radius: 24px;
    background: #fff;
}

.bx-vhis-compare .case-a-content-title {
    margin: 0;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    color: #005697;
}

.bx-vhis-compare .case-a-content-item {
    display: flex;
    align-items: flex-start;
    margin-top: 32px;
}

.bx-vhis-compare .case-a-content-photo {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    padding: 8px;
    flex-shrink: 0;
    object-fit: cover;
    flex: 0 0 auto;
    margin-right: 8px;
}

.bx-vhis-compare .case-a-content-right {
    display: flex;
    align-items: flex-start;
    gap: 24px;
    flex: 1;
    padding: 16px 8px;
}

.bx-vhis-compare .case-a-content-age {
    width: 65px;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #000;
    flex: 0 0 auto;
}

.bx-vhis-compare .case-a-content-desc {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

.bx-vhis-compare .case-a-qa-annotation p,
.bx-vhis-compare .case-a-qa-annotation span {
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: rgba(0, 0, 0, 0.7);
    margin-top: 24px;
}
.bx-vhis-compare .case-a-qa-annotation span {
    margin-top: 12px;
}
/* ===== Q&A inside popup (case-a) ===== */

/* Align QA block visually with .case-a-content-desc column */
/* case-a-content-item layout: photo(76) + photo-margin(8) + content-right padding-left(8) + age(65) + gap(24) = 181 */
.case-a-qa-wrap1,
.bx-vhis-compare .case-a-qa-wrap2 {
    margin-left: 181px;
    margin-top: 16px; /* tweak to visually align with desc */
    width: calc(100% - 181px);
    box-sizing: border-box;
}

/* Make heading closer to the desc top for better row alignment */
.bx-vhis-compare .case-a-qa-heading {
    margin: 0 0 16px;
}

/* Placeholder 1 line above the Q&A */
.bx-vhis-compare .case-a-qa-heading {
    margin: 16px 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

/* Each question item: background + single border between adjacent items */
.bx-vhis-compare .case-a-qa-item {
    background: #fff;
    border-top: 1px solid #E5E7EB;
}

    .bx-vhis-compare .case-a-qa-item:last-child {
        border-bottom: 1px solid #E5E7EB;
    }

/* Collapsed question row */
.bx-vhis-compare .case-a-qa-question {
    width: 100%;
    border: 0;
    background: transparent;
    cursor: pointer;
    padding: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.bx-vhis-compare .case-a-qa-question-text {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #005697;
    text-align:left;
}

.bx-vhis-compare .case-a-qa-toggle-icon {
    width: 24px;
    height: 24px;
    flex: 0 0 auto;
    transition: transform 0.2s ease;
}



.bx-vhis-compare .case-a-qa-answer {
    margin-top: 8px; /* expanded: distance from question */
    padding: 0 24px 24px;
    box-sizing: border-box;
}

.bx-vhis-compare .case-a-qa-answer-row {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 12px;
}

.bx-vhis-compare .case-a-qa-answer-row--last {
    margin-bottom: 0;
}

.bx-vhis-compare .case-a-qa-answer-icon {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
}

.bx-vhis-compare .case-a-qa-answer-text {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000;
}




/* ===== Mobile reflow for case-a popup ===== */
@media (max-width: 768px) {
    /* Mobile tags: hide desktop block, show two-row mobile block */
    .bx-vhis-compare .case-a-modal-tags-desktop {
        display: none;
    }

    .bx-vhis-compare .case-a-modal-tags-mobile {
        display: flex;
    }

        .bx-vhis-compare .case-a-modal-tags-mobile .case-a-tag {
            display: flex;
            justify-content: center;
        }

    /* Content items layout: keep photo position, stack right column under photo */
    .bx-vhis-compare .case-a-content-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        margin-top: 32px;
    }



    /* Don’t move the photo x-position relative to desktop design */
    .case-a-content-photo.case-a-content1-img,
    .bx-vhis-compare .case-a-content-photo.case-a-content2-img {
        margin-right: 0;
    }

    .bx-vhis-compare .case-a-content-right {
        width: 100%;
        padding: 0;
        flex: none;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .bx-vhis-compare .case-a-content-age {
        width: auto;
        text-align: left !important;
    }


    /* Remove the desktop gap/margin hacks on mobile */
    .case-a-qa-wrap,
    .case-a-qa-wrap1,
    .bx-vhis-compare .case-a-qa-wrap2 {
        margin-left: 0 !important;
        margin-top: 0 !important;
        width: 100% !important;
    }

    /* Order inside right column: age -> desc -> qa */
    .bx-vhis-compare .case-a-content-desc {
        width: 100%;
        text-align: left !important;
    }


    .bx-vhis-compare .case-a-qa-heading {
        text-align: left !important;
    }


    .bx-vhis-compare .case-a-qa-list {
        width: 100%;
    }

    .bx-vhis-compare .case-a-qa-item {
        padding-left: 0;
        padding-right: 0;
    }
}

/* ===== Coverage popup (new) ===== */
.bx-vhis-compare .coverage-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 9998;
    display: none;
}

.bx-vhis-compare .coverage-modal {
    position: fixed;
    z-index: 9999;
    background: #fff;
    border-radius: 24px;
    display: none;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0,0,0,0.25);
}

/* Web: 969 x 864 */
@media (min-width: 769px) {
    .bx-vhis-compare .coverage-modal {
        width: 969px;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}



.bx-vhis-compare .coverage-modal-inner {
    height: 100%;
    padding: 32px;
    box-sizing: border-box;
}

.bx-vhis-compare .coverage-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}

.bx-vhis-compare .coverage-modal-title {
    margin: 0;
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    color: #000;
}

.bx-vhis-compare .coverage-modal-close {
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .bx-vhis-compare .coverage-modal-close img {
        width: 36px;
        height: 36px;
        display: block;
    }

.bx-vhis-compare .coverage-modal-body {
    margin-top: 24px;
    overflow: auto;
    height: calc(100% - 84px);
}

.bx-vhis-compare .coverage-modal-desc p {
    margin: 0;
    margin-top: 24px;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #000;
}
/* ===== Coverage popup: horizontal 4-col table ===== */
.bx-vhis-compare .coverage-horizontal-scroll {
    border: 1px solid #E5E7EB;
    background: #fff;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none; /* IE/Edge */
    scrollbar-width: none; /* Firefox */
    width: 100%;
}

    .bx-vhis-compare .coverage-horizontal-scroll::-webkit-scrollbar {
        display: none;
    }

.bx-vhis-compare .coverage-horizontal-scroll-row {
    display: flex;
    flex-wrap: nowrap;
}

.bx-vhis-compare .coverage-horizontal-scroll-col {
    width: 226px;
    flex-shrink: 0;
    border-right: 0;
    box-shadow: inset -1px 0 0 #E5E7EB;
    box-sizing: border-box;
}


.bx-vhis-compare .coverage-horizontal-scroll-row .coverage-horizontal-scroll-col:last-child {
    box-shadow: none;
}


/* ===== Row 1: labels ===== */
.bx-vhis-compare .coverage-horizontal-scroll-row--labels {
    /* Each column height is driven by padding + content */
    border-bottom: 0;
}

    /* Draw the row1/row2 separator as 1px per-column (fix: mobile last column missing) */
    .bx-vhis-compare .coverage-horizontal-scroll-row--labels .coverage-horizontal-scroll-col {
        position: relative;
    }

        .bx-vhis-compare .coverage-horizontal-scroll-row--labels .coverage-horizontal-scroll-col::after {
            content: '';
            position: absolute;
            left: 0;
            right: 0;
            bottom: -1px;
            height: 1px;
            background: #E5E7EB;
            pointer-events: none;
        }



.bx-vhis-compare .coverage-label-col {
    height: 164px;
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
}

.bx-vhis-compare .coverage-label-icon {
    width: 80px;
    height: 80px;
    margin: 0 0 12px;
    display: block;
    object-fit: contain;
}

.bx-vhis-compare .coverage-label-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

/* ===== Row 2: answers ===== */
.bx-vhis-compare .coverage-answer-col {
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.bx-vhis-compare .coverage-answer-item {
    display: flex;
    align-items: flex-start;
    padding-bottom: 24px;
}

.bx-vhis-compare .coverage-answer-col .coverage-answer-item:last-child {
    padding-bottom: 0;
}


.bx-vhis-compare .coverage-answer-icon {
    width: 20px;
    height: 20px;
    margin-right: 16px;
    display: block;
    object-fit: contain;
    flex-shrink: 0;
}

.bx-vhis-compare .coverage-answer-text {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000;
}
/* Mobile: full width, height = viewport - 64px */
@media (max-width: 768px) {
    .bx-vhis-compare .coverage-modal {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: 100vw;
        height: calc(100vh - 64px);
        border-radius: 20px 20px 0 0;
        transform: none;
    }

    .bx-vhis-compare .coverage-modal-title {
        font-size: 22px;
        line-height: 30px;
    }
}

/* ===== Offers popup (new) ===== */
.bx-vhis-compare .offers-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 9997;
    display: none;
}

.bx-vhis-compare .offers-modal {
    position: fixed;
    z-index: 9999;
    background: #fff;
    border-radius: 24px;
    display: none;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0,0,0,0.25);
    box-sizing: border-box;
}

.bx-vhis-compare .offers-modal-inner {
    padding: 32px;
    box-sizing: border-box;
}

.bx-vhis-compare .offers-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}


.bx-vhis-compare .offers-modal-title {
    margin: 0 0 8px 0;
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    color: #000;
}


.bx-vhis-compare .offers-modal-close {
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

    .bx-vhis-compare .offers-modal-close img {
        width: 36px;
        height: 36px;
        display: block;
    }

.bx-vhis-compare .offers-modal-body {
    margin-top: 0;
    overflow: auto;
    max-height: calc(100vh - 64px - 84px);
}

.bx-vhis-compare .offers-modal-desc {
    margin: 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

/* ===== Offers popup tabs (new) ===== */
.bx-vhis-compare .offers-tabs {
    margin: 32px 0;
    display: flex;
    gap: 24px;
    align-items: flex-end;
    border-bottom: 1px solid #D1D5DB;
}

.bx-vhis-compare .offers-tab {
    padding: 16px 8px;
    appearance: none;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    height: 56px;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #005697;
    border-bottom: 4px solid transparent;
}

.bx-vhis-compare .offers-tab--active {
    border-bottom: 4px solid #04AFFF;
}

.bx-vhis-compare .offers-tab-panels {
    width: 100%;
}

.bx-vhis-compare .offers-tab-panel {
    display: none;
}

.bx-vhis-compare .offers-tab-panel--active {
    display: block;
}

/* ===== Offers popup: 5 rows x 3 cols table (fixed width + horizontal scroll) ===== */
.bx-vhis-compare .offers-table-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
    width: 100%;
}

    .bx-vhis-compare .offers-table-scroll::-webkit-scrollbar {
        display: none;
    }

.bx-vhis-compare .offers-discount-table {
    border-collapse: collapse;
    table-layout: fixed;
    /* 272 + 316.5 + 316.5 = 905.5 */
    width: 905.5px;
    min-width: 905.5px;
}

    .offers-discount-table th,
    .bx-vhis-compare .offers-discount-table td {
        padding: 12px 14px;
        border-bottom: 1px solid #E5E7EB;
        border-right: 1px solid #E5E7EB;
        vertical-align: middle;
        font-weight: 500;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #334155;
        text-align: center;
    }
    .bx-vhis-compare .offers-discount-table td:first-child{
        text-align: left;
    }
    .bx-vhis-compare .offers-discount-table th:first-child{
        text-align: center;
    }
    .bx-vhis-compare .offers-discount-table thead th {
        background-color: #F2FCFF;
        border-bottom: 1px solid #E5E7EB;
        vertical-align: bottom;
    }

    .bx-vhis-compare .offers-discount-table tbody td {
        background-color: #fff;
    }

    .offers-discount-table th:last-child,
    .bx-vhis-compare .offers-discount-table td:last-child {
        border-right: 0;
    }

    .bx-vhis-compare .offers-discount-table tbody tr:last-child td {
        border-bottom: 0;
    }
    .bx-vhis-compare .offers-discount-table .col-1 {
        width: 272px;
    }

    .bx-vhis-compare .offers-discount-table .col-2,
    .bx-vhis-compare .offers-discount-table .col-3 {
        width: 316.5px;
    }

    @media (max-width: 768px) {
    .bx-vhis-compare .offers-discount-table{

        /* 272 + 150 + 150 = 572 */
        width: 572px;
        min-width: 572px;
    }
    .bx-vhis-compare .offers-discount-table .col-2{
        width: 150px;
    }
    .bx-vhis-compare .offers-discount-table .col-3 {
        width: 150px;
    }
    }

/* 7-column (無索償折扣) fixed width: 272 + 6 * 105.5 = 905px */
.bx-vhis-compare .offers-discount-table--no-claim {
    width: 905px;
    min-width: 905px;
}


/* ===== Offers popup note (家庭折扣） ===== */
.bx-vhis-compare .offers-discount-note {
    margin-top: 16px;
    display: flex;
}
.bx-vhis-compare .offers-discount-note span{
  margin-right: 8px;
  flex-shrink: 0;
}
    .bx-vhis-compare .offers-discount-note p {
        margin: 0;
        font-size: 12px;
        line-height: 24px;
        font-weight: 400;
        color: rgba(0, 0, 0, 0.7);
    }







/* Desktop: content-driven height, JS will scale to fit viewport */
@media (min-width: 769px) {
    .bx-vhis-compare .offers-modal {
        width: 969px;
        left: 50%;
        top: 50%;
        transform-origin: center center;
        max-height: calc(100vh - 64px);
    }

}

/* Mobile: refer to case-a-modal sizing; padding 32 in .offers-modal-inner */
@media (max-width: 768px) {

    .bx-vhis-compare .offers-modal {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: 100vw;
        height: calc(100vh - 64px);
        border-radius: 20px 20px 0 0;
        transform: none;
    }

    .bx-vhis-compare .offers-modal-body {
        max-height: calc(100vh - 64px - 84px);
    }
    .bx-vhis-compare .anchor-bottom-content{
        left: 50%;
        bottom: 100px;
        transform: translatex(-50%);
        width: 95%;
        gap:4px;
    }
}

/* ===== Promocode popup (new) ===== */
.bx-vhis-compare .promocode-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 10001;
    display: none;
}

.bx-vhis-compare .promocode-modal {
    position: fixed;
    z-index: 10002;
    display: none;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 30px 80px rgba(0,0,0,0.25);
    box-sizing: border-box;
}

@media (min-width: 769px) {
    .bx-vhis-compare .promocode-modal {
        width: 560px;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        max-height: calc(100vh - 120px);
        overflow-y: auto;
    }
}

@media (max-width: 768px) {
    .bx-vhis-compare .promocode-modal {
        top: auto;
        bottom: 0px;
        width: auto;
        transform: none;
    }
}


.bx-vhis-compare .promocode-modal-inner {
    
    box-sizing: border-box;
}

.bx-vhis-compare .promocode-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.bx-vhis-compare .promocode-modal-headline,
.bx-vhis-compare .promocode-modal-title {
    color: #005697;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
}

.bx-vhis-compare .promocode-modal-close {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .bx-vhis-compare .promocode-modal-close img {
        width: 20px;
        height: 20px;
        display: block;
    }

.bx-vhis-compare .promocode-modal-body {
    
    min-height: 40px;
    display: flex;
    flex-direction: column;
    gap:24px;
}

.bx-vhis-compare .promocode-modal-desc1 {
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    letter-spacing: 0px;
    color: #005697;
}
.bx-vhis-compare .promocode-modal-desc2 {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -3%;
    color: #202020;
}

.bx-vhis-compare .promocode-modal-email {
    width: 100%;
    height: 72px;
    box-sizing: border-box;
    border: 1px solid #D1D5DB;
    border-radius: 100px;
    padding: 0 24px;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0;
    color: #000000;
    outline: none;
    background: #fff;
}
.promocode-modal-email.error {
     border: 1px solid #B30635;
    
}
.bx-vhis-compare .promocode-modal-email:hover {
    border: 1px solid #04AFFF
}
.promocode-modal-email-input {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.promocode-modal-email-error {
    visibility: hidden;
    min-height: 18px;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
    color: #B30635;
}

.bx-vhis-compare .promocode-modal-email::placeholder {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0;
    color: rgba(0, 0, 0, 0.3);
}

.bx-vhis-compare .promocode-consent-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8px;
}

.bx-vhis-compare .promocode-claim-btn {
    min-width: 150px;
    height: 52px;
    border-radius: 40px;
    border: 1px solid #04AFFF;
    background: #fff;
    color: #005697;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 14px 32px;
    margin-left: auto;
}

    .bx-vhis-compare .promocode-claim-btn:hover {
        color: #00457A;
        background-color: #EAF8FF;
        border: 1px solid #04AFFF;
    }
/* Disabled */
    .bx-vhis-compare .promocode-claim-btn:disabled {
        background: #fff;
        border-color: #04AFFF;
        color: #005697;
        cursor: not-allowed;
        opacity: 0.4;
    }
.bx-vhis-compare .promocode-success-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 10003;
    display: none;
}

.bx-vhis-compare .promocode-success-modal {
    position: fixed;
    z-index: 10004;
    display: none;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 30px 80px rgba(0,0,0,0.25);
    box-sizing: border-box;
}
.promocode-success-modal-top {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 24px;
}


.promocode-modal-inner {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #fff;
    border-radius: 24px;
    overflow: hidden;
    padding:24px;
    gap:32px;
}
.promocode-modal-header {
    flex-shrink: 0;
    position: sticky;
    top: 0;
    z-index: 10;
    background: #fff;
}

.promocode-modal-body {
    flex: 1;
    overflow-y: auto;
}
.promocode-modal-footer {
    flex-shrink: 0;
    background: #fff;
    padding: 16px 24px 24px;
}

    .promocode-claim-btn:disabled {
        background: #F2F2F2;
        color: #A9A9A9;
        border-color: #D9D9D9;
    }
    .promocode-claim-btn:not(:disabled) {
        background: #fff;
        color: #005697;
        border-color: #04AFFF;
    }
.promocode-consent-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.promocode-consent-checkbox,
.promocode-consent-checkbox2 {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
}
.promocode-modal-email {
    height: 56px;
    border-radius: 28px;
    padding: 0 20px;
    font-size: 16px;
}
@media (min-width: 769px) {
    .bx-vhis-compare .promocode-success-modal {
        width: auto;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}

@media (max-width: 768px) {
    .bx-vhis-compare .promocode-success-modal {
        left: 16px;
        right: 16px;
        top: auto;
        bottom: 16px;
        width: auto;
        transform: none;
    }
    .bx-vhis-compare .insurancePlan-card-content{
        width: 320px;
        min-height:750px;
    }
    .bx-vhis-compare .btn-quote-now{
        width: 272px;
    }
    .bx-vhis-compare .offers-modal-title{
        font-size: 22px;
    }
    .bx-vhis-compare .offers-modal-close img{
        width: 20px;
        height: 20px;
    }
    .bx-vhis-compare .case-a-modal-close img {
        width: 20px;
        height: 20px;
    }
}

.bx-vhis-compare .promocode-success-modal-inner {
    padding: 32px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.bx-vhis-compare .promocode-success-email-box {
    margin-bottom: 12px;
}
.bx-vhis-compare .promocode-success-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.bx-vhis-compare .promocode-success-modal-title {
    margin: 0;
    font-weight: 500;
    font-size: 28px;
    line-height: 36px;
    color: #005697;
}

.bx-vhis-compare .promocode-success-modal-close {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .bx-vhis-compare .promocode-success-modal-close img {
        width: 30px;
        height: 30px;
        display: block;
    }



.bx-vhis-compare .promocode-consent-checkbox,
.bx-vhis-compare .promocode-consent-checkbox2 {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bx-vhis-compare .promocode-consent-checkbox-img,
.bx-vhis-compare .promocode-consent-checkbox-img2 {
    width: 28px;
    height: 28px;
    display: block;
}

.bx-vhis-compare .promocode-consent-text {
    color: #000000;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0px;
}
    
.bx-vhis-compare .promocode-consent-link {
    color: #005697;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* ===== Promocode success: copy hint ===== */
.bx-vhis-compare .promocode-success-copy-hint {
    margin: 8px 0;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #3D7A00;
}


/* ===== Promocode success: content boxes ===== */
.bx-vhis-compare .promocode-success-box {
    width: 100%;
    box-sizing: border-box;
    padding: 40px 24px 24px;
    border: 1px solid #B2EEFF;
    border-radius: 16px;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.promocode-success-modal-body {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.bx-vhis-compare .promocode-success-box-promoword {
    position: absolute;
    left: -6px;
    top: -5px;
    align-items: center;
    gap: 8px;
    padding: 6px 35px 6px 12px;
    background: #0095A4;
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    clip-path: polygon( 0 0, 100% 0, calc(100% - 20px) 50%, 100% 100%, 0 100% );
}
.bx-vhis-compare .promocode-success-email-label,
.bx-vhis-compare .promocode-success-email-text {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -3%;
    color: #202020;
}

.bx-vhis-compare .promocode-success-box-title,
.bx-vhis-compare .promocode-success-box-title2 {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #005697;
    margin: 0;
    /*margin-bottom: 8px;*/
}


.bx-vhis-compare .promocode-success-code-box {
    width: 100%;
    height: 56px;
    border: 1px solid rgba(4, 175, 255, 1);
    border-radius: 0;
    padding: 0 16px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    border-radius: 8px;
    background-color: rgba(4, 175, 255, 0.1);
}


.bx-vhis-compare .promocode-success-code-left {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #005697;
}

.bx-vhis-compare .promocode-success-code-right {
    display: flex;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: #005697;
}

.bx-vhis-compare .promocode-success-code-copy-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-right: 8px;
}

.bx-vhis-compare .promocode-success-footnotes {
    margin-top: 8px;
}

.bx-vhis-compare .promocode-success-footnote {
    margin: 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 18px;
    color: rgba(0, 0, 0, 0.7);
}

    .bx-vhis-compare .promocode-success-footnote + .promocode-success-footnote {
        margin-top: 8px;
    }

.bx-vhis-compare .promocode-success-footnote-star {
    letter-spacing: 24px;
}

/* 让 grid-compare-4 不受 .container 左右 padding 影响，直接铺满视口 */
.bx-vhis-compare .hero-section > .container:last-child{
    max-width: none;
    width: auto;
    margin-left: calc(
        (100vw - var(--container-max)) / 2 +
        var(--container-pad) / 2
    );

    margin-right: 0;
    padding-right: 0;
    padding-left: 0;
}
.bx-vhis-compare .mobile-header-section > .container{
    max-width: none;
    width: auto;
    margin-right: 0;
    padding-right: 0;
}
.mobile-moredetail-a:hover{
    background-color: rgba(0, 69, 122, 0.08);
    color: #00457A;
}
.bx-vhis-compare .insurancePlan-section > .container:last-child{
    max-width: none;
    width: auto;
    margin-left: calc(
        (100vw - var(--container-max)) / 2 +
        var(--container-pad) / 2
    );

    margin-right: 0;
    padding-right: 0;
    padding-left: 0;
}
.bx-vhis-compare .insurancePlan-section > .container{
    max-width: none;
    width: auto;
    margin-right: 0;
    padding-right: 0;
}
.bx-vhis-compare .caseStudy > .container:last-child{
    max-width: none;
    width: auto;
    margin-left: calc(
        (100vw - var(--container-max)) / 2 +
        var(--container-pad) / 2
    );

    margin-right: 0;
    padding-right: 0;
    padding-left: 0;
}
.bx-vhis-compare .caseStudy > .container{
    max-width: none;
    width: auto;
    margin-right: 0;
    padding-right: 0;
}
.bx-vhis-compare .reviews > .container:last-child{
    max-width: none;
    width: auto;
    margin-left: calc(
        (100vw - var(--container-max)) / 2 +
        var(--container-pad) / 2
    );

    margin-right: 0;
    padding-right: 0;
    padding-left: 0;
}
.bx-vhis-compare .reviews > .container{
    max-width: none;
    width: auto;
    margin-right: 0;
    padding-right: 0;
}

.review-card-star {
    display: flex;
    align-items: center;
    gap: 4px;
}
.review-card-star img{
    width:16px;height:16px;
}
    .review-card-score {
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #000000;
}
.bx-vhis-compare #anchor-nav.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 298;
}

.bx-vhis-compare .review-card .review-card__by {
    display: flex;
    align-items: center;
    gap: 10px;
}
@media (max-width: 768px) {
    .bx-vhis-compare .caseStudy {
        height: 692px;
        padding-top: 64px;
    }

    .bx-vhis-compare .caseStudy-card {
        width: 345px;
        height: 480px;
    }

    .bx-vhis-compare .caseStudy-content {
        width: 313px;
        padding: 16px;
    }

    .bx-vhis-compare .caseStudy-img {
        position: absolute;
        bottom: 0;
        width: 345px;
        height: auto;
    }

    .bx-vhis-compare .caseStudy-img2 {
        position: absolute;
        top: 36px;
        width: 345px;
        height: auto;
    }

    .bx-vhis-compare .caseStudy-content2 {
        width: 313px;
        bottom: 16px;
        padding: 16px;
    }

    .bx-vhis-compare .caseStudy-bottom {
        left:auto;
        padding: 16px;
    }
    .bx-vhis-compare .case-a-modal-title {
        font-size: 22px;
        line-height: 32px;
    }

    .bx-vhis-compare .case-a-modal-desc {
        padding: 0 16px;
    }

    .bx-vhis-compare .case-a-modal-inner {
        padding-top: 62px;
    }

    .bx-vhis-compare .caseStudy h2 {
        font-size: 28px;
        line-height: 36px;
    }

    .bx-vhis-compare .caseStudy-compare {
        padding-top: 12px;
    }

    .bx-vhis-compare .support-titlecontent h2 {
        font-size: 28px;
        line-height: 36px;
    }

    .bx-vhis-compare .review-card {
        width:280px;
    }
}
html[lang="en"] .promocode-success-box-title2 {
    margin-top: 10px;
}
.tag-container-vhis {
    position: absolute;
    top: -10px;
    left: -12px;
}

.tag-container-vhis,
.tag-container-vhis.tag-left-vhis {
    text-align: left;
}

.tag-container-vhis.tag-center-vhis {
    text-align: center;
}

.tag-container-vhis.tag-right-vhis {
    text-align: right;
}

.tag-vhis {
    min-width: 200px;
    height: 32px;
    background-color: #0095A4;
    position: relative;
    padding: 0 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tag-title-vhis {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    vertical-align: middle;
    color: #FFFFFF;
}

.tag-tail-vhis,
.tag-left-vhis .tag-tail-vhis {
    position: absolute;
    top: 0;
    right: -15px;
}

.tag-center-vhis .tag-tail-left-vhis {
    position: absolute;
    top: 0;
    left: -25px;
}

.tag-center-vhis .tag-tail-right-vhis {
    position: absolute;
    top: 0;
    right: -16px;
}

.tag-right-vhis .tag-tail-vhis {
    position: absolute;
    top: 0;
    left: -25px;
}

[class^="tag-tail-vhis"]:after,
[class^="tag-tail-vhis"].tag-tail-vhis:before {
    content: "";
    width: 0;
    height: 0;
    display: block;
}

.tag-tail-vhis:after,
.tag-left-vhis .tag-tail-vhis:after {
    border-right: 16px solid transparent;
    border-bottom: 16px solid #0095A4;
}

.tag-center-vhis .tag-tail-right-vhis:after {
    border-right: 16px solid transparent;
    border-bottom: 16px solid #0095A4;
}

.tag-center-vhis .tag-tail-left-vhis:after {
    border-right: 16px solid transparent;
    border-bottom: 16px solid #0095A4;
}

.tag-right-vhis .tag-tai-vhisl:after {
    border-left: 16px solid transparent;
    border-bottom: 16px solid #0095A4;
}

.tag-tail-vhis:before,
.tag-lef-vhist .tag-tail-vhis:before {
    border-right: 16px solid transparent;
    border-top: 16px solid #0095A4;
}

.tag-cente-vhisr .tag-tail-right-vhis:after {
    border-right: 16px solid transparent;
    border-top: 16px solid #0095A4;
}

.tag-center-vhis .tag-tail-left-vhis:after {
    border-left: 16px solid transparent;
    border-top: 16px solid #0095A4;
}

.tag-right-vhis .tag-tail-vhis:before {
    border-left: 16px solid transparent;
    border-top: 16px solid #0095A4;
}

.tag-vhis.tag-drop-vhis:before,
.tag-left-vhis .tag-vhis.tag-drop-vhis:before {
    content: "";
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-top: 16px solid #007784;
    display: block;
    position: absolute;
    bottom: -16px;
    left: 0;
}

.tag-right-vhis .tag-vhis.tag-drop-vhis:before {
    content: "";
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: none;
    border-top: 16px solid #0095A4;
    display: block;
    position: absolute;
    bottom: -16px;
    right: 0;
    left: initial;
}
.bx-vhis-compare .grid-compare-4,
.bx-vhis-compare .insuranceGrid-compare-4 {
    scroll-padding-inline-start: 16px;
    padding-left: 20px !important;
}
.bx-vhis-compare .insurance-card-title {
    min-height: 56px;
    display: flex;
    flex-shrink: 0;
    align-items: flex-start;
}

@media (max-width: 767px) {
    .bx-vhis-compare .bx-vhis-compare-remark .remarkPage {
        
        padding-top: 40px;
        padding-right: 24px;
        padding-left: 24px;
    }
    .tag-vhis {
        min-width: 145px;
    }

    .tag-title-vhis {
        font-weight: 500;
        font-size: 12px;
        line-height: 14px;
        vertical-align: middle;
        color: #FFFFFF;
    }

    .tag-tail-vhis, .tag-left-vhis .tag-tail-vhis {
        position: absolute;
        top: 0;
        right: -15px;
    }
    .bx-vhis-compare .promocode-modal-inner {
        height: 80vh;
        border-radius: 24px 24px 0 0;
        padding: 0px;
        gap: 0px;
    }

    .bx-vhis-compare .promocode-success-modal {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: auto;
        transform: none;
        border-radius: 24px 24px 0 0;
        height: calc(100vh - 120px);
    }

    .bx-vhis-compare .promocode-claim-btn {
        width:100%;
    }
    .bx-vhis-compare .promocode-modal-header {
        padding: 20px;
    }

    .bx-vhis-compare .promocode-modal-body {
        padding: 20px;
    }


    .bx-vhis-compare .promocode-modal-headline {
        padding-right: 48px;
    }

    .bx-vhis-compare .promocode-success-modal-inner {
        padding: 24px;
        gap: 14px;
        height: 100%;
    }
    .bx-vhis-compare .promocode-success-modal-body {
        height: calc(100vh - 120px);
        overflow: scroll;
    }

}


.bx-vhis-compare .step-back-badge {
    position: absolute;
    left: -6px;
    top: -5px;
    align-items: center;
    gap: 8px;
    padding: 6px 24px 6px 12px;
    background: #0095A4;
    color: #fff;
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 20px;
    clip-path: polygon( 0 0, 100% 0, calc(100% - 20px) 50%, 100% 100%, 0 100% );
}



/* ===== Quote popup (new) ===== */
.quote-modal-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.35);
  z-index: 9996;
  display: none;
}

.quote-modal{
  position: fixed;
  z-index: 9997;
  background: #fff;
  border-radius: 24px;
  display: none;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0,0,0,0.25);
  box-sizing: border-box;
}

.quote-modal .product-card-title{
  margin: 0;
}
.bx-vhis-compare .quote-modal .product-card__subtitle{
  margin-bottom: 0;
}
.quote-modal-inner{
  height: 100%;
  padding: 24px;
  box-sizing: border-box;
}

.quote-modal-close{
  position: absolute;
  top: 32px;
  right: 32px;
  width: 24px;
  height: 24px;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.quote-modal-close img{
  width: 24px;
  height: 24px;
  display: block;
}

.quote-modal-title{
  margin: 0 20px 32px 0;
  font-weight: 500;
  font-size: 28px;
  line-height: 36px;
  color: #005697;
  text-align: left;
}

.quote-modal-body {
    height: calc(100% - 52px);
    overflow: auto;
    padding: 8px;
    overflow: auto; /* 或 overflow-y: auto */
    /* Firefox */
    scrollbar-width: none;
    /* IE/Edge旧版 */
    -ms-overflow-style: none;
}
.quote-modal-body::-webkit-scrollbar {
    display: none;
}

/* quote modal: plans vertical list (gap=16px) */
.quote-plans{
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.quote-plans .product-coupon-card{
  width: 100%;
  flex: 0 0 auto;
}

.quote-plans .product-card-content,
.quote-plans .product-normal-content{
  width: 100%;
  box-sizing: border-box;
  height: none;
}

.bx-vhis-compare .quote-plans .product-card-content{
    padding: 32px 24px 16px 24px;
    height: none;
}

.quote-plans .product-normal-content{
  height: 84px;
  padding-top: 16px;
  border-radius: 16px 16px 0 0;
}

/* Web: 422 x 646; JS will scale down to keep 60px top/bottom */
@media (min-width: 769px) {
  .quote-modal{
    width: 422px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center center;
  }
}

/* Mobile: follow existing modal mobile pattern */
@media (max-width: 768px) {
    html[lang="en"] .quote-plans .product-card-content,
    html[lang="en"] .bx-vhis-compare .quote-plans .product-card-content {
        height: 128px;
    }
    .quote-modal {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: 100vw;
        height: calc(100vh - 64px);
        border-radius: 20px 20px 0 0;
        transform: none;
    }

  .quote-modal-title{
    font-size: 22px;
    line-height: 30px;
  }

  .quote-modal-inner{
    padding: 32px;
  }

    .bx-vhis-compare .quection-title {
        font-size: 28px;
        line-height: 36px;
    }
}
.bx-vhis-compare .insurancePlanBtn{
  text-decoration: none;
}
.bx-vhis-compare .insurancePlanBtn,
.bx-vhis-compare .insurancePlanBtn:hover,
.bx-vhis-compare .insurancePlanBtn:focus,
.bx-vhis-compare .insurancePlanBtn:visited {
    text-decoration: none;
}
.bx-vhis-compare .caseStudy-desc{
  font-weight: 400;
  line-height: 18px;
  font-size: 12px;
  letter-spacing: 0;
  color: rgba(0, 0, 0, 0.7);
  margin-top:48px ;
}
.bx-vhis-compare .faq-answer ul {
  list-style: disc;
  margin: 12px 0;
  padding-left: 24px;
}

.bx-vhis-compare .faq-answer ol {
  list-style: decimal;
  margin: 12px 0;
  padding-left: 24px;
}

.bx-vhis-compare .faq-answer li {
  margin-bottom: 8px;
  line-height: 24px;
}

@media (max-width: 1024px) {
    .bx-vhis-compare .hero-section > .container:last-child {
        margin-left: var(--container-pad);
    }

    .bx-vhis-compare .insurancePlan-section > .container:last-child {
        margin-left: var(--container-pad);
    }

    .bx-vhis-compare .caseStudy > .container:last-child {
        margin-left: var(--container-pad);
    }

    .bx-vhis-compare .reviews > .container:last-child {
        margin-left: var(--container-pad);
    }
    html[lang="en"] .bx-vhis-compare .anchor-content {
        padding: 64px 24px 0 24px;
    }
}

@media (max-width: 440px) {

    .bx-vhis-compare .offers-tab {
        padding:0px;
    }
    .bx-vhis-compare .case-a-modal-inner {
        padding: 60px 14px 36px;
    }
    .bx-vhis-compare .case-a-tag-value,
    .bx-vhis-compare .case-a-tag-label {
        font-size: 12px;
    }
}
    @media (max-width: 550px) {
        .bx-vhis-compare .caseStudy-bottom {
        width: calc(100vw - 24px);
        height: auto;
    }
}
@media (max-width: 1024px) {
    .footer-body {
        flex-direction: column !important;
    }
    .bx-vhis-compare .support-content {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }
    .bx-vhis-compare .support-titlecontent {
        width: auto;
        flex-shrink: 0;
        margin-left: 10px;
    }
}
.bx-vhis-compare .anchor-nav__tab-active{
  border-bottom: 3px solid #04AFFF;
}
