/* Approved services block — gp-services-redesign */
.gp-services-redesign .gp-services [hidden]{display:none!important}
.gp-services-redesign.hero-services::before{display:none}
.gp-services-redesign.hero-services{padding-bottom:48px;position:relative;z-index:2}
.gp-services-redesign .gp-services{color:#172b20;--ink:#172b20;--muted:#43594b;--brand:#007338;--brand-dark:#00552a;--paper:#fdfefd;--wash:#f3f7f4;--tint:#eaf3ed;--line:#d6e4da;--focus:#1b8449;--radius:6px}
.gp-services-redesign .gp-services a{color:inherit}
.gp-services-redesign .gp-services :focus-visible{outline:2px solid #1b8449;outline-offset:3px}
.gp-services-redesign .gp-services [lang="zh-CN"]{font-family:"Microsoft YaHei","Noto Sans CJK SC",sans-serif;line-break:strict}
.gp-services-redesign .gp-services-intro{display:grid;grid-template-columns:minmax(265px,.86fr) minmax(0,2fr);align-items:start;gap:30px;margin-bottom:34px}
.gp-services-redesign .gp-services-intro__heading{margin:0;line-height:1.06;letter-spacing:-.045em}
.gp-services-redesign[data-gp-services-variant="home"] .gp-services-intro__heading{font-size:clamp(32px,3.2vw,48px)}
.gp-services-redesign[data-gp-services-variant="catalog"] .gp-services-intro__heading{font-size:clamp(37px,4vw,56px)}
.gp-services-redesign .gp-services-intro__text{padding-top:3px;font-size:17px;line-height:1.53;color:#43594b}
.gp-services-redesign .gp-services-intro__text p{margin:0}
.gp-services-redesign .gp-services-intro__text p:first-child{color:#172b20;font-weight:600}
.gp-services-redesign .gp-services-intro__text p+p{margin-top:8px}
.gp-services-redesign .gp-services .button{border:0;cursor:pointer;font:inherit;text-decoration:none}
@media (max-width:850px){.gp-services-redesign .gp-services-intro{grid-template-columns:1fr;gap:14px;margin-bottom:24px}}


.gp-services-redesign .gp-services .service-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    padding: 6px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: var(--tint);
}
.gp-services-redesign .gp-services .service-tabs [role="tab"] {
    display: flex;
    align-items: center;
    min-height: 80px;
    width: 100%;
    padding: 14px 17px;
    border: 1px solid transparent;
    border-radius: var(--radius);
    background: var(--paper);
    color: var(--ink);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.38;
    text-align: left;
    overflow-wrap: anywhere;
    cursor: pointer;
    transition: background-color .16s ease-out, border-color .16s ease-out;
}
.gp-services-redesign .gp-services .service-tabs [aria-selected="true"] {
    color: var(--paper);
    background: var(--brand);
    border-color: var(--brand);
}
.gp-services-redesign .gp-services .service-tabs [role="tab"] span { text-wrap: balance; }
.gp-services-redesign .gp-services .service-tabs [role="tab"]:focus-visible { outline-offset: -4px; }
.gp-services-redesign .gp-services .service-tabs [aria-selected="true"]:focus-visible { outline-color: var(--paper); }
.gp-services-redesign .gp-services .service-panel { margin-top: 20px; }

.gp-services-redesign .gp-services .service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gp-services-redesign .gp-services .service-grid__item { min-width: 0; }
.gp-services-redesign .gp-services .service-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: 1fr auto;
    align-items: start;
    gap: 15px 12px;
    height: 100%;
    min-height: 140px;
    padding: 21px 21px 17px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--paper);
    text-decoration: none;
    transition: background-color .16s ease-out, border-color .16s ease-out;
}
.gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-card {
    min-height: 117px;
    padding: 18px 18px 14px;
    gap: 10px;
}
.gp-services-redesign .gp-services .service-card__title {
    grid-column: 1 / -1;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.019em;
    overflow-wrap: anywhere;
}
.gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-card__title { font-size: 18px; }
.gp-services-redesign .gp-services .service-card__price {
    grid-row: 2;
    grid-column: 1;
    align-self: center;
    font-variant-numeric: tabular-nums;
    font-size: 15px;
    font-weight: 700;
    color: var(--brand-dark);
    white-space: nowrap;
}
.gp-services-redesign .gp-services .service-card__action {
    grid-row: 2;
    grid-column: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--brand-dark);
    font-size: 14px;
    font-weight: 700;
}
.gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-card__label { display: none; }
.gp-services-redesign .gp-services .arrow {
    display: inline-grid;
    place-items: center;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background: var(--tint);
    color: var(--brand-dark);
    font-family: Arial, sans-serif;
    font-size: 18px;
    line-height: 1;
}

.gp-services-redesign .gp-services .accounting-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    list-style: none;
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--radius);
}
.gp-services-redesign .gp-services .accounting-list li {
    display: grid;
    grid-template-columns: 6px minmax(0, 1fr);
    align-content: center;
    gap: 13px;
    min-height: 66px;
    padding: 15px 21px;
    border-bottom: 1px solid var(--line);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.46;
    overflow-wrap: anywhere;
}
.gp-services-redesign .gp-services .accounting-list li::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    margin-top: .57em;
    background: var(--brand);
}
.gp-services-redesign .gp-services .accounting-list li:nth-child(odd) { border-right: 1px solid var(--line); }
.gp-services-redesign .gp-services .accounting-list li:last-child {
    grid-column: 1 / -1;
    border: 0;
}
.gp-services-redesign .gp-services .service-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 16px;
    padding: 16px 20px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--tint);
}
.gp-services-redesign .gp-services .service-cta p { margin: 0; font-size: 17px; font-weight: 700; line-height: 1.4; }
.gp-services-redesign .gp-services .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-height: 44px;
    padding: 11px 16px;
    border-radius: 4px;
    color: var(--paper);
    background: var(--brand);
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
    text-decoration: none;
}

.gp-services-redesign .gp-services .china-groups {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.gp-services-redesign .gp-services .china-group {
    padding: 20px 22px 16px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--paper);
    overflow-wrap: anywhere;
}
.gp-services-redesign .gp-services .china-group h3 {
    margin: 0 0 10px;
    color: var(--brand-dark);
    font-size: 20px;
    line-height: 1.42;
}
.gp-services-redesign .gp-services .china-group ul { margin: 0; padding: 0; list-style: none; }
.gp-services-redesign .gp-services .china-group li {
    padding: 9px 0;
    border-top: 1px solid var(--line);
    font-size: 16px;
    line-height: 1.55;
}
.gp-services-redesign .gp-services .price-note {
    margin: 17px 0 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.55;
}
.gp-services-redesign .gp-services .direction-link {
    display: flex;
    justify-content: flex-end;
    margin-top: 13px;
}
.gp-services-redesign .gp-services .direction-link a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 7px 2px;
    color: var(--brand-dark);
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

@media (hover: hover) {
    .gp-services-redesign .gp-services .service-tabs [aria-selected="false"]:hover,
    .gp-services-redesign .gp-services .service-card:hover { border-color: #87b198; background: #f4f9f5; }
    .gp-services-redesign .gp-services .button:hover { background: var(--brand-dark); }
    .gp-services-redesign .gp-services .review-nav a:hover { color: var(--brand-dark); }
}

@media (max-width: 1120px) {
    .gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 850px) {
    .gp-services-redesign .gp-services .service-intro { grid-template-columns: 1fr; gap: 14px; margin-bottom: 24px; }
    .gp-services-redesign .gp-services .service-intro__text { padding-top: 0; }
    .gp-services-redesign .gp-services .service-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 1fr;
    }
    .gp-services-redesign .gp-services .service-grid, .gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    .gp-services-redesign .gp-services .review-header__inner { min-height: 61px; gap: 10px; }
    .gp-services-redesign .gp-services .brand { width: 60px; }
    .gp-services-redesign .gp-services .review-nav a { padding: 8px 9px; font-size: 13px; }
    .gp-services-redesign .gp-services .service-area { padding-block: 27px 30px; }
    .gp-services-redesign .gp-services .service-intro { gap: 12px; margin-bottom: 20px; }
    .gp-services-redesign .gp-services .service-intro h1 { font-size: 36px; }
    .gp-services-redesign .gp-services .service-intro__text { font-size: 15.5px; line-height: 1.5; }
    .gp-services-redesign .gp-services .service-tabs { gap: 5px; padding: 5px; }
    .gp-services-redesign .gp-services .service-tabs [role="tab"] {
        min-height: 86px;
        padding: 10px 11px;
        font-size: 15px;
        line-height: 1.32;
    }
    .gp-services-redesign .gp-services .service-panel { margin-top: 13px; }
    .gp-services-redesign .gp-services .service-grid, .gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-grid, .gp-services-redesign .gp-services .china-groups {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .gp-services-redesign .gp-services .service-card, .gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-card {
        min-height: 67px;
        grid-template-rows: auto;
        align-content: center;
        align-items: center;
        gap: 5px 12px;
        padding: 13px 15px;
    }
    .gp-services-redesign .gp-services .service-card__title, .gp-services-redesign[data-gp-services-variant="home"] .gp-services .service-card__title {
        grid-column: 1;
        grid-row: 1;
        font-size: 17px;
        line-height: 1.35;
    }
    .gp-services-redesign .gp-services .service-card__action { grid-column: 2; grid-row: 1; }
    .gp-services-redesign .gp-services .service-card__price { grid-column: 1; grid-row: 2; font-size: 14.5px; }
    .gp-services-redesign .gp-services .service-card__price + .service-card__action { grid-row: 1 / span 2; }
    .gp-services-redesign .gp-services .service-card__label { display: none; }
    .gp-services-redesign .gp-services .accounting-list { grid-template-columns: 1fr; }
    .gp-services-redesign .gp-services .accounting-list li, .accounting-list li:nth-child(odd) {
        min-height: 0;
        padding: 13px 14px;
        border-right: 0;
        font-size: 15.5px;
    }
    .gp-services-redesign .gp-services .service-cta { flex-direction: column; align-items: stretch; gap: 12px; padding: 14px; }
    .gp-services-redesign .gp-services .service-cta p { font-size: 16px; }
    .gp-services-redesign .gp-services .china-group { padding: 15px 16px 11px; }
    .gp-services-redesign .gp-services .china-group h3 { font-size: 19px; }
    .gp-services-redesign .gp-services .china-group li { padding-block: 7px; font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
    .gp-services-redesign .gp-services .service-tabs [role="tab"], .service-card { transition: none; }
}
