@charset "UTF-8";
/* ==========================================================================
   InfiMaker — 关于我们（简体中文）
   品牌规范取自 infimaker.com 线上主题实测
   依赖：../fonts/（自托管 Montserrat 可变字体）、../assets/
   ========================================================================== */

/* ---------- 字体：自托管，避免境内访问 Google Fonts 被阻断 ----------
   Montserrat 为可变字体，单个 woff2 覆盖 400–900 全部字重。
   中文由系统字体承担（见 body 字体栈），无需额外下载中文字体。 */
@font-face{
  font-family:'Montserrat';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('../fonts/montserrat-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Montserrat';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('../fonts/montserrat-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* ---------- 设计令牌 ---------- */
:root{
  --bg:#050505;
  --bg-soft:#0b0b0b;
  --card:#0f0f0f;
  --fg:#ffffff;
  --muted:#b3b3b3;
  --dim:#7a7a7a;
  --line:rgba(255,255,255,.10);
  --line-strong:rgba(255,255,255,.18);
  --accent:#ef8b22;
  --max:1180px;
  --read:760px;
  --nav-h:74px;
}

/* ---------- 基础 ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg);color:var(--fg);
  font-family:'Montserrat','Noto Sans SC',-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;
  font-size:16px;line-height:1.9;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:rgba(239,139,34,.85);color:#0a0a0a}

/* 键盘可达性：统一焦点环 */
a:focus-visible,button:focus-visible{
  outline:2px solid var(--accent);outline-offset:3px;border-radius:4px;
}

/* 跳转到正文（屏幕阅读器 / 键盘用户） */
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:999;
  background:var(--accent);color:#0a0a0a;font-weight:600;
  padding:12px 20px;border-radius:0 0 10px 0;
}
.skip-link:focus{left:0}

/* ---------- 布局容器 ---------- */
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.read{max-width:var(--read)}
section{position:relative}

/* ---------- 顶部导航 ---------- */
header{
  position:sticky;top:0;z-index:100;
  background:rgba(5,5,5,.82);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;height:var(--nav-h)}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:17px;letter-spacing:.02em}
.brand img{height:22px;width:auto}
.brand .fallback{display:none;font-weight:700;letter-spacing:.04em}
.brand-lg{font-size:19px}

/* ---------- 首屏 ---------- */
.hero{padding:120px 0 90px;position:relative;overflow:hidden}
.hero::before{
  content:"";position:absolute;top:-220px;left:50%;transform:translateX(-50%);
  width:900px;height:900px;pointer-events:none;
  background:radial-gradient(circle,rgba(239,139,34,.13) 0%,rgba(239,139,34,.05) 35%,transparent 68%);
}
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:96px 96px;
  mask-image:radial-gradient(ellipse 70% 55% at 50% 32%,#000 20%,transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse 70% 55% at 50% 32%,#000 20%,transparent 78%);
}
.hero .wrap{position:relative;z-index:2}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:28px;
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--accent)}
h1{font-size:clamp(40px,7vw,78px);line-height:1.1;font-weight:800;letter-spacing:-.02em;margin-bottom:36px}
h1 em{font-style:normal;color:var(--accent)}
.hero .lead{font-size:clamp(17px,2vw,21px);line-height:1.95;color:#dcdcdc;font-weight:300;max-width:820px}

/* ---------- 配图带 ---------- */
.showcase{position:relative;height:min(82vh,760px);overflow:hidden;background:var(--bg-soft)}
.showcase img{width:100%;height:100%;object-fit:cover;display:block}
.showcase::before,
.showcase::after{content:"";position:absolute;left:0;right:0;height:130px;z-index:2;pointer-events:none}
.showcase::before{top:0;background:linear-gradient(180deg,var(--bg) 0%,transparent 100%)}
.showcase::after{bottom:0;background:linear-gradient(0deg,var(--bg) 0%,transparent 100%)}

/* ---------- 通用区块 ---------- */
.block{padding:88px 0;border-top:1px solid var(--line)}
.block.tight{padding:64px 0}
p.body{font-size:17px;line-height:2.05;color:#d2d2d2;font-weight:300}
p.body + p.body{margin-top:26px}
.muted{color:var(--muted)}
.accent{color:var(--accent)}

/* 逐段叙述：左侧细橙线 */
.narrative{border-left:2px solid rgba(239,139,34,.45);padding-left:34px}
.narrative p.body + p.body{margin-top:32px}

/* 大字引句 */
.statement{font-size:clamp(26px,4vw,44px);line-height:1.55;font-weight:700;letter-spacing:-.01em;max-width:900px}
.statement .hl{color:var(--accent)}
.statement-sm{font-size:clamp(20px,2.6vw,30px);line-height:1.7;font-weight:600}

/* 事实卡片 */
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:52px}
.fact{
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012));
  border:1px solid var(--line);border-radius:18px;padding:30px 26px;
}
.fact .num{font-size:30px;font-weight:800;letter-spacing:-.01em;line-height:1.2}
.fact .num span{color:var(--accent)}
.fact .cap{margin-top:10px;font-size:13px;color:var(--dim);letter-spacing:.06em}

/* 标语区 */
.slogan{
  position:relative;border:1px solid var(--line);border-radius:24px;overflow:hidden;
  padding:64px 56px;
  background:
    radial-gradient(120% 140% at 0% 0%,rgba(239,139,34,.16) 0%,rgba(239,139,34,.03) 42%,transparent 70%),
    linear-gradient(180deg,#0e0e0e,#080808);
}
.slogan .en{font-size:clamp(21px,3.2vw,36px);font-weight:800;line-height:1.45;letter-spacing:-.015em}
.slogan .en .o{color:var(--accent)}
.slogan .cn{margin-top:20px;font-size:clamp(16px,2vw,21px);font-weight:500;color:#e6e6e6;letter-spacing:.02em}
.slogan .note{margin-top:26px;font-size:15px;color:var(--muted);font-weight:300}

/* 宣言 */
.manifesto p.body{font-size:18px;line-height:2.1}

/* ---------- 小工具类（替代行内样式） ---------- */
.u-mt-34{margin-top:34px}
.u-mt-56{margin-top:56px}
.u-strong{font-weight:600}

/* 收尾 */
.final{padding:130px 0 140px;text-align:center;position:relative;overflow:hidden}
.final::before{
  content:"";position:absolute;bottom:-320px;left:50%;transform:translateX(-50%);
  width:1000px;height:700px;pointer-events:none;
  background:radial-gradient(ellipse,rgba(239,139,34,.14) 0%,transparent 66%);
}
.final .wrap{position:relative;z-index:2}
.final .small{font-size:clamp(16px,2vw,20px);color:var(--muted);font-weight:300;line-height:1.9}
.final .big{margin-top:26px;font-size:clamp(24px,4.2vw,46px);font-weight:800;line-height:1.45;letter-spacing:-.02em}
.final .big span{color:var(--accent)}

/* ---------- 页脚 ---------- */
footer{border-top:1px solid var(--line);padding:56px 0 44px;background:#030303}
.foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap}
.foot-top .tagline{font-size:14px;color:var(--muted);font-weight:300}
.foot-bottom{
  margin-top:40px;padding-top:24px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  font-size:12.5px;color:var(--dim);letter-spacing:.03em;
}
.foot-legal{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.foot-legal .sep{color:rgba(255,255,255,.18)}
.foot-legal a{position:relative;color:var(--dim);transition:color .25s}
.foot-legal a:hover{color:var(--accent)}
.foot-legal a::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;
  background:currentColor;opacity:0;transition:opacity .25s;
}
.foot-legal a:hover::after{opacity:.55}

/* ---------- 滚动入场 ---------- */
.reveal{
  opacity:0;transform:translateY(26px);
  transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1);
}
.reveal.in{opacity:1;transform:none}
/* 无 JS 时不能把内容永久藏起来 */
.no-js .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ---------- 响应式 ---------- */
@media (max-width:900px){
  .facts{grid-template-columns:1fr}
  .hero{padding:78px 0 62px}
  .block{padding:64px 0}
  .narrative{padding-left:22px}
  .slogan{padding:40px 26px;border-radius:18px}
  .final{padding:96px 0 104px}
  .wrap{padding:0 20px}
  .showcase{height:52vh;min-height:320px}
}
@media (max-width:520px){
  :root{--nav-h:64px}
  .foot-bottom{font-size:12px;gap:14px}
  .foot-legal{gap:12px}
}
