.life-canopy{position:relative;min-height:82vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;text-align:center;padding:6rem 2rem 8rem}
.life-canopy:before,.life-canopy:after{content:"";position:absolute;z-index:-1;border:1px solid #7dbbe844;border-radius:50%;filter:drop-shadow(0 0 20px #72baf033)}
.life-canopy:before{width:70vw;height:70vw;max-width:940px;max-height:940px;top:-45vw;background:repeating-radial-gradient(circle,#72baf016 0 1px,transparent 1px 52px)}
.life-canopy:after{width:120%;height:55%;bottom:0;border-color:#bd8d4555;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 50% 100%,#9b743a22,transparent 62%)}
.canopy-network{position:absolute;inset:10% 5% 18%;z-index:-1;opacity:.5;background:linear-gradient(28deg,transparent 49.8%,#7fc6f055 50%,transparent 50.2%),linear-gradient(-32deg,transparent 49.8%,#7fc6f044 50%,transparent 50.2%);background-size:140px 110px;mask-image:radial-gradient(ellipse,#000 20%,transparent 74%)}
.life-canopy h1{max-width:1100px;margin:.4rem 0;font:600 clamp(4rem,8vw,8rem)/1.02 Georgia,"Songti SC",serif;letter-spacing:.06em}
.canopy-lede{max-width:760px;color:var(--muted);font-size:1.05rem}
.canopy-fruits{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin:2rem 0}
.canopy-fruits span{padding:.55rem 1rem;border:1px solid #73bce177;border-radius:999px;background:#101b22cc;color:#cdeeff;box-shadow:0 0 22px #53bfff20}
.trace-down{display:flex;flex-direction:column;gap:.25rem;margin-top:2rem;color:var(--gold);text-decoration:none;font-size:.82rem;letter-spacing:.12em}
.trace-down span{font-size:2rem;animation:trace-pulse 1.8s ease-in-out infinite}
@keyframes trace-pulse{50%{transform:translateY(.5rem);opacity:.55}}
.cultural-tree{position:relative;padding-top:3rem}
.tree-intro{max-width:720px;margin:0 auto 4rem;text-align:center}
.tree-intro h2,.root-system h2{margin:.3rem 0;font:600 clamp(2rem,4vw,3.6rem) Georgia,"Songti SC",serif}
.tree-intro>p:last-child,.root-system>p{color:var(--muted)}
.tree-trunk{position:relative;display:grid;gap:2.2rem;padding:1rem 0 7rem}
.tree-trunk:before{content:"";position:absolute;left:50%;top:-1rem;bottom:0;width:clamp(18px,2vw,32px);transform:translateX(-50%);background:linear-gradient(90deg,#4b3219,#b18448 42%,#52371c);clip-path:polygon(30% 0,70% 0,100% 100%,0 100%);box-shadow:0 0 35px #bd8d4533}
.tree-era{position:relative;width:calc(50% - 2.7rem)}
.tree-era:nth-child(even){margin-left:calc(50% + 2.7rem)}
.tree-era:after{content:"";position:absolute;top:2.1rem;width:3rem;height:2px;background:linear-gradient(90deg,var(--line),#d4ac6a)}
.tree-era:nth-child(odd):after{right:-3rem}.tree-era:nth-child(even):after{left:-3rem}
.era-branch{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;min-height:118px;padding:1.25rem;border:1px solid #98713e88;background:linear-gradient(135deg,#1b160fdd,#100d09f2);text-decoration:none;box-shadow:0 18px 55px #0008;transition:.2s ease}
.era-branch:hover{border-color:var(--gold);transform:translateY(-2px)}
.era-node{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font:700 1.2rem Georgia,serif;box-shadow:0 0 0 6px #c89a4b0b}
.era-copy{display:grid}.era-copy small{color:var(--gold);font-weight:800}.era-copy strong{font:700 1.45rem Georgia,"Songti SC",serif}.era-copy>span{color:var(--muted);font-size:.8rem}
.era-count{white-space:nowrap;color:#c8b596;font-size:.72rem}
.story-blossoms{display:flex;flex-wrap:wrap;gap:.55rem;padding:1rem}.story-blossoms a{padding:.35rem .65rem;border:1px solid #84373277;border-radius:99px;background:#38171399;color:#efd9bd;text-decoration:none;font-size:.75rem}.story-blossoms span{margin-right:.35rem;color:#df8e87}
.ground-line{position:relative;margin:0 calc(50% - 50vw);height:90px;border-top:3px double #b58a4b;background:linear-gradient(#21170e,#100c08)}
.ground-line:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(8deg,transparent 0 20px,#b48a4011 21px 22px)}
.ground-line span{position:absolute;left:50%;top:0;transform:translate(-50%,-52%);padding:.6rem 1.2rem;border:1px solid var(--line);background:#171009;color:var(--gold);font:700 1rem Georgia,"Songti SC",serif;letter-spacing:.12em}
.root-system{position:relative;margin:0 calc(50% - 50vw);padding:5rem max(4vw,calc((100vw - 1320px)/2)) 7rem;text-align:center;background:radial-gradient(ellipse at 50% 0,#69451938,transparent 62%),repeating-linear-gradient(82deg,transparent 0 48px,#b4843614 49px 50px),#090705}
.root-system:before{content:"";position:absolute;left:50%;top:0;width:30px;height:100%;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#bf8d4244,transparent);clip-path:polygon(35% 0,65% 0,100% 100%,0 100%)}
.root-network{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:3.5rem 2rem;margin-top:4rem}
.root-network:before{content:"";position:absolute;left:10%;right:10%;top:50%;height:1px;background:#a77a3d66}
.root-network article{position:relative;padding:1.6rem 1rem;border:1px solid #8d6a3566;border-radius:50% 50% 42% 42%;background:#130e09ee;box-shadow:0 0 40px #a8782920}
.root-network article:before{content:"";position:absolute;left:50%;top:-2rem;width:1px;height:2rem;background:var(--line)}
.root-network article>span{display:grid;place-items:center;width:46px;height:46px;margin:-3rem auto 1rem;border:1px solid var(--gold);border-radius:50%;background:#171009;color:var(--gold)}
.root-network h3{margin:.2rem;color:#dfbd7b;font:700 1.25rem Georgia,"Songti SC",serif}.root-network p{margin:.35rem;color:#a9987e;font-size:.8rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.trace-down span{animation:none}}
@media(max-width:760px){
  .life-canopy{min-height:75vh;padding:4rem .25rem 6rem}.life-canopy h1{font-size:clamp(3.2rem,16vw,5rem)}
  .tree-trunk:before{left:10px;width:14px;transform:none}.tree-era,.tree-era:nth-child(even){width:calc(100% - 2.2rem);margin-left:2.2rem}
  .tree-era:nth-child(odd):after,.tree-era:nth-child(even):after{left:-2.2rem;right:auto;width:2.2rem}
  .era-branch{grid-template-columns:auto 1fr}.era-count{grid-column:2}.root-network{grid-template-columns:1fr;gap:3.5rem}
  .root-network:before{left:50%;right:auto;top:0;bottom:0;width:1px;height:auto}
}
