/* 联系我们弹窗样式 */.contact-modal {    display: none;    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    z-index: 9999;    align-items: center;    justify-content: center;}.contact-modal-overlay {    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: rgba(0, 0, 0, 0.7);    backdrop-filter: blur(5px);}.contact-modal-content {    position: relative;    background: #ffffff;    border-radius: 20px;    max-width: 800px;    width: 90%;    max-height: 70vh;    overflow-y: auto;    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);    transform: scale(0.8);    transition: all 0.3s ease;} .contact-modal.show_sectiong .contact-modal-content {    transform: scale(1);}.contact-modal-header {    display: flex;    justify-content: space-between;    align-items: center;    padding: 30px 40px 20px;    border-bottom: 1px solid #e2e8f0;}.contact-modal-header h3 {    font-size: 1.8rem;    font-weight: 700;    color: #274893;    margin: 0;}.contact-modal-close {    background: none;    border: none;    cursor: pointer;    padding: 8px;    border-radius: 8px;    color: #64748b;    transition: all 0.3s ease;}.contact-modal-close:hover {    background: #f1f5f9;    color: #274893;}.contact-modal-body {    padding: 30px 40px 40px;}.contact-info-grid {    display: grid;    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));    gap: 30px;}.contact-info-item {    display: flex;    gap: 20px;    padding: 25px;    background: #f8fafc;    border-radius: 16px;    border: 1px solid #e2e8f0;    transition: all 0.3s ease;}/* 双信息卡片样式 */.contact-info-double {    flex-direction: column;    gap: 10px;}.contact-info-section {    display: flex;    gap: 15px;    align-items: flex-start;}.contact-info-divider {    width: 100%;    height: 1px;    background: linear-gradient(90deg, transparent, #e2e8f0, transparent);    margin: 10px 0;}.contact-info-item:hover {    transform: translateY(-5px);    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);}.contact-info-icon {    font-size: 2.5rem;    min-width: 60px;    text-align: center;}.contact-info-content {    flex: 1;    width: 100%;}.contact-info-content h4 {    font-size: 1.3rem;    font-weight: 600;    color: #1e293b;    margin: 0 0 10px 0;}.contact-info-content p {    color: #64748b;    margin: 8px 0;    font-size: 1rem;}.qr-code-container {    margin: 15px 0;    text-align: center;}.qr-code {    width: 120px;    height: 120px;    border-radius: 8px;    border: 1px solid #e2e8f0;}/* .copy-btn {    background: linear-gradient(135deg, #3b82f6, #1d4ed8);    color: #ffffff;    border: none;    padding: 8px 16px;    border-radius: 6px;    font-size: 0.9rem;    font-weight: 500;    cursor: pointer;    transition: all 0.3s ease;    margin-top: 10px;}.copy-btn:hover {    transform: translateY(-2px);    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4);}.copy-btn.copied {    background: #1d4ed8;} *//* 复制全部按钮样式 */.copy-all-section {    text-align: center;}.copy-textcss {    border-radius: 5px;    padding: 2px 10px;    border: solid 1px #e2e8f0;    cursor: pointer;    font-size: 0.8rem;    font-weight: 400; margin-left: 10px;}.contact-phone,.contact-email{    font-size: 1.2rem;    font-weight: 600;    color: #1e293b;}.copy-all-btn {    color: #1d4ed8;    border: none;    padding: 15px 30px;    border-radius: 10px;    font-size: 1.1rem;    font-weight: 600;    cursor: pointer;    transition: all 0.3s ease;}.copy-all-btn.copied {    color: #00db25;    transform: scale(0.95);}/* 联系操作按钮组 */.contact-actions {    display: flex;    gap: 10px;    margin-top: 10px;    flex-wrap: nowrap;    flex-direction: row;    justify-content: space-around;}/* 向下滑动提示箭头 - 仅移动端显示-开始 */.scroll-down-hint {    display: none;    position: absolute;    bottom: 15px;    left: 50%;    transform: translateX(-50%);    z-index: 10;    opacity: 1;    transition: opacity 0.3s ease, transform 0.3s ease;}.scroll-down-hint.hide {    opacity: 0;    transform: translateX(-50%) translateY(10px);    pointer-events: none;}.scroll-down-arrow {    width: 30px;    height: 50px;    display: flex;    flex-direction: column;    align-items: center;    justify-content: space-between;    padding: 8px 0;    cursor: pointer;    transition: all 0.3s ease;    animation: scrollHint 2s ease-in-out infinite;}.scroll-down-arrow:active {    transform: scale(0.9);}/* 第一条线 */.scroll-down-arrow::before {    content: '';    width: 20px;    height: 2px;    background: #3b82f6;    border-radius: 2px;    animation: lineMove1 2s ease-in-out infinite;}/* 第二条线 */.scroll-down-arrow::after {    content: '';    width: 20px;    height: 2px;    background: #3b82f6;    border-radius: 2px;    animation: lineMove2 2s ease-in-out infinite;}/* 第三条线 - 使用额外元素 */.scroll-down-arrow {    position: relative;}.scroll-down-arrow span {    display: block;    width: 20px;    height: 2px;    background: #3b82f6;    border-radius: 2px;    animation: lineMove3 2s ease-in-out infinite;}/* 容器动画 - 整体向下移动 */@keyframes scrollHint {    0%,    100% {        opacity: 0.7;        transform: translateY(0);    }    50% {        opacity: 1;        transform: translateY(8px);    }}/* 第一条线动画 - 最先出现和移动 */@keyframes lineMove1 {    0% {        opacity: 0.3;        transform: translateY(0);    }    33% {        opacity: 1;        transform: translateY(8px);    }    66%,    100% {        opacity: 0.3;        transform: translateY(16px);    }}/* 第二条线动画 - 延迟出现 */@keyframes lineMove2 {    0%,    33% {        opacity: 0.3;        transform: translateY(0);    }    50% {        opacity: 1;        transform: translateY(8px);    }    83%,    100% {        opacity: 0.3;        transform: translateY(16px);    }}/* 第三条线动画 - 最后出现 */@keyframes lineMove3 {    0%,    50% {        opacity: 0.3;        transform: translateY(0);    }    66% {        opacity: 1;        transform: translateY(8px);    }    100% {        opacity: 0.3;        transform: translateY(16px);    }}/* 仅在移动端显示 */@media (max-width: 768px) {    .scroll-down-hint {        display: block !important;    }    .scroll-down-hint.hide {        display: block !important;        /* 仍然占据空间，通过opacity隐藏 */    }}/* 向下滑动提示箭头 - 仅移动端显示-结束 *//* 拨打电话按钮样式 */.call-btn {    background: linear-gradient(135deg, #f59e0b, #d97706);    color: #ffffff;    text-decoration: none;    padding: 10px 16px;    border-radius: 6px;    font-size: 0.9rem;    font-weight: 500;    transition: all 0.3s ease;    display: none;    align-items: center;    gap: 5px;    margin-top: 10px;    text-align: center;}.textcopied {    color: #1d4ed8;    border-color: #1d4ed8;}.call-btn:hover {    transform: translateY(-2px);    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.4);    color: #ffffff;    text-decoration: none;}/* 响应式设计 */@media (max-width: 768px) {    .contact-modal-content {        width: 95%;        margin: 20px;    }    .call-btn {        display: inline-flex;        justify-content: center;        padding: 10px 16px;    }    .contact-modal-header {        padding: 20px 25px 15px;    }    .contact-modal-header h3 {        font-size: 1.2rem;    }    .contact-modal-body {        padding: 20px 25px 30px;    }    .contact-info-grid {        grid-template-columns: 1fr;        gap: 20px;    }    .contact-info-item {        flex-direction: column;        text-align: center;        padding: 20px;    }    .contact-info-icon {        font-size: 2rem;        min-width: auto;    }    .qr-code {        width: 100px;        height: 100px;    }    .contact-actions {        gap: 8px;    }    .copy-all-btn {        padding: 12px 20px;        font-size: 0.9rem;    }    /* 双信息卡片响应式 */    .contact-info-double {        gap: 0px;    }    .contact-info-section {        flex-direction: column;        text-align: center;        gap: 10px;    }    .contact-info-divider {        margin: 15px 0;    }}/*   添加悬浮按钮样式  */.floating-buttons {    position: fixed;    right: 20px;    bottom: 40vh;    z-index: 1000;    display: flex;    flex-direction: column;    gap: 12px;    /* 兼容iOS < 11.2 */    padding-bottom: constant(safe-area-inset-bottom);    /* 兼容iOS >= 11.2 */    padding-bottom: env(safe-area-inset-bottom);}.floating-btn {    width: 50px;    height: 50px;    border-radius: 50%;    display: flex;    align-items: center;    justify-content: center;    cursor: pointer;    transition: all 0.3s ease;    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);    position: relative;    overflow: hidden;}.floating-back-to-top {    background: linear-gradient(135deg, #3b82f6, #1d4ed8);    color: #ffffff;}.floating-back-to-top:hover {    transform: translateY(-3px);    box-shadow: 0 8px 20px rgba(59, 130, 246, 0.4);}.floating-customer-service {    background: linear-gradient(135deg, #10b981, #059669);    color: #ffffff;    animation: pulse 2s infinite;}.floating-navigation {    background: linear-gradient(135deg, #8b5cf6, #7c3aed);    color: #ffffff;    display: none;}.floating-ai-entry {    background: linear-gradient(135deg, #5c8df6, #3a4ced);    color: #ffffff; }.ai-btn-text{ font-size: 1rem; font-weight: bold; }.floating-navigation:hover {    transform: translateY(-3px);    box-shadow: 0 8px 20px rgba(139, 92, 246, 0.4);}.floating-customer-service:hover {    transform: translateY(-3px);    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.4);    animation: none;}.floating-home-btn {    background: linear-gradient(135deg, #6366f1, #4f46e5);    color: #ffffff;    display: none;    /* 默认隐藏，仅在移动端显示 */}.floating-home-btn:hover {    transform: translateY(-3px);    box-shadow: 0 8px 20px rgba(99, 102, 241, 0.4);}.floating-back-btn {    background: linear-gradient(135deg, #f59e0b, #d97706);    color: #ffffff;}.floating-back-btn:hover {    transform: translateY(-3px);    box-shadow: 0 8px 20px rgba(245, 158, 11, 0.4);}@keyframes pulse {    0% {        box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);    }    50% {        box-shadow: 0 4px 20px rgba(16, 185, 129, 0.6);    }    100% {        box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);    }}.floating-btn svg {    transition: transform 0.3s ease;}.floating-btn:hover svg {    transform: scale(1.1);}/* 响应式设计 */@media (max-width: 768px) {    .floating-navigation {        display: flex;    }    /* 移动端显示首页按钮 */    .floating-home-btn {        display: flex !important;    }    .floating-buttons {        right: 0;        width: 100%;        background-color: #fffffff0;        border-radius: 10px 10px 0px 0px;        padding: 8px 30px;        margin: 0 auto;        bottom: 0px;        left: 0px;        justify-content: space-around;        align-items: center;        flex-direction: row;        box-shadow: 0px 0px 5px 5px #00295321;    }    .floating-btn {        width: 45px;        height: 45px;    }    .floating-btn svg {        width: 18px;        height: 18px;    }}/* 显示/隐藏动画 */.floating-btn.hide {    transform: translateX(100px);    opacity: 0;}.floating-btn.show_sectiong {    transform: translateX(0);    opacity: 1;}/* 导航菜单遮罩层样式 */.nav-menu-overlay {    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: linear-gradient(135deg, rgba(102, 126, 234, 0.3) 0%, rgba(36, 59, 109, 0.3) 100%);    backdrop-filter: blur(8px);    z-index: 1000;    opacity: 0;    visibility: hidden;    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}.nav-menu-overlay.show_sectiong {    opacity: 1;    visibility: visible;}/* 快速导航菜单样式 */.floating-nav-menu {    position: fixed;    bottom: 35vh;    right: 5vh;    width: 80vw;    /* background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); */    background: linear-gradient(135deg, #5e8eff 0%, #4938a4 100%);    border-radius: 20px;    box-shadow: 0 20px 60px rgba(102, 126, 234, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.1);    z-index: 1001;    transform: translateX(260px) scale(0.8);    opacity: 0;    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    overflow: hidden;    display: none;    backdrop-filter: blur(20px);}.floating-nav-menu.show_sectiong {    transform: translateX(0) scale(1);    opacity: 1;    display: flex;    animation: navMenuFadeIn 0.3s ease-out;}@keyframes navMenuFadeIn {    0% {        transform: translateX(260px) scale(0.8);        opacity: 0;    }    100% {        transform: translateX(0) scale(1);        opacity: 1;    }}.nav-menu-close {    background: none;    border: none;    color: #000000;    cursor: pointer;    padding: 4px;    border-radius: 4px;    transition: background 0.3s ease;    position: absolute;    top: 10px;    right: 10px;}.nav-menu-close:hover {    background: rgba(255, 255, 255, 0.2);}.nav-menu-content {    padding: 25px 20px;    width: 100%;    overflow-y: auto;    display: grid;    grid-template-columns: repeat(auto-fit, minmax(68px, 1fr));    gap: 15px;    border-radius: 16px;    margin: 15px;    backdrop-filter: blur(10px);}.nav-menu-item {    display: flex;    flex-direction: column;    align-items: center;    justify-content: center;    align-content: center;    padding: 5px;    color: #ffffff;    cursor: pointer;    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    border-radius: 12px;    margin: 0;    background: rgba(255, 255, 255, 0.3);    border: 1px solid rgba(255, 255, 255, 0.05);    position: relative;    overflow: hidden;    width: 70px;    height: 70px;}.nav-menu-item::before {    content: '';    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.05) 100%);    opacity: 0;    transition: opacity 0.3s ease;    border-radius: 12px;}.nav-menu-item:hover::before {    opacity: 1;}.nav-menu-item:hover {    transform: translateY(-5px) scale(1.05);    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);    border-color: rgba(255, 255, 255, 0.4);}.nav-menu-item:hover .nav-icon {    color: #ffffff;}.nav-menu-item:hover .nav-icon svg {    transform: scale(1.2) rotate(5deg);    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));}.nav-icon {    margin-bottom: 8px;    text-align: center;    display: flex;    align-items: center;    justify-content: center;    color: rgba(255, 255, 255, 0.9);    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    position: relative;    z-index: 1;}.nav-icon svg {    width: 24px;    height: 24px;    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));}.nav-text {    font-size: 0.85rem;    font-weight: 600;    text-align: center;    color: rgba(255, 255, 255, 0.95);    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);    position: relative;    z-index: 1;    letter-spacing: 0.5px;}/* 响应式设计 */@media (max-width: 768px) {    .floating-nav-menu {        transform: translateX(215px) scale(0.8);    }    .floating-nav-menu.show_sectiong {        transform: translateX(0) scale(1);    }    .nav-menu-content {        padding: 10px;        gap: 15px;    }    .nav-menu-item {        padding: 5px;    }    .nav-icon svg {        width: 22px;        height: 22px;    }    .nav-text {        font-size: 0.8rem;    }    @keyframes navMenuFadeIn {        0% {            transform: translateX(215px) scale(0.8);            opacity: 0;        }        100% {            transform: translateX(0) scale(1);            opacity: 1;        }    }}/* 我们的合作流程响应式设计 - 与toppic_app.html保持一致 */@media (max-width: 1200px) {    .process-section {        padding: 80px 0;    }    .topic-process-steps {        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));        gap: 20px;    }    .topic-process-step {        padding: 35px 25px;    }    .topic-step-number {        width: 55px;        height: 55px;        font-size: 1.3rem;    }    .topic-step-title {        font-size: 1.2rem;    }}@media (max-width: 768px) {    .process-section {        padding: 60px 0;    }    .topic-process-steps {        grid-template-columns: 1fr;        gap: 20px;    }    .topic-process-step {        padding: 30px 20px;    }    .topic-step-number {        width: 50px;        height: 50px;        font-size: 1.2rem;        margin-bottom: 20px;    }    .topic-step-title {        font-size: 1.1rem;        margin-bottom: 12px;    }    .topic-step-desc {        font-size: 0.9rem;    }}@media (max-width: 480px) {    .process-section {        padding: 40px 0;    }    .topic-process-step {        padding: 25px 15px;    }    .topic-step-number {        width: 45px;        height: 45px;        font-size: 1.1rem;        margin-bottom: 15px;    }    .topic-step-title {        font-size: 1rem;        margin-bottom: 10px;    }    .topic-step-desc {        font-size: 0.85rem;    }}