/* 春节页：按灯会的明暗和纵深编排完整实拍，不裁切灯组。 */
.sf-parts > .sf-part:not(.sf-zodiac){position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;align-items:center;margin-top:clamp(100px,12vw,180px);padding-bottom:clamp(30px,4vw,64px)}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media{order:0;grid-column:1/10;grid-row:1;position:relative;z-index:1;gap:clamp(12px,1.3vw,20px);align-items:start}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media::before{content:"";position:absolute;z-index:-1;inset:8% -4%;pointer-events:none;background:radial-gradient(ellipse at center,rgba(238,163,56,.17),transparent 68%);filter:blur(28px)}
.sf-parts > .sf-part.rev:not(.sf-zodiac) .sf-media{grid-column:4/13}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-tx{grid-column:8/13;grid-row:1;align-self:end;position:relative;z-index:2;padding:clamp(24px,3.6vw,58px);margin:0 0 -24px;background:var(--night,#0b0b0d)}
.sf-parts > .sf-part.rev:not(.sf-zodiac) .sf-tx{grid-column:1/6}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-tx h3{font-size:clamp(32px,3.7vw,58px);line-height:1.16;letter-spacing:-.02em;text-wrap:balance}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-tx p{font-size:clamp(17px,1.2vw,19px);line-height:1.8}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig .im{aspect-ratio:auto!important;border-radius:0;overflow:hidden;line-height:0;box-shadow:none}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig img{display:block;width:100%;height:auto;object-fit:contain;transform:none}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig figcaption{font-size:14px;line-height:1.6;opacity:1}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig:focus-visible{outline:3px solid var(--accent,#e8b654);outline-offset:5px}
.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig .im{transition:filter .35s ease}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig:is(:hover,:focus-visible) .im{filter:brightness(1.1)}}
@supports (animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
  .sf-parts > .sf-part:not(.sf-zodiac) .sf-media{animation:spring-ambient-in linear both;animation-timeline:view();animation-range:entry 0% entry 70%}
  @keyframes spring-ambient-in{from{opacity:.78;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
 }
}
@media(max-width:900px){
 .sf-parts > .sf-part:not(.sf-zodiac){display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:clamp(72px,12vw,112px);padding-bottom:0}
 .sf-parts > .sf-part:not(.sf-zodiac) .sf-media,.sf-parts > .sf-part.rev:not(.sf-zodiac) .sf-media{order:0}
 .sf-parts > .sf-part:not(.sf-zodiac) .sf-tx,.sf-parts > .sf-part.rev:not(.sf-zodiac) .sf-tx{order:1;align-self:stretch;margin:-12px 0 0;padding:clamp(24px,6vw,40px) clamp(18px,5vw,36px) 0;z-index:2}
 .sf-parts > .sf-part:not(.sf-zodiac) .sf-tx h3{font-size:clamp(29px,7.5vw,44px)}
 .sf-parts > .sf-part.pair:not(.sf-zodiac) .sf-media{grid-template-columns:minmax(0,1fr);gap:22px}
}
@media(prefers-reduced-motion:reduce){.sf-parts > .sf-part:not(.sf-zodiac) .sf-media .sf-fig .im{transition:none}}
/* 工序按真实顺序展开，不再把竖图裁成同一张卡片。 */
.sf-make .sf-steps-img{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(26px,4vw,60px);align-items:start}
.sf-make .sf-steps-img>li{grid-column:span 5;min-width:0}
.sf-make .sf-steps-img>li:nth-child(4n+1),.sf-make .sf-steps-img>li:nth-child(4n){grid-column:span 7}
.sf-make .sf-steps-img .sf-fig .im{aspect-ratio:auto;line-height:0;border-radius:0}
.sf-make .sf-steps-img img,.sf-make .sf-steps-img video{display:block;width:100%;height:auto;object-fit:contain}
.sf-make .sf-steps-img h3{font-size:clamp(24px,2.3vw,36px);margin-top:6px}
.sf-make .sf-steps-img p:not(.sf-n){max-width:40em}
.sf-zg .sf-fig.wide .im{aspect-ratio:auto}
.sf-zg .sf-fig.wide img{width:100%;height:auto;object-fit:contain}
/* 主题入口采用大小有节奏的实拍组合，链接仍是原来的灯组专题。 */
#topic-subjects .sx-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(20px,3vw,42px)}
#topic-subjects .sx-grid>.sx-card{grid-column:span 2;min-width:0}
#topic-subjects .sx-grid>.sx-card:nth-child(-n+2){grid-column:span 3}
#topic-subjects .sx-card .ph{aspect-ratio:auto;overflow:hidden}
#topic-subjects .sx-card .ph img{display:block;width:100%;height:auto;object-fit:contain;transform:none}
#topic-subjects .sx-card:focus-visible{outline:3px solid var(--accent,#e8b654);outline-offset:4px}
@media(max-width:700px){
 .sf-make .sf-steps-img{grid-template-columns:minmax(0,1fr);gap:48px}
 .sf-make .sf-steps-img>li,.sf-make .sf-steps-img>li:nth-child(n){grid-column:auto}
 #topic-subjects .sx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
 #topic-subjects .sx-grid>.sx-card,#topic-subjects .sx-grid>.sx-card:nth-child(-n+2){grid-column:auto}
}
/* 双图组合的说明区不遮挡任一实物。 */
@media(min-width:901px){
 .sf-parts > .sf-part.pair:not(.sf-zodiac) .sf-media{grid-column:1/9}
 .sf-parts > .sf-part.pair:not(.sf-zodiac) .sf-tx{grid-column:9/13}
 .sf-parts > .sf-part.pair.rev:not(.sf-zodiac) .sf-media{grid-column:5/13}
 .sf-parts > .sf-part.pair.rev:not(.sf-zodiac) .sf-tx{grid-column:1/5}
}
