/* V3 homepage visual interactions. */
body[data-page="index"]{--bg:#080808;--home-edge:clamp(64px,10svh,128px);background:var(--bg)}
@font-face{font-family:"Gibira Display";src:url("assets/fonts/Anton-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.lab-opening-home>header{top:24px;left:3%;width:94%;height:36px;display:flex;align-items:center;justify-content:center}
.lab-opening-home>header .wordmark{position:absolute;left:50%;transform:translateX(-50%);width:112px}
.lab-opening-home>header .site-nav{display:grid;grid-template-columns:repeat(3,max-content) 1fr repeat(3,max-content);gap:32px;width:100%;margin:0;align-items:center;font-size:12px}
.lab-opening-home>header .site-nav a:nth-child(4){grid-column:5}
.lab-opening-home>header .site-nav a:after{bottom:-5px;left:0;right:auto;width:4px;height:4px}
.lab-hero.artwork-hero{display:block;position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh + 2px);padding:128px 3% 116px;background:#080808;color:#ffe5d5}
.lab-hero-ambient{position:absolute;inset:0 0 12%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 34% 60% at 58% 37%,#08080880,#080808f5 88%),url("assets/case-series-01-gibira-harness.webp") 72% 36%/auto 135% no-repeat;filter:saturate(.2)}
.lab-hero-ambient:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#08080800 45%,#080808),linear-gradient(90deg,#080808,transparent 40%,transparent 70%,#080808)}
.lab-hero-display{display:flex;width:100%;aspect-ratio:2380/876;perspective:1600px;position:relative;z-index:1}
.lab-display-card{min-width:0;height:100%;transform-style:preserve-3d;transform-origin:50% 50%;backface-visibility:hidden}
.lab-display-reveal,.lab-letter-svg{width:100%;height:100%;display:block}
.lab-letter-svg{overflow:visible}
.lab-letter-svg text{font-family:"Gibira Display",Impact,sans-serif;font-size:1000px;font-weight:400}
.lab-letter-fill{fill:#ffe5d5}
.lab-letter-art{opacity:0}
.lab-display-card.is-revealed .lab-letter-art{opacity:1}
.lab-display-card.is-revealed .lab-letter-fill{opacity:0}
.lab-letter-glow{mix-blend-mode:soft-light;pointer-events:none;opacity:.4}
.lab-hero-rail{display:grid;grid-template-columns:240px 1fr 270px;align-items:center;gap:5%;margin:46px 2% 0;position:relative;z-index:2}
.lab-hero .hero-copy{order:0;position:relative;padding:0;margin:0;max-width:none;text-align:center}
.lab-hero .hero-copy .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:14px;color:#ae9c90}
.lab-hero .hero-copy h1{font-size:clamp(28px,2.65vw,44px);letter-spacing:-.045em;line-height:1.24;margin:0 0 13px}
.lab-hero-word{display:inline-block}
.lab-hero .hero-copy p:not(.eyebrow){font-size:13px;color:#bfaca0}
.lab-hero-stage{width:100%;position:relative;perspective:1600px}
.lab-hero-plane{transform:rotate(-5deg);transform-origin:center;box-shadow:0 15px 50px #0008}
.lab-hero.artwork-hero .lab-hero-plane>.hero-image{position:static;display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;opacity:1;transform:none;translate:none;animation:none}
.lab-hero-action{text-align:right}
.lab-hero-signature{display:block;color:#fb4e2b;font:italic 52px/.9 Georgia,"Times New Roman",serif;letter-spacing:-.06em;margin-bottom:24px;white-space:nowrap}
.lab-hero-signature i{font-size:.51em;font-weight:400}
.lab-hero-action .text-link{font-size:13px;color:#ffe5d5;padding:0;gap:22px}
.lab-hero .scroll-cue{display:block;position:absolute;bottom:40px;left:5%;font-size:12px;letter-spacing:.15em;line-height:1;color:#bfaca0}
.lab-hero .scroll-cue:before{content:"向下探索";margin-right:14px;font-size:10px}
@media(min-width:1800px){.lab-hero.artwork-hero{padding-top:130px}.lab-hero-rail{grid-template-columns:280px 1fr 300px;margin-top:54px}}
.lab-belief{position:relative;isolation:isolate;overflow:hidden;padding:100px 8% 76px;background:var(--bg);color:#ffe5d5}
.lab-belief:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 18% 38%,#27120d55,transparent 65%)}
.lab-belief>h2,.lab-belief>p{position:relative;z-index:1}
.lab-belief h2{font-size:clamp(35px,5.3vw,86px);line-height:1.24;margin:38px auto 28px;letter-spacing:-.05em}
.lab-belief p:not(.eyebrow){color:#b7a79b;font-size:clamp(16px,1.05vw,20px);line-height:1.95;max-width:760px;text-wrap:pretty}
.lab-belief .eyebrow{color:#bfaca0;font-size:11px;letter-spacing:.24em}
.lab-belief .eyebrow:before{content:'✳';display:block;margin-bottom:18px;color:#fb4e2b;font-size:26px;line-height:1;font-weight:300}
.lab-belief-word:nth-of-type(2){color:#dcc4b4}
.lab-belief-word:nth-of-type(4){color:#ff6845}
.lab-quote-signature{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:14px;margin:0 auto 30px;color:#bfaca0;font-size:20px;font-weight:300;letter-spacing:.04em;line-height:1.2}
.lab-quote-signature em{font:italic 36px/1.2 Georgia,"Times New Roman",serif;letter-spacing:-.055em}
.lab-quote-bracket{color:#fb4e2b;font-size:36px;font-weight:300}
.lab-quote-details{pointer-events:none;position:relative;z-index:1;margin:50px auto 0;max-width:1060px}
.lab-quote-stamp{position:absolute;bottom:210px;left:-2vw;text-align:left;color:#bfaca0;font-size:12px;line-height:1.6;letter-spacing:.07em}
.lab-quote-stamp>span{display:block;font-size:8px;letter-spacing:.1em;color:#8d7e75}
.lab-quote-mark{position:absolute;width:56px;height:45px;right:0;bottom:138px;color:#8b7669}
.lab-quote-mark path{stroke-dasharray:1;stroke-dashoffset:0}
.lab-quote-rule{display:flex;align-items:center;gap:24px;color:#fb4e2b}
.lab-quote-star{width:26px;height:26px;flex:none}
.lab-quote-rule>span{height:1px;flex:1;background:#bfaca038;transform-origin:left center}
.lab-quote-rule>span:last-of-type{transform-origin:right center}
.lab-quote-rule small{font-size:10px;letter-spacing:.22em;color:#a99689;white-space:nowrap}
.lab-quote-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0;transition:opacity 400ms}
.lab-quote-live .lab-quote-canvas{opacity:1}
.lab-quote-char{display:inline-block;transform-origin:0 50%}
.lab-belief-word{position:relative;display:inline-block;white-space:nowrap;margin:0 .13em .12em}
.lab-belief-base{opacity:.2}
.lab-belief-lit{position:absolute;inset:0;clip-path:inset(0 var(--lab-word-hide,0%) 0 0)}
/* Foundation: one editorial spread, sharing the existing interactive light field. */
.lab-silk{position:relative;isolation:isolate;overflow:hidden;background:var(--bg)}
.lab-silk:before{content:'';position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse 48% 60% at 75% 65%,#46231455,transparent 76%)}
.lab-silk-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:0;transition:opacity 450ms}
.lab-silk.lab-silk-live .lab-silk-canvas{opacity:1}
.lab-silk:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#08080840,transparent 50%,#08080835),linear-gradient(0deg,#080808 0%,transparent 28%,transparent 80%,#080808)}
.home-foundation.lab-foundation{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,.8fr);gap:6vw;padding:88px 7.5% 110px;text-align:left;color:#ffe5d5;scroll-margin-top:24px}
.lab-foundation>div{position:relative;z-index:1}
.home-foundation.lab-foundation .lab-foundation-intro{margin:0}
.lab-foundation .eyebrow{display:flex;align-items:center;gap:24px;margin-bottom:40px;font-size:10px;letter-spacing:.18em;color:#aa9789}
.lab-foundation .eyebrow:before{content:'00_4';font:300 23px/1 'Arial Narrow',Arial,sans-serif;letter-spacing:.01em;transform:scaleX(.7);transform-origin:left center;margin-right:-10px}
.lab-foundation h2{font-size:clamp(44px,5.2vw,96px);font-weight:600;line-height:1.2;letter-spacing:-.045em;color:#ffe5d5;text-shadow:none}
.lab-foundation-line{display:block;white-space:nowrap}
.lab-foundation-line+.lab-foundation-line{margin-top:.12em}
.lab-foundation-line em{font-style:normal;color:#fb6542}
.home-foundation .lab-foundation-link{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:18px;row-gap:9px;width:max-content;max-width:100%;margin-top:54px;padding:0;align-items:end;opacity:1;transition:color 250ms}
.lab-foundation-link:after{display:none}
.lab-foundation-link .lab-foundation-brand{grid-column:1/-1;font-size:10px;letter-spacing:.22em;color:#af9b8c;line-height:1.4}
.lab-foundation-name{font:400 clamp(72px,8.3vw,148px)/1 'Gibira Display',Impact,sans-serif;text-transform:uppercase;letter-spacing:-.025em;color:#ffe5d5}
.lab-foundation-arrow{font:300 clamp(44px,4.6vw,84px)/1 Arial,sans-serif;color:#fb6542;align-self:center;margin-top:6px;transition:transform 250ms}
.lab-foundation-link:is(:hover,:focus-visible) .lab-foundation-name{color:#fb6542}
.lab-foundation-link:is(:hover,:focus-visible) .lab-foundation-arrow{transform:translate(5px,-5px)}
.home-foundation.lab-foundation .lab-foundation-copy{max-width:410px;width:100%;margin:132px 0 0;align-self:start}
.home-foundation.lab-foundation .lab-foundation-copy .lead{font-size:clamp(21px,1.7vw,30px);line-height:1.45;color:#e8d4c4;letter-spacing:-.035em;margin:0 0 26px}
.lab-foundation-copy p{font-size:16px;line-height:1.95;color:#b8a496;text-wrap:pretty}
.home-foundation.lab-foundation .lab-foundation-copy p+p{margin-top:22px}
.lab-foundation-copy p:last-child{color:#a99a8e;font-size:15px}
.lab-foundation .lab-foundation-edition{position:absolute;right:7.5%;top:86px;margin:0;max-width:none;display:flex;gap:30px;align-items:center;color:#a99889;font:400 13px/1 'Gibira Display',Impact,sans-serif;letter-spacing:.03em}
.lab-foundation-edition i{font:300 22px/1 Arial,sans-serif;color:#fb6542;font-style:normal;padding:0 4px}
.lab-foundation-edition svg{width:24px;height:24px;fill:#fb6542;animation:foundation-star 18s linear infinite;animation-play-state:paused}
.lab-silk-live .lab-foundation-edition svg{animation-play-state:running}
@keyframes foundation-star{to{transform:rotate(360deg)}}
@media(min-width:1800px){.home-foundation.lab-foundation{padding-block:108px 140px}.lab-foundation .eyebrow{margin-bottom:54px}.home-foundation.lab-foundation .lab-foundation-copy{margin-top:168px;max-width:470px}.lab-foundation-copy p{font-size:18px}.lab-foundation-copy p:last-child{font-size:16px}.lab-foundation .lab-foundation-edition{top:108px}}
@media(max-width:1100px) and (min-width:901px){.home-foundation.lab-foundation{gap:4vw;padding-inline:6%}.lab-foundation h2{font-size:4.8vw}.lab-foundation-copy p{font-size:14px}.lab-foundation-copy p:last-child{font-size:13px}.home-foundation.lab-foundation .lab-foundation-copy{margin-top:118px}.lab-foundation .lab-foundation-edition{right:6%}}
@media(max-width:900px){.home-foundation.lab-foundation{grid-template-columns:1fr;gap:32px;padding:68px 7% 96px}.lab-foundation .eyebrow{font-size:9px;gap:18px;margin-bottom:32px}.lab-foundation .eyebrow:before{font-size:20px}.lab-foundation h2{font-size:clamp(30px,7.4vw,64px)}.home-foundation .lab-foundation-link{margin-top:32px}.lab-foundation-name{font-size:clamp(64px,15.8vw,112px)}.lab-foundation-arrow{font-size:44px}.home-foundation.lab-foundation .lab-foundation-copy{margin:0;max-width:580px}.home-foundation.lab-foundation .lab-foundation-copy .lead{font-size:21px;margin-bottom:18px}.home-foundation.lab-foundation .lab-foundation-copy p{font-size:14px;line-height:1.9}.home-foundation.lab-foundation .lab-foundation-copy p:last-child{font-size:13px}.home-foundation.lab-foundation .lab-foundation-copy p+p{margin-top:18px}.lab-foundation .lab-foundation-edition{top:68px;right:7%;gap:0}.lab-foundation-edition>span{display:none}.lab-foundation-edition svg{width:18px;height:18px}}
/* Fade only background layers; text and controls stay fully opaque. */
.lab-quote-canvas,.lab-silk-canvas,.lab-belief:before,.lab-silk:before{mask-image:linear-gradient(to bottom,transparent,#000 var(--home-edge),#000 calc(100% - var(--home-edge)),transparent)}
@media(max-width:900px),(hover:none),(pointer:coarse){
 .lab-hero.artwork-hero{padding:126px 5% 115px}
 .lab-opening-home>header{top:24px;height:auto;display:block;left:5%;width:90%}
 .lab-opening-home>header .wordmark{position:static;display:block;margin:auto;transform:none;width:112px}
 .lab-opening-home>header .site-nav{display:flex;justify-content:space-between;gap:12px;width:100%;font-size:10px;margin:24px auto 0}
 .lab-hero-display{perspective:none}
 .lab-display-card,.lab-hero-plane{transform:none!important}
 .lab-hero-rail{grid-template-columns:1fr 1fr;gap:32px 22px;margin:38px 0 0}
 .lab-hero .hero-copy{grid-column:1/-1;grid-row:1}
 .lab-hero .hero-copy h1{font-size:clamp(29px,7vw,44px);margin-bottom:12px}
 .lab-hero .hero-copy .eyebrow{font-size:8px;letter-spacing:.07em}
 .lab-hero .hero-copy p:not(.eyebrow){font-size:12px}
 .lab-hero-stage{max-width:220px}
 .lab-hero-signature{font-size:clamp(20px,5vw,44px);margin-bottom:18px}
 .lab-hero-action .text-link{font-size:11px;gap:9px}
 .lab-hero .scroll-cue{bottom:86px}
 .lab-silk-canvas,.lab-quote-canvas{display:none}
 .lab-belief{padding:80px 6% 60px}
 .lab-belief-word{margin-inline:.07em}
 .lab-belief h2{font-size:clamp(28px,7.6vw,60px);margin:30px auto 26px}
 .lab-belief p:not(.eyebrow){font-size:14px;max-width:600px}
 .lab-quote-signature{gap:clamp(7px,2.56vw,10px);font-size:clamp(14px,4vw,16px);margin-bottom:26px}
 .lab-quote-signature em{font-size:clamp(25px,7.2vw,28px)}
 .lab-quote-bracket{font-size:28px}
 .lab-quote-details{margin-top:50px}
 .lab-quote-stamp{display:none}
 .lab-quote-mark{width:34px;height:28px;right:0;bottom:32px;opacity:.65}
 .lab-quote-star{width:20px;height:20px}
 .lab-quote-rule{gap:16px}
 .lab-quote-rule small{font-size:9px;letter-spacing:.12em}
 .lab-silk:after{background:linear-gradient(180deg,#08080822,#08080899)}
}
@media(max-width:600px){
 .lab-quote-signature{display:grid;grid-template-columns:repeat(3,max-content);gap:10px 8px;text-align:center}
 .lab-quote-signature em{grid-column:1/-1;white-space:nowrap}
 .lab-quote-signature span{white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){
 .lab-hero-plane{transform:none!important}
 .lab-silk-canvas,.lab-quote-canvas{display:none}
 .lab-display-card{transform:none!important}
 .lab-belief-lit{clip-path:none!important}
 .lab-belief-base{opacity:1}
}
