/**
 * 首页排版（仅 is_front_page 加载）。全部写在下列 11 条 @media 内，与主题档位一致。
 * 含字号与布局适配：padding / margin / gap / min(max)-width / min(max)-height 等（不含 max-width:1296px 栅格容器）。
 *
 * 短代码多页复用：CTA / FAQ 使用 body.xy-home-front 前缀。
 *
 * 1  (max-width: 389.98px)
 * 2  (390px–429.98px)
 * 3  (430px–479.98px)
 * 4  (480px–639.98px)
 * 5  (640px–767.98px)
 * 6  (768px–1024px)
 * 7  (1025px–1365.98px)
 * 8  (1366px–1512px)
 * 9  (1513px–1599.98px)
 * 10 (min-width: 1600px)
 * 11 (hover: hover) and (pointer: fine) — 仅指针设备微调，不影响触控布局
 */

body.xy-home-front {
    --xy-home-frame-inline: 16px;
    --xy-home-section-inline: 0px;
}

body.xy-home-front .capabilities-section,
body.xy-home-front .new-section,
body.xy-home-front .intro-grid-section-inner,
body.xy-home-front .scroll-bar-container {
    box-sizing: border-box;
    width: 100%;
    max-width: 1296px;
    margin-left: auto;
    margin-right: auto;
    padding-inline: var(--xy-home-frame-inline);
}

body.xy-home-front .section-container.story-container,
body.xy-home-front .story-container {
    padding-block: 0;
    padding-inline: var(--xy-home-frame-inline) !important;
    box-sizing: border-box;
}

body.xy-home-front .capabilities-section > .section-container {
    max-width: 100%;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}

body.xy-home-front .cards-section > .section-container {
    max-width: 100%;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}

body.xy-home-front .capabilities-top {
    padding-left: var(--xy-home-section-inline) !important;
    padding-right: var(--xy-home-section-inline) !important;
}

body.xy-home-front .capabilities-grid .cap-item {
    padding-left: var(--xy-home-section-inline) !important;
    padding-right: var(--xy-home-section-inline) !important;
}

/* 规则 1 */
@media (max-width: 389.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 16px;
        --xy-home-section-inline: 0px;
    }
    .hero-title {
        font-size: 22px;
        line-height: 1.1;
        font-weight: 900;
    }

    .hero-desc {
        font-size: 13px;
        line-height: 1.55;
        font-weight: 100;
        margin-bottom: 12px;
    }

    .hero-btn {
        font-size: 13px;
        font-weight: 500;
    }

    .intro-title {
        font-size: 24px;
        font-weight: 600;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .intro-grid__title {
        font-size: 13px;
        font-weight: 600;
    }

    .intro-grid__desc {
        font-size: 13px;
    }

    .capabilities-tag {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 22px;
        line-height: 1.25;
        font-weight: 600;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 34px;
        font-weight: 400;
    }

    .cap-unit {
        font-size: 18px;
    }

    .cap-label,
    .cap-highlight-desc {
        font-size: 14px;
    }

    .story-title {
        font-size: 18px;
        font-weight: 500;
    }

    .story-desc {
        font-size: 14px;
    }

    .story-link {
        font-size: 14px;
        font-weight: 500;
    }

    .cards-date {
        font-size: 13px;
    }

    .cards-title {
        font-size: 14px;
        font-weight: 600;
    }

    .cards-desc {
        font-size: 14px;
        line-height: 1.45;
    }

    .cards-link {
        font-size: 14px;
        font-weight: 500;
    }

    .new-section-title {
        font-size: 13px;
        font-weight: 600;
    }

    .new-section-desc {
        font-size: 13px;
        line-height: 1.55;
        padding-right: 16px;
    }

    .xy-home-video-title {
        font-size: 14px;
        line-height: 1.35;
    }

    .xy-home-video-subtitle {
        font-size: 16px;
    }

    .xy-home-video-control-time {
        font-size: 13px;
    }


    body.xy-home-front .faq-title {
        font-size: 22px;
    }

    body.xy-home-front .faq-question-text {
        font-size: 14px;
        font-weight: 500;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 14px;
        line-height: 1.55;
    }

    /* 布局与尺寸（极窄屏） */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 100%;
        padding-left: 16px;
        padding-right: 16px;
        padding-bottom: 64px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 20px;
    }

    .intro-grid-section {
        padding-top: 32px;
    }

    .intro-top {
        padding: 24px 16px;
        gap: 16px;
    }

    .intro-desc {
        max-width: 100%;
    }

    .intro-grid__cell {
        min-height: 220px;
    }

    .intro-grid__text {
        left: 16px;
        right: 16px;
        bottom: 16px;
    }

    .capabilities-top {
        padding-block: 20px;
    }

    .capabilities-right {
        padding: 10px 0 10px 12px;
    }

    .cap-item {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 260px;
        padding-block: 20px;
    }

    .story-container {
        flex-direction: column;
        height: auto;
        min-height: 0;
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 24px;
    }

    .story-content {
        flex: 1 1 auto;
        max-width: 100%;
        padding: 24px 0;
    }

    .story-visual {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .story-image {
        max-width: 100%;
    }

    .cards-item {
        padding-block-start: 32px;
    }

    .cards-media {
        height: 220px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 24px));
    }

    .xy-home-video-header {
        left: 16px;
        right: 56px;
        top: 16px;
    }

    body.xy-home-front .cta-section {
        min-height: 260px;
    }

    body.xy-home-front .cta-container {
        padding: 48px 20px;
    }

    body.xy-home-front .cta-title {
        max-width: 100%;
        padding-bottom: 16px;
    }

    body.xy-home-front .cta-btn {
        min-width: 0;
        width: 100%;
        max-width: 360px;
        padding: 14px 20px;
    }


}

/* 规则 2 */
@media (min-width: 390px) and (max-width: 429.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 18px;
        --xy-home-section-inline: 0px;
    }
    .hero-title {
        font-size: 22px;
        line-height: 1.1;
    }

    .hero-desc {
        font-size: 13px;
        line-height: 1.55;
        margin-bottom: 12px;
    }

    .hero-btn {
        font-size: 13px;
    }

    .intro-title {
        font-size: 24px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .intro-grid__title {
        font-size: 13px;
    }

    .intro-grid__desc {
        font-size: 13px;
    }

    .capabilities-title {
        font-size: 22px;
        line-height: 1.25;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 35px;
    }

    .cap-unit {
        font-size: 19px;
    }

    .story-title {
        font-size: 18px;
    }

    .story-desc {
        font-size: 14px;
    }

    .cards-title {
        font-size: 14px;
    }

    .cards-desc {
        font-size: 14px;
        line-height: 1.45;
    }

    .new-section-title {
        font-size: 13px;
    }

    .new-section-desc {
        font-size: 13px;
        line-height: 1.55;
    }

    .xy-home-video-title {
        font-size: 14px;
        line-height: 1.35;
    }


    body.xy-home-front .faq-question-text {
        font-size: 14px;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 14px;
        line-height: 1.55;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 100%;
        padding-left: 18px;
        padding-right: 18px;
        padding-bottom: 68px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 22px;
    }

    .intro-grid-section {
        padding-top: 36px;
    }

    .intro-top {
        padding: 26px 18px;
        gap: 18px;
    }

    .intro-desc {
        max-width: 100%;
    }

    .intro-grid__cell {
        min-height: 228px;
    }

    .intro-grid__text {
        left: 18px;
        right: 18px;
        bottom: 18px;
    }

    .capabilities-top {
        padding-block: 22px;
    }

    .capabilities-right {
        padding: 10px 0 10px 14px;
    }

    .cap-item {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 268px;
        padding-block: 22px;
    }

    .story-container {
        flex-direction: column;
        height: auto;
        min-height: 0;
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 26px;
    }

    .story-content {
        flex: 1 1 auto;
        max-width: 100%;
        padding: 26px 0;
    }

    .story-visual {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .story-image {
        max-width: 100%;
    }

    .cards-item {
        padding-block-start: 36px;
    }

    .cards-media {
        height: 228px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 28px));
    }

    .xy-home-video-header {
        left: 18px;
        right: 58px;
        top: 18px;
    }

    body.xy-home-front .cta-section {
        min-height: 268px;
    }

    body.xy-home-front .cta-container {
        padding: 52px 22px;
    }

    body.xy-home-front .cta-title {
        max-width: 100%;
        padding-bottom: 18px;
    }

    body.xy-home-front .cta-btn {
        min-width: 0;
        width: 100%;
        max-width: 360px;
        padding: 15px 22px;
    }


}

/* 规则 3 */
@media (min-width: 430px) and (max-width: 479.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 20px;
        --xy-home-section-inline: 0px;
    }
    .hero-title {
        font-size: 23px;
        line-height: 1.1;
    }

    .hero-desc {
        font-size: 13px;
        line-height: 1.55;
        margin-bottom: 14px;
    }

    .hero-btn {
        font-size: 13px;
    }

    .intro-title {
        font-size: 24px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .capabilities-title {
        font-size: 22px;
        line-height: 1.25;
    }

    .cap-number {
        font-size: 35px;
    }

    .cap-unit {
        font-size: 19px;
    }

    .story-title {
        font-size: 18px;
    }

    .story-desc {
        font-size: 14px;
    }

    .cards-title {
        font-size: 14px;
    }

    .cards-desc {
        font-size: 14px;
        line-height: 1.45;
    }

    .new-section-desc {
        font-size: 13px;
        line-height: 1.55;
        padding-right: 20px;
    }


    body.xy-home-front .faq-question-text {
        font-size: 15px;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 72px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 24px;
    }

    .intro-grid-section {
        padding-top: 40px;
    }

    .intro-top {
        padding: 28px 20px;
        gap: 20px;
    }

    .intro-desc {
        max-width: 100%;
    }

    .intro-grid__cell {
        min-height: 232px;
    }

    .intro-grid__text {
        left: 20px;
        right: 20px;
        bottom: 20px;
    }

    .capabilities-top {
        padding-block: 24px;
    }

    .capabilities-right {
        padding: 10px 0 10px 16px;
    }

    .cap-item {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 272px;
        padding-block: 24px;
    }

    .story-container {
        flex-direction: column;
        height: auto;
        min-height: 0;
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 28px;
    }

    .story-content {
        flex: 1 1 auto;
        max-width: 100%;
        padding: 28px 0;
    }

    .story-visual {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .story-image {
        max-width: 100%;
    }

    .cards-item {
        padding-block-start: 40px;
    }

    .cards-media {
        height: 232px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 32px));
    }

    .xy-home-video-header {
        left: 20px;
        right: 60px;
        top: 20px;
    }

    body.xy-home-front .cta-section {
        min-height: 276px;
    }

    body.xy-home-front .cta-container {
        padding: 56px 24px;
    }

    body.xy-home-front .cta-title {
        max-width: 100%;
        padding-bottom: 18px;
    }

    body.xy-home-front .cta-btn {
        min-width: 0;
        width: 100%;
        max-width: 360px;
        padding: 16px 24px;
    }
}

/* 规则 4 */
@media (min-width: 480px) and (max-width: 639.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 22px;
        --xy-home-section-inline: 0px;
    }
    .hero-title {
        font-size: 23px;
        line-height: 1.1;
    }

    .hero-desc {
        font-size: 14px;
        line-height: 1.55;
        margin-bottom: 14px;
    }

    .hero-btn {
        font-size: 14px;
    }

    .intro-title {
        font-size: 24px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .capabilities-title {
        font-size: 22px;
        line-height: 1.25;
    }

    .cap-number {
        font-size: 36px;
    }

    .cap-unit {
        font-size: 19px;
    }

    .story-title {
        font-size: 18px;
    }

    .story-desc {
        font-size: 14px;
    }

    .cards-desc {
        font-size: 14px;
        line-height: 1.45;
    }


    body.xy-home-front .faq-question-text {
        font-size: 15px;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 100%;
        padding-left: 22px;
        padding-right: 22px;
        padding-bottom: 76px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 26px;
    }

    .intro-grid-section {
        padding-top: 44px;
    }

    .intro-top {
        padding: 30px 22px;
        gap: 22px;
    }

    .intro-desc {
        max-width: 100%;
    }

    .intro-grid__cell {
        min-height: 236px;
    }

    .intro-grid__text {
        left: 22px;
        right: 22px;
        bottom: 22px;
    }

    .capabilities-top {
        padding-block: 26px;
    }

    .capabilities-right {
        padding: 10px 0 10px 18px;
    }

    .cap-item {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 280px;
        padding-block: 26px;
    }

    .story-container {
        flex-direction: column;
        height: auto;
        min-height: 0;
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 30px;
    }

    .story-content {
        flex: 1 1 auto;
        max-width: 100%;
        padding: 30px 0;
    }

    .story-visual {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .story-image {
        max-width: 100%;
    }

    .cards-item {
        padding-block-start: 44px;
    }

    .cards-media {
        height: 236px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 36px));
    }

    .xy-home-video-header {
        left: 22px;
        right: 62px;
        top: 20px;
    }

    body.xy-home-front .cta-section {
        min-height: 284px;
    }

    body.xy-home-front .cta-container {
        padding: 60px 28px;
    }

    body.xy-home-front .cta-title {
        max-width: 100%;
        padding-bottom: 20px;
    }

    body.xy-home-front .cta-btn {
        min-width: 0;
        width: 100%;
        max-width: 380px;
        padding: 16px 26px;
    }

    .new-section-desc {
        padding-right: 22px;
    }
}

/* 规则 5 */
@media (min-width: 640px) and (max-width: 767.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 24px;
        --xy-home-section-inline: 0px;
    }

    .hero-title {
        font-size: 24px;
        line-height: 1.1;
    }

    .hero-desc {
        font-size: 14px;
        line-height: 1.55;
        margin-bottom: 16px;
    }

    .hero-btn {
        font-size: 14px;
    }

    .intro-title {
        font-size: 24px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .intro-grid__title {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 22px;
        line-height: 1.25;
    }

    .cap-number {
        font-size: 36px;
    }

    .cap-unit {
        font-size: 20px;
    }

    .story-title {
        font-size: 18px;
    }

    .story-desc {
        font-size: 14px;
    }


    body.xy-home-front .faq-question-text {
        font-size: 15px;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 100%;
        padding-left: 24px;
        padding-right: 24px;
        padding-bottom: 80px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 28px;
    }

    .intro-grid-section {
        padding-top: 48px;
    }

    .intro-top {
        padding: 32px 24px;
        gap: 24px;
    }

    .intro-desc {
        max-width: 100%;
    }

    .intro-grid__cell {
        min-height: 240px;
    }

    .intro-grid__text {
        left: 24px;
        right: 24px;
        bottom: 24px;
    }

    .capabilities-top {
        padding-block: 28px;
    }

    .capabilities-right {
        padding: 10px 0 10px 18px;
    }

    .cap-item {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 288px;
        padding-block: 28px;
    }

    .story-container {
        flex-direction: column;
        height: auto;
        min-height: 0;
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 32px;
    }

    .story-content {
        flex: 1 1 auto;
        max-width: 100%;
        padding: 32px 0;
    }

    .story-visual {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .story-image {
        max-width: 100%;
    }

    .cards-item {
        padding-block-start: 48px;
    }

    .cards-media {
        height: 240px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 40px));
    }

    .xy-home-video-header {
        left: 24px;
        right: 64px;
        top: 22px;
    }

    body.xy-home-front .cta-section {
        min-height: 292px;
    }

    body.xy-home-front .cta-container {
        padding: 64px 32px;
    }

    body.xy-home-front .cta-title {
        max-width: 100%;
        padding-bottom: 20px;
    }

    body.xy-home-front .cta-btn {
        min-width: 0;
        width: 100%;
        max-width: 400px;
        padding: 17px 28px;
    }

    .new-section-desc {
        padding-right: 24px;
    }
}

/* 规则 6 */
@media (min-width: 768px) and (max-width: 1024px) {
    body.xy-home-front {
        --xy-home-frame-inline: 32px;
        --xy-home-section-inline: 28px;
    }

    .hero-title {
        font-size: 44px;
        font-weight: 600;
    }

    .hero-desc {
        font-size: 15px;
        margin-bottom: 22px;
    }

    .hero-btn {
        font-size: 15px;
    }

    .intro-title {
        font-size: 30px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 26px;
    }

    .intro-grid__title {
        font-size: 18px;
    }

    .intro-grid__desc {
        font-size: 14px;
    }

    .capabilities-tag {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 26px;
        line-height: 1.25;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 40px;
    }

    .cap-unit {
        font-size: 18px;
    }

    .story-title {
        font-size: 22px;
    }

    .story-desc {
        font-size: 14px;
    }

    .cards-date {
        font-size: 14px;
    }

    .cards-title {
        font-size: 15px;
    }

    .cards-desc {
        font-size: 14px;
    }

    .new-section-title {
        font-size: 30px;
    }

    .new-section-desc {
        font-size: 14px;
        padding-right: 32px;
    }

    .xy-home-video-title {
        font-size: 16px;
    }

    .xy-home-video-subtitle {
        font-size: 18px;
    }


    body.xy-home-front .faq-question-text {
        font-size: 17px;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 15px;
    }

    /* 布局与尺寸（平板） */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 720px;
        padding-left: 32px;
        padding-right: 32px;
        padding-bottom: 96px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 32px;
    }

    .intro-grid-section {
        padding-top: 64px;
    }

    .intro-top {
        padding: 48px 32px;
        gap: 28px;
    }

    .intro-desc {
        max-width: 560px;
    }

    .intro-grid__cell {
        min-height: 360px;
    }

    .capabilities-top {
        padding-block: 28px;
    }

    .capabilities-left {
        flex: 0 0 60%;
        max-width: 58%;
    }

    .capabilities-right {
        flex: 0 0 40%;
        max-width: 42%;
        padding: 10px 0 10px 18px;
    }

    .cap-item {
        height: auto;
        min-height: 280px;
        padding-block: 28px;
        width: auto;
        max-width: none;
    }

    .story-container {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        height: auto;
        min-height: 340px;
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 40px;
    }

    .story-content {
        flex: 0 0 58%;
        max-width: 58%;
        padding: 32px 0 32px 28px;
    }

    .story-visual {
        flex: 0 0 42%;
        max-width: 42%;
    }

    .story-image {
        max-width: min(520px, 100%);
    }

    .cards-item {
        padding-block-start: 52px;
    }

    .cards-media {
        height: 320px;
    }

    .new-section-pc {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 80px));
    }

    .xy-home-video-header {
        left: 24px;
        right: 72px;
        top: 22px;
    }

    body.xy-home-front .cta-section {
        min-height: 300px;
    }

    body.xy-home-front .cta-container {
        padding: 72px 40px;
    }

    body.xy-home-front .cta-title {
        max-width: 720px;
        padding-bottom: 22px;
    }

    body.xy-home-front .cta-btn {
        min-width: 320px;
        width: auto;
        max-width: none;
        padding: 17px 28px;
    }
}

/* 规则 7：1025–1365.98（窄桌面：字号与留白收紧） */
@media (min-width: 1025px) and (max-width: 1365.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 60px;
        --xy-home-section-inline: 32px;
    }

    body.xy-home-front .cards-section {
        box-sizing: border-box;
        width: 100%;
        max-width: 1296px;
        margin-left: auto;
        margin-right: auto;
        padding-inline: 60px;
    }

    body.xy-home-front .cards-section .cards-item {
        padding-top: 40px;
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 0;
    }

    body.xy-home-front .cards-section .cards-date {
        padding-left: 0;
    }

    body.xy-home-front .cards-section .cards-footer {
        margin-left: -20px;
        margin-right: -20px;
    }

    .hero-title {
        font-size: 43px;
        font-weight: 600;
    }

    .hero-desc {
        font-size: 14px;
        margin-bottom: 24px;
    }

    .hero-btn {
        font-size: 14px;
    }

    .intro-title {
        font-size: 35px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 28px;
    }

    .intro-grid__title {
        font-size: 18px;
    }

    .intro-grid__desc {
        font-size: 14px;
    }

    .capabilities-tag {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 30px;
        line-height: 1.2;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 40px;
    }

    .cap-unit {
        font-size: 18px;
    }

    .cap-label,
    .cap-highlight-desc {
        font-size: 14px;
    }

    .story-title {
        font-size: 26px;
    }

    .story-desc {
        font-size: 14px;
    }

    .story-link {
        font-size: 14px;
    }

    .cards-date {
        font-size: 14px;
    }

    .cards-title {
        font-size: 16px;
    }

    .cards-desc {
        font-size: 14px;
    }

    .cards-link {
        font-size: 14px;
    }

    .new-section-title {
        font-size: 28px;
    }

    .new-section-desc {
        font-size: 14px;
        padding-right: 40px;
    }

    .xy-home-video-title {
        font-size: 18px;
    }

    .xy-home-video-subtitle {
        font-size: 18px;
    }


    body.xy-home-front .faq-title {
        font-size: 22px;
    }

    body.xy-home-front .faq-question-text {
        font-size: 17px;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 15px;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 var(--xy-home-frame-inline);
    }

    .hero-content {
        max-width: 780px;
        padding-left: 32px;
        padding-right: 32px;
        padding-bottom: 100px;
    }

    .hero-progress {
        left: var(--xy-home-frame-inline);
        right: var(--xy-home-frame-inline);
        bottom: 34px;
    }

    .intro-grid-section {
        padding-top: 80px;
    }

    .intro-top {
        padding: 52px 36px;
        gap: 28px;
    }

    .intro-desc {
        max-width: 580px;
    }

    .intro-grid__cell {
        min-height: 400px;
    }

    .capabilities-top {
        padding-block: 28px;
    }

    .capabilities-left {
        flex: 0 0 60%;
        max-width: 58%;
    }

    .capabilities-right {
        flex: 0 0 40%;
        max-width: 42%;
    }

    .cap-item {
        min-height: 300px;
        padding-block: 28px;
    }

    .story-container {
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 48px;
        min-height: 360px;
    }

    .story-content {
        padding: 34px 0 34px 34px;
    }

    .cards-media {
        height: 340px;
    }

    .new-section-pc {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 96px));
    }

    body.xy-home-front .cta-container {
        padding: 68px 40px;
    }

    body.xy-home-front .cta-title {
        max-width: 720px;
        padding-bottom: 22px;
    }

    body.xy-home-front .cta-btn {
        min-width: 340px;
        padding: 17px 28px;
    }


}

/* 规则 8 */
@media (min-width: 1366px) and (max-width: 1512px) {
    body.xy-home-front {
        --xy-home-frame-inline: 0px;
        --xy-home-section-inline: 40px;
    }

    .hero-title {
        font-size: 52px;
    }

    .hero-desc {
        font-size: 14px;
        margin-bottom: 26px;
    }

    .hero-btn {
        font-size: 14px;
    }

    .intro-title {
        font-size: 36px;
    }

    .intro-desc {
        font-size: 14px;
        line-height: 28px;
    }

    .intro-grid__title {
        font-size: 18px;
    }

    .intro-grid__desc {
        font-size: 14px;
    }

    .capabilities-tag {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 32px;
        line-height: 1.2;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 46px;
    }

    .cap-unit {
        font-size: 20px;
    }

    .cap-label,
    .cap-highlight-desc {
        font-size: 14px;
    }

    .story-title {
        font-size: 28px;
    }

    .story-desc {
        font-size: 14px;
    }

    .story-link {
        font-size: 14px;
    }

    .cards-date {
        font-size: 14px;
    }

    .cards-title {
        font-size: 16px;
    }

    .cards-desc {
        font-size: 14px;
    }

    .cards-link {
        font-size: 14px;
    }

    .new-section-title {
        font-size: 30px;
    }

    .new-section-desc {
        font-size: 14px;
        padding-right: 0;
    }

    .xy-home-video-title {
        font-size: 18px;
    }

    .xy-home-video-subtitle {
        font-size: 18px;
    }


    body.xy-home-front .faq-title {
        font-size: 22px;
    }

    body.xy-home-front .faq-question-text {
        font-size: 20px;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 15px;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 96px;
    }

    .hero-content {
        max-width: 800px;
        padding-left: 40px;
        padding-right: 40px;
        padding-bottom: 112px;
    }

    .hero-progress {
        left: 96px;
        right: 96px;
        bottom: 38px;
    }

    .intro-grid-section {
        padding-top: 104px;
    }

    .intro-top {
        padding: 60px 44px;
        gap: 32px;
    }

    .intro-desc {
        max-width: 598px;
    }

    .intro-grid__cell {
        min-height: 420px;
    }

    .capabilities-top {
        padding-block: 32px;
    }

    .capabilities-left {
        flex: 0 0 60%;
        max-width: 58%;
    }

    .capabilities-right {
        flex: 0 0 40%;
        max-width: 42%;
    }

    .cap-item {
        min-height: 300px;
        padding-block: 32px;
    }

    body.xy-home-front .section-container.story-container,
    body.xy-home-front .story-container {
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 56px;
        min-height: 374px;
    }

    .story-content {
        padding: 40px 0 40px 40px;
    }

    .cards-media {
        height: 380px;
    }

    .new-section-pc {
        padding-top: 88px;
        padding-bottom: 88px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 112px));
    }

    body.xy-home-front .cta-container {
        padding: 80px 52px;
    }

    body.xy-home-front .cta-title {
        max-width: 780px;
        padding-bottom: 26px;
    }

    body.xy-home-front .cta-btn {
        min-width: 360px;
        padding: 18px 28px;
    }
}

/* 规则 9 */
@media (min-width: 1513px) and (max-width: 1599.98px) {
    body.xy-home-front {
        --xy-home-frame-inline: 0px;
        --xy-home-section-inline: 40px;
    }

    .hero-title {
        font-size: 54px;
    }

    .hero-desc {
        font-size: 14px;
        margin-bottom: 26px;
    }

    .hero-btn {
        font-size: 14px;
    }

    .intro-title {
        font-size: 38px;
    }
    .intro-desc {
        font-size: 14px;
        line-height: 28px;
    }

    .intro-grid__title {
        font-size: 18px;
    }

    .intro-grid__desc {
        font-size: 14px;
    }

    .capabilities-tag {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 34px;
        line-height: 1.15;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 48px;
    }

    .cap-unit {
        font-size: 20px;
    }

    .cap-label,
    .cap-highlight-desc {
        font-size: 14px;
    }

    .story-title {
        font-size: 29px;
    }

    .story-desc {
        font-size: 14px;
    }

    .story-link {
        font-size: 14px;
    }

    .cards-date {
        font-size: 14px;
    }

    .cards-title {
        font-size: 16px;
    }

    .cards-desc {
        font-size: 14px;
    }

    .cards-link {
        font-size: 14px;
    }

    .new-section-title {
        font-size: 30px;
    }

    .new-section-desc {
        font-size: 14px;
        padding-right: 0;
    }

    .xy-home-video-title {
        font-size: 18px;
    }

    .xy-home-video-subtitle {
        font-size: 18px;
    }


    body.xy-home-front .faq-title {
        font-size: 22px;
    }

    body.xy-home-front .faq-question-text {
        font-size: 21px;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 15px;
    }

    /* 布局与尺寸 */
    .hero-container {
        padding: 0 104px;
    }

    .hero-content {
        max-width: 800px;
        padding-left: 40px;
        padding-right: 40px;
        padding-bottom: 118px;
    }

    .hero-progress {
        left: 104px;
        right: 104px;
        bottom: 40px;
    }

    .intro-grid-section {
        padding-top: 106px;
    }

    .intro-top {
        padding: 62px 44px;
        gap: 32px;
    }

    .intro-desc {
        max-width: 598px;
    }

    .intro-grid__cell {
        min-height: 428px;
    }

    .capabilities-top {
        padding-block: 32px;
    }

    .capabilities-left {
        flex: 0 0 60%;
        max-width: 58%;
    }

    .capabilities-right {
        flex: 0 0 40%;
        max-width: 42%;
    }

    .cap-item {
        min-height: 300px;
        padding-block: 32px;
    }

    body.xy-home-front .section-container.story-container,
    body.xy-home-front .story-container {
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 58px;
        min-height: 374px;
    }

    .story-content {
        padding: 40px 0 40px 40px;
    }

    .cards-media {
        height: 390px;
    }

    .new-section-pc {
        padding-top: 96px;
        padding-bottom: 96px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 120px));
    }

    body.xy-home-front .cta-container {
        padding: 82px 56px;
    }

    body.xy-home-front .cta-title {
        max-width: 800px;
        padding-bottom: 26px;
    }

    body.xy-home-front .cta-btn {
        min-width: 360px;
        padding: 18px 28px;
    }
}

/* 规则 10 */
@media (min-width: 1600px) {
    body.xy-home-front {
        --xy-home-frame-inline: 0px;
        --xy-home-section-inline: 40px;
    }

    .hero-title {
        font-size: 56px;
    }

    .hero-desc {
        font-size: 15px;
        margin-bottom: 28px;
    }

    .hero-btn {
        font-size: 14px;
    }

    .intro-title {
        font-size: 40px;
    }
    .intro-desc {
        font-size: 14px;
        line-height: 28px;
    }

    .intro-grid__title {
        font-size: 18px;
    }

    .intro-grid__desc {
        font-size: 14px;
    }

    .capabilities-tag {
        font-size: 14px;
    }

    .capabilities-title {
        font-size: 36px;
        line-height: 1.15;
    }

    .capabilities-desc {
        font-size: 14px;
    }

    .cap-number {
        font-size: 50px;
    }

    .cap-unit {
        font-size: 20px;
    }

    .cap-label,
    .cap-highlight-desc {
        font-size: 14px;
    }

    .story-title {
        font-size: 30px;
    }

    .story-desc {
        font-size: 14px;
    }

    .story-link {
        font-size: 14px;
    }

    .cards-date {
        font-size: 14px;
    }

    .cards-title {
        font-size: 16px;
    }

    .cards-desc {
        font-size: 14px;
    }

    .cards-link {
        font-size: 14px;
    }

    .new-section-title {
        font-size: 30px;
    }

    .new-section-desc {
        font-size: 14px;
        padding-right: 0;
    }

    .xy-home-video-title {
        font-size: 18px;
    }

    .xy-home-video-subtitle {
        font-size: 18px;
    }


    body.xy-home-front .faq-title {
        font-size: 22px;
    }

    body.xy-home-front .faq-question-text {
        font-size: 21px;
    }

    body.xy-home-front .faq-answer-text {
        font-size: 15px;
    }

    /* 布局与尺寸（对齐 main 桌面基准） */
    .hero-container {
        padding: 0 108px;
    }

    .hero-content {
        max-width: 800px;
        padding-left: 40px;
        padding-right: 40px;
        padding-bottom: 120px;
    }

    .hero-progress {
        left: 108px;
        right: 108px;
        bottom: 40px;
    }

    .intro-grid-section {
        padding-top: 108px;
    }

    .intro-top {
        padding: 60px 40px;
        gap: 30px;
    }

    .intro-desc {
        max-width: 598px;
    }

    .intro-grid__cell {
        min-height: 432px;
    }

    .capabilities-top {
        padding-block: 30px;
    }

    .capabilities-left {
        flex: 0 0 60%;
        max-width: 58%;
    }

    .capabilities-right {
        flex: 0 0 40%;
        max-width: 42%;
    }

    .cap-item {
        height: 300px;
        min-height: 300px;
        padding-block: 32px;
    }

    body.xy-home-front .section-container.story-container,
    body.xy-home-front .story-container {
        padding-block: 0;
        padding-inline: var(--xy-home-frame-inline) !important;
        gap: 60px;
        height: 374px;
        min-height: 374px;
    }

    .story-content {
        padding: 40px 0 40px 40px;
    }

    .story-image {
        max-width: 520px;
    }

    .cards-media {
        height: 400px;
    }

    .new-section-pc {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .xy-home-video-dialog {
        width: min(1080px, calc(100vw - 128px));
    }

    .xy-home-video-header {
        left: 28px;
        right: 72px;
        top: 22px;
    }

    body.xy-home-front .cta-section {
        min-height: 320px;
    }

    body.xy-home-front .cta-container {
        padding: 80px 40px;
    }

    body.xy-home-front .cta-title {
        max-width: 800px;
        padding-bottom: 24px;
    }

    body.xy-home-front .cta-btn {
        min-width: 360px;
        padding: 18px 28px;
    }
}

/* 规则 11：指针设备悬停（自 main.css 移出，避免重复） */
@media (hover: hover) and (pointer: fine) {
    .hero-btn:hover {
        gap: 20px;
    }
}
