.about-page { padding-bottom: 0; }
.about-wrap { width: min(100% - 104px, var(--wrap)); margin-inline: auto; }
.about-hero { position: relative; display: grid; align-items: center; min-height: 400px; margin-top: 58px; overflow: hidden; background: radial-gradient(ellipse at 18% 100%, #eee1f3, transparent 50%), linear-gradient(115deg, #b5c9f7, #e3f3ff 75%, #c8eaff); }
.about-hero-ribbon { position: absolute; inset: 45% -12% -70%; border-radius: 50%; border-top: 2px solid #ffffffc9; transform: rotate(-9deg); box-shadow: 0 -18px 0 #ffffff35, 0 -42px 0 #ebf6ff45, 0 -68px 0 #b4cefa45, inset 0 24px 36px #91b6f7; background: linear-gradient(170deg, #ecf8ff80, #83acf3a1 35%, #d1e5ff); }
.about-hero-copy { position: relative; z-index: 1; text-align: center; padding-block: 64px 86px; }
.about-hero-copy p { color: #385a90; font-size: 17px; letter-spacing: 3px; margin: 0 0 20px; }
.about-hero h1 { margin: 0 0 18px; font-size: clamp(30px, 3.6vw, 42px); line-height: 1.4; }
.about-hero-copy .about-slogan { color: #1f3d6e; font-size: clamp(24px, 3vw, 34px); font-weight: 800; letter-spacing: 0; line-height: 1.4; margin: 0 0 18px; }
.about-hero-copy > span { color: #3b5276; font-size: 24px; }
.about-intro { padding-block: 76px 64px; }
.about-intro-grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 64px; }
.about-intro h2 { margin: 0 0 28px; text-align: left; font-size: 42px; }
.about-intro-copy p { margin: 0 0 18px; color: #444b56; font-size: 20px; line-height: 1.95; }
.about-intro-visual { position: relative; margin: 0; overflow: hidden; border-radius: 12px; background: #e7effa; }
.about-intro-visual img { display: block; width: 100%; height: 350px; object-fit: cover; object-position: 75% center; }
.about-intro-visual figcaption { position: absolute; inset: auto 0 0; padding: 40px 28px 22px; color: #fff; background: linear-gradient(transparent, #092d5fb3); font-size: 24px; letter-spacing: 2px; }
.about-stats { display: grid; grid-template-columns: repeat(4, 1fr); margin: 50px 0 0; padding-top: 36px; border-top: 1px solid #e8edf4; }
.about-stats > div { display: flex; flex-direction: column-reverse; align-items: center; gap: 8px; }
.about-stats > div + div { border-left: 1px solid #e8edf4; }
.about-stats dt { font-size: 17px; color: #626d7c; }
.about-stats dd { margin: 0; font-size: 56px; font-weight: 700; color: #1266da; line-height: 1.2; }
.about-stats dd span { margin-left: 5px; font-size: 24px; font-weight: 500; }
.about-strengths { padding: 72px 0 80px; background: #f6f8fb; }
.about-strengths-inline { margin-top: 50px; padding-top: 50px; border-top: 1px solid #e8edf4; }
.about-strengths-inline h2 { margin: 0; font-size: 38px; }
.about-strengths-inline .section-desc { margin: 8px 0 0; color: #626d7c; font-size: 20px; }
.about-strength-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 40px; }
.about-strength-grid article { padding: 30px; background: #fff; border-top: 2px solid #3381ed; }
.about-number { color: #c1d5f4; font-size: 34px; font-weight: 700; }
.about-strength-grid h3 { margin: 14px 0; font-size: 26px; }
.about-strength-grid p { margin: 0; color: #626d7c; font-size: 20px; line-height: 1.9; }
.about-cta p { margin: 16px 0 0; color: #5e6d83; font-size: 19px; }
.about-cta .cta-kicker { margin: 0 0 14px; color: #3381ed; font-size: 17px; font-weight: 700; letter-spacing: 4px; }
.about-cta h2 { max-width: 860px; margin-inline: auto; }
.about-cta .cta-vision { font-size: 20px; color: #33445e; }
.about-cta .cta-vision strong { color: #1c2c46; }
.about-cta a { min-width: 180px; height: 48px; gap: 24px; border-radius: 5px; font-size: 19px; }
.about-page #contact { scroll-margin-top: 80px; }
.about-page a:focus-visible, .about-page button:focus-visible { outline: 2px solid #1266da; outline-offset: 5px; }
@media (max-width: 900px) {
  .about-wrap { width: calc(100% - 40px); }
  .about-hero { margin-top: 61px; min-height: 320px; }
  .about-hero-copy { padding-block: 48px 66px; }
  .about-hero-copy > span { font-size: 15px; }
  .about-intro { padding-block: 44px; }
  .about-intro-grid { grid-template-columns: 1fr; gap: 24px; }
  .about-intro h2 { font-size: 28px; margin-bottom: 20px; }
  .about-intro-visual img { height: 260px; }
  .about-stats { grid-template-columns: repeat(2, 1fr); gap: 30px 12px; margin-top: 32px; }
  .about-stats > div:nth-child(3) { border-left: 0; }
  .about-stats dd { font-size: 36px; }
  .about-stats dt { font-size: 12px; }
  .about-strengths { padding-block: 44px; }
  .about-strengths-inline { margin-top: 32px; padding-top: 32px; }
  .about-strengths-inline h2 { font-size: 26px; }
  .about-strength-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 28px; }
  .about-strength-grid article { padding: 24px; }
  .about-cta a { width: auto; min-height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.about-page) { scroll-behavior: auto; }
}

/* 新版页脚样式 */
.site-footer{background:linear-gradient(180deg,#0F172A 0%,#1E293B 100%);color:rgba(255,255,255,.7);padding:50px 0 0}
.footer-contact-section{max-width:1000px;margin:0 auto;padding:0 40px 40px}
.footer-contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}
.footer-address-card{background:rgba(255,255,255,.05);border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
.footer-address-card p{color:#fff;font-size:14px;margin:2px 0;line-height:1.5;text-align:center}
.contact-person{background:rgba(255,255,255,.05);border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px}
.contact-name{color:#fff;font-size:17px;font-weight:600}
.contact-phone{color:#3B82F6;font-size:20px;font-weight:700;text-decoration:none;letter-spacing:1px}
.contact-phone:hover{color:#60A5FA}
.contact-qr{display:flex;flex-direction:column;align-items:center;gap:6px}
.contact-qr img{width:90px;height:90px;border-radius:8px;background:#fff;padding:4px}
.contact-qr span{font-size:12px;color:rgba(255,255,255,.5)}
.footer-bottom{max-width:1000px;margin:0 auto;padding:16px 40px;border-top:1px solid rgba(255,255,255,.1);text-align:center;font-size:13px;color:rgba(255,255,255,.4);display:flex;justify-content:center}
.footer-bottom a{color:inherit;text-decoration:none}
.footer-bottom a:hover{color:#fff}
@media (max-width:768px){
  .footer-contact-grid{grid-template-columns:1fr}
  .footer-contact-section{padding:0 20px 30px}
  .footer-bottom{padding:16px 20px}
}
