@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700;800&family=Inter:wght@400;600;700;800&display=swap');
:root{--b:#18aaf5;--d:#0750a5;--p:#f35ca8;--ink:#06234f;--soft:#effaff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,Arial,sans-serif}
a{text-decoration:none;color:inherit}.nav{height:72px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4f1f8;position:sticky;top:0;background:#ffffffee;backdrop-filter:blur(12px);z-index:5}.brand{font:800 30px 'Baloo 2';color:var(--d)}.brand i{font-style:normal;color:var(--p);font-size:22px}
.nav>a{font-weight:800;border:2px solid #d9edf7;padding:10px 16px;border-radius:99px;font-size:13px}
.hero{min-height:calc(100vh - 72px);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:7vh 7vw;background:radial-gradient(circle at 80% 20%,#dff6ff,transparent 35%),#f7fcff}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;color:var(--d)}h1,h2{font-family:'Baloo 2';line-height:.9;margin:15px 0}h1{font-size:clamp(75px,11vw,150px);color:var(--d)}h1 em{font-style:normal;color:var(--p)}h2{font-size:clamp(44px,6vw,72px)}h3{font-size:28px;margin:20px 0 8px}.hero p{font-size:18px;line-height:1.6;max-width:560px;color:#4c6982}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.btn{display:inline-block;padding:14px 22px;border-radius:99px;font-weight:800}.blue{background:var(--b);color:white}.white{background:white;border:2px solid #cdeaf8;color:var(--d)}.pink{background:var(--p);color:white}.logo{text-align:center}.logo img{width:min(92%,570px);filter:drop-shadow(0 25px 30px #06306b22)}
.cta{margin:0 7vw;padding:42px 48px;border-radius:32px;background:linear-gradient(110deg,#063b86,#0798df);color:white;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta .eyebrow{color:#bfeeff}.cta h2{margin:8px 0;font-size:52px}.cta p{font-size:21px}.cta small{display:block;max-width:720px;line-height:1.5;color:#d9f5ff}.cta .pink{white-space:nowrap}
.section{padding:105px 7vw}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:30px}.cards>div{padding:25px;background:var(--soft);border:1px solid #d9effa;border-radius:22px}.cards small{display:block;color:#67829a;text-transform:uppercase;font-weight:800;font-size:10px;letter-spacing:.1em;margin-bottom:12px}.cards b{font-size:20px}.contract{margin-top:16px;padding:20px;background:#06224e;color:white;border-radius:20px}.contract small{color:#9ce3ff;font-weight:800;letter-spacing:.1em;margin-right:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#f6fbff}.split p{font-size:21px;line-height:1.7;color:#47647d}.official{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:30px}.official a{border:2px solid #e0f0f7;border-radius:22px;padding:25px;display:flex;justify-content:space-between}.official span{color:var(--d);font-weight:800}.notice{margin-top:25px;padding:20px;background:#fff5fb;border-left:5px solid var(--p);line-height:1.6;color:#624d60}footer{padding:30px 7vw;border-top:1px solid #e7f1f7;color:#6b8195;font-size:12px;display:flex;justify-content:space-between}
@media(max-width:800px){.hero{grid-template-columns:1fr;text-align:center}.logo{order:-1}.logo img{width:75%}.hero p{margin:auto}.buttons{justify-content:center}.cta{margin:0 4vw;padding:30px;display:block}.cta .pink{margin-top:20px}.cards{grid-template-columns:1fr 1fr}.split,.official{grid-template-columns:1fr}.section{padding:75px 6vw}footer{display:block}.nav{padding:0 5vw}}@media(max-width:450px){.cards{grid-template-columns:1fr}.nav>a{font-size:11px}}

/* Bilibili video embed */
.video-section { text-align: center; }
.video-intro { max-width: 760px; margin: 0 auto 24px; }
.video-frame {
  width: 100%;
  max-width: 920px;
  aspect-ratio: 16 / 9;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 24px;
  background: #071c35;
  box-shadow: 0 18px 50px rgba(0,0,0,.12);
}
.video-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
.video-note {
  display: block;
  max-width: 760px;
  margin: 14px auto 0;
  opacity: .72;
  line-height: 1.5;
}
