:root{
  --bg-primary:#0C0A09; --bg-secondary:#1C1917; --bg-elev:#221E1A;
  --gold:#CA8A04; --gold-light:#FBBF24; --gold-dark:#92400E;
  --jade:#059669; --jade-light:#34D399;
  --jasmine:#F5F5F0; --ink-soft:#A8A29E; --muted:#8A857E; --line:rgba(202,138,4,.16);
  --card:rgba(255,255,255,.03);
  --serif:'Noto Serif SC',serif; --sans:'Noto Sans SC',sans-serif; --en:'DM Sans',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg-primary);color:var(--jasmine);-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{width:7px}
::-webkit-scrollbar-track{background:#0C0A09}
::-webkit-scrollbar-thumb{background:var(--gold-dark);border-radius:4px}
a{text-decoration:none;color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
section{position:relative}
.sec-pad{padding:92px 0}
.sec-head{max-width:760px;margin:0 auto 52px;text-align:center}
.sec-eyebrow{display:inline-block;font-family:var(--en);font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:14px}
.sec-title{font-family:var(--serif);font-size:clamp(28px,4.5vw,44px);font-weight:700;color:var(--jasmine);line-height:1.25;margin-bottom:14px}
.sec-title .spark{background:linear-gradient(180deg,var(--gold-light),var(--gold));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.sec-sub{font-size:15px;line-height:1.85;color:var(--ink-soft)}
.title-bar{width:60px;height:3px;background:linear-gradient(90deg,var(--gold-light),var(--gold-dark));margin:18px auto 0;border-radius:3px}
.wave-lines{position:absolute;inset:0;pointer-events:none;opacity:.4;
  background-image:linear-gradient(rgba(251,191,36,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(251,191,36,.03) 1px,transparent 1px);
  background-size:64px 64px}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.18;animation:drift 22s ease-in-out infinite}
@keyframes drift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(26px,-26px) scale(1.08)}}

/* Nav */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(12,10,9,.55);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.35s}
nav.on{background:rgba(12,10,9,.96);border-bottom-color:var(--line)}
.nav-wrap{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 22px;height:66px}
.logo{font-family:var(--serif);font-size:16.5px;font-weight:700;color:var(--jasmine);display:flex;align-items:center;gap:9px;cursor:pointer}
.logo-mark{width:30px;height:34px;border-radius:8px;object-fit:contain;display:inline-block;box-shadow:0 0 0 1px var(--line);border:1px solid rgba(251,191,36,.35)}
.logo b{color:var(--gold-light)}
.nav-links{display:flex;gap:2px;list-style:none;align-items:center;flex-wrap:wrap}
.nav-links a{font-size:13px;color:var(--muted);padding:8px 10px;border-radius:7px;transition:.2s;white-space:nowrap}
.nav-links a:hover{color:var(--gold-light);background:rgba(202,138,4,.1)}
.nav-cta{padding:8px 20px;background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#1A1204;border:none;border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;transition:.25s;font-family:var(--sans)}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(251,191,36,.35)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.hamburger span{display:block;width:24px;height:2px;background:var(--jasmine);border-radius:2px;transition:.3s}

/* Hero */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;padding:120px 24px 60px;
  background:linear-gradient(180deg,rgba(12,10,9,.72) 0%,rgba(12,10,9,.5) 38%,rgba(12,10,9,.78) 100%),url('../images/sjkgy.jpg') center/cover no-repeat,radial-gradient(1200px 600px at 50% -10%,rgba(202,138,4,.16),transparent 60%),linear-gradient(160deg,#0C0A09 0%,#141110 55%,#0A0908 100%)}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(2px 2px at 20% 30%,rgba(251,191,36,.5),transparent),radial-gradient(1.5px 1.5px at 70% 20%,rgba(251,191,36,.35),transparent),radial-gradient(2px 2px at 85% 70%,rgba(251,191,36,.3),transparent);background-size:auto;opacity:.5;pointer-events:none}
.hero .orb:nth-child(2){width:520px;height:520px;background:var(--gold-dark);top:-120px;right:-120px}
.hero .orb:nth-child(3){width:420px;height:420px;background:var(--jade);bottom:-130px;left:-130px;animation-delay:-9s;opacity:.12}
.hero-content{position:relative;z-index:3;max-width:980px}
.hero-badges{display:flex;justify-content:center;gap:10px;margin-bottom:26px;flex-wrap:wrap}
.h-badge{padding:5px 16px;border:1px solid rgba(202,138,4,.35);border-radius:24px;font-size:11px;letter-spacing:1.5px;color:var(--gold-light);background:rgba(202,138,4,.08)}
.hero-title{font-family:var(--serif);font-size:clamp(36px,7vw,74px);font-weight:900;line-height:1.14;margin-bottom:12px;
  background:linear-gradient(180deg,#FDFDF9,#C9BBA0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-title em{font-style:normal;background:linear-gradient(180deg,var(--gold-light),var(--gold));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-sub{font-family:var(--serif);font-size:clamp(16px,2.8vw,30px);color:var(--jasmine);margin-bottom:10px;font-weight:500}
.hero-loc{font-size:clamp(13px,2vw,17px);color:var(--gold);letter-spacing:1px;margin-bottom:24px}
.hero-points{display:flex;justify-content:center;gap:28px;margin-bottom:28px;flex-wrap:wrap}
.hero-point{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.hero-point i{width:7px;height:7px;border-radius:50%;display:inline-block}
.hp-green i{background:var(--jade-light)}
.hp-gold i{background:var(--gold-light)}
.hp-mist i{background:#9CC7DC}
.hero-date{font-family:var(--serif);font-size:clamp(16px,2.4vw,23px);color:var(--gold-light);margin-bottom:8px}
.hero-date small{display:block;font-family:var(--sans);font-size:12px;color:var(--muted);letter-spacing:0;margin-top:6px}
.countdown{display:flex;justify-content:center;gap:14px;margin:24px 0 30px;flex-wrap:wrap}
.cd{text-align:center}
.cd .num{font-family:var(--en);font-size:clamp(24px,4vw,34px);font-weight:700;color:var(--gold-light);background:rgba(255,255,255,.04);border:1px solid rgba(202,138,4,.35);border-radius:10px;padding:10px 14px;min-width:56px;display:inline-block}
.cd .lbl{font-size:11px;color:var(--muted);margin-top:7px;letter-spacing:2px;font-family:var(--en)}
.hero-cd-line{font-size:12px;color:var(--gold);letter-spacing:1px;margin-bottom:8px}
.hero-stats{display:flex;justify-content:center;gap:48px;margin-bottom:38px;flex-wrap:wrap}
.hs{text-align:center}
.hs b{font-family:var(--en);font-size:clamp(24px,4vw,34px);font-weight:700;color:var(--gold-light)}
.hs span{display:block;font-size:11.5px;color:var(--muted);margin-top:3px}
.cta-big{display:inline-flex;gap:10px;align-items:center;padding:16px 42px;background:linear-gradient(135deg,var(--gold-light),var(--gold-dark));color:#1A1204;border-radius:10px;font-size:16px;font-weight:700;transition:.3s}
.cta-big:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(202,138,4,.4)}
.cta-big.ghost{background:transparent;color:var(--jasmine);border:1px solid rgba(202,138,4,.4)}
.cta-big.ghost:hover{border-color:var(--gold-light);color:var(--gold-light)}
.scroll-dn{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--muted);font-size:10px;letter-spacing:3px;font-family:var(--en);animation:bob 2s ease-in-out infinite;cursor:pointer;z-index:3}
@keyframes bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(9px)}}
.scroll-dn svg{width:18px;height:18px}

/* Section toggles */
.light-sec{background:var(--bg-primary);color:var(--jasmine)}
.dark-sec{background:#141110;color:var(--jasmine)}

/* Cards */
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.g5{grid-template-columns:repeat(5,1fr)}
.glow-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 22px;transition:.4s;position:relative;overflow:hidden}
.glow-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(251,191,36,.4),transparent)}
.glow-card:hover, .solid-card:hover{border-color:rgba(202,138,4,.5);transform:translateY(-5px);box-shadow:0 14px 44px rgba(0,0,0,.4)}
.solid-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:16px;padding:26px 24px;transition:.4s;box-shadow:0 6px 26px rgba(0,0,0,.3)}
.num-lg{font-family:var(--en);font-size:32px;font-weight:700;color:var(--gold-light);line-height:1;margin-bottom:8px}
.num-sub{font-size:12px;color:var(--muted);line-height:1.7}
.card-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,rgba(202,138,4,.22),rgba(202,138,4,.05));display:grid;place-items:center;margin-bottom:14px;color:var(--gold-light)}
.card-icon svg{width:22px;height:22px}
.glow-card h4,.module-card h4{font-family:var(--serif);font-size:18px;margin-bottom:8px;color:var(--jasmine)}
.solid-card h4{font-family:var(--serif);font-size:18px;margin-bottom:8px;color:var(--jasmine)}
.glow-card p,.module-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.75}
.solid-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.75}
.rev-tag{display:inline-block;padding:2px 10px;border-radius:20px;font-size:10px;margin-bottom:6px}
.tag-jade{background:rgba(5,150,105,.16);color:var(--jade-light)}
.tag-gold{background:rgba(202,138,4,.16);color:var(--gold-light)}

/* Step / edge cards */
.step-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:30px 26px;transition:.35s}
.step-card:hover{border-color:var(--gold);transform:translateY(-4px)}
.step-card .edge{font-family:var(--en);font-size:44px;font-weight:700;color:transparent;-webkit-text-stroke:1px var(--gold);line-height:1;margin-bottom:12px}
.step-card h3{font-family:var(--serif);font-size:20px;color:var(--jasmine);margin-bottom:10px}
.step-card p{font-size:13px;color:var(--ink-soft);line-height:1.9}
.step-card p b{color:var(--gold-light)}

/* Module cards */
.module-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.module-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 22px;transition:.35s;position:relative;overflow:hidden}
.module-card::after{content:'';position:absolute;top:0;left:0;bottom:0;width:3px;background:linear-gradient(var(--gold),var(--jade))}
.module-card:hover{border-color:var(--gold);transform:translateY(-3px)}
.m-en{font-family:var(--en);font-size:10px;color:var(--gold);letter-spacing:2px;text-transform:uppercase;margin-bottom:8px;display:block}

/* Table */
.tbl-wrap{overflow-x:auto;border-radius:14px;border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;background:var(--card);border-radius:14px;overflow:hidden}
th{background:rgba(202,138,4,.14);color:var(--gold-light);font-family:var(--serif);font-size:13px;font-weight:600;padding:13px 14px;text-align:left}
td{padding:12px 14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--jasmine);vertical-align:top}
td small{color:var(--muted)}
tr:hover td{background:rgba(202,138,4,.04)}

/* Project image cards */
.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.proj-card{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.4s}
.proj-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 12px 34px rgba(0,0,0,.35)}
.proj-img{aspect-ratio:16/10;position:relative;display:grid;place-items:center;background:linear-gradient(160deg,rgba(202,138,4,.12),rgba(251,191,36,.02) 60%);border-bottom:1px solid var(--line)}
.proj-img svg{width:32px;height:32px;color:var(--gold-dark);opacity:.55}
.proj-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.proj-img .proj-no{position:absolute;top:10px;left:10px;font-family:var(--en);font-size:11px;font-weight:700;color:var(--gold-light);background:rgba(12,10,9,.55);border:1px solid rgba(251,191,36,.3);border-radius:6px;padding:2px 8px;backdrop-filter:blur(4px)}
.proj-img .proj-tag{position:absolute;bottom:8px;right:10px;font-size:9.5px;letter-spacing:1px;color:var(--muted);font-family:var(--en)}
.proj-name{padding:15px 14px;text-align:center;font-family:var(--serif);font-size:15px;font-weight:600;color:var(--jasmine);line-height:1.5}
@media (max-width:860px){.proj-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.proj-grid{grid-template-columns:1fr}}

/* Mastermind 主理人共创计划 */
.master-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:34px}
.master-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 24px;transition:.35s}
.master-card:hover{border-color:var(--gold);transform:translateY(-3px)}
.m-icon{font-size:26px;margin-bottom:10px;display:block}
.master-card h4{font-family:var(--serif);font-size:17px;color:var(--jasmine);margin-bottom:4px}
.m-role{display:inline-block;font-family:var(--en);font-size:10px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:10px}
.master-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.75}
.m-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.m-tags span{font-size:11px;padding:3px 12px;border:1px solid var(--line);border-radius:20px;color:var(--muted)}
.master-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}
.master-step{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 20px;text-align:center;transition:.35s;position:relative;overflow:hidden}
.master-step:hover{border-color:var(--gold);transform:translateY(-3px)}
.ms-num{font-family:var(--en);font-size:38px;font-weight:700;line-height:1;color:transparent;-webkit-text-stroke:1px var(--gold);margin-bottom:12px}
.master-step h4{font-family:var(--serif);font-size:16px;color:var(--jasmine);margin-bottom:8px}
.master-step p{font-size:12px;color:var(--ink-soft);line-height:1.7}
.ms-tag{display:inline-block;margin-top:12px;font-size:10.5px;font-weight:600;padding:3px 12px;border-radius:20px;background:rgba(202,138,4,.1);border:1px solid rgba(202,138,4,.28);color:var(--gold-light)}
.master-step.ms-high{border-color:rgba(251,191,36,.45);background:linear-gradient(180deg,rgba(202,138,4,.12),var(--card))}
.master-step.ms-high .ms-tag{background:rgba(251,191,36,.14);border-color:rgba(251,191,36,.4);color:var(--gold-light)}
.cb-banner{display:grid;grid-template-columns:240px 1fr 330px;gap:30px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:38px 40px;margin-top:34px;transition:.35s}
.cb-banner:hover{border-color:var(--gold)}
.cb-date{text-align:center;border:1px solid var(--line);border-radius:14px;padding:26px 18px;background:rgba(0,0,0,.22)}
.cb-month{font-family:var(--en);font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase}
.cb-day{font-family:var(--en);font-size:64px;font-weight:700;line-height:1.05;margin:6px 0;background:linear-gradient(135deg,var(--gold-light),var(--gold-dark));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cb-year{font-size:13px;letter-spacing:4px;color:var(--muted);font-family:var(--en)}
.cb-info h3{font-family:var(--serif);font-size:20px;color:var(--jasmine);margin-bottom:8px}
.cb-info>p{font-size:12.5px;color:var(--muted);margin-bottom:14px}
.cb-list{list-style:none;display:grid;gap:8px}
.cb-list li{font-size:13px;color:var(--ink-soft);display:flex;align-items:center;gap:10px}
.cb-list li::before{content:'✓';color:var(--gold-light);font-weight:700}
.cb-imgs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-items:center}
.cb-imgs img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid var(--line);display:block}
.master-cta{margin-top:40px;text-align:center}
.master-cta .btn-gold{display:inline-block;padding:14px 38px;background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#141110;font-weight:700;font-size:15px;border-radius:10px;transition:.35s;box-shadow:0 8px 26px rgba(202,138,4,.25)}
.master-cta .btn-gold:hover{transform:translateY(-3px);box-shadow:0 14px 38px rgba(202,138,4,.4)}
.master-cta .btn-ghost{display:inline-block;margin-left:14px;padding:14px 34px;border:1px solid rgba(251,191,36,.4);color:var(--gold-light);font-size:15px;border-radius:10px;transition:.35s}
.master-cta .btn-ghost:hover{border-color:var(--gold-light);background:rgba(251,191,36,.06)}
@media (max-width:860px){.master-grid{grid-template-columns:1fr}.master-steps{grid-template-columns:repeat(2,1fr)}.cb-banner{grid-template-columns:1fr;padding:26px 22px}.cb-imgs{grid-template-columns:repeat(2,160px);justify-content:center;align-content:center}}
@media (max-width:540px){.master-steps{grid-template-columns:1fr}}

/* 三区八福 · 八大主题片区 */
.zone-head{margin:64px 0 36px;text-align:center}
.zone-head .sec-eyebrow{margin-bottom:14px}
.zone-head h2{font-family:var(--serif);font-size:clamp(24px,3.6vw,36px);font-weight:700;color:var(--jasmine);margin-bottom:14px}
.zone-head p{font-size:14px;color:var(--ink-soft);line-height:1.9;max-width:720px;margin:0 auto}
.zone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:6px}
.zone-note{margin-top:22px;padding:18px 26px;border:1px solid var(--line);border-radius:14px;background:var(--card);text-align:center;font-size:13px;color:var(--ink-soft);line-height:1.9}
.zone-note b{color:var(--gold-light)}
@media(max-width:1100px){.zone-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.zone-grid{grid-template-columns:1fr}}

/* 大福州文旅联动 · 引头氛围 */
.fz-band{position:relative;padding:76px 0;overflow:hidden;
  background:radial-gradient(900px 380px at 18% -10%,rgba(202,138,4,.15),transparent 60%),radial-gradient(700px 340px at 92% 108%,rgba(5,150,105,.09),transparent 60%),var(--bg-primary);border-bottom:1px solid var(--line)}
.fz-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:46px;align-items:center;position:relative;z-index:2}
.fz-kicker{font-family:var(--en);font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:16px}
.fz-kicker::before{content:'';width:26px;height:1px;background:var(--gold)}
.fz-title{font-family:var(--serif);font-size:clamp(23px,3.3vw,33px);font-weight:700;line-height:1.4;color:var(--jasmine);margin-bottom:15px}
.fz-title .spot{background:linear-gradient(180deg,var(--gold-light),var(--gold));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fz-desc{font-size:14px;color:var(--ink-soft);line-height:1.95;margin-bottom:14px}
.fz-desc b{color:var(--gold-light);font-weight:600}
.fz-stats{display:flex;gap:34px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px}
.fz-stat b{font-family:var(--en);font-size:24px;font-weight:700;color:var(--gold-light);display:block;line-height:1.1;margin-bottom:4px}
.fz-stat span{font-size:11px;color:var(--muted)}
.fz-poi{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fz-poi>div{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:15px 16px;transition:.3s;position:relative}
.fz-poi>div:hover{border-color:var(--gold);transform:translateY(-3px)}
.fz-poi em{font-style:normal;font-family:var(--en);font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:5px}
.fz-poi b{font-family:var(--serif);font-size:13.5px;color:var(--jasmine);display:block;margin-bottom:3px}
.fz-poi small{font-size:11px;color:var(--muted);line-height:1.6;display:block}
@media(max-width:820px){.fz-grid{grid-template-columns:1fr;gap:30px}}

/* 六种体验方式 */
.exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.exp-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 22px;position:relative;overflow:hidden;transition:.4s}
.exp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(251,191,36,.45),transparent)}
.exp-card:hover{border-color:rgba(202,138,4,.5);transform:translateY(-4px);box-shadow:0 14px 40px rgba(0,0,0,.35)}
.exp-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.exp-no{font-family:var(--en);font-size:12px;font-weight:700;color:transparent;-webkit-text-stroke:1px var(--gold);line-height:1}
.exp-icon{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,rgba(202,138,4,.22),rgba(202,138,4,.05));display:grid;place-items:center;color:var(--gold-light);flex-shrink:0;margin-left:auto}
.exp-icon svg{width:22px;height:22px}
.exp-card h4{font-family:var(--serif);font-size:17px;color:var(--jasmine);margin-bottom:2px}
.exp-en{font-family:var(--en);font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:12px}
.exp-card ul{list-style:none}
.exp-card li{font-size:12px;color:var(--ink-soft);line-height:1.75;padding:4px 0 4px 16px;position:relative}
.exp-card li::before{content:'▸';position:absolute;left:0;color:var(--gold)}
.exp-hook{margin-top:13px;font-size:10.5px;color:var(--muted);padding:9px 12px;background:rgba(202,138,4,.04);border:1px dashed rgba(202,138,4,.16);border-radius:8px;line-height:1.6}
.exp-hook b{color:var(--gold-light);font-weight:600}
@media(max-width:860px){.exp-grid{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.exp-grid{grid-template-columns:1fr}}
@media(max-width:1024px){.fz-poi{grid-template-columns:1fr}}

/* Partner tiers */
.partner-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.partner{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 18px;text-align:center;transition:.35s;position:relative}
.partner::before{content:'';position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,rgba(251,191,36,.35),transparent)}
.partner:hover{border-color:var(--gold-light);transform:translateY(-5px)}
.partner.featured{border-color:rgba(251,191,36,.5);background:linear-gradient(180deg,rgba(202,138,4,.1),var(--card))}
.p-seat{font-size:11px;color:var(--gold-light);letter-spacing:1px;font-family:var(--en);margin-bottom:8px;display:inline-block;padding:2px 10px;border:1px solid rgba(251,191,36,.4);border-radius:20px}
.partner h4{font-family:var(--serif);font-size:17px;color:var(--jasmine);margin-bottom:8px}
.partner p{font-size:11.5px;color:var(--ink-soft);line-height:1.7;min-height:3em}
.partner p b{color:var(--gold-light)}
.p-en{font-family:var(--en);font-size:9px;color:var(--muted);letter-spacing:2px;text-transform:uppercase;margin-top:12px;display:block}
.p-detail{font-size:11px;color:var(--gold);margin-top:8px}

/* Process */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.proc,.process-step{text-align:center;padding:26px 18px;background:var(--card);border:1px solid var(--line);border-radius:14px;position:relative}
.proc-num{width:44px;height:44px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--bg-secondary));display:grid;place-items:center;font-family:var(--en);font-weight:700;color:#1A1204;font-size:16px;border:1px solid rgba(251,191,36,.4)}
.proc h4,.process-step h4{font-family:var(--serif);font-size:16px;color:var(--jasmine);margin-bottom:8px}
.proc p,.process-step p{font-size:11.5px;color:var(--ink-soft);line-height:1.7}

/* FAQ */
.faq{max-width:820px;margin:0 auto;display:grid;gap:12px}
.faq-item{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:.3s}
.faq-item:hover{border-color:rgba(202,138,4,.4)}
.faq-q{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;cursor:pointer;font-family:var(--serif);font-size:15px;color:var(--jasmine);gap:12px}
.faq-q .chev{flex-shrink:0;color:var(--gold);transition:.3s;font-size:12px}
.faq-item.open .chev{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-a p{padding:0 22px 18px;font-size:13px;color:var(--ink-soft);line-height:1.9}

/* 申请弹窗 · 移植自主理人邀约共创页 */
.modal-overlay{position:fixed;inset:0;z-index:2000;display:flex;justify-content:center;align-items:center;padding:20px;background:rgba(8,7,6,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
.modal-overlay.active{opacity:1;visibility:visible}
.modal-box{width:100%;max-width:520px;max-height:88vh;overflow-y:auto;background:var(--bg-elev);border:1px solid var(--line);border-radius:16px;padding:38px 34px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.6);transform:translateY(26px) scale(.94);opacity:0;transition:transform .38s cubic-bezier(.16,1,.3,1),opacity .3s ease}
.modal-overlay.active .modal-box{transform:none;opacity:1}
.modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:15px;cursor:pointer;transition:.25s;line-height:1;display:grid;place-items:center}
.modal-close:hover{border-color:var(--gold);color:var(--gold-light);transform:rotate(90deg)}
.modal-box h3{font-family:var(--serif);font-size:22px;color:var(--jasmine);margin-bottom:6px}
.modal-sub{font-size:13px;color:var(--muted);margin-bottom:26px;line-height:1.7}
.m-field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.m-field label{font-size:12px;font-weight:600;color:var(--ink-soft);letter-spacing:.03em}
.m-field input,.m-field select,.m-field textarea{padding:12px 14px;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:9px;color:var(--jasmine);font-size:13.5px;font-family:var(--sans);outline:none;transition:border-color .25s,box-shadow .25s}
.m-field textarea{min-height:92px;resize:vertical}
.m-field input:focus,.m-field select:focus,.m-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(202,138,4,.14)}
.m-field select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}
.m-field select option{background:var(--bg-elev);color:var(--jasmine)}
.m-submit{width:100%;padding:14px;margin-top:6px;background:linear-gradient(135deg,var(--gold-light),var(--gold));border:none;border-radius:10px;color:#141110;font-size:15px;font-weight:700;cursor:pointer;transition:.3s;font-family:var(--sans)}
.m-submit:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(202,138,4,.35)}
.modal-success{display:none;text-align:center;padding:36px 12px}
.modal-success.active{display:block;animation:fadeUp .5s ease both}
.modal-success .ok{width:64px;height:64px;margin:0 auto 20px;border-radius:50%;background:linear-gradient(135deg,rgba(251,191,36,.2),rgba(202,138,4,.05));border:1px solid rgba(251,191,36,.4);display:grid;place-items:center;color:var(--gold-light);font-size:28px;animation:pop .5s cubic-bezier(.16,1,.3,1) both}
.modal-success h4{font-family:var(--serif);font-size:20px;color:var(--jasmine);margin-bottom:10px}
.modal-success p{font-size:13.5px;color:var(--muted);margin-bottom:24px;line-height:1.8}
.modal-success .btn-gold{display:inline-block;padding:12px 34px;background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#141110;font-weight:700;font-size:14px;border-radius:9px;cursor:pointer;border:none;transition:.3s}
.modal-success .btn-gold:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(202,138,4,.35)}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@media(max-width:480px){.modal-box{padding:28px 20px}}

/* 上飘火星粒子 · 氛围光点 */
#sparkCanvas{position:fixed;top:0;left:0;width:100%;height:100vh;pointer-events:none;z-index:5;opacity:.55;mix-blend-mode:screen}
@media (prefers-reduced-motion:reduce){#sparkCanvas{display:none}}

/* CTA strip */
.cta-strip{background:linear-gradient(120deg,#141110 0%,#0C0A09 60%);border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.cta-strip::before{content:'';position:absolute;inset:0;background:radial-gradient(800px 300px at 50% 120%,rgba(202,138,4,.18),transparent 70%)}
.cta-inner{text-align:center;padding:72px 24px;position:relative;z-index:2}
.cta-inner h2{font-family:var(--serif);font-size:clamp(24px,4vw,38px);color:var(--jasmine);margin-bottom:14px}
.cta-inner h2 b{background:linear-gradient(180deg,var(--gold-light),var(--gold));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cta-inner .line{color:var(--ink-soft);max-width:580px;margin:0 auto 26px;line-height:1.8;font-size:14px}
.cta-inner .ears{font-size:13px;color:var(--gold-light);letter-spacing:1px;margin-bottom:24px;font-family:var(--en)}

/* Footer */
footer{background:#0A0908;border-top:1px solid var(--line);padding:54px 0 30px}

/* 主办单位落款条 */
.org-strip{background:#0A0908;border-top:1px solid var(--line);padding:30px 0}
.org-strip .wrap{display:flex;justify-content:center;align-items:center;gap:36px;flex-wrap:wrap}
.org-item{display:flex;align-items:center;gap:12px}
.org-item .org-lbl{font-family:var(--en);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:4px}
.org-item b{font-family:var(--serif);font-size:15px;font-weight:600;color:var(--jasmine)}
.org-item b i{font-style:normal;color:var(--gold-light)}
.org-sep{width:1px;height:30px;background:var(--line)}
.org-note{width:100%;text-align:center;margin-top:16px;font-size:11px;color:var(--muted)}
@media(max-width:640px){.org-strip .wrap{gap:20px}.org-sep{display:none}.org-item{flex:1 1 100%;justify-content:center;text-align:center}}
.f-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:38px}
.f-brand .logo{font-size:19px;margin-bottom:14px}
.f-brand p{font-size:12.5px;color:var(--muted);line-height:1.8;max-width:380px}
.f-col h5{font-size:13px;color:var(--jasmine);margin-bottom:14px;font-family:var(--serif)}
.f-col a{display:block;font-size:12.5px;color:var(--muted);padding:4px 0;transition:.2s;cursor:pointer}
.f-col a:hover{color:var(--gold-light)}
.f-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.f-icp{text-align:center;margin-top:16px;font-size:11px;color:var(--muted);letter-spacing:.5px}
.f-icp a{color:var(--muted);transition:.2s}
.f-icp a:hover{color:var(--gold-light)}
.f-bottom p{font-size:11px;color:var(--muted)}

/* Animations */
.reveal{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}
.reveal.on{opacity:1;transform:none}
.stagger>*{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.16,1,.3,1)}
.stagger.on>*{opacity:1;transform:none}
.stagger.on>*:nth-child(1){transition-delay:0s}.stagger.on>*:nth-child(2){transition-delay:.07s}.stagger.on>*:nth-child(3){transition-delay:.14s}.stagger.on>*:nth-child(4){transition-delay:.21s}.stagger.on>*:nth-child(5){transition-delay:.28s}.stagger.on>*:nth-child(6){transition-delay:.35s}.stagger.on>*:nth-child(7){transition-delay:.42s}.stagger.on>*:nth-child(8){transition-delay:.49s}

/* Responsive */
@media(max-width:1024px){
  .partner-grid,.g5{grid-template-columns:repeat(2,1fr)}
  .module-row{grid-template-columns:1fr}
  .process{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .footer .f-grid{grid-template-columns:1fr;gap:24px}
}
@media(max-width:768px){
  nav{background:rgba(12,10,9,.97)}
  .nav-links{display:none;position:absolute;top:66px;left:0;right:0;flex-direction:column;background:#0C0A09;padding:18px;gap:6px;border-bottom:1px solid var(--line)}
  .nav-links.open{display:flex}
  .hamburger{display:flex}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .sec-pad{padding:64px 0}
  .f-bottom{flex-direction:column;text-align:center}
  .ctas{display:flex;flex-direction:column;align-items:center;gap:12px}
  .partner{padding:22px 16px}
  .partner p{min-height:auto}
}
@media(max-width:480px){
  .partner-grid,.g5,.process{grid-template-columns:1fr 1fr}
  .hero-title{font-size:29px}
  .cd .num{font-size:20px;padding:6px 8px;min-width:26px}
  .hero-stats{gap:20px}
}
/* ===== 内联样式迁移 (inline → classes) ===== */
.hp-gold{color:var(--jasmine)}
.hero-cd-line{margin-bottom:16px}
#countdown{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.hero-stats{display:flex;justify-content:center;gap:48px;margin-bottom:38px;flex-wrap:wrap}
.hero .ctas{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.cta-strip .ctas{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.z-up{position:relative;z-index:2}
.g4-ctr{margin-top:44px;text-align:center}
.grid.g4 .solid-card{text-align:center}
.proj-note{font-size:12.5px;color:var(--muted);margin-top:16px}
.exp-en{flex:1}
.eb-box{margin-top:36px;padding:26px 28px;border:1px solid rgba(251,191,36,.4);border-radius:14px;background:linear-gradient(120deg,rgba(202,138,4,.1),rgba(5,150,105,.05));text-align:center}
.eb-box b{color:var(--gold-light);font-size:16px}
.eb-box p{font-size:13px;color:var(--ink-soft);margin-top:10px}
.ms-high b{color:var(--gold-light)}
.exp-main{flex:1}
