:root {
  --ink: #102c2d;
  --deep: #082526;
  --deep-2: #0b3332;
  --jade: #4e8881;
  --sky: #c8deda;
  --mist: #edf4f1;
  --paper: #f7f5ee;
  --gold: #b89a60;
  --line: rgba(16, 44, 45, .15);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }

.site-header {
  position: fixed;
  z-index: 50;
  top: 0;
  left: 0;
  width: 100%;
  height: 86px;
  padding: 0 clamp(28px, 6vw, 96px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: .35s ease;
  color: #eaf3ef;
}
.site-header.is-scrolled {
  height: 68px;
  color: var(--ink);
  background: rgba(247, 245, 238, .88);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}
.brand { display: flex; align-items: center; gap: 11px; }
.brand-mark {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-family: "STSong", "Songti SC", serif;
  font-size: 18px;
}
.brand > span:last-child { display: flex; flex-direction: column; line-height: 1; }
.brand b { font: 600 20px/1.1 "STSong", "Songti SC", serif; letter-spacing: .28em; }
.brand small { margin-top: 4px; font: 9px/1 Arial, sans-serif; letter-spacing: .28em; opacity: .66; }
nav { display: flex; align-items: center; gap: clamp(20px, 2.7vw, 42px); }
nav a { font-size: 13px; letter-spacing: .08em; opacity: .82; transition: .2s; }
nav a:hover { opacity: 1; }
.nav-cta { padding: 11px 19px; border: 1px solid currentColor; border-radius: 2px; }
.menu-button { display: none; }

.hero {
  min-height: 100vh;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 49% 51%;
  align-items: center;
  padding: 130px clamp(28px, 7vw, 110px) 80px;
  color: #edf6f2;
  background:
    radial-gradient(circle at 75% 42%, rgba(113, 168, 157, .17), transparent 29%),
    linear-gradient(117deg, #092324 0%, #0d302f 47%, #071f22 100%);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 70px 70px;
  mask-image: linear-gradient(to right, transparent, #000 55%, transparent);
}
.grain {
  position: absolute; inset: 0; opacity: .13; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
}
.hero-content { position: relative; z-index: 3; max-width: 670px; }
.eyebrow, .kicker {
  margin: 0 0 25px;
  font: 11px/1.4 Arial, sans-serif;
  letter-spacing: .25em;
  color: var(--jade);
}
.eyebrow { color: #9dbbb5; display: flex; align-items: center; gap: 12px; }
.eyebrow span { width: 34px; height: 1px; background: var(--gold); }
.hero h1, h2 {
  margin: 0;
  font-family: "STSong", "Songti SC", "Noto Serif SC", serif;
  font-weight: 400;
}
.hero h1 { font-size: clamp(58px, 6.3vw, 102px); line-height: 1.07; letter-spacing: -.05em; }
.hero h1 em, h2 em { color: #94bcb5; font-style: normal; }
.hero-sub {
  max-width: 590px;
  margin: 36px 0 0;
  color: rgba(235, 246, 241, .68);
  font-size: 16px;
  line-height: 2;
  letter-spacing: .04em;
}
.hero-actions { display: flex; gap: 14px; margin-top: 44px; }
.button {
  min-height: 52px;
  padding: 0 23px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  font-size: 13px;
  letter-spacing: .06em;
  border: 1px solid transparent;
  transition: .25s ease;
  cursor: pointer;
}
.button span { font-size: 18px; }
.button.primary { background: #d5e5e0; color: var(--deep); }
.button.primary:hover { background: #fff; transform: translateY(-2px); }
.button.ghost { border-color: rgba(255,255,255,.27); color: #eaf4f0; }
.button.ghost:hover { border-color: rgba(255,255,255,.7); }
.hero-note {
  display: flex; gap: 15px; align-items: flex-start;
  margin-top: 75px; color: rgba(235,246,241,.48);
}
.hero-note span { font: 10px Arial; color: var(--gold); border-top: 1px solid var(--gold); padding-top: 7px; }
.hero-note p { margin: 0; font-size: 11px; line-height: 1.8; letter-spacing: .1em; }

.celestial-wrap {
  position: relative; z-index: 2; justify-self: center;
  width: min(43vw, 620px); aspect-ratio: 1;
  display: grid; place-items: center;
}
.celestial {
  position: relative; width: 77%; aspect-ratio: 1; border-radius: 50%;
  border: 1px solid rgba(180,211,202,.3);
  background: radial-gradient(circle, rgba(123,174,162,.16), transparent 67%);
  animation: breathe 7s ease-in-out infinite;
}
.celestial::before, .celestial::after {
  content: ""; position: absolute; border-radius: 50%;
  inset: 10%; border: 1px solid rgba(180,211,202,.14);
}
.celestial::after { inset: 27%; border-color: rgba(184,154,96,.32); }
.celestial-glow { position: absolute; inset: 34%; border-radius: 50%; box-shadow: 0 0 100px 25px rgba(87,143,133,.24); }
.orbit { position: absolute; border: 1px solid rgba(180,211,202,.12); border-radius: 50%; }
.orbit-a { inset: 3%; }
.orbit-b { inset: 16%; border-style: dashed; animation: spin 60s linear infinite; }
.center-seal {
  position: absolute; z-index: 2; inset: 35%; border-radius: 50%;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  background: radial-gradient(circle, #174642, #0b2b2b 72%);
  border: 1px solid rgba(195,224,216,.35);
  box-shadow: 0 0 0 8px rgba(125,174,162,.05);
}
.center-seal small { font-size: 8px; letter-spacing: .16em; opacity: .52; }
.center-seal strong { font: 500 clamp(25px, 3vw, 46px)/1.3 "STSong", serif; letter-spacing: .18em; margin-left: .18em; }
.center-seal span { font: 8px Arial; letter-spacing: .4em; opacity: .5; margin-left: .4em; }
.rhythm-point {
  position: absolute; transform: translate(-50%, -50%);
  width: 42px; height: 42px; display: grid; place-content: center;
  border-radius: 50%; text-align: center;
  background: #0b2b2c; border: 1px solid rgba(170,207,198,.34);
  box-shadow: 0 0 20px rgba(102,156,145,.1);
}
.rhythm-point b { font: 14px/1 "STSong", serif; color: #c6dcd6; }
.rhythm-point span { font-size: 7px; margin-top: 4px; opacity: .45; }
.orbit-caption { position: absolute; bottom: 2%; margin: 0; font: 10px "STSong", serif; letter-spacing: .65em; opacity: .45; }
.scroll-cue {
  position: absolute; z-index: 3; right: 30px; bottom: 35px;
  writing-mode: vertical-rl; font-size: 9px; letter-spacing: .28em; opacity: .35;
}
.scroll-cue span { display: inline-block; height: 42px; width: 1px; margin: 0 auto 12px; background: currentColor; }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes breathe { 50% { transform: scale(1.025); } }

.section-shell { width: min(1180px, calc(100% - 56px)); margin: 0 auto; }
.section-index { padding-top: 12px; border-top: 1px solid var(--line); font: 10px Arial; letter-spacing: .2em; color: var(--gold); }
.section-index.light { border-color: rgba(255,255,255,.15); color: #bfa76f; }
.manifesto { padding: 145px 0 165px; }
.manifesto-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11%; margin-top: 70px; }
.manifesto h2, .journey h2, .network h2 { font-size: clamp(48px, 5vw, 76px); line-height: 1.22; letter-spacing: -.04em; }
.definition-copy { padding-top: 55px; }
.definition-copy p { color: #526463; font-size: 15px; line-height: 2.1; }
.definition-copy .lead { color: var(--ink); font: 24px/1.7 "STSong", serif; }
.quote-line { position: relative; margin-top: 42px; padding: 26px 0 0 55px; border-top: 1px solid var(--line); }
.quote-line span { position: absolute; left: 3px; top: 17px; color: var(--gold); font: 45px "STSong", serif; }
.quote-line b { font: 400 17px/1.8 "STSong", serif; }

.system-section { padding: 130px 0 140px; color: #e9f2ef; background: var(--deep); }
.section-heading { display: grid; grid-template-columns: 1fr 1.6fr 1fr; gap: 55px; align-items: end; }
.kicker.light { color: #91b3ac; }
.section-heading h2, .civilization h2 { font-size: clamp(45px, 4.6vw, 70px); line-height: 1.25; }
.heading-note { margin: 0 0 10px; color: rgba(233,242,239,.48); font-size: 13px; line-height: 1.9; }
.system-grid { margin-top: 80px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.15); border-left: 1px solid rgba(255,255,255,.15); }
.system-grid article { position: relative; min-height: 390px; padding: 28px; border-right: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); transition: .3s; }
.system-grid article:hover { background: #103a38; transform: translateY(-5px); }
.card-no { font: 9px Arial; color: #bfa66c; }
.system-grid h3 { margin: 38px 0 15px; font: 400 23px "STSong", serif; }
.system-grid p { color: rgba(233,242,239,.52); font-size: 13px; line-height: 1.9; }
.system-grid small { position: absolute; bottom: 28px; font-size: 9px; letter-spacing: .15em; color: #86aaa3; }
.line-icon { margin: 55px 0 0; width: 66px; height: 66px; position: relative; opacity: .75; }
.record-icon { border: 1px solid #83aaa2; border-radius: 50%; display:flex; gap:6px; align-items:center; justify-content:center; }
.record-icon i { width: 2px; height: 18px; background:#83aaa2; }
.record-icon i:nth-child(2){height:35px}.record-icon i:nth-child(3){height:25px}
.pulse-icon:before { content:""; position:absolute; inset:2px; border:1px solid #83aaa2; border-radius:50%; }
.pulse-icon i { position:absolute; left:10px; right:-6px; top:31px; height:1px; background:#83aaa2; transform:rotate(-18deg); box-shadow:14px -8px 0 -0 #83aaa2; }
.compass-icon { border: 1px solid #83aaa2; transform:rotate(45deg); }
.compass-icon i { position:absolute; width:1px; height:78px; background:#83aaa2; left:32px; top:-7px; }
.archive-icon:before,.archive-icon:after {content:"";position:absolute;border:1px solid #83aaa2;border-radius:50%;}
.archive-icon:before{inset:2px}.archive-icon:after{inset:13px}.archive-icon i:first-child {position:absolute;width:6px;height:6px;border-radius:50%;background:#bca269;left:30px;top:30px}

.journey { padding: 145px 0 165px; }
.journey-head { display: grid; grid-template-columns: 1.3fr .7fr; gap: 100px; align-items: end; margin: 62px 0 80px; }
.journey-head > p { color: #60706f; font-size: 14px; line-height: 2; }
.journey-track { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; padding-top: 42px; }
.track-line { position:absolute; left:0; right:0; top:0; height:1px; background:#cad2ce; }
.track-line i {display:block;width:33.33%;height:2px;background:var(--jade)}
.journey-card { position: relative; min-height: 510px; padding: 35px 32px; border: 1px solid var(--line); background:rgba(255,255,255,.28); transition:.3s; }
.journey-card::before { content:""; position:absolute; top:-47px; left:10px; width:10px; height:10px; border-radius:50%; background:#b6c4bf; border:3px solid var(--paper); }
.journey-card.active { background:#e3eeea; border-color:#aecbc4; }
.journey-card.active::before { background:var(--jade); box-shadow:0 0 0 6px rgba(78,136,129,.12); }
.day-number { font: 400 65px/1 "STSong", serif; color:#aac1bb; }
.active .day-number { color:var(--jade); }
.day-number small {font-size:14px;margin-left:5px}
.stage { margin: 24px 0 12px; font-size:10px!important; letter-spacing:.2em; color:var(--gold)!important; }
.journey-card h3 { margin:0 0 18px; font:400 25px "STSong",serif; }
.journey-card > p { color:#657472; font-size:13px; line-height:1.9; }
.journey-card ul { list-style:none; padding:16px 0; margin:25px 0; border-top:1px solid var(--line); }
.journey-card li { padding:7px 0; font-size:12px; color:#526663; }
.journey-card li::before {content:"○";margin-right:10px;color:var(--jade)}
.journey-card a { position:absolute; left:32px; bottom:32px; right:32px; display:flex; justify-content:space-between; padding-top:17px; border-top:1px solid var(--line); font-size:12px; }
.journey-card:hover { transform:translateY(-6px); box-shadow:0 18px 50px rgba(11,47,46,.08); }

.civilization { position:relative; overflow:hidden; padding:155px 0; color:#ecf4f1; background:#0b292b; }
.civilization::before {content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 50%,rgba(96,156,144,.2),transparent 25%)}
.civilization-orb {position:absolute;width:450px;height:450px;border:1px solid rgba(151,197,187,.17);border-radius:50%;left:-120px;top:50%;transform:translateY(-50%);box-shadow:0 0 0 60px rgba(151,197,187,.025),0 0 0 120px rgba(151,197,187,.018)}
.civilization-grid { position:relative; display:grid; grid-template-columns:.45fr 1.3fr 1fr; gap:60px; }
.civilization h2 em {color:#95bcb4}
.civilization-copy {padding-top:75px}
.civilization-copy p {color:rgba(236,244,241,.6);font-size:14px;line-height:2.1}
.principles {display:grid;grid-template-columns:1fr 1fr;margin-top:45px;border-top:1px solid rgba(255,255,255,.15);border-left:1px solid rgba(255,255,255,.15)}
.principles span {padding:18px;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);font-size:12px;letter-spacing:.14em}

.network {padding:145px 0 150px}
.network-grid {display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:65px;align-items:center}
.network-intro {margin-top:35px;max-width:510px;color:#647372;font-size:14px;line-height:2}
.map-field {position:relative;min-height:410px;border-radius:50%;background:radial-gradient(circle,rgba(107,159,148,.13),transparent 61%)}
.map-field::before,.map-field::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(78,136,129,.25);inset:13%}
.map-field::after{inset:29%;border-style:solid}
.map-core{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);width:105px;height:105px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--deep);color:#eaf2ef;font:24px "STSong",serif;box-shadow:0 18px 50px rgba(11,47,46,.25)}
.map-core span{font:8px Arial;letter-spacing:.2em;opacity:.55;margin-top:6px}
.map-node{position:absolute;z-index:2;width:53px;height:53px;display:grid;place-items:center;border:1px solid #8eb4ac;border-radius:50%;background:var(--paper);font-size:11px;color:var(--jade)}
.n1{left:9%;top:40%}.n2{right:9%;top:37%}.n3{right:22%;bottom:8%}.n4{left:24%;bottom:5%}.n5{left:45%;top:2%}
.role-grid {display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.role-grid article{padding:30px 34px 36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.role-grid span{font:10px Arial;color:var(--gold)}
.role-grid h3{font:400 22px "STSong",serif;margin:32px 0 12px}
.role-grid p{color:#657472;font-size:13px;line-height:1.8}

.founder {padding:130px 0;background:#e3ece8}
.founder-grid {display:grid;grid-template-columns:.65fr 1.35fr;gap:12%;align-items:center}
.founder-seal {width:280px;height:280px;border:1px solid rgba(16,44,45,.2);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.founder-seal::before{content:"";position:absolute;inset:18px;border:1px dashed rgba(16,44,45,.18);border-radius:50%}
.founder-seal span{font:90px/1 "STSong",serif;color:#668f87}
.founder-seal i{font:10px "STSong",serif;letter-spacing:.3em;color:#8a7956;margin-top:20px}
blockquote {margin:0;font:400 clamp(25px,2.7vw,39px)/1.8 "STSong",serif;color:#173a39}
blockquote em{font-style:normal;color:#568a82}
.signature{display:flex;gap:24px;align-items:center;margin-top:40px}
.signature b{font:24px "STSong",serif;letter-spacing:.25em;border-right:1px solid var(--line);padding-right:24px}
.signature span{font-size:11px;line-height:1.7;color:#72807e}

.join {position:relative;overflow:hidden;padding:155px 28px;text-align:center;color:#edf5f1;background:linear-gradient(135deg,#0e3433,#061f22)}
.join::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:65px 65px}
.join-rings{position:absolute;width:700px;height:700px;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(153,198,189,.1);border-radius:50%;box-shadow:0 0 0 90px rgba(153,198,189,.025),0 0 0 180px rgba(153,198,189,.017)}
.join-inner{position:relative;z-index:2}
.join h2{font-size:clamp(48px,5.5vw,82px);line-height:1.25}
.join-inner>p:not(.kicker){font-size:13px;color:rgba(237,245,241,.55);letter-spacing:.08em;margin:30px 0 40px}
.join-actions{display:flex;gap:12px;justify-content:center}
.light-button{background:#dce9e4;color:var(--deep)}.light-button:hover{background:white;transform:translateY(-2px)}
.outline-light{border-color:rgba(255,255,255,.3);color:#edf5f1;background:transparent}.outline-light:hover{border-color:white}
.join small{display:block;margin-top:38px;color:rgba(255,255,255,.32);font-size:9px;letter-spacing:.13em}

.faq {padding:130px 0}
.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:12%;margin-top:60px}
.faq h2{font-size:56px}
.faq-list{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;display:grid;grid-template-columns:45px 1fr 30px;align-items:center;padding:24px 0;cursor:pointer;font:17px "STSong",serif}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font:9px Arial;color:var(--gold)}
.faq summary i{font:300 20px Arial;font-style:normal;transition:.2s}
.faq details[open] summary i{transform:rotate(45deg)}
.faq details p{margin:-4px 30px 25px 45px;color:#657472;font-size:13px;line-height:1.9}

footer{padding:70px clamp(28px,6vw,96px) 25px;background:#061d1f;color:#e4efeb}
.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start}
.footer-brand{justify-self:start}
.footer-main>p{margin:0;font:18px/1.7 "STSong",serif}.footer-main>p span{font:11px sans-serif;color:rgba(228,239,235,.38);letter-spacing:.08em}
.footer-links{justify-self:end;display:grid;grid-template-columns:1fr 1fr;gap:18px 42px;font-size:11px;color:rgba(228,239,235,.55)}
.footer-bottom{display:flex;justify-content:space-between;margin-top:65px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font:8px Arial;letter-spacing:.16em;color:rgba(228,239,235,.3)}

@media (max-width: 900px) {
  .site-header {height:70px;padding:0 22px}
  .menu-button {display:flex;width:40px;height:40px;background:transparent;border:0;flex-direction:column;align-items:flex-end;justify-content:center;gap:7px;color:currentColor}
  .menu-button i{height:1px;background:currentColor;width:24px}.menu-button i:last-child{width:16px}
  nav{position:absolute;top:70px;left:0;right:0;padding:28px;background:rgba(7,31,33,.98);color:#edf5f1;display:none;flex-direction:column;align-items:flex-start}
  .is-scrolled nav{background:rgba(247,245,238,.98);color:var(--ink)}
  nav.open{display:flex}
  .hero{grid-template-columns:1fr;min-height:auto;padding:130px 28px 105px}
  .hero h1{font-size:clamp(54px,14vw,78px)}
  .hero-sub{font-size:14px}
  .celestial-wrap{position:absolute;right:-170px;top:130px;width:430px;opacity:.4}
  .hero-content{z-index:4}.hero-note{margin-top:58px}.scroll-cue{display:none}
  .section-shell{width:min(100% - 40px, 700px)}
  .manifesto,.journey,.network,.faq{padding:95px 0}
  .manifesto-grid,.journey-head,.network-grid,.founder-grid,.faq-grid{grid-template-columns:1fr;gap:40px}
  .definition-copy,.civilization-copy{padding-top:0}
  .section-heading{grid-template-columns:1fr;gap:30px}.heading-note{margin-top:0}
  .system-section{padding:95px 0}
  .system-grid{grid-template-columns:1fr 1fr;margin-top:55px}
  .system-grid article{min-height:350px}
  .journey-track{grid-template-columns:1fr;padding-left:25px;gap:18px}
  .track-line{left:0;right:auto;top:0;bottom:0;height:auto;width:1px}.track-line i{width:2px;height:33.33%}
  .journey-card::before{left:-31px;top:30px}
  .civilization{padding:100px 0}.civilization-grid{grid-template-columns:1fr;gap:35px}
  .map-field{min-height:370px}
  .role-grid{grid-template-columns:1fr}
  .founder{padding:95px 0}.founder-seal{width:210px;height:210px}.founder-seal span{font-size:68px}
  .footer-main{grid-template-columns:1fr;gap:35px}.footer-links{justify-self:start}
}

@media (max-width: 560px) {
  .hero-actions,.join-actions{flex-direction:column}
  .button{width:100%}
  .celestial-wrap{right:-230px;top:150px}
  .system-grid{grid-template-columns:1fr}
  .system-grid article{min-height:320px}
  .journey-head{gap:25px}
  .journey-card{min-height:495px;padding:28px 24px}
  .journey-card a{left:24px;right:24px}
  .map-field{min-height:310px}.map-core{width:85px;height:85px;font-size:20px}.map-node{width:46px;height:46px}
  .founder-grid{justify-items:center}.founder-grid>div:last-child{text-align:left}
  blockquote{font-size:24px}
  .footer-bottom{flex-direction:column;gap:10px}
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
