:root { --accent:#7c3aed; --ink:#221a17; --muted:#6f655c; --surface:#fff; --line:rgba(34,26,23,.08); --soft:#fff4f1; }
* { box-sizing:border-box; } body { margin:0; background:linear-gradient(180deg,#fff 0%, #fff9f8 100%); color:var(--ink); font-family:"Microsoft YaHei","PingFang SC",sans-serif; }
a { color:inherit; text-decoration:none; } .wrap { width:min(1120px, calc(100% - 32px)); margin:0 auto; }
.stage { padding:78px 0 52px; background:linear-gradient(135deg,#7c3aed,#1f2937); color:#fff; } .stage-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:center; }
.tag { display:inline-flex; padding:7px 14px; border-radius:999px; background:rgba(255,255,255,.14); font-size:13px; letter-spacing:.08em; }
h1 { margin:18px 0 14px; font-size:clamp(36px,5vw,64px); line-height:1.04; max-width:10em; } .copy p { margin:0; color:rgba(255,255,255,.9); line-height:1.8; font-size:18px; }
.cta { display:flex; gap:14px; flex-wrap:wrap; margin-top:24px; } .cta a { display:inline-flex; align-items:center; justify-content:center; min-width:138px; min-height:46px; border-radius:14px; background:#fff; color:#1f2937; font-weight:700; } .cta .ghost { background:transparent; border:1px solid rgba(255,255,255,.24); color:#fff; }
.poster,.tiles article,.brand-strip,.panel-item,.contact-card { background:var(--surface); border:1px solid var(--line); box-shadow:0 16px 34px rgba(15,23,42,.05); }
.poster { padding:26px; border-radius:30px 12px 30px 12px; color:var(--ink); } .poster small,.section-head span,.contact-card span { color:var(--accent); font-size:13px; letter-spacing:.16em; text-transform:uppercase; } .poster strong { display:block; margin:10px 0 12px; font-size:30px; } .poster p,.tiles p,.panel-item p,.meta p,.contact-card p { color:var(--muted); line-height:1.76; }
.tiles { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; padding:28px 0; } .tiles article { padding:22px; border-radius:24px; } .tiles h3,.panel-item h3 { margin:0 0 10px; font-size:22px; }
.brand-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding:22px 26px; border-radius:26px; margin-bottom:28px; } .brand-strip h2 { margin:8px 0 0; font-size:28px; line-height:1.2; }
.news-panels { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding-bottom:28px; } .section-head { margin-bottom:22px; } .section-head h2,.contact-card h2 { margin:10px 0 0; font-size:clamp(28px,4vw,42px); line-height:1.16; }
.panel-list { display:grid; gap:16px; } .panel-item { padding:22px; border-radius:22px; } .panel-item span { color:var(--accent); font-size:13px; } .arrow { display:inline-flex; margin-top:14px; color:var(--accent); font-weight:700; }
.contact-card { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; padding:28px; border-radius:34px; margin-bottom:48px; }
@media (max-width: 900px) { .stage-grid,.tiles,.brand-strip,.news-panels,.contact-card { grid-template-columns:1fr; } }
