body {
    background: #e9edf2;
}

.mobile-appointment-main {
    width: 100%;
    background: #ffffff;
}

.mobile-appointment-hero {
    width: 100%;
}

.mobile-appointment-hero__visual {
    position: relative;
}

.mobile-appointment-hero__image {
    display: block;
    width: 100%;
    height: auto;
}

.mobile-appointment-hero__button {
    position: absolute;
    left: calc(min(100vw, 750px) * 28 / 750);
    bottom: calc(min(100vw, 750px) * 40 / 750);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    width: calc(min(100vw, 750px) * 188 / 750);
}

.mobile-appointment-hero__button-image {
    display: block;
    width: 100%;
    height: auto;
}

.mobile-appointment-section {
    padding: calc(min(100vw, 750px) * 54 / 750) calc(min(100vw, 750px) * 28 / 750) 0;
}

.mobile-appointment-section__header {
    text-align: center;
}

.mobile-appointment-section__title {
    color: #282828;
    font-size: calc(min(100vw, 750px) * 44 / 750);
    line-height: 1.35;
    font-weight: 500;
}

.mobile-appointment-section__subtitle {
    margin-top: calc(min(100vw, 750px) * 18 / 750);
    color: #9fa6b1;
    font-size: calc(min(100vw, 750px) * 24 / 750);
    line-height: 1.8;
}

.mobile-appointment-feature-list {
    margin-top: calc(min(100vw, 750px) * 28 / 750);
    display: grid;
    gap: calc(min(100vw, 750px) * 20 / 750);
}

.mobile-appointment-feature-card {
    position: relative;
    border-radius: calc(min(100vw, 750px) * 18 / 750);
    overflow: hidden;
    box-shadow: 0 calc(min(100vw, 750px) * 14 / 750) calc(min(100vw, 750px) * 34 / 750) rgba(180, 196, 224, 0.16);
}

.mobile-appointment-feature-card__image {
    display: block;
    width: 100%;
    height: auto;
}

.mobile-appointment-feature-card__copy {
    position: absolute;
    left: calc(min(100vw, 750px) * 32 / 750);
    right: calc(min(100vw, 750px) * 32 / 750);
    top: calc(min(100vw, 750px) * 132 / 750);
}

.mobile-appointment-feature-card__title {
    color: #39414d;
    font-size: calc(min(100vw, 750px) * 40 / 750);
    line-height: 1.3;
    font-weight: 500;
}

.mobile-appointment-feature-card__text {
    margin-top: calc(min(100vw, 750px) * 22 / 750);
    color: #8a9aaf;
    font-size: calc(min(100vw, 750px) * 24 / 750);
    line-height: 1.65;
}

.mobile-appointment-section--solutions {
    padding-top: calc(min(100vw, 750px) * 62 / 750);
}

.mobile-appointment-solution-grid {
    margin-top: calc(min(100vw, 750px) * 88 / 750);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(min(100vw, 750px) * 18 / 750);
}

.mobile-appointment-solution-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid #dbe9f7;
    border-radius: calc(min(100vw, 750px) * 8 / 750);
    overflow: hidden;
    background: linear-gradient(180deg, #f4fbff 0%, #ddf0ff 100%);
}

.mobile-appointment-solution-card__copy {
    min-height: calc(min(100vw, 750px) * 120 / 750);
    padding: calc(min(100vw, 750px) * 28 / 750) calc(min(100vw, 750px) * 16 / 750) 0 calc(min(100vw, 750px) * 34 / 750);
    text-align: left;
}

.mobile-appointment-solution-card__title {
    color: #2f3947;
    font-size: calc(min(100vw, 750px) * 40 / 750);
    line-height: 1.35;
    font-weight: 500;
}

.mobile-appointment-solution-card__text {
    margin-top: calc(min(100vw, 750px) * 14 / 750);
    color: #7f92a9;
    font-size: calc(min(100vw, 750px) * 24 / 750);
    line-height: 1.6;
}

.mobile-appointment-solution-card__image {
    display: block;
    width: 100%;
    height: auto;
    margin-top: auto;
}

.mobile-appointment-flow {
    margin-top: calc(min(100vw, 750px) * 60 / 750);
    padding: calc(min(100vw, 750px) * 56 / 750) calc(min(100vw, 750px) * 28 / 750) calc(min(100vw, 750px) * 64 / 750);
    background: linear-gradient(180deg, #f7f9fd 0%, #eef3fb 100%);
}

.mobile-appointment-flow__list {
    margin-top: calc(min(100vw, 750px) * 88 / 750);
    display: grid;
    gap: calc(min(100vw, 750px) * 20 / 750);
}

.mobile-appointment-flow-step {
    text-align: center;
}

.mobile-appointment-flow-step__phone {
    width: calc(min(100vw, 750px) * 370 / 750);
    height: auto;
    display: block;
    margin: 0 auto;
}

.mobile-appointment-flow-step__title {
    margin-top: calc(min(100vw, 750px) * 52 / 750);
    color: #303030;
    font-size: calc(min(100vw, 750px) * 32 / 750);
    line-height: 1.35;
    font-weight: 500;
}

.mobile-appointment-flow-step__text {
    margin-top: calc(min(100vw, 750px) * 10 / 750);
    color: #a0a7b0;
    font-size: calc(min(100vw, 750px) * 24 / 750);
    line-height: 1.6;
}

.mobile-appointment-flow__arrow :is(img, svg:where([data-decorative-image])) {
    width: calc(min(100vw, 750px) * 208 / 750);
    height: calc(min(100vw, 750px) * 208 / 750);
    display: block;
    margin: 0 auto;
}

.mobile-appointment-section--trust {
    padding-top: calc(min(100vw, 750px) * 62 / 750);
    padding-bottom: calc(min(100vw, 750px) * 34 / 750);
}

.mobile-appointment-trust-list {
    margin-top: calc(min(100vw, 750px) * 88 / 750);
    display: grid;
    gap: calc(min(100vw, 750px) * 18 / 750);
}

.mobile-appointment-trust-card {
    box-sizing: border-box;
    height: calc(min(100vw, 750px) * 210 / 750);
    padding: calc(min(100vw, 750px) * 20 / 750) calc(min(100vw, 750px) * 45 / 750);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(min(100vw, 750px) * 18 / 750);
    border: 1px solid #dfe7f4;
    border-radius: calc(min(100vw, 750px) * 12 / 750);
    background: #f7f8fa;
}

.mobile-appointment-trust-card--dashed {
    border-style: dashed;
}

.mobile-appointment-trust-card__copy {
    min-width: 0;
}

.mobile-appointment-trust-card__title {
    color: #5b67d6;
    font-size: calc(min(100vw, 750px) * 32 / 750);
    line-height: 1.35;
    font-weight: 500;
}

.mobile-appointment-trust-card__text {
    margin-top: calc(min(100vw, 750px) * 10 / 750);
    color: #6b7481;
    font-size: calc(min(100vw, 750px) * 32 / 750);
    line-height: 1.6;
}

.mobile-appointment-trust-card__visual {
    width: calc(min(100vw, 750px) * 212 / 750);
    height: auto;
    flex-shrink: 0;
}

.mobile-appointment-logo-card {
    box-sizing: border-box;
    height: calc(min(100vw, 750px) * 304 / 750);
    padding: calc(min(100vw, 750px) * 20 / 750) calc(min(100vw, 750px) * 40 / 750);
    border: 1px solid #dfe7f4;
    border-radius: calc(min(100vw, 750px) * 12 / 750);
    background: #f7f8fa;
}

.mobile-appointment-logo-card__title {
    color: #2f2f2f;
    font-size: calc(min(100vw, 750px) * 32 / 750);
    line-height: 1.35;
    font-weight: 500;
}

.mobile-appointment-logo-card__grid {
    margin-top: calc(min(100vw, 750px) * 32 / 750);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: calc(min(100vw, 750px) * 12 / 750);
    row-gap: calc(min(100vw, 750px) * 32 / 750);
    align-items: center;
}

.mobile-appointment-logo-card__item {
    width: calc(min(100vw, 750px) * 132 / 750);
    height: auto;
    display: block;
}

.mobile-appointment-logo-card__item:nth-child(3n + 1) {
    justify-self: start;
}

.mobile-appointment-logo-card__item:nth-child(3n + 2) {
    justify-self: center;
}

.mobile-appointment-logo-card__item:nth-child(3n) {
    justify-self: end;
}

.mobile-appointment-actions {
    margin-top: calc(min(100vw, 750px) * 124 / 750);
    display: flex;
    justify-content: center;
}

.mobile-appointment-actions__button {
    margin-top: 0;
}

.mobile-appointment-section--partners {
    padding-top: calc(min(100vw, 750px) * 44 / 750);
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
}

.mobile-appointment-partners {
    position: relative;
    aspect-ratio: 750 / 1414;
    border-radius: 0;
    overflow: hidden;
    background: #ffffff url("../assets-web/mobile/预约系统/合作客户-评价.png") center top / cover no-repeat;
    box-shadow: none;
}

.mobile-appointment-partners__overlay {
    position: absolute;
    inset: 0;
    padding: calc(min(100vw, 750px) * 44 / 750) 0 0;
}

.mobile-appointment-partners__header {
    padding: 0 calc(min(100vw, 750px) * 18 / 750);
}

.mobile-appointment-partners__header .mobile-appointment-section__title {
    font-size: calc(min(100vw, 750px) * 28 / 750);
    color: #3d3d3d;
}

.mobile-appointment-partners__marquee {
    margin-top: calc(min(100vw, 750px) * 40 / 750);
    display: grid;
    gap: calc(min(100vw, 750px) * 18 / 750);
}

.mobile-appointment-partners__row {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000000 10%, #000000 90%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000000 10%, #000000 90%, transparent 100%);
}

.mobile-appointment-partners__track {
    display: flex;
    width: max-content;
    animation: mobile-appointment-partners-marquee 28s linear infinite;
    will-change: transform;
}

.mobile-appointment-partners__track--slow {
    animation-duration: 32s;
}

.mobile-appointment-partners__track--faster {
    animation-duration: 24s;
}

.mobile-appointment-partners__row--reverse .mobile-appointment-partners__track {
    animation-name: mobile-appointment-partners-marquee-reverse;
}

.mobile-appointment-partners__group {
    display: flex;
    gap: calc(min(100vw, 750px) * 18 / 750);
    padding-right: calc(min(100vw, 750px) * 18 / 750);
    flex-shrink: 0;
}

.mobile-appointment-partners__logo-card {
    box-sizing: border-box;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: auto;
    height: calc(min(100vw, 750px) * 54 / 750);
    padding: 0 calc(min(100vw, 750px) * 12 / 750);
    border: 1px solid rgba(215, 226, 240, 0.92);
    border-radius: calc(min(100vw, 750px) * 10 / 750);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 calc(min(100vw, 750px) * 8 / 750) calc(min(100vw, 750px) * 18 / 750) rgba(178, 192, 220, 0.14);
    backdrop-filter: blur(calc(min(100vw, 750px) * 4 / 750));
}

.mobile-appointment-partners__logo-card :is(img, svg:where([data-decorative-image])) {
    display: block;
    width: auto;
    height: 100%;
    max-width: none;
    object-fit: contain;
}

@keyframes mobile-appointment-partners-marquee {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@keyframes mobile-appointment-partners-marquee-reverse {
    from {
        transform: translateX(-50%);
    }

    to {
        transform: translateX(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-appointment-partners__track,
    .mobile-appointment-partners__track--slow,
    .mobile-appointment-partners__track--faster {
        animation: none;
        transform: translateX(0);
    }
}

.mobile-appointment-section--faq {
    padding-top: calc(min(100vw, 750px) * 72 / 750);
    padding-bottom: calc(min(100vw, 750px) * 88 / 750);
}

.mobile-appointment-faq__header .mobile-appointment-section__title {
    font-size: calc(min(100vw, 750px) * 44 / 750);
    color: #3d3d3d;
}

.mobile-appointment-faq__figure {
    margin: calc(min(100vw, 750px) * 72 / 750) auto 0;
    width: calc(min(100vw, 750px) * 648 / 750);
    max-width: 100%;
}

.mobile-appointment-faq__image {
    display: block;
    width: 100%;
    height: auto;
}

.mobile-appointment-cta {
    margin-top: calc(min(100vw, 750px) * 26 / 750);
    padding: calc(min(100vw, 750px) * 74 / 750) calc(min(100vw, 750px) * 40 / 750) calc(min(100vw, 750px) * 88 / 750);
    background: #eaf3ff;
}

.mobile-appointment-cta__inner {
    text-align: center;
}

.mobile-appointment-cta__title {
    color: #202020;
    font-size: calc(min(100vw, 750px) * 48 / 750);
    line-height: 1.2;
    font-weight: 600;
}

.mobile-appointment-cta__text {
    margin-top: calc(min(100vw, 750px) * 26 / 750);
    color: #6b7481;
    font-size: calc(min(100vw, 750px) * 22 / 750);
    line-height: 1.8;
}

.mobile-appointment-cta__features {
    margin-top: calc(min(100vw, 750px) * 34 / 750);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc(min(100vw, 750px) * 30 / 750);
}

.mobile-appointment-cta__feature {
    display: inline-flex;
    align-items: center;
    gap: calc(min(100vw, 750px) * 8 / 750);
    color: #8b97a7;
    font-size: calc(min(100vw, 750px) * 18 / 750);
    line-height: 1.3;
}

.mobile-appointment-cta__feature::before {
    content: "";
    width: calc(min(100vw, 750px) * 16 / 750);
    height: calc(min(100vw, 750px) * 16 / 750);
    background: url("../assets-web/mobile/文博资讯/check-蓝.png") center / contain no-repeat;
    flex-shrink: 0;
}

.mobile-appointment-cta__actions {
    margin-top: calc(min(100vw, 750px) * 54 / 750);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc(min(100vw, 750px) * 28 / 750);
}

.mobile-appointment-cta__button {
    min-height: calc(min(100vw, 750px) * 74 / 750);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.mobile-appointment-cta__button--primary {
    width: calc(min(100vw, 750px) * 222 / 750);
}

.mobile-appointment-cta__button--secondary {
    width: calc(min(100vw, 750px) * 202 / 750);
}

.mobile-appointment-cta__button-image {
    display: block;
    width: 100%;
    height: auto;
}
