:root{
  --navy:#0f2a4a;
  --navy-2:#163a63;
  --gold:#c8a04b;
  --gold-soft:#e3c889;
  --paper:#f7f5f0;
  --ink:#1f2733;
  --muted:#5d6675;
  --line:#e4ded2;
  --maxw:1080px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
a{color:var(--navy-2);text-decoration:none}
h1,h2,h3{line-height:1.25;color:var(--navy)}

/* Header */
.site-header{
  position:sticky;top:0;z-index:20;
  background:rgba(247,245,240,.92);
  backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:12px}
.brand .logo{display:flex;align-items:center}
.brand-text{display:flex;flex-direction:column;line-height:1.15}
.brand-text strong{font-size:18px;letter-spacing:1px;color:var(--navy)}
.brand-text em{font-style:normal;font-size:12px;color:var(--muted)}
.nav-right{display:flex;align-items:center;gap:22px}
.menu{display:flex;gap:26px}
.menu a{font-size:14px;color:var(--ink);position:relative}
.menu a:hover{color:var(--gold)}
.menu a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--gold);transition:width .2s}
.menu a:hover::after{width:100%}

/* Language switch */
.lang-switch{display:flex;gap:4px;border:1px solid var(--line);border-radius:20px;padding:3px;background:#fff}
.lang-switch button{
  border:none;background:transparent;cursor:pointer;
  font-size:12.5px;color:var(--muted);padding:4px 10px;border-radius:16px;
  font-family:inherit;line-height:1;transition:.18s;
}
.lang-switch button:hover{color:var(--navy)}
.lang-switch button.active{background:var(--navy);color:var(--gold-soft);font-weight:600}

/* Hero */
.hero{
  background:radial-gradient(120% 140% at 80% -10%,var(--navy-2) 0%,var(--navy) 55%,#0a1d36 100%);
  color:#fff;padding:96px 0 84px;
  border-bottom:4px solid var(--gold);
}
.hero .kicker{letter-spacing:3px;font-size:12px;text-transform:uppercase;color:var(--gold-soft);margin:0 0 14px}
.hero h1{font-size:clamp(28px,5vw,46px);margin:0 0 18px;color:#fff}
.hero .lede{font-size:clamp(15px,2.2vw,19px);color:#d9e2ee;margin:0 0 30px;font-weight:300}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{padding:12px 26px;border-radius:30px;font-size:15px;font-weight:600;transition:.2s}
.btn.primary{background:var(--gold);color:#1a1206}
.btn.primary:hover{background:var(--gold-soft);transform:translateY(-1px)}
.btn.ghost{border:1px solid rgba(255,255,255,.4);color:#fff}
.btn.ghost:hover{border-color:var(--gold);color:var(--gold-soft)}

/* Blocks */
.block{padding:72px 0}
.block.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.block h2{font-size:clamp(22px,3.4vw,30px);margin:0 0 10px;position:relative;padding-left:16px}
.block h2::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:5px;border-radius:3px;background:var(--gold)}
.lead-p{font-size:17px;color:var(--muted);max-width:760px;margin:0 0 28px}
.muted{color:var(--muted)}
.lead-p strong,.block p strong{color:var(--navy)}

/* Pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
.pillar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
.pillar h3{margin:0 0 8px;color:var(--gold);font-size:18px}
.pillar p{margin:0;color:var(--muted);font-size:14.5px}

/* Cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;transition:.2s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(15,42,74,.10);border-color:var(--gold-soft)}
.card h3{margin:0 0 8px;font-size:18px;display:flex;align-items:baseline;gap:8px}
.card h3 span{font-size:12px;color:var(--muted);font-weight:400;letter-spacing:.5px}
.card p{margin:0;color:var(--muted);font-size:14.5px}
.card.highlight{border-color:var(--gold);background:linear-gradient(180deg,#fff,#fbf4e3)}

/* Method list */
.method-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.method-list li{background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:16px 20px;font-size:15.5px}
.method-list .tag{display:inline-block;background:var(--navy);color:var(--gold-soft);font-size:12px;padding:3px 10px;border-radius:20px;margin-right:12px;letter-spacing:.5px}

/* Project */
.project{display:grid;grid-template-columns:1.4fr 1fr;gap:36px;align-items:center;margin-top:36px}
.project-text h3{font-size:22px;margin:0 0 14px;color:var(--gold)}
.project-text p{margin:0 0 12px}
.project-visual{display:flex;justify-content:center}
.hud{position:relative;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#163a63,#0a1d36);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 40px rgba(15,42,74,.3)}
.hud .ring{position:absolute;width:160px;height:160px;border:2px dashed rgba(200,160,75,.5);border-radius:50%;animation:spin 18s linear infinite}
.hud .dot{width:14px;height:14px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(200,160,75,.25)}
.hud .label{position:absolute;bottom:34px;font-size:10px;letter-spacing:2px;color:var(--gold-soft)}
@keyframes spin{to{transform:rotate(360deg)}}

/* Contact */
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:8px 0 18px;max-width:760px}
.contact-grid div{display:flex;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 18px}
.c-key{color:var(--muted);font-size:14px}
.c-val{color:var(--navy);font-weight:600;font-size:15px}
.note{font-size:13.5px}

/* Sponsors */
.sponsors{margin-top:28px;border-top:1px dashed var(--line);padding-top:26px}
.sponsors h3{font-size:19px;color:var(--navy);margin:0 0 10px}
.sponsors .lead-p{margin-bottom:0}

/* Footer */
.site-footer{background:var(--navy);color:#cdd6e2;padding:30px 0;font-size:13.5px}
.site-footer .muted{color:#8ea0b8}
.site-footer p{margin:4px 0}

@media(max-width:860px){
  .pillars,.cards{grid-template-columns:1fr 1fr}
  .project{grid-template-columns:1fr}
  .menu{display:none}
}
@media(max-width:560px){
  .pillars,.cards,.contact-grid{grid-template-columns:1fr}
  .block{padding:54px 0}
  .hero{padding:72px 0 64px}
  .nav-right{gap:12px}
}
