/* 龙灯产品页：实物全景是主角，层次来自灯组与真实细节。 */
.dl-hero,.dl-stage,.dl-scenes,.dl-service,.dl-related,.dl-faq{position:relative;isolation:isolate}
.dl-hero{background:var(--night);overflow:hidden}
.dl-hero-media{margin:0;position:relative}
.dl-hero-media img{display:block;width:100%;height:auto;max-width:none}
body.inner-page main .dl-hero-media figcaption{position:absolute;right:var(--gut);bottom:14px;padding:4px 8px;background:rgba(4,3,3,.9);color:var(--night-text);font-size:15px;line-height:1.5}
.dl-hero-copy{max-width:1480px;margin:auto;padding:clamp(32px,5vw,74px) var(--gut) clamp(16px,3vw,36px)}
.dl-hero-copy .crumb{padding:0!important;margin:0 0 clamp(22px,3vw,45px)}
.dl-hero-copy h1{font-size:clamp(44px,7vw,104px);line-height:1.12;margin:0;max-width:12em}
.dl-hero-copy p{max-width:36em;font-size:clamp(17px,1.4vw,20px);line-height:1.8;margin:20px 0 24px}
.dl-hero-copy .btns{display:flex;flex-wrap:wrap;gap:12px}
.dl-hero-copy .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
.dl-stage,.dl-scenes,.dl-service,.dl-related,.dl-faq{padding:clamp(72px,9vw,140px) var(--gut)}
.dl-stage{background:var(--paper2)}
.dl-stage-heading,.dl-scenes>header,.dl-service>header,.dl-related>header,.dl-faq>header{max-width:1480px;margin:0 auto clamp(28px,4vw,60px)}
.dl-stage-heading p,.dl-scenes>header p,.dl-service>header p{max-width:42em;font-size:18px;line-height:1.8}
body.w-lantern main :is(.dl-stage,.dl-scenes,.dl-service,.dl-related,.dl-faq) h2{font-size:clamp(32px,4.3vw,64px)!important;line-height:1.18;margin:0 0 20px}
.dl-tabs{max-width:1480px;margin:0 auto 18px;display:flex;gap:8px;flex-wrap:wrap}
.dl-tabs[hidden],.dl-panel[hidden]{display:none!important}
.dl-tab{font:inherit;min-height:64px;padding:6px 18px 6px 6px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:14px;text-align:left}
.dl-tab img{display:block;width:82px;height:46px;object-fit:cover}
.dl-tab[aria-selected=true]{background:var(--gold);border-color:var(--gold);color:#120b03}
.dl-tab:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.dl-panels{max-width:1480px;margin:auto}
.dl-panel{margin:0 0 35px}
.dl-panel figure{margin:0}
.dl-panel img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;background:var(--night)}
.dl-panel figcaption{padding:14px 0;color:var(--ink2);line-height:1.6}
.dl-panel-copy{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:24px;padding:24px 0 4px}
.dl-panel-copy h3{font-family:var(--head);font-size:clamp(24px,2.5vw,38px);font-weight:500;line-height:1.3;margin:0}
.dl-panel-copy p{max-width:35em;margin:0;line-height:1.8;color:var(--ink2)}
.dl-ready .dl-panel{margin:0}
.dl-scenes{background:var(--paper)}
.dl-service{background:var(--paper2)}
.dl-related{background:var(--paper)}
.dl-faq{background:var(--paper2)}
.dl-section-intro,.dl-service-intro{max-width:1480px;margin:0 auto clamp(40px,5vw,75px)}
.dl-section-intro p,.dl-service-intro p{font-size:18px;line-height:1.8;max-width:40em}
.dl-scene-list{max-width:1480px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,5vw,70px)}
.dl-scene{padding-top:25px;border-top:1px solid var(--line)}
.dl-scene h3,.dl-steps h3{font:500 clamp(23px,2.2vw,30px)/1.35 var(--head);margin:0 0 12px}
.dl-scene p,.dl-steps p{line-height:1.8;margin:0;color:var(--ink2)}
.dl-service-photos{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(12px,2vw,30px);max-width:1480px;margin:auto;align-items:center}
.dl-service-photos figure{margin:0}
.dl-service-photos img{width:100%;height:auto;display:block}
.dl-service-photos figcaption{padding:12px 0;color:var(--ink2);font-size:14px}
.dl-steps{max-width:1480px;margin:clamp(48px,6vw,90px) auto 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,3vw,44px)}
.dl-steps li{padding-top:20px;border-top:1px solid var(--line)}
@media (min-width:901px){
 .dl-hero{display:grid}
 .dl-hero-media,.dl-hero-copy{grid-area:1 / 1}
 .dl-hero-media{padding-top:clamp(90px,9vw,130px)}
 .dl-hero-copy{z-index:2;align-self:start;justify-self:start;width:min(46%,650px);margin:0;padding-top:24px;text-shadow:0 2px 14px #000}
 .dl-hero-copy .crumb{margin-bottom:20px}
 .dl-hero-copy h1{font-size:clamp(42px,4vw,64px)}
 .dl-hero-copy p{font-size:clamp(16px,1.2vw,19px);margin:12px 0 16px}
 .dl-hero-media:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,rgba(4,3,3,.82),transparent 60%)}
 .dl-hero-media figcaption{z-index:1}
}
@media (prefers-reduced-motion:no-preference){
 .dl-hero-media img{animation:dl-light 1.3s ease-out both}
 @keyframes dl-light{from{filter:brightness(.78)}to{filter:brightness(1)}}
 .dl-tab{transition:background-color .2s,border-color .2s,color .2s}
}
@media (max-width:767px){
 .dl-hero-copy h1{font-size:clamp(38px,10vw,54px)}
 .dl-hero-copy p{font-size:17px}
 body.inner-page main .dl-hero-media figcaption{font-size:15px;bottom:5px}
 .dl-stage,.dl-scenes,.dl-service,.dl-related,.dl-faq{padding-block:64px}
 .dl-stage-heading p,.dl-scenes>header p,.dl-service>header p{font-size:17px}
 .dl-section-intro p,.dl-service-intro p{font-size:17px}
 .dl-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .dl-tab{padding:5px;min-width:0;display:flex;flex-direction:column;gap:6px;align-items:stretch;text-align:center;font-size:14px}
 .dl-tab img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
 .dl-panel img{max-height:none}
 .dl-panel-copy{grid-template-columns:1fr;gap:8px}
 .dl-scene-list{grid-template-columns:1fr;gap:28px}
 .dl-service-photos{grid-template-columns:1fr;gap:20px}
 .dl-steps{grid-template-columns:1fr 1fr;gap:28px 18px}
}
@media (prefers-reduced-motion:reduce){.dl-hero-media img{animation:none;filter:none}.dl-tab{transition:none}}
html[data-tier=low] .dl-hero-media img{animation:none;filter:none}
