/* Isolated r7 profession scenes. Geometry is visible without JavaScript. */
.trade-page{--trade-accent:#c5ff61}
.trade-page .wow-keyword{max-width:20ch}.trade-page .wow-h1-type{font-size:.62em;min-height:1.3em}
.trade-page .hero-art .concept-browser{border-color:color-mix(in srgb,var(--trade-accent) 28%,transparent)}
.trade-page .mini-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0}
.trade-page .mini-cards>div{min-width:0;background:#ffffff0a;border:1px solid #ffffff14;padding:14px 8px;border-radius:12px;display:flex;flex-direction:column;gap:10px;font-size:.65rem}.trade-page .mini-cards i{font-style:normal;color:var(--trade-accent);font-size:1.7rem}
.trade-page .mini-topic .concept-title{font-size:clamp(1.5rem,3.6vw,2.9rem)}
.trade-visual{margin:26px 0 0;padding:0 12px 18px;display:flex;align-items:center;gap:16px;color:var(--trade-accent)}.trade-visual svg{width:100%;height:95px;overflow:visible}.trade-visual path{stroke-dasharray:1;stroke-dashoffset:0;animation:m-draw 6s ease-in-out infinite}
.trade-page .layout{display:block;max-width:1120px}.trade-page .content{max-width:none;min-width:0}
.trade-opening{font-size:clamp(1.2rem,2.6vw,1.65rem);line-height:1.65;max-width:56ch;margin:26px 0 54px;color:#dce7d8}
.trade-page .article-section{position:relative;margin:36px 0;padding:30px 0;border-top:1px solid #ffffff18}.trade-page .article-section h2{max-width:24ch}.trade-page .article-section p{max-width:75ch}
.trade-page .trade-panel{background:linear-gradient(130deg,#ffffff05,transparent);border:1px solid #ffffff18;border-radius:24px;padding:32px}.trade-page .trade-panel h2{color:var(--trade-accent)}
.trade-page .trade-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px}.trade-page .trade-split h2{margin-top:0}.trade-page .trade-split p:first-child{margin-top:0}
.trade-page .trade-quote{padding-left:28px;border-left:3px solid var(--trade-accent);border-top:0}.trade-page .trade-quote h2{font-size:clamp(1.8rem,4vw,3rem)}
.prof-scene .k-stage{aspect-ratio:16/11}.prof-scene .k-stage::after{display:none}.prof-scene .k-stage>svg{object-fit:contain}.prof-scene .k-stage *{animation-play-state:paused!important}
.prof-scene.is-live .k-stage *{animation-play-state:running!important}
.prof-scene .k-stage g{transform-box:fill-box;transform-origin:center}.prof-scene .k-chip{font-size:.61rem}
.prof-scene .m-plan{animation:m-draw 6s ease-in-out infinite;stroke-dasharray:1}.m-plan path{stroke-dasharray:1}
.m-build{animation:m-build 6s ease-in-out infinite}.m-pencil{animation:m-pencil 6s ease-in-out infinite}
.m-current{animation:m-current 2.2s linear infinite}.m-switch{animation:m-switch 4s ease-in-out infinite}.m-bulb,.m-ray{animation:m-bulb 4s ease-in-out infinite}
.m-plane{animation:m-plane 4s ease-in-out infinite}.m-shaving{animation:m-shaving 4s ease-in-out infinite}
.m-tile{animation:m-tile 5s ease-in-out infinite;animation-delay:var(--delay,0s)}.m-drop{animation:m-drop 2s ease-in infinite}
.m-paint{transform-origin:center top!important;animation:m-paint 5s ease-in-out infinite;animation-delay:var(--delay,0s)}.m-roller{animation:m-roller 5s ease-in-out infinite}.m-tape{animation:m-tape 5s ease-in-out infinite}
.m-plant{transform-origin:center bottom!important;animation:m-plant 6s ease-in-out infinite;animation-delay:var(--delay,0s)}.m-can{animation:m-can 4s ease-in-out infinite}.m-water{animation:m-water 2s linear infinite;animation-delay:var(--delay,0s)}
.prof-scene .m-scissor-up,.prof-scene .m-scissor-down{transform-box:view-box;transform-origin:390px 340px}.m-scissor-up{animation:m-scissor-up 2.5s ease-in-out infinite}.m-scissor-down{animation:m-scissor-down 2.5s ease-in-out infinite}.m-lock{animation:m-lock 5s ease-in-out infinite}.m-comb{animation:m-comb 5s ease-in-out infinite}
.m-bread{transform-origin:center bottom!important;animation:m-bread 6s ease-in-out infinite}.m-steam{animation:m-steam 5s ease-out infinite;animation-delay:var(--delay,0s)}.m-oven-door{transform-origin:center top!important;animation:m-door 6s ease-in-out infinite}
.m-stem{animation:m-stem 6s ease-in-out infinite;animation-delay:var(--delay,0s)}.m-flower{animation:m-flower 6s ease-in-out infinite;animation-delay:var(--delay,0s)}.m-ribbon{animation:m-ribbon 6s ease-in-out infinite}
.prof-scene .m-blade{transform-box:view-box;transform-origin:390px 350px}.m-blade{animation:m-blade 7s ease-in-out infinite}.m-flash{animation:m-flash 7s ease-in-out infinite;opacity:0}.m-photo{animation:m-photo 7s ease-in-out infinite}
.m-foot{animation:m-foot 4s ease-in-out infinite}.m-band{transform-origin:left bottom!important;animation:m-band 4s ease-in-out infinite}
.m-mirror{animation:m-mirror 5s ease-in-out infinite}.m-brush{animation:m-brush 5s ease-in-out infinite}
.m-web-left{animation:m-web-left 6s ease-in-out infinite}.m-web-card{animation:m-web-card 6s ease-in-out infinite;animation-delay:var(--delay,0s)}.m-cursor{animation:m-cursor 6s ease-in-out infinite}.m-click{animation:m-click 6s ease-in-out infinite}.m-phone{animation:m-phone 6s ease-in-out infinite}
@keyframes m-draw{0%{stroke-dashoffset:1}55%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
@keyframes m-build{0%,12%{transform:translateY(95px) scaleY(.15);opacity:.15}48%,85%{transform:none;opacity:1}100%{transform:translateY(95px) scaleY(.15);opacity:.15}}
@keyframes m-pencil{0%,100%{transform:translate(-30px,20px)}55%{transform:translate(130px,90px)}}
@keyframes m-current{to{stroke-dashoffset:-214}}
@keyframes m-switch{0%,25%,100%{transform:translateY(-7px) rotate(-10deg)}45%,85%{transform:translateY(7px) rotate(10deg)}}
@keyframes m-bulb{0%,25%,100%{opacity:.25;transform:scale(.94)}45%,85%{opacity:1;transform:scale(1.04)}}
@keyframes m-plane{0%,100%{transform:translate(-85px,0)}60%,80%{transform:translate(155px,22px)}}
@keyframes m-shaving{0%,12%{opacity:0;transform:translateX(-50px) scale(.3)}40%{opacity:1;transform:none}85%,100%{opacity:0;transform:translate(120px,130px) rotate(120deg)}}
@keyframes m-tile{0%,8%{transform:translateY(-140px) rotate(-20deg);opacity:0}25%,80%{transform:none;opacity:1}100%{transform:translateY(35px);opacity:0}}
@keyframes m-drop{0%{transform:translateY(-15px);opacity:0}20%{opacity:1}100%{transform:translateY(60px);opacity:0}}
@keyframes m-paint{0%,10%{transform:scaleY(.02)}55%,90%{transform:scaleY(1)}100%{transform:scaleY(.02)}}
@keyframes m-roller{0%,100%{transform:translate(-135px,170px)}30%{transform:translate(-45px,-5px)}60%{transform:translate(60px,170px)}85%{transform:translate(90px,-5px)}}
@keyframes m-tape{0%,55%,100%{transform:none}80%{transform:translate(45px,25px) rotate(7deg)}}
@keyframes m-plant{0%,100%{transform:scale(.3);opacity:.3}45%,85%{transform:scale(1);opacity:1}}
@keyframes m-can{0%,100%{transform:rotate(5deg)}40%,75%{transform:rotate(-25deg)}}
@keyframes m-water{0%{opacity:0;transform:translate(0,0)}20%{opacity:1}100%{opacity:0;transform:translate(-40px,85px)}}
@keyframes m-scissor-up{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(10deg)}}
@keyframes m-scissor-down{0%,100%{transform:rotate(18deg)}50%{transform:rotate(-10deg)}}
@keyframes m-lock{0%,25%{transform:none;opacity:1}75%,100%{transform:translate(35px,180px) rotate(35deg);opacity:0}}
@keyframes m-comb{0%,100%{transform:translateX(-40px)}60%{transform:translateX(170px)}}
@keyframes m-bread{0%,100%{transform:scale(1,.55)}65%,85%{transform:scale(1.08,1.18)}}
@keyframes m-steam{0%{opacity:0;transform:translateY(45px) scale(.6)}25%{opacity:.6}100%{opacity:0;transform:translateY(-70px) scale(1.2)}}
@keyframes m-door{0%,60%,100%{transform:scaleY(1)}80%{transform:translateY(30px) scaleY(.6)}}
@keyframes m-stem{0%,100%{transform:translateY(90px) rotate(-15deg);opacity:.15}35%,85%{transform:none;opacity:1}}
@keyframes m-flower{0%,100%{transform:scale(.45)}60%,85%{transform:scale(1)}}
@keyframes m-ribbon{0%,35%,100%{transform:scaleX(.3);opacity:.1}60%,85%{transform:scaleX(1);opacity:1}}
@keyframes m-blade{0%,20%,100%{transform:rotate(0)}40%,55%{transform:rotate(55deg)}}
@keyframes m-flash{0%,58%,65%,100%{opacity:0}61%{opacity:.7}}
@keyframes m-photo{0%,50%,100%{transform:translate(-70px,-20px) scale(.5);opacity:0}75%,90%{transform:translate(20px,20px) rotate(7deg);opacity:1}}
@keyframes m-foot{0%,100%{transform:translate(0,-35px) rotate(-9deg)}50%{transform:translate(-45px,40px) rotate(9deg)}}
@keyframes m-band{0%,100%{transform:scale(1,.8)}50%{transform:scale(.8,1.3)}}
@keyframes m-mirror{0%,100%{transform:rotate(-22deg) translateY(-15px)}50%{transform:rotate(22deg) translateY(15px)}}
@keyframes m-brush{0%,100%{transform:translate(-40px,20px) rotate(-7deg)}50%{transform:translate(75px,-35px) rotate(8deg)}}
@keyframes m-web-left{0%,100%{transform:translate(-65px,30px);opacity:.3}40%,85%{transform:none;opacity:1}}
@keyframes m-web-card{0%,100%{transform:translate(95px,0);opacity:0}40%,85%{transform:none;opacity:1}}
@keyframes m-cursor{0%,100%{transform:translate(60px,70px)}65%,85%{transform:translate(-55px,-65px)}}
@keyframes m-click{0%,65%,100%{transform:translate(-55px,-65px) scale(.2);opacity:0}75%{transform:translate(-55px,-65px) scale(1.5);opacity:.7}85%{opacity:0}}
@keyframes m-phone{0%,100%{transform:translateY(50px) rotate(-10deg)}55%,85%{transform:translateY(-15px) rotate(5deg)}}
.trade-dashboard{margin:50px 0;padding:30px;background:linear-gradient(150deg,#182729,#0c1114);border:1px solid #ffffff20;border-radius:24px;overflow:hidden}.trade-dashboard h2{font-size:clamp(1.5rem,3vw,2.6rem);max-width:25ch}.trade-dashboard .dash-disclaimer{position:static;margin:10px 0 28px;color:#a9b7ad;font-size:.78rem}.trade-dash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trade-dash-cell{min-width:0;padding:18px;background:#ffffff05;border-radius:15px;border:1px solid #ffffff10}.trade-dash-cell p{font-size:.85rem;line-height:1.5;margin:12px 0 0}.trade-dash-cell svg{width:100%;height:68px;color:var(--trade-accent)}.trade-dash-cell path{stroke-dasharray:1;animation:m-draw 6s ease-in-out infinite;animation-play-state:paused}.trade-dashboard.is-live .trade-dash-cell path{animation-play-state:running}.trade-route-dot{offset-path:path('M20 52 Q55 0 95 35 T170 20');animation:m-route 5s ease-in-out infinite;animation-play-state:paused}.trade-dashboard.is-live .trade-route-dot{animation-play-state:running}@keyframes m-route{0%,100%{offset-distance:0%}80%{offset-distance:100%}}
.trade-page details{padding:18px 0;border-bottom:1px solid #ffffff16}.trade-page summary{cursor:pointer;font-weight:700;line-height:1.5}.trade-page .related ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.trade-page .related a{line-height:1.55}
@media(max-width:760px){.prof-scene .k-stage{aspect-ratio:1/1}.prof-scene .k-chip{max-width:calc(100% - 24px);letter-spacing:.04em}.trade-page .trade-split{display:block}.trade-page .trade-panel{padding:24px 20px}.trade-page .article-section{margin:20px 0}.trade-dashboard{padding:24px 18px}.trade-dash-grid{grid-template-columns:1fr}.trade-dash-cell{display:grid;grid-template-columns:90px minmax(0,1fr);gap:15px;align-items:center}.trade-dash-cell p{margin:0}.trade-page .related ul{grid-template-columns:1fr}.trade-page .mini-cards>div{padding:10px 5px;font-size:.6rem}.trade-page .wow-keyword{font-size:clamp(2.2rem,9.3vw,4rem);overflow-wrap:anywhere}.trade-page .lead{font-size:1.03rem}.trade-page .trade-opening{margin-bottom:28px}.trade-page .hero-art{min-width:0}.trade-page .concept-browser{max-width:100%}.trade-page .mini-topic .concept-title{font-size:1.75rem}}
@media(prefers-reduced-motion:reduce){.prof-scene .k-stage *,.trade-page .trade-visual *,.trade-dashboard *{animation:none!important;transition:none!important;transform:none!important;opacity:1}.prof-scene .m-flash{opacity:0!important}.trade-page [data-reveal]{opacity:1;transform:none}.prof-scene .k-chip i{animation:none}.trade-dashboard .trade-route-dot{offset-distance:100%}}

/* Individual profession drawings inside each labelled tablet mini-site. */
.trade-page .concept-content{background:linear-gradient(145deg,#172a2b,#0d171a);color:#ecf4e8}.trade-page .mini-cta{border:1px solid #ffffff25}.trade-mini-scene{height:115px;margin:4px 0 10px;overflow:hidden;border-radius:12px;border:1px solid #ffffff10}.trade-mini-scene svg{display:block;width:100%;height:100%;object-fit:cover}.trade-mini-scene svg text{display:none}.trade-mini-scene *{animation:none!important}.trade-mini-scene .m-flash{opacity:0!important}

.motion-paused .prof-scene .k-stage *,.motion-paused .trade-dashboard *,.page-hidden .prof-scene .k-stage *,.page-hidden .trade-dashboard *{animation-play-state:paused!important}
