/* 字体与阅读层级。Apple 设备使用原生字体，其余设备使用随站点提供的 Noto Sans SC。 */
@font-face{
  font-family:"SJS Sans SC";
  src:url("assets/fonts/sjs-sans-sc.woff2?v=20261026-direct-faq") format("woff2");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}
:root{--font-ui:-apple-system,BlinkMacSystemFont,"PingFang SC","SJS Sans SC","Microsoft YaHei",sans-serif;--ink:#1d1d1f;--muted:#6e6e73;}
body{font-family:var(--font-ui);font-size:17px;line-height:1.65;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
button,input,textarea,select{font-family:inherit;}
h1,h2,h3,h4{letter-spacing:-.015em;font-weight:600;}
p{letter-spacing:0;}
.brand-copy strong{font-size:22px;font-weight:650;letter-spacing:.06em;}
.brand-copy small{font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);}
.main-nav{font-size:14px;font-weight:450;}
.section-label{font-size:14px;line-height:1.5;font-weight:600;letter-spacing:0;margin-bottom:14px;}
.hero-minimal-content{grid-template-columns:minmax(0,1.22fr) minmax(0,1fr);gap:48px;}
.hero-minimal .headline-opening{font-size:48px;line-height:1.25;font-weight:650;letter-spacing:-.025em;margin-bottom:24px;color:#1d1d1f;}
.hero-minimal h1 em{font-size:36px;line-height:1.5;font-weight:550;letter-spacing:-.02em;color:#53565a;}
.hero-minimal h1 .headline-highlight{font-weight:650;color:var(--blue);}
.hero-minimal .intro-video-copy{padding:18px 22px 20px;gap:8px 14px;grid-template-columns:1fr;}
.hero-minimal .intro-video-copy strong{font-size:18px;line-height:1.5;font-weight:550;letter-spacing:-.01em;color:var(--ink);}
.hero-minimal .intro-video-copy small{font-size:13px;line-height:1.5;color:var(--muted);}
.hero-minimal .intro-video-copy>span{font-size:14px;line-height:1.5;}
.section-heading h2,.two-col-heading h2,.case-heading h2,.about-copy h2,.contact-copy h2,.faq-grid .section-heading h2{font-size:36px;line-height:1.4;font-weight:600;letter-spacing:-.02em;margin-bottom:20px;}
.section-heading h2 strong,.two-col-heading h2 strong,.about-copy h2 strong{font-weight:600;color:#6e6e73;}
.case-heading h2 em,.contact-copy h2 em{font-weight:600;}
.section-heading>p,.two-col-heading>p,.work-heading>p,.about-copy>p{font-size:17px;line-height:1.8;color:var(--muted);}
.case-heading>p,.contact-copy>p{font-size:17px;line-height:1.8;color:#c0ccc6;}
.two-col-heading,.work-heading,.case-heading{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:48px;}
.problem-card h3,.process-grid h3{font-size:20px;line-height:1.5;font-weight:600;letter-spacing:-.015em;}
.problem-card p,.service-card>p,.application-services .service-card>p,.service-list li,.process-grid p{font-size:16px;line-height:1.8;color:var(--muted);}
.workflow-service h3{font-size:30px;line-height:1.4;font-weight:600;}
.application-services h3{font-size:23px;line-height:1.45;font-weight:600;}
.service-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 32px;}
.service-list li{min-width:0;}
.application-services .service-card{display:flex;flex-direction:column;}
.application-services .service-card .text-link{margin-top:auto;padding-top:24px;}
.workflow-steps span{font-size:15px;font-weight:500;}
.button,.text-link,.case-cta{font-size:15px;font-weight:500;letter-spacing:0;}
.filter-tab{font-size:14px;font-weight:500;}
.video-card-title{font-size:20px;font-weight:600;line-height:1.5;}
.video-card-desc{font-size:15px;line-height:1.75;color:var(--muted);}
.video-card-meta,.video-category-tag,.video-duration-text,.card-index,.service-topline,.service-pill{font-size:13px;letter-spacing:.01em;}
.case-main h3{font-size:32px;font-weight:600;}
.case-side h4{font-size:23px;font-weight:600;line-height:1.5;}
.case-question{font-size:15px;line-height:1.7;}
.case-steps strong{font-size:16px;font-weight:550;}
.case-steps small{font-size:14px;color:var(--muted);line-height:1.7;}
.metric-block>strong{font-size:64px;font-weight:600;letter-spacing:-.04em;}
.process-num{font-size:24px;font-weight:500;}
.faq-list summary{font-size:18px;font-weight:550;line-height:1.65;letter-spacing:0;}
.faq-list details p{font-size:16px;line-height:1.85;color:var(--muted);}
.faq-list details{padding:21px 0;}
.contact-points strong{font-size:16px;font-weight:550;}
.contact-points small{font-size:14px;}
.form-heading h3{font-size:28px;font-weight:600;line-height:1.4;}
.form-heading p,.contact-form-card form>label{font-size:15px;line-height:1.7;}
.contact-form-card input,.contact-form-card textarea,.contact-form-card select{font-size:16px;line-height:1.6;color:var(--ink);}
.service-note p,.work-disclaimer,.form-note{font-size:13px;line-height:1.75;color:var(--muted);}
.case-footnote{font-size:13px;color:#b0c0b6;}
@media(max-width:1200px) and (min-width:821px){
 .hero-minimal-content{gap:32px;}
 .hero-minimal .headline-opening{font-size:clamp(30px,3.5vw,42px);}
 .hero-minimal h1 em{font-size:clamp(24px,2.7vw,32px);}
 .section-heading h2,.two-col-heading h2,.case-heading h2,.about-copy h2,.contact-copy h2,.faq-grid .section-heading h2{font-size:32px;}
 .two-col-heading,.work-heading,.case-heading{gap:32px;}
 .problem-grid{gap:16px;}
 .problem-card{padding:22px;}
}
@media(max-width:820px){
 .hero-minimal-content{grid-template-columns:1fr;gap:28px;}
 .hero-minimal .headline-opening{font-size:40px;margin-bottom:18px;}
 .hero-minimal h1 em{font-size:30px;line-height:1.5;}
 .hero-minimal .hero-intro-video{max-width:none;}
 .two-col-heading,.work-heading,.case-heading{display:block;}
 .two-col-heading>p,.work-heading>p,.case-heading>p{margin-top:18px;}
}
@media(max-width:760px){
 body{font-size:16px;}
 .section-heading h2,.two-col-heading h2,.case-heading h2,.about-copy h2,.contact-copy h2,.faq-grid .section-heading h2{font-size:28px;line-height:1.45;letter-spacing:-.02em;margin-bottom:16px;}
 .section-heading>p,.two-col-heading>p,.work-heading>p,.about-copy>p,.case-heading>p,.contact-copy>p{font-size:16px;line-height:1.8;}
 .section-label{font-size:13px;margin-bottom:12px;}
 .service-list{grid-template-columns:1fr;gap:10px;}
 .workflow-service h3{font-size:25px;}
 .application-services h3{font-size:22px;}
 .faq-list summary{font-size:17px;}
 .faq-list details p{font-size:16px;line-height:1.8;}
 .metric-block>strong{font-size:52px;}
 .case-main h3{font-size:28px;}
 .case-main,.case-side{padding:24px 22px;}
 .brand-copy strong{font-size:20px;}
}
@media(max-width:480px){
 .hero-minimal .headline-opening{font-size:clamp(28px,8.2vw,38px);letter-spacing:-.025em;margin-bottom:18px;}
 .hero-minimal h1 em{font-size:clamp(20px,5.8vw,27px);line-height:1.65;}
 .hero-minimal .intro-video-copy{padding:17px 18px 19px;gap:7px;}
 .hero-minimal .intro-video-copy strong{font-size:17px;}
 .hero-minimal .intro-video-copy small{font-size:13px;}
 .hero-minimal .intro-video-copy>span{font-size:14px;}
 .process-grid h3{font-size:20px;}
 .service-pill{font-size:11px;}
 .workflow-steps span{font-size:13px;padding:9px 10px;}
}

/* 直接咨询：清晰的微信和电话入口。 */
.contact-direct .contact-grid{grid-template-columns:minmax(0,1fr) 340px;gap:96px;align-items:center;}
.contact-direct .contact-copy{padding:0;max-width:650px;}
.contact-direct .contact-copy h2{font-size:38px;line-height:1.45;margin-bottom:22px;}
.contact-direct .contact-copy>p{max-width:560px;margin:0;font-size:17px;line-height:1.85;}
.contact-connect-card{padding:28px 30px 24px;border-radius:18px;background:#fff;color:var(--ink);}
.contact-qr-button{display:flex;align-items:center;flex-direction:column;gap:8px;width:100%;padding:0;border:0;background:transparent;color:inherit;}
.contact-qr-button img{display:block;width:176px;height:176px;object-fit:contain;margin:0 0 12px;}
.contact-qr-button strong{font-size:18px;font-weight:600;line-height:1.5;}
.contact-qr-button>span{font-size:13px;line-height:1.6;color:var(--muted);}
.contact-phone{display:block;text-align:center;border-top:1px solid #e4e7e4;margin-top:22px;padding-top:18px;}
.contact-phone>span{display:block;font-size:13px;line-height:1.6;color:var(--muted);margin-bottom:5px;}
.contact-phone strong{font-size:25px;font-weight:600;letter-spacing:.01em;line-height:1.4;color:var(--blue);}
.contact-phone b{font-size:19px;font-weight:400;margin-left:8px;}
.contact-qr-button:focus-visible,.contact-phone:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:6px;}
@media(max-width:1100px){.contact-direct .contact-grid{gap:48px;grid-template-columns:minmax(0,1fr) 310px;}.contact-direct .contact-copy h2{font-size:32px;}}
@media(max-width:760px){.contact-direct .contact-grid{grid-template-columns:1fr;gap:28px;}.contact-direct .contact-copy h2{font-size:28px;line-height:1.5;margin-bottom:18px;}.contact-direct .contact-copy>p{font-size:16px;}.contact-connect-card{width:100%;max-width:420px;justify-self:center;padding:24px;}.contact-phone strong{font-size:24px;}}

/* 三项业务：一个核心方向、两个应用方向。 */
.application-services{grid-template-columns:repeat(2,minmax(0,1fr));}
.case-data-source{font-size:13px;line-height:1.7;color:var(--muted);margin:14px 0 0;}
.workflow-page-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border:1px solid var(--line);border-radius:12px;background:var(--pale);}
.workflow-page-entry p{font-size:15px;line-height:1.7;color:var(--muted);margin:0;}
.workflow-page-entry a{flex-shrink:0;}
@media(max-width:760px){.application-services{grid-template-columns:1fr;}.workflow-page-entry{align-items:flex-start;flex-direction:column;gap:12px;padding:20px;}}
