/* ============================================================
   YURI 官网 · 方案 A「封面」美学 · 全站样式
   小字 · 等宽元信息 · 衬线斜体 · 满幅画面 · 纯黑
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@300;400;500&family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@300;400&display=swap');
:root{
  --bg:#000;--fg:#f4f4f2;--fg2:#b8b8b4;--mute:#6a6a66;--dim:#2c2c2a;--line:#1b1b1a;--line2:#262624;
  --blue:#2f55ff;--blue2:#7d95ff;--red:#e2472c;
  --sans:'Inter Tight','Helvetica Neue',Helvetica,'PingFang SC',sans-serif;
  --serif:'Instrument Serif','Songti SC',Georgia,serif;
  --mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  --gut:clamp(16px,2.6vw,40px);--max:1680px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{color-scheme:dark;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--fg);font:13px/1.65 var(--sans);font-weight:300;letter-spacing:.01em;overflow-x:hidden;min-height:100svh;padding-top:52px}
html[lang=zh] body{font-family:'PingFang SC','Noto Sans SC',var(--sans);letter-spacing:.02em}
a{color:inherit;text-decoration:none}
img,video,canvas{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--blue);color:#fff}
main{min-height:100svh}

/* ---------- 字 ---------- */
.m{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:300;line-height:1.8}
.m b{color:var(--fg2);font-weight:400}
.m.w{color:var(--fg)}
.m.blue{color:var(--blue2)}
.m.red{color:var(--red)}
.i{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0}
html[lang=zh] .i{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif;letter-spacing:.02em}
.t0{font-size:clamp(28px,3.6vw,54px);line-height:1.02;letter-spacing:-.01em}
.t1{font-size:clamp(22px,2.6vw,38px);line-height:1.1;letter-spacing:-.01em}
.t2{font-size:clamp(17px,1.7vw,24px);line-height:1.25}
.t3{font-size:15px;line-height:1.4}
.body{font-size:13.5px;line-height:1.8;color:var(--fg2);max-width:44em}
.body p+p{margin-top:1em}
.sub{font-size:12px;line-height:1.7;color:var(--mute)}
.chip{display:inline-block;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;padding:2px 7px;border:1px solid var(--line2);border-radius:2px;color:var(--fg2);vertical-align:middle}
.chip.pending{border-color:rgba(226,71,44,.6);color:var(--red)}
.chip.concept{border-style:dashed;color:var(--mute)}
.arrow::after{content:' →';font-family:var(--sans)}
.link{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);border-bottom:1px solid var(--line2);padding-bottom:2px;transition:.2s}
.link:hover{color:#fff;border-color:#fff}

/* ---------- 顶栏 / 抽屉 ---------- */
#top{position:fixed;inset:0 0 auto 0;z-index:40;height:52px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--gut);background:#000;border-bottom:1px solid var(--line)}
#top .mark{justify-self:start;font-weight:500;font-size:12px;letter-spacing:.32em;text-transform:uppercase;display:flex;gap:10px;align-items:baseline}
#top .mark small{font-family:var(--serif);font-size:12px;letter-spacing:.1em;color:var(--fg2);font-weight:400}
html[lang=zh] #top .mark small{font-family:'Songti SC','Noto Serif SC',serif}
#top nav{display:flex;gap:22px}
#top nav a{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg2);padding:4px 0;border-bottom:1px solid transparent}
#top nav a:hover{color:#fff}#top nav a.on{color:#fff;border-color:#fff}
#top .r{justify-self:end;display:flex;gap:16px;align-items:center}
#top .r a,#top .r button{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg2);padding:4px 0;border-bottom:1px solid transparent}
#top .r a:hover,#top .r button:hover{color:#fff;border-color:#fff}
#burger{display:none;width:28px;height:28px;position:relative}
#burger::before,#burger::after{content:'';position:absolute;left:4px;right:4px;height:1px;background:#fff;top:11px}#burger::after{top:17px}
#drawer{position:fixed;inset:52px 0 0 0;z-index:39;background:#000;display:none;flex-direction:column;padding:24px var(--gut) 40px;gap:0}
#drawer.open{display:flex}
#drawer a{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-style:italic;font-size:30px}
html[lang=zh] #drawer a{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif;font-size:26px}
#drawer a small{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-style:normal}
#drawer .foot{margin-top:auto;display:flex;gap:18px}
@media(max-width:820px){#top{grid-template-columns:1fr auto}#top nav{display:none}#burger{display:block}#top .r .hide-m{display:none}}

/* ---------- 画面 ---------- */
.pic{position:relative;background:#0a0a0a;overflow:hidden;display:block}
.pic::before{content:'';display:block;padding-top:var(--r,66%)}
.pic img,.pic video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.04)}
.pic video{opacity:0;transition:opacity .5s}.pic.playing video{opacity:1}
.pic .cap{position:absolute;left:12px;bottom:10px;z-index:2;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.pic .no{position:absolute;right:12px;top:10px;z-index:2;font-family:var(--mono);font-size:9px;letter-spacing:.14em;color:rgba(255,255,255,.55)}
.pic .ph{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--dim)}
.r-43{--r:75%}.r-34{--r:133%}.r-169{--r:56.25%}.r-219{--r:42.8%}.r-11{--r:100%}.r-45{--r:125%}.r-32{--r:66.6%}.r-wide{--r:38%}
.cap-line{display:grid;grid-template-columns:1fr auto;gap:4px 14px;margin-top:10px;align-items:baseline}
.cap-line .k{grid-column:1/-1}
.cap-line .t{font-family:var(--serif);font-style:italic;font-size:clamp(17px,1.6vw,22px);line-height:1.2}
html[lang=zh] .cap-line .t{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif;font-size:clamp(16px,1.4vw,20px)}
.cap-line .s{grid-column:1/-1;font-size:12px;color:var(--mute);line-height:1.6}
a.card{display:block}
a.card:hover .pic img{transform:scale(1.02);transition:transform 1.4s cubic-bezier(.16,1,.3,1)}

/* ---------- 布局原语 ---------- */
.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
.sec{padding-top:clamp(56px,7vw,110px);padding-bottom:clamp(56px,7vw,110px);position:relative}
.sec+.sec{border-top:1px solid var(--line)}
/* 有标题的段：编号眉题 + 大号衬线标题 + 细线 */
.shead{display:grid;grid-template-columns:1fr auto;align-items:end;gap:16px 24px;padding-bottom:16px;border-bottom:1px solid var(--line2);margin-bottom:clamp(24px,3vw,44px)}
.shead .eyebrow{color:var(--blue2);display:block}
.shead .st{font-size:clamp(28px,3.4vw,52px);line-height:1;letter-spacing:-.01em;margin-top:10px;color:#fff}
html[lang=zh] .shead .st{font-style:normal;letter-spacing:.02em}
.shead .link,.shead>.m{white-space:nowrap;margin-bottom:6px}
.sec.nohead{padding-top:clamp(40px,5vw,72px)}
.head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:clamp(22px,3vw,40px)}
.head .m{white-space:nowrap}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,56px)}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,24px)}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,24px)}
.spread{display:grid;grid-template-columns:5fr 4fr;gap:clamp(16px,2vw,32px);align-items:end}
.bleed{margin-left:calc(-1*var(--gut));margin-right:calc(-1*var(--gut))}
.index{border-top:1px solid var(--line)}
.index a,.index .row{display:grid;grid-template-columns:120px 1fr auto;gap:8px 20px;padding:15px 0;border-bottom:1px solid var(--line);align-items:baseline;transition:padding-left .3s}
.index a:hover{padding-left:8px}
.index .n{font-family:var(--mono);font-size:10px;color:var(--mute);letter-spacing:.14em;font-variant-numeric:tabular-nums}
.index .t{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,28px);line-height:1.15}
html[lang=zh] .index .t{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif;font-size:clamp(17px,1.7vw,24px)}
.index .s{font-family:var(--mono);font-size:10px;color:var(--mute);letter-spacing:.14em;text-transform:uppercase;text-align:right;white-space:nowrap}
.index .d{grid-column:2/3;font-size:12px;color:var(--mute);line-height:1.6;max-width:60em}
.index.thumbs a{grid-template-columns:120px 96px 1fr auto}
.index.thumbs .pic{--r:66%}
.strip{display:flex;gap:clamp(10px,1.2vw,18px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(-1*var(--gut));padding:0 var(--gut)}
.strip::-webkit-scrollbar{display:none}
.strip>*{flex:0 0 clamp(200px,22vw,320px);scroll-snap-align:start}
.rv{opacity:0;transform:translateY(10px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}
.rv.in{opacity:1;transform:none}
html.reduce .rv{opacity:1;transform:none;transition:none}
footer{padding:40px var(--gut);border-top:1px solid var(--line)}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px}
footer ul{list-style:none}footer li{padding:2px 0;font-size:12px;color:var(--fg2)}footer li a:hover{color:#fff}
footer .bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:36px;padding-top:16px;border-top:1px solid var(--line)}
.pending-box{border:1px dashed var(--line2);padding:14px 16px;font-size:12px;color:var(--mute);line-height:1.7}

/* ---------- 首屏：封面 ---------- */
#hero{position:relative;height:calc(100svh - 52px);min-height:560px;overflow:hidden;background:#000}
#hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.82) contrast(1.06)}
#hero #hfx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:normal}
@media(min-aspect-ratio:1.25/1){#hero video{object-fit:contain}}
#hero .vig{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.5),transparent 24%,transparent 72%,rgba(0,0,0,.7)),linear-gradient(90deg,rgba(0,0,0,.45),transparent 30%,transparent 70%,rgba(0,0,0,.35));pointer-events:none}
#hero .scan{position:absolute;left:0;right:0;height:1px;background:rgba(255,255,255,.12);top:-2px;animation:scan 9s linear infinite;pointer-events:none}
@keyframes scan{to{top:100%}}
html.reduce #hero .scan{display:none}
#hero .issue{position:absolute;left:var(--gut);top:clamp(20px,3vw,40px);z-index:5}
#hero .issue .big{font-family:var(--serif);font-style:italic;font-size:clamp(28px,3.6vw,52px);line-height:1;letter-spacing:-.01em;margin-top:6px;color:#fff}
html[lang=zh] #hero .issue .big{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif;letter-spacing:.04em}
#hero .lines{position:absolute;left:var(--gut);top:50%;transform:translateY(-50%);z-index:5;display:flex;flex-direction:column;gap:14px;max-width:26ch}
#hero .lines a,#hero .lines button{display:block;position:relative;text-align:left;border-left:1px solid rgba(255,255,255,.25);padding-left:12px;transition:border-color .3s,opacity .3s;opacity:.55;cursor:pointer}
#hero .lines a:hover,#hero .lines button:hover{border-color:var(--blue2);opacity:.9}
#hero .lines button.on{opacity:1;border-color:#fff}
#hero .lines .m{display:block;margin-bottom:2px}
#hero .lines .i{font-size:clamp(15px,1.5vw,21px);line-height:1.25;color:#fff;display:block}
#hero .lines button .bar{position:absolute;left:-1px;top:0;width:1px;height:0;background:#fff}
#hero .lines button.on .bar{height:100%}
html.reduce #hero .lines button.on .bar{transition:none}
#hero .lead{position:absolute;left:var(--gut);bottom:60px;z-index:5;max-width:36ch}
#hero .lead .i{font-size:clamp(18px,2vw,28px);line-height:1.2;color:#fff}
#hero .lead .m{margin-top:10px;display:block}
#hero .code{position:absolute;right:var(--gut);bottom:60px;z-index:5;text-align:right}
#hero .bars{display:flex;gap:2px;justify-content:flex-end;height:38px;align-items:flex-end;margin-bottom:8px}
#hero .bars i{display:block;width:2px;background:#fff;opacity:.85}
#hero .bars i.w{width:4px}#hero .bars i.b{background:var(--blue2)}
#hero .hex{position:absolute;right:var(--gut);top:clamp(20px,3vw,40px);z-index:5;font-family:var(--mono);font-size:9px;letter-spacing:.1em;line-height:1.7;color:rgba(255,255,255,.35);text-align:right;width:12ch;height:40vh;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,transparent);mask-image:linear-gradient(#000 60%,transparent)}
#hero .type{position:absolute;left:var(--gut);right:var(--gut);bottom:20px;z-index:5;height:18px;border-top:1px solid rgba(255,255,255,.14);padding-top:5px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);white-space:nowrap;overflow:hidden}
#hero .type i{display:inline-block;width:6px;height:11px;background:var(--blue2);vertical-align:-1px;margin-left:2px;animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
@media(max-width:820px){#hero .lines{top:auto;bottom:176px;transform:none;max-width:70%;gap:8px}#hero .lines .i{font-size:14px}#hero .code,#hero .hex{display:none}#hero .lead{bottom:52px}}

/* ---------- 首页各段 ---------- */
.values .v{border-top:1px solid var(--line2);padding-top:16px}
.values .v .n{display:block;margin-bottom:14px}
.values .v .t1{margin-bottom:14px;max-width:16em}
.values .v .ref{margin-top:16px;display:inline-block}
.keys .k{border-top:1px solid var(--line);padding-top:12px}
.keys .k .t3{font-weight:400;margin-bottom:6px}
.persona{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,56px);align-items:center}
.persona .q{font-size:clamp(22px,2.4vw,36px);line-height:1.2}
.persona .m{display:block;margin-top:14px}
.persona .acts{margin-top:22px;display:flex;gap:18px;flex-wrap:wrap}
.record .index a{grid-template-columns:120px 1fr 1fr auto}
/* 第一次：日期大 · 缩略图在日期与标题之间 · 右侧留白 */
.firsts .index a{grid-template-columns:150px 132px minmax(0,1fr) 120px;grid-template-rows:auto auto;align-items:start;padding:18px 0}
.firsts .index .n{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;gap:6px}
.firsts .index .n .tag{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue2)}
.firsts .index .n .date{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2vw,28px);letter-spacing:0;color:#fff;font-weight:400;line-height:1}
html[lang=zh] .firsts .index .n .date{font-style:normal}
.firsts .index .n .tbc{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.firsts .index .th{grid-column:2;grid-row:1/3;align-self:start}
.firsts .index .th .pic{--r:66%}
.firsts .index .th .slot{display:block;aspect-ratio:3/2;border:1px dashed var(--line2);position:relative}
.firsts .index .th .slot span{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.firsts .index a:hover .th .slot{border-color:var(--mute)}
.firsts .index .t{grid-column:3;grid-row:1;font-size:clamp(20px,2.3vw,34px);line-height:1.15;max-width:22em}
.firsts .index .d{grid-column:3;grid-row:2}
/* 首页「第一次」：宽屏两列（只作用于首页 .firsts，不影响年表页 .chron） */
@media(min-width:1100px){.firsts .index{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(28px,3.5vw,64px)}.firsts .index a{grid-template-columns:128px 120px minmax(0,1fr);padding:20px 0}.firsts .index .t{font-size:clamp(18px,1.55vw,26px);max-width:none}.firsts .index .n .date{font-size:clamp(18px,1.5vw,24px)}}
@media(max-width:820px){.firsts .index a{grid-template-columns:96px 1fr}.firsts .index .n{grid-column:1/3;grid-row:1}.firsts .index .th{grid-column:1;grid-row:2/4}.firsts .index .t{grid-column:2;grid-row:2}.firsts .index .d{grid-column:2;grid-row:3}}}
.record .index .who{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg2)}
.record .index .who small{display:block;color:var(--mute)}
.live-feat{position:relative}
.live-feat .pic{--r:42%}
.live-feat .over{position:absolute;left:var(--gut);bottom:26px;z-index:3;display:flex;flex-direction:column;gap:6px}
.live-feat .over .i{font-size:clamp(26px,3.4vw,50px);line-height:1;color:#fff}
.live-feat .over2{position:absolute;right:var(--gut);bottom:26px;z-index:3;text-align:right}
.toc .index .t{font-size:clamp(22px,2.6vw,38px)}

/* 人格系统：视频打底 + 轮廓字符 + 锚在脸上的系统图 */
.sys{position:relative;height:clamp(600px,96svh,960px);overflow:hidden;background:#000}
.sys video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sys .dim{position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.42);pointer-events:none}
.sys canvas{position:absolute;inset:0;width:100%;height:100%}
.sys #edge{z-index:1;mix-blend-mode:screen;opacity:.85}
.sys #sysc{z-index:2}
.sys .vig{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.55),transparent 28%,transparent 62%,rgba(0,0,0,.85));pointer-events:none}
.sys .node{position:absolute;transform:translate(-50%,-50%);z-index:3;text-align:center;pointer-events:none;padding:5px 9px;background:rgba(0,0,0,.55);backdrop-filter:blur(2px)}
.sys .node b{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#fff;font-weight:400}
.sys .node small{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg2);margin-top:3px}
.sys .node small i{font-style:normal;color:var(--blue2)}
.sys .node.core{background:none;backdrop-filter:none;transform:translate(-50%,calc(-50% + 64px))}
.sys .node.core b{font-family:var(--serif);font-style:italic;text-transform:none;font-size:clamp(16px,1.6vw,22px);letter-spacing:0}
html[lang=zh] .sys .node.core b{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif}
.sys .node.loop b,.sys .node[data-n=out] b{color:var(--fg2)}
.sys .ttl{position:absolute;left:var(--gut);top:clamp(20px,3vw,40px);z-index:4;max-width:min(30em,60%)}
.sys .ttl .i{font-size:clamp(20px,2.3vw,34px);line-height:1.15;color:#fff}
.sys .hud{position:absolute;z-index:4;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);line-height:1.8}
.sys .hud.tl{left:var(--gut);top:auto;bottom:clamp(150px,20svh,210px)}.sys .hud.tr{right:var(--gut);top:clamp(20px,3vw,40px);text-align:right}
.sys .hud b{color:#fff;font-weight:400}
.sys .log{position:absolute;right:var(--gut);bottom:clamp(150px,20svh,210px);z-index:4;width:min(40%,420px);text-align:right}
.sys .log .m{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:none;letter-spacing:.08em;color:var(--fg2)}
.sys .log .m:first-child{text-transform:uppercase;letter-spacing:.14em;margin-bottom:4px;color:var(--mute)}
.sys .claims{position:absolute;left:var(--gut);right:var(--gut);bottom:clamp(20px,3vw,36px);z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,24px)}
.sys .claims .c{border-top:1px solid rgba(255,255,255,.25);padding-top:10px}
.sys .claims .c .t2{margin:4px 0 4px;color:#fff}
.sys .claims .c .sub{color:var(--fg2)}
.exprs .index .t.big{font-size:clamp(20px,2.4vw,36px);line-height:1.15;max-width:22em}
.exprs .index .n{line-height:1.6}
@media(max-width:1100px){.sys .claims{grid-template-columns:1fr 1fr}.sys .hud.tl,.sys .log{bottom:clamp(220px,34svh,300px)}}
@media(max-width:820px){.sys{height:clamp(620px,100svh,820px)}.sys .node small{display:none}.sys .node.loop,.sys .node[data-n=out],.sys .node[data-n=world]{display:none}.sys .hud.tr,.sys .log{display:none}.sys .ttl{max-width:90%}.sys .claims{grid-template-columns:1fr 1fr;gap:10px}.sys .claims .c .sub{display:none}.sys .hud.tl{bottom:auto;top:clamp(120px,22svh,180px)}}

/* 商业合作：Logo 墙 — 居中、紧凑、统一尺寸 */
.logos{display:grid;grid-template-columns:repeat(4,1fr);max-width:960px;margin:0 auto;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.logos .logo{position:relative;aspect-ratio:5/2;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 24px;transition:background .3s}
.logos .logo img{max-height:58px;max-width:70%;width:auto;height:auto;object-fit:contain;opacity:.62;filter:grayscale(1);transition:opacity .3s}
.logos .logo:hover{background:#0a0a0a}.logos .logo:hover img{opacity:1}
.logos .logo .m{display:none}
.logos .logo .i{font-size:14px;color:var(--fg2)}
.partners .head,.partners .shead,.partners>p{max-width:960px;margin-left:auto;margin-right:auto}
@media(max-width:1100px){.logos{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.logos{grid-template-columns:repeat(3,1fr)}.logos .logo img{max-height:40px;height:auto !important;max-width:66%}}
@media(max-width:560px){.logos{grid-template-columns:repeat(3,1fr)}.logos .logo{aspect-ratio:2/1;padding:0 12px}.logos .logo img{max-height:28px}}

/* 文章页：整体严格居中；视频按文件分辨率、上限 960、带控件有声 */
.art.wrap .title{grid-template-columns:1fr;justify-items:center;text-align:center}
.art.wrap .title>div{display:flex;flex-direction:column;align-items:center;width:100%}
.art.wrap .title .t0{max-width:22em;margin-left:auto;margin-right:auto}
.art.wrap .title .tags{justify-content:center;max-width:none;margin-top:12px}
.art .meta{text-align:center}
.art .meta.one{grid-template-columns:1fr}
.art .cap-row{justify-content:center;gap:28px}
.unit{align-items:center}
.unit .ub{margin-left:auto !important;margin-right:auto !important}
.unit .sum{margin-left:auto;margin-right:auto;text-align:center}
.unit .ub.text{text-align:center}
.unit .ub.text p,.unit .ub.quote p{margin-left:auto;margin-right:auto}
.unit .ub.quote{border-left:0;padding-left:0;text-align:center}
.unit .ub.kvb{text-align:left}
.ub.videoblk{width:auto;max-width:calc(100vw - 2*var(--gut));text-align:center}
.ub.videoblk video{display:inline-block;width:auto;height:auto;max-width:min(100%,var(--video-max,960px));background:#000}
.ub.videoblk .cap-row{justify-content:center;gap:28px}

/* 文章页三种版式 */
.unit.tpl-magazine{gap:clamp(40px,7vw,120px)}
.unit.tpl-magazine .ub.text{margin-left:auto;margin-right:auto;text-align:center}
.unit.tpl-magazine .ub.text p{margin-left:auto;margin-right:auto}
.unit.tpl-magazine .ub.text .lead-i{font-size:clamp(22px,2.6vw,38px)}
.unit.tpl-magazine .ub.quote{margin-left:auto;margin-right:auto;border-left:0;padding-left:0;text-align:center;max-width:34em}
.unit.tpl-magazine .ub.pair{margin-left:calc(-1*var(--gut));margin-right:calc(-1*var(--gut));width:auto}
.unit.tpl-magazine .ub.kvb{margin-left:auto;margin-right:auto}
.unit.tpl-magazine .sum{margin-left:auto;margin-right:auto;text-align:center}
.unit.tpl-column{max-width:40em;margin-left:auto;margin-right:auto;gap:clamp(24px,3vw,40px)}
.unit.tpl-column .ub{max-width:none;margin:0}
.unit.tpl-column .ub.pair{grid-template-columns:1fr 1fr}
.unit.tpl-column .ub.quote{padding-left:20px}
.unit.tpl-column .ub.text .lead-i{font-size:clamp(18px,1.8vw,24px)}
@media(max-width:820px){.unit.tpl-column{max-width:none}}

/* 商业合作：精选案例（Logo 墙下方，等宽单列三行） */
.partners+.cases{border-top:0;padding-top:0}
.cases .head,.cases .shead,.cases>p{max-width:960px;margin-left:auto;margin-right:auto}
.cases-rows{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px) clamp(20px,2.5vw,36px)}
@media(max-width:640px){.cases-rows{grid-template-columns:1fr}}
.case{display:block;color:inherit}
.case .pic{--r:56.25%}
.case .pic img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s}
.case:hover .pic img{transform:scale(1.025);filter:saturate(1) contrast(1.04)}
.case-cap{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:baseline;margin-top:12px}
.case-cap .k{justify-self:start;white-space:nowrap}
.case-cap .t{grid-column:1/-1;font-family:var(--serif);font-style:italic;font-size:clamp(16px,1.5vw,21px);line-height:1.25}
.case-cap .d{justify-self:end;color:var(--mute)}

/* 逻辑页：顶部「尤栗是谁」总说明 */
.lg-about{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,4fr);gap:24px clamp(24px,4vw,72px);padding-top:clamp(12px,2vw,24px);padding-bottom:clamp(40px,6vw,90px);align-items:start}
.lg-ab-l{display:flex;flex-direction:column;gap:18px}
.lg-ab-meta{text-transform:none;letter-spacing:.08em;color:var(--dim);line-height:1.9}.lg-ab-meta b{color:var(--mute)}
.lg-ab-b{max-width:46em}
.lg-ab-lead{font-size:clamp(22px,2.6vw,38px);line-height:1.22;letter-spacing:-.01em;color:#fff;margin:0}
.lg-ab-lead+.lg-ab-lead{margin-top:clamp(18px,2.4vw,34px)}
@media(max-width:820px){.lg-about{grid-template-columns:1fr}}

/* 逻辑页：五幕，每幕一块全宽画布 + 覆盖文字 */
.lg{border-top:1px solid var(--line)}
.lg-act{position:relative;min-height:clamp(460px,76vh,800px);border-bottom:1px solid var(--line);overflow:hidden;display:grid;align-items:center;background:#000}
.lg-cv{position:absolute;inset:0;width:100%;height:100%;display:block}
.lg-act::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none}
.lg-act[data-side=left]::after{background:linear-gradient(to right,rgba(0,0,0,.9) 0%,rgba(0,0,0,.72) 32%,rgba(0,0,0,0) 62%)}
.lg-act[data-side=right]::after{background:linear-gradient(to left,rgba(0,0,0,.9) 0%,rgba(0,0,0,.72) 32%,rgba(0,0,0,0) 62%)}
.lg-act[data-side=center]::after{background:radial-gradient(ellipse 46% 70% at 50% 50%,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 55%,rgba(0,0,0,0) 100%)}
.lg-ov{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;gap:18px;padding-top:clamp(70px,12vh,140px);padding-bottom:clamp(70px,12vh,140px)}
.lg-ov>*{max-width:40em}
.lg-act[data-side=right] .lg-ov{align-items:flex-end}.lg-act[data-side=right] .lg-ov>*{text-align:left}
.lg-act[data-side=center] .lg-ov{align-items:center;text-align:center}
.lg-act[data-side=center] .lg-t{margin-left:auto;margin-right:auto}
.lg-n{margin-bottom:14px}.lg-n b{color:var(--blue2)}
.lg-t{font-size:clamp(30px,4.2vw,64px);line-height:1.02;letter-spacing:-.01em;max-width:13em}
.lg-b{max-width:34em;font-size:clamp(13.5px,1.05vw,15px)}
.lg-hud{margin-top:14px;color:var(--mute);text-transform:none;letter-spacing:.08em;min-height:1.8em}
@media(max-width:820px){.lg-act::after{background:rgba(0,0,0,.6) !important}.lg-act .lg-ov{align-items:flex-start;text-align:left}.lg-act[data-side=center] .lg-t{margin:0}.lg-t{max-width:none}}

/* 年表：纵向时间轴，★ 大事 */
.chron{position:relative;padding-top:clamp(24px,3vw,40px);padding-bottom:clamp(80px,10vw,160px);--ax:clamp(96px,14vw,180px)}
.ch-axis{position:absolute;top:0;bottom:0;left:calc(var(--gut) + var(--ax));width:1px;background:linear-gradient(to bottom,transparent,var(--line2) 60px,var(--line2) calc(100% - 60px),transparent)}
.ch-axis .pulse{position:absolute;left:-1px;width:3px;height:120px;border-radius:2px;background:linear-gradient(to bottom,rgba(125,149,255,0),rgba(125,149,255,.9),rgba(125,149,255,0));animation:chpulse 7s linear infinite}
@keyframes chpulse{from{top:-120px}to{top:100%}}
.ch-hud{position:sticky;top:64px;float:right;z-index:3;padding:6px 10px;border:1px solid var(--line2);background:rgba(0,0,0,.85);color:var(--fg2);letter-spacing:.12em;text-transform:none}
.ch-hud b{color:#fff}
.ch-year{position:relative;display:grid;grid-template-columns:var(--ax) 1fr;align-items:end;gap:0 32px;margin:clamp(48px,7vw,96px) 0 clamp(20px,3vw,36px);clear:both}
.ch-year .y{font-family:var(--mono);font-size:clamp(40px,6vw,88px);line-height:.9;letter-spacing:-.04em;color:#fff;font-weight:300;grid-column:1/-1;position:relative}
.ch-year .y::after{content:'';position:absolute;left:0;right:0;bottom:-10px;height:1px;background:linear-gradient(to right,var(--blue2),transparent 60%)}
.ch-year .m{grid-column:2;margin-top:18px;color:var(--blue2)}
.ch-ev{position:relative;display:grid;grid-template-columns:var(--ax) 1fr;gap:0 32px;align-items:start;padding:14px 0}
.ch-ev .ch-d{display:flex;flex-direction:column;align-items:flex-end;padding-right:24px;padding-top:2px;text-transform:none;letter-spacing:.14em}
.ch-ev .ch-d b{color:var(--fg2);font-weight:400;font-size:11px}
.ch-ev .ch-d i{font-style:normal;color:var(--dim);font-size:9px}
.ch-node{position:absolute;left:var(--ax);top:19px;width:1px;height:1px}
.ch-node i{position:absolute;left:-3px;top:-3px;width:7px;height:7px;background:#000;border:1px solid var(--mute);transform:rotate(45deg);transition:background .3s,border-color .3s}
.ch-ev.in .ch-node i{border-color:var(--fg2)}
.ch-ev .ch-b{display:flex;flex-direction:column;gap:6px;min-width:0}
.ch-ev.minor .ch-t{font-size:13.5px;line-height:1.6;color:var(--fg2);max-width:44em;margin:0}
.ch-ev.minor .ch-t a{color:inherit;border-bottom:1px solid var(--line2)}
.ch-ev.major{padding:clamp(18px,2.6vw,34px) 0}
.ch-ev.major .ch-d b{color:#fff;font-family:var(--serif);font-style:italic;font-size:22px;letter-spacing:0;line-height:1}
.ch-ev.major .ch-node{top:calc(clamp(18px,2.6vw,34px) + 14px)}
.ch-ev.major .ch-node i{left:-6px;top:-6px;width:13px;height:13px;border-color:var(--blue2);box-shadow:0 0 0 4px #000,0 0 0 5px rgba(125,149,255,.35)}
.ch-ev.major.in .ch-node i{background:var(--blue2);animation:chblink 2.4s ease-in-out infinite}
@keyframes chblink{0%,100%{box-shadow:0 0 0 4px #000,0 0 0 5px rgba(125,149,255,.35)}50%{box-shadow:0 0 0 4px #000,0 0 0 5px rgba(125,149,255,.9),0 0 18px rgba(125,149,255,.6)}}
.ch-ev.major .ch-tag{color:var(--blue2)}
.ch-ev.major .ch-t{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(22px,2.6vw,38px);line-height:1.12;letter-spacing:-.01em;color:#fff;max-width:22em;margin:0}
.ch-ev.major .ch-t a{color:inherit}
.ch-n{color:var(--mute);text-transform:none;letter-spacing:.08em}
.ch-ev.major .ch-n{color:var(--fg2);font-family:var(--sans);font-size:12.5px;letter-spacing:0;text-transform:none;max-width:44em;line-height:1.7}
.ch-ev.hit .ch-b{position:relative}.ch-ev.hit .ch-b::before{content:'';position:absolute;left:-16px;top:0;bottom:0;width:2px;background:var(--blue2);animation:chhit 2.4s ease-out forwards}
@keyframes chhit{0%{opacity:1;box-shadow:0 0 18px rgba(125,149,255,.9)}100%{opacity:.35;box-shadow:none}}
.ch-end{margin-top:clamp(40px,6vw,80px);padding-left:calc(var(--ax) + 32px);color:var(--mute)}
@media(max-width:820px){.chron{--ax:64px}.ch-ev{gap:0 18px}.ch-ev .ch-d{padding-right:14px}.ch-year{gap:0 18px}.ch-hud{display:none}.ch-ev.major .ch-d b{font-size:16px}.ch-end{padding-left:calc(var(--ax) + 18px)}}

/* 联系方式：左列文字条目，右列二维码卡片（白底、够大、可扫） */
.contact{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,5vw,72px);padding-top:clamp(12px,2vw,24px);padding-bottom:clamp(80px,10vw,160px);align-items:start}
.contact.has-qr{grid-template-columns:minmax(0,7fr) minmax(260px,4fr)}
.ct-list{border-top:1px solid var(--line)}
.ct-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:6px 24px;padding:22px 0;border-bottom:1px solid var(--line);align-items:baseline}
.ct-row .ct-l{padding-top:6px}
.ct-v{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;min-width:0}
.ct-val{font-family:var(--serif);font-style:italic;font-size:clamp(22px,2.4vw,36px);line-height:1.1;color:#fff;letter-spacing:0;word-break:break-all}
html[lang=zh] .ct-val{font-style:normal}
a.ct-val{border-bottom:1px solid transparent}a.ct-val:hover{border-bottom-color:var(--blue2);color:var(--blue2)}
.ct-copy{background:none;border:1px solid var(--line2);color:var(--mute);padding:3px 8px;border-radius:2px;cursor:pointer;text-transform:uppercase;line-height:1.4}
.ct-copy:hover{color:#fff;border-color:var(--mute)}
.ct-n{grid-column:2;color:var(--mute);text-transform:none;letter-spacing:.06em}
.ct-qrs{display:grid;gap:clamp(20px,2.5vw,36px);align-self:start;padding-top:22px}
.ct-qr{margin:0;display:grid;gap:12px;justify-items:start}
.ct-qr-box{background:#fff;padding:16px;border-radius:2px;width:min(100%,260px);aspect-ratio:1/1;display:grid;place-items:center}
.ct-qr-box img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;display:block}
.ct-qr figcaption{display:grid;gap:4px}
.ct-qr figcaption>.m:first-child{color:var(--fg2)}
@media(max-width:820px){.contact.has-qr{grid-template-columns:1fr}.ct-qrs{position:static;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.ct-row{grid-template-columns:1fr}.ct-n{grid-column:1}.ct-qr-box{width:min(100%,240px)}}

/* 摄影集 Lookbook：6 栏栅格瀑布流（span 2 / 3），比例完整，灯箱看全尺寸 */
.lb{position:relative;padding-top:clamp(12px,2vw,24px);padding-bottom:clamp(80px,10vw,160px)}
.lb-scanline{position:absolute;left:var(--gut);right:var(--gut);top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(125,149,255,.7),transparent);animation:lbscan 11s linear infinite;pointer-events:none;z-index:2}
@keyframes lbscan{from{top:0}to{top:100%}}
.lb-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:4px;grid-auto-flow:dense;column-gap:clamp(12px,1.6vw,24px);row-gap:clamp(12px,1.6vw,24px)}
.lb-it{grid-column:span var(--span,2);margin:0;opacity:0;transform:translateY(18px);transition:opacity .6s,transform .8s cubic-bezier(.2,.7,.2,1)}
.lb-it.in{opacity:1;transform:none}
.lb-it.in .lb-ph{animation:lbslice .7s steps(1) both}
@keyframes lbslice{0%{clip-path:inset(0 0 70% 0);transform:translateX(-6px)}18%{clip-path:inset(30% 0 35% 0);transform:translateX(5px)}36%{clip-path:inset(60% 0 0 0);transform:translateX(-3px)}54%{clip-path:inset(0 0 0 0);transform:translateX(2px)}100%{clip-path:inset(0);transform:none}}
.lb-ph{position:relative;display:block;overflow:hidden;background:#0a0a0a}
.lb-ph img{display:block;width:100%;height:auto;filter:saturate(.9) contrast(1.04);transition:filter .5s,transform 1.4s cubic-bezier(.2,.7,.2,1)}
.lb-it:hover .lb-ph img{filter:saturate(1) contrast(1.06);transform:scale(1.02)}
.lb-scan{position:absolute;left:0;right:0;top:-2px;height:1px;background:rgba(255,255,255,.8);opacity:0;pointer-events:none}
.lb-it:hover .lb-scan{opacity:1;animation:lbhover 1.4s linear infinite}
@keyframes lbhover{from{top:0}to{top:100%}}
.lb-dim{position:absolute;right:10px;bottom:8px;color:rgba(255,255,255,.8);opacity:0;transition:opacity .3s;letter-spacing:.14em;background:rgba(0,0,0,.45);padding:2px 6px}
.lb-it:hover .lb-dim{opacity:1}
.lb-it figcaption{display:flex;gap:14px;align-items:baseline;padding:10px 0 4px}
.lb-cap{font-family:var(--serif);font-style:italic;font-size:clamp(14px,1.15vw,17px);color:var(--fg2);line-height:1.3}
html[lang=zh] .lb-cap{font-style:normal}
@media(max-width:1100px){.lb-grid{grid-template-columns:repeat(4,1fr)}.lb-it{--span:2 !important}.lb-it.wide{--span:4 !important}}
@media(max-width:640px){.lb-grid{grid-template-columns:repeat(2,1fr)}.lb-it{--span:2 !important}}
/* 灯箱 */
body.lb-open{overflow:hidden}
#lb-box{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.94);display:grid;grid-template-rows:1fr auto;align-items:center;padding:56px var(--gut) 20px}
#lb-box[hidden]{display:none}
#lb-box .lb-stage{position:relative;display:grid;place-items:center;min-height:0;height:calc(100vh - 140px)}
#lb-box .lb-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;clip-path:inset(50% 0 50% 0);transition:clip-path .55s cubic-bezier(.2,.7,.2,1)}
#lb-box.ready .lb-stage img{clip-path:inset(0)}
#lb-box .lb-line{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--blue2);opacity:1;transition:opacity .4s .3s}
#lb-box.ready .lb-line{opacity:0}
#lb-box .lb-hud{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-top:14px;border-top:1px solid var(--line)}
#lb-box .lb-hcap{font-size:clamp(15px,1.4vw,20px);color:#fff}
#lb-box .lb-x{position:absolute;top:16px;right:var(--gut);background:none;border:1px solid var(--line2);color:var(--fg2);padding:6px 10px;cursor:pointer;text-transform:uppercase}
#lb-box .lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:none;border:0;color:rgba(255,255,255,.7);font-family:var(--serif);font-size:48px;line-height:1;padding:20px;cursor:pointer}
#lb-box .lb-nav:hover{color:var(--blue2)}
#lb-box .lb-nav.prev{left:calc(var(--gut) - 16px)}#lb-box .lb-nav.next{right:calc(var(--gut) - 16px)}

/* 单元详情页：区块 */
.unit{padding:clamp(28px,4vw,56px) 0;display:flex;flex-direction:column;gap:clamp(32px,5vw,80px)}
.unit .ubrand img{height:22px;opacity:.7;filter:grayscale(1)}
.unit .sum{max-width:26em}
.ub{width:100%}
.ub.narrow{max-width:40em}.ub.wide{max-width:64em}.ub.full{max-width:none}
.ub.left{margin-right:auto}.ub.right{margin-left:auto}.ub.center{margin-left:auto;margin-right:auto;text-align:left}
.ub.text.center{text-align:center}.ub.text.center p{margin-left:auto;margin-right:auto}
.ub.text .lead-i{font-size:clamp(20px,2.2vw,32px);line-height:1.25}
.ub.quote{max-width:30em;padding-left:clamp(0px,4vw,60px);border-left:1px solid var(--line2)}
.ub.quote .m{display:block;margin-top:12px}
.ub.image.full{margin-left:calc(-1*var(--gut));margin-right:calc(-1*var(--gut));width:auto}
.ub.image.full .pic{--r:44%}
.ub.pair{display:grid;grid-template-columns:5fr 4fr;gap:clamp(12px,1.6vw,24px);align-items:end}
.ub.pair.a{grid-template-columns:4fr 5fr}
.ub.pair .cap-row{grid-column:1/-1}
.ub.kvb{max-width:40em}
.ub.hr{border:0;border-top:1px solid var(--line)}
@media(max-width:820px){.ub.pair,.ub.pair.a{grid-template-columns:1fr}.ub.narrow,.ub.wide{max-width:none}}

/* v2：标签、文章页标题区 */
.art .title .tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:320px}
a.chip:hover{color:#fff;border-color:var(--fg2)}
.filters a.chip{margin-right:2px}
.exprs-i .t.big{font-size:clamp(20px,2.4vw,36px);line-height:1.15;max-width:22em}
.exprs-i .n{line-height:1.6}
.toc-i .t{font-size:clamp(22px,2.6vw,38px)}

/* ---------- 栏目页 ---------- */
.phead{padding-top:clamp(40px,7vw,100px);padding-bottom:clamp(20px,3vw,36px);display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end}
.phead .t0{margin-top:6px}
.phead .lead{font-size:13.5px;line-height:1.75;color:var(--fg2);max-width:40em;justify-self:end}
.filters{display:flex;gap:6px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:clamp(20px,3vw,36px);align-items:center}
.filters button{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);padding:4px 8px;border:1px solid transparent}
.filters button:hover{color:#fff}.filters button.on{color:#fff;border-color:var(--line2)}
.filters .count{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--dim);letter-spacing:.14em}
.grid-pics{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,24px);row-gap:clamp(28px,3vw,44px)}
.grid-pics.two{grid-template-columns:1fr 1fr}
.grid-pics.four{grid-template-columns:repeat(4,1fr)}
.tl .index a{grid-template-columns:150px 1fr auto}
.tl .index .t{font-size:clamp(16px,1.6vw,22px)}
.tl .index a.feat .s{color:var(--blue2)}

/* ---------- 文章页 ---------- */
.art{padding-top:0}
.art .back{display:inline-block;margin:18px 0 14px}
.art .hero .pic{--r:44%}
.art .cap-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}
.art .title{padding:clamp(28px,4vw,56px) 0 clamp(20px,3vw,36px);display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end}
.art .title .t0{margin-top:10px;max-width:18em}
.art .meta{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.art .meta div span{display:block}
.art .meta .v{font-size:12.5px;color:var(--fg);margin-top:2px}
.art .cols{display:grid;grid-template-columns:7fr 4fr;gap:clamp(24px,4vw,80px);padding:clamp(28px,4vw,56px) 0}
.art .cols .lead-i{font-size:clamp(19px,2vw,28px);line-height:1.3;margin-bottom:22px}
.art .side>div+div{margin-top:28px}
.kv{border-top:1px solid var(--line)}
.kv div{display:grid;grid-template-columns:1fr 1.4fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}
.kv div span:first-child{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.links a{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--fg2)}
.links a:hover{color:#fff}.links a small{font-family:var(--mono);font-size:9px;color:var(--dim);letter-spacing:.1em}
.path{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 0;margin-top:8px}
.path button{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,26px);color:var(--fg2);border-bottom:1px solid transparent;padding:2px 0}
html[lang=zh] .path button{font-style:normal;font-family:'Songti SC','Noto Serif SC',serif}
.path button:hover,.path button.on{color:var(--blue2);border-color:var(--blue2)}
.path i{font-family:var(--mono);font-style:normal;color:var(--dim);padding:0 12px;font-size:11px}
.path small{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--mute);margin-left:6px}
.player{border:1px solid var(--line2);padding:14px 16px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.player .pb{width:36px;height:36px;border:1px solid var(--fg2);border-radius:50%;display:grid;place-items:center;font-size:10px}
.player .pb:hover{border-color:#fff}
.player .bar{height:1px;background:var(--line2);position:relative}.player .bar i{position:absolute;left:0;top:-1px;height:3px;width:0;background:var(--blue2)}
.four{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,32px)}
.four .cell{border-top:1px solid var(--line2);padding-top:12px}
.four .cell .i{font-size:clamp(17px,1.7vw,24px);line-height:1.3;margin-top:6px}
.contact{border:1px solid var(--line2);padding:clamp(20px,3vw,36px);display:grid;grid-template-columns:1.3fr 1fr;gap:20px;align-items:end}
.contact .i{font-size:clamp(20px,2.2vw,32px);line-height:1.15;margin:8px 0 10px}

/* ---------- 响应式 ---------- */
@media(max-width:1100px){.g4{grid-template-columns:1fr 1fr}.grid-pics.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){
  .g2,.g3,.persona,.spread,.contact,.four,.phead,.art .cols{grid-template-columns:1fr}
  .grid-pics,.grid-pics.two{grid-template-columns:1fr 1fr}
  .phead .lead{justify-self:start}
  .index a,.index .row,.record .index a,.tl .index a{grid-template-columns:90px 1fr}
  .index .s{display:none}.index .d{grid-column:1/-1}
  .record .index .who{grid-column:2/3}
  .index.thumbs a{grid-template-columns:90px 1fr}.index.thumbs .pic{display:none}
  .art .meta{grid-template-columns:1fr 1fr}
  footer .cols{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){.grid-pics,.grid-pics.two{grid-template-columns:1fr}.g4{grid-template-columns:1fr}footer .cols{grid-template-columns:1fr}.art .title{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}#hero .scan{display:none}}
