.china-network {
    --network-ink: #171a1f;
    --network-ink-soft: #23282d;
    --network-line: rgba(255, 255, 255, 0.22);
    --network-muted: #b9c2bd;
    --network-mint: #95d7c7;
    --network-red: #b4233a;
    position: relative;
    overflow: hidden;
    scroll-margin-top: 190px;
    padding: 96px 0 72px;
    color: #ffffff;
    background: var(--network-ink);
}

.china-network *,
.china-network *::before,
.china-network *::after {
    box-sizing: border-box;
    letter-spacing: 0;
}

.china-network-layout {
    display: grid;
    grid-template-columns: minmax(260px, 0.68fr) minmax(0, 1.5fr);
    gap: clamp(32px, 5vw, 76px);
    align-items: center;
}

.china-network-intro {
    position: relative;
    z-index: 2;
}

.china-network-eyebrow,
.china-network-detail-label {
    margin: 0 0 14px;
    color: var(--network-mint);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
}

.china-network-intro h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(32px, 3.4vw, 48px);
    font-weight: 650;
    line-height: 1.1;
}

.china-network-summary {
    margin: 22px 0 0;
    color: var(--network-muted);
    font-size: 16px;
    line-height: 1.7;
}

.china-network-detail {
    min-height: 172px;
    margin-top: 40px;
    padding: 22px 0 0;
    border-top: 1px solid var(--network-line);
}

.china-network-detail-label {
    margin-bottom: 9px;
    font-size: 10px;
}

.china-network-detail strong,
.china-network-detail span {
    display: block;
}

.china-network-detail strong {
    color: #ffffff;
    font-size: 25px;
    line-height: 1.25;
}

.china-network-detail span {
    margin-top: 5px;
    color: var(--network-mint);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
    text-transform: uppercase;
}

.china-network-detail p:last-child {
    margin: 13px 0 0;
    color: var(--network-muted);
    font-size: 13px;
    line-height: 1.6;
}

.china-network-figure {
    min-width: 0;
    margin: 0;
}

.china-network-map {
    position: relative;
    width: 100%;
    aspect-ratio: 2400 / 1703;
    isolation: isolate;
}

.china-network-map > img,
.china-network-routes {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.china-network-map > img {
    display: block;
    z-index: 0;
    object-fit: contain;
    filter: grayscale(0.85) invert(1) brightness(0.68) contrast(1.12);
    opacity: 0.76;
}

.china-network-routes {
    z-index: 1;
    overflow: visible;
    pointer-events: none;
}

.china-network-routes path {
    fill: none;
    stroke: var(--network-mint);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-dasharray: 18 22;
    opacity: 0.72;
    vector-effect: non-scaling-stroke;
    animation: china-network-route-flow 3.6s linear infinite;
    transition: opacity 220ms ease, stroke-width 220ms ease;
}

.china-network-route-light {
    fill: #ffffff;
    filter: drop-shadow(0 0 7px #ffffff);
}

.china-network-node {
    position: absolute;
    z-index: 3;
    left: var(--network-x);
    top: var(--network-y);
    min-width: 44px;
    min-height: 44px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    color: #ffffff;
    background: transparent;
    cursor: pointer;
    transform: translate(-50%, -50%);
}

.china-network-node-marker {
    position: relative;
    width: 12px;
    height: 12px;
    border: 2px solid var(--network-ink);
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.72), 0 0 18px rgba(149, 215, 199, 0.85);
    transition: background-color 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.china-network-node-hub .china-network-node-marker {
    width: 15px;
    height: 15px;
    background: var(--network-red);
    box-shadow: 0 0 0 2px #ffffff, 0 0 24px rgba(180, 35, 58, 0.95);
}

.china-network-node-hub .china-network-node-marker::before,
.china-network-node-hub .china-network-node-marker::after {
    content: '';
    position: absolute;
    inset: -7px;
    border: 1px solid rgba(180, 35, 58, 0.92);
    border-radius: 50%;
    animation: china-network-hub-pulse 2.4s ease-out infinite;
}

.china-network-node-hub .china-network-node-marker::after {
    animation-delay: 1.2s;
}

.china-network-node-label {
    position: absolute;
    left: 37px;
    top: 50%;
    padding: 4px 7px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 3px;
    color: #ffffff;
    background: rgba(23, 26, 31, 0.9);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
    transform: translateY(-50%);
}

.china-network-node[data-network-node='yiwu'] .china-network-node-label,
.china-network-node[data-network-node='quanzhou'] .china-network-node-label,
.china-network-node[data-network-node='guangzhou'] .china-network-node-label {
    right: 37px;
    left: auto;
}

.china-network-node:hover .china-network-node-marker,
.china-network-node:focus-visible .china-network-node-marker,
.china-network-node[aria-pressed='true'] .china-network-node-marker {
    background: var(--network-mint);
    box-shadow: 0 0 0 3px #ffffff, 0 0 28px rgba(149, 215, 199, 1);
    transform: scale(1.18);
}

.china-network-node:focus-visible {
    border-radius: 50%;
    outline: 2px solid #ffffff;
    outline-offset: -5px;
}

.china-network[data-active-node]:not([data-active-node='']) .china-network-routes path {
    opacity: 0.18;
}

.china-network[data-active-node='yiwu']:not([data-active-node='']) .china-network-routes path,
.china-network[data-active-node='zhejiang'] .china-network-routes path[data-network-route='zhejiang'],
.china-network[data-active-node='quanzhou'] .china-network-routes path[data-network-route='quanzhou'],
.china-network[data-active-node='guangzhou'] .china-network-routes path[data-network-route='guangzhou'] {
    stroke-width: 4;
    opacity: 1;
}

.china-network-figure figcaption {
    margin-top: 10px;
    color: #9ca6a1;
    font-size: 10px;
    line-height: 1.5;
    text-align: right;
}

.china-network-figure figcaption strong {
    color: #dce2df;
    font-weight: 600;
}

.china-network-locations {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 58px 0 0;
    padding: 0;
    border-top: 1px solid var(--network-line);
    border-bottom: 1px solid var(--network-line);
    list-style: none;
}

.china-network-locations li {
    min-width: 0;
    min-height: 132px;
    padding: 21px 20px;
    border-right: 1px solid var(--network-line);
}

.china-network-locations li:first-child {
    border-left: 1px solid var(--network-line);
}

.china-network-locations li > span {
    display: block;
    margin-bottom: 28px;
    color: var(--network-mint);
    font-size: 10px;
    font-weight: 700;
}

.china-network-locations strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
}

.china-network-locations p {
    margin: 6px 0 0;
    color: var(--network-muted);
    font-size: 11px;
    line-height: 1.5;
}

.china-network[data-enhanced]:not([data-visible='true']) .china-network-map,
.china-network[data-enhanced]:not([data-visible='true']) .china-network-intro,
.china-network[data-enhanced]:not([data-visible='true']) .china-network-locations {
    opacity: 0;
    transform: translateY(18px);
}

.china-network[data-enhanced] .china-network-map,
.china-network[data-enhanced] .china-network-intro,
.china-network[data-enhanced] .china-network-locations {
    transition: opacity 520ms ease-out, transform 520ms ease-out;
}

.china-network[data-enhanced][data-visible='true'] .china-network-map,
.china-network[data-enhanced][data-visible='true'] .china-network-intro,
.china-network[data-enhanced][data-visible='true'] .china-network-locations {
    opacity: 1;
    transform: translateY(0);
}

.china-network[data-enhanced][data-visible='true'] .china-network-map {
    transition-delay: 120ms;
}

.china-network[data-enhanced][data-visible='true'] .china-network-locations {
    transition-delay: 220ms;
}

@keyframes china-network-route-flow {
    to {
        stroke-dashoffset: -80;
    }
}

@keyframes china-network-hub-pulse {
    0% {
        opacity: 0.9;
        transform: scale(0.55);
    }

    75%,
    100% {
        opacity: 0;
        transform: scale(1.9);
    }
}

@media (max-width: 900px) {
    .china-network {
        padding: 76px 0 60px;
    }

    .china-network-layout {
        grid-template-columns: 1fr;
    }

    .china-network-intro {
        max-width: 720px;
    }

    .china-network-detail {
        min-height: 150px;
        margin-top: 28px;
    }

    .china-network-locations {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-top: 38px;
    }

    .china-network-locations li:nth-child(2) {
        border-right: 1px solid var(--network-line);
    }

    .china-network-locations li:nth-child(n + 3) {
        border-top: 1px solid var(--network-line);
    }
}

@media (max-width: 640px) {
    .china-network {
        padding: 64px 0 48px;
    }

    .china-network .container {
        padding-right: 16px;
        padding-left: 16px;
    }

    .china-network-layout {
        gap: 22px;
    }

    .china-network-intro h2 {
        font-size: 30px;
    }

    .china-network-summary {
        font-size: 15px;
    }

    .china-network-detail {
        min-height: 158px;
    }

    .china-network-node-label {
        display: none;
    }

    .china-network-figure figcaption {
        margin-top: 7px;
        text-align: left;
    }

    .china-network-locations {
        grid-template-columns: 1fr;
        margin-top: 30px;
    }

    .china-network-locations li {
        min-height: auto;
        display: grid;
        grid-template-columns: 34px minmax(80px, 0.45fr) minmax(0, 1fr);
        gap: 10px;
        align-items: center;
        padding: 16px 12px;
        border-top: 1px solid var(--network-line);
        border-right: 1px solid var(--network-line);
        border-left: 1px solid var(--network-line);
    }

    .china-network-locations li:first-child {
        border-top: 0;
    }

    .china-network-locations li > span,
    .china-network-locations p {
        margin: 0;
    }
}

@media (max-width: 768px) {
    .cds-about .quick-contact-rail {
        top: auto;
        right: 50%;
        bottom: calc(12px + env(safe-area-inset-bottom, 0px));
        flex-direction: row;
        border-radius: 6px;
        transform: translateX(50%);
    }

    .cds-about .quick-contact-link {
        border-right: 1px solid var(--color-border);
        border-bottom: 0;
    }

    .cds-about .quick-contact-link:first-child {
        border-radius: 5px 0 0 5px;
    }

    .cds-about .quick-contact-link:last-child {
        border-right: 0;
        border-radius: 0 5px 5px 0;
    }

    .cds-about .quick-contact-label {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .china-network *,
    .china-network *::before,
    .china-network *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    .china-network-route-light {
        display: none;
    }

    .china-network[data-enhanced] .china-network-map,
    .china-network[data-enhanced] .china-network-intro,
    .china-network[data-enhanced] .china-network-locations {
        opacity: 1;
        transform: none;
    }
}
