@charset "utf-8";
/* 首页 · 客户证言（页面级样式，仅首页引用） */
.hq-main,.hq-main *{box-sizing:border-box}
.hq-main{background:#fff;padding-bottom:.34rem}
.hq-hd{max-width:14.6rem;margin:0 auto;padding:.52rem .06rem .34rem;text-align:left}
h2.hq-tit{font-size:calc(42 * 1rem / 100);font-weight:700;letter-spacing:-.01em;line-height:1.24;color:#1c2b36}
.hq-hd p{margin-top:.16rem;font-size:max(12px, calc(16 * 1rem / 100));line-height:1.7;color:#5b6b77}
.hq-carousel{position:relative;max-width:14.6rem;margin:0 auto}
.hq-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:.06rem;scrollbar-width:none;padding:.06rem .06rem .12rem;cursor:grab}
.hq-viewport::-webkit-scrollbar{display:none}
.hq-viewport.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none;-webkit-user-select:none}
.hq-viewport:focus-visible{outline:2px solid #0b70a1;outline-offset:4px;border-radius:8px}
.hq-track{display:flex;align-items:stretch;gap:.24rem}
.hq-card{position:relative;overflow:hidden;flex:0 0 calc((100% - .24rem) / 2);scroll-snap-align:start;margin:0;padding:.36rem .36rem .3rem;background:#fff;border:1px solid #e6edf2;border-radius:.16rem;display:flex;flex-direction:column;transition:transform .25s ease,border-color .25s ease}
.hq-card > blockquote,.hq-card > .hq-mark,.hq-card > figcaption{position:relative;z-index:1}
.hq-orbit{position:absolute;top:-.9rem;right:-.9rem;width:max(210px, 3.2rem);height:max(210px, 3.2rem);z-index:0;pointer-events:none;color:#0b70a1}
.hq-orbit svg{display:block;width:100%;height:100%;transform-origin:50% 50%;animation:hqOrbit 70s linear infinite}
.hq-card:nth-child(2n) .hq-orbit svg{animation-duration:84s;animation-direction:reverse}
.hq-card:nth-child(3n) .hq-orbit svg{animation-duration:76s}
@keyframes hqOrbit{to{transform:rotate(360deg)}}
.hq-card:hover{transform:translateY(-3px);border-color:#b9d9e8}
.hq-mark{display:block;height:.4rem;color:#cfe4f0;font-family:Georgia,"Times New Roman",serif;font-size:.76rem;line-height:.58;letter-spacing:-.04em}
.hq-card blockquote{flex:1;margin:0;padding:0;border:0;background:none;font-size:max(13px, calc(21 * 1rem / 100));line-height:1.9;color:#1c2b36;text-align:justify;text-justify:inter-ideograph;text-wrap:pretty}
.hq-card blockquote p{margin:0}
.hq-card blockquote em{font-style:normal;font-weight:600;color:#08587f}
.hq-card figcaption{margin-top:.2rem;display:flex;flex-direction:column;align-items:flex-end;gap:.03rem;text-align:right}
.hq-role{font-size:max(12px, calc(18 * 1rem / 100));color:#0c1218;font-weight:600}
.hq-org{font-size:max(12px, calc(17 * 1rem / 100));color:#5b6b77}
.hq-nav{position:absolute;top:50%;left:-.58rem;right:-.58rem;transform:translateY(-50%);display:none;justify-content:space-between;pointer-events:none;z-index:2}
.hq-arrow{pointer-events:auto;width:max(36px, .52rem);height:max(36px, .52rem);border:1px solid #e5edf2;border-radius:50%;background:#fff;color:#5b6b77;display:grid;place-items:center;box-shadow:0 .06rem .18rem rgba(16,40,64,.1);cursor:pointer;transition:border-color .3s,color .3s,background-color .3s,box-shadow .3s}
.hq-arrow:hover{border-color:#0b70a1;background:#0b70a1;color:#fff;box-shadow:0 .08rem .22rem rgba(11,112,161,.18)}
.hq-arrow:focus-visible{outline:2px solid #0b70a1;outline-offset:2px}
.hq-arrow svg{width:max(14px, .16rem);height:max(14px, .16rem)}

.hq-path{max-width:14.6rem;margin:.6rem auto 0;padding:.4rem .48rem;background:#f5f9fb;border:1px solid #e6edf2;border-radius:.16rem}
.hq-path-head{display:flex;align-items:baseline;justify-content:space-between;gap:.16rem .32rem;flex-wrap:wrap;margin-bottom:.34rem}
.hq-path-head p{margin:0}
.hq-path-tit{font-size:calc(24 * 1rem / 100);font-weight:700;color:#1c2b36;line-height:1.4}
.hq-path-sub{font-size:max(13px, calc(18 * 1rem / 100));color:#5b6b77;line-height:1.7}
.hq-path-steps{position:relative;display:grid;grid-template-columns:repeat(4, 1fr);gap:.24rem;list-style:none;margin:0;padding:0}
.hq-path-steps::before{content:"";position:absolute;left:.08rem;right:.08rem;top:.08rem;height:1px;background:#e6edf2}
.hq-path-steps li{position:relative;padding-top:.32rem}
.hq-path-steps i{position:absolute;left:0;top:0;width:.17rem;height:.17rem;border-radius:50%;background:#fff;border:.04rem solid #a9ccdd;box-sizing:border-box}
.hq-path-steps li:last-child i{background:#0b70a1;border-color:#0b70a1}
.hq-path-steps strong{display:block;font-size:calc(20 * 1rem / 100);font-weight:600;color:#1c2b36;line-height:1.4}
.hq-path-steps span{display:block;margin-top:.04rem;font-size:max(12px, calc(17 * 1rem / 100));color:#5b6b77;line-height:1.6;text-wrap:balance}

@media (max-width:1120px){
.hq-card{flex-basis:calc((100% - .24rem) / 2)}
.hq-nav{left:-.24rem;right:-.24rem}
.hq-path-steps{grid-template-columns:repeat(2, 1fr);gap:.3rem .24rem}
.hq-path-steps::before{display:none}
}
@media (max-width:900px){
.hq-main{padding-bottom:24px}
.hq-hd{max-width:none;width:calc(100vw - 40px);margin:0 auto;padding:26px 24px 18px}
h2.hq-tit{font-size:21px}
.hq-tit br{display:none}
.hq-hd p{margin-top:8px;font-size:13.5px;line-height:1.6}
.hq-carousel{max-width:none;width:calc(100vw - 40px)}
.hq-viewport{padding:4px 4px 10px;scroll-padding-inline:4px}
.hq-track{gap:16px}
.hq-card{flex-basis:100%;padding:24px 22px 22px;border-radius:14px}
.hq-card blockquote{font-size:15.5px;line-height:1.9}
.hq-mark{height:26px;font-size:50px}
.hq-card figcaption{margin-top:20px}
.hq-role{font-size:14px}
.hq-org{font-size:13px}
.hq-orbit{width:220px;height:220px;top:-70px;right:-70px}
.hq-path{max-width:none;width:calc(100vw - 40px);margin:20px auto 0;padding:24px 22px}
.hq-path-head{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:18px}
.hq-path-tit{font-size:17px}
.hq-path-sub{font-size:13px}
.hq-path-steps{grid-template-columns:1fr;gap:18px}
.hq-path-steps::before{display:block;left:6px;right:auto;top:8px;bottom:8px;width:1px;height:auto}
.hq-path-steps li{padding-top:0;padding-left:26px}
.hq-path-steps i{top:3px;width:13px;height:13px;border-width:3px}
.hq-path-steps strong{font-size:15px}
.hq-path-steps span{font-size:13px}
.hq-nav{display:flex;left:-18px;right:-18px}
.hq-arrow{width:36px;height:36px}
.hq-arrow svg{width:14px;height:14px}
}
@media (prefers-reduced-motion:reduce){
.hq-orbit svg{animation:none}
}
