:root{font-family:'DM Sans',Inter,Arial,sans-serif;--paper:#f7f5ee;--muted:#afa8a1;--ink:#fbf7ef;--accent:#f2bb78}
*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{background:#090d14}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button{color:inherit}button:disabled{opacity:.36;cursor:default}.app{isolation:isolate;position:fixed;inset:0;overflow:hidden;background:#0b1019;color:var(--ink);transition:background .45s,color .45s}.app[data-tone=light]{color:#1d2632;--muted:#636c79;--accent:#c15c63}.app[data-tone=light] .masthead,.app[data-tone=light] .tool,.app[data-tone=light] .navtree,.app[data-tone=light] .footer-controls{color:#1b2431}
.world{position:absolute;inset:0;overflow:hidden}.canvas-shell{position:absolute;inset:0;overflow:hidden;will-change:transform,opacity}.canvas-shell canvas{width:100%;height:100%;display:block}.live-canvas{position:absolute;inset:0;pointer-events:none}.vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 49%,transparent 34%,rgba(0,0,0,.22));opacity:.54}.app[data-tone=light] .vignette{opacity:.08}
.masthead{position:absolute;top:clamp(20px,3.1vw,48px);left:clamp(19px,3.35vw,55px);z-index:8;display:flex;align-items:center;gap:16px;pointer-events:none}.monogram{width:38px;height:38px;flex-shrink:0;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;font:italic 22px Georgia,serif;opacity:.82}.brand-title{font-size:12px;font-weight:600;letter-spacing:.28em;white-space:nowrap;text-transform:uppercase}.brand-subtitle{font-size:9px;letter-spacing:.22em;opacity:.56;margin-top:7px;text-transform:uppercase}
.controls{z-index:12;position:absolute;top:clamp(23px,3.4vw,51px);left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px}.tool{border:1px solid rgba(155,168,181,.3);background:rgba(12,19,29,.28);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:100px;padding:9px 12px;display:inline-flex;gap:8px;align-items:center;font-size:10px;font-weight:600;letter-spacing:.07em;color:#f8f4ef;transition:border-color .2s,background .2s}.tool:hover{border-color:currentColor;background:rgba(80,84,102,.19)}.tool svg,.ctrl-arrow svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8}.tool.active{border-color:var(--accent);color:var(--accent)}
.navtree{position:absolute;top:clamp(22px,3.5vw,52px);right:clamp(15px,2.9vw,44px);z-index:9;width:188px;max-height:58vh;overflow:auto;padding:13px 14px 15px;border:1px solid rgba(180,185,192,.25);border-radius:12px;background:rgba(13,22,32,.42);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#f6f7f6;box-shadow:0 12px 40px rgba(0,0,0,.08)}.app[data-tone=light] .navtree{background:rgba(255,255,255,.64);border-color:rgba(25,35,42,.12)}.nav-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;font-size:9px;letter-spacing:.19em;font-weight:700;opacity:.63}.nav-item{display:flex;align-items:center;gap:8px;min-height:26px;border:0;background:transparent;padding:3px 0;color:inherit;text-align:left;width:100%;font-size:10px;line-height:1.3;opacity:.72;transition:opacity .2s,color .2s}.nav-item:hover{opacity:1}.nav-item.current{color:var(--accent);opacity:1;font-weight:700}.nav-item.candidate{opacity:1}.nav-dot{height:7px;width:7px;flex:0 0 7px;border:1px solid currentColor;border-radius:100%;background:transparent;position:relative}.nav-item.current .nav-dot{background:var(--accent);box-shadow:0 0 13px var(--accent)}.nav-item.child{padding-left:14px}.nav-item.child .nav-dot:before{content:'';position:absolute;left:-9px;top:-5px;height:15px;border-left:1px solid currentColor;opacity:.35}.nav-small{font-size:9px;opacity:.47;margin-top:8px;line-height:1.5}
.scene-intro{pointer-events:none;position:absolute;z-index:3;top:clamp(105px,14.5vh,154px);left:clamp(23px,5.25vw,88px);max-width:560px;transition:opacity .25s}.scene-intro.centered{left:50%;transform:translateX(-50%);text-align:center;top:clamp(93px,13vh,140px);width:90%;max-width:730px}.scene-intro.home-intro{top:24%;left:5.3%;max-width:330px}.scene-intro.home-intro h1{font-size:clamp(42px,5.5vw,86px);line-height:.92;max-width:320px}.scene-intro.home-intro p{max-width:250px}.eyebrow{display:block;font-size:10px;letter-spacing:.28em;font-weight:700;text-transform:uppercase;margin:0 0 16px;opacity:.73}.scene-intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(45px,6vw,100px);font-weight:400;letter-spacing:-.045em;line-height:.99;margin:0}.scene-intro p{font-size:clamp(11px,1.05vw,15px);line-height:1.7;max-width:420px;margin:15px 0 0;opacity:.77}.scene-intro.centered p{margin:14px auto 0}
.targets{position:absolute;inset:0;z-index:5;pointer-events:none}.target{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:none;outline:none;background:transparent;pointer-events:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(130px,18vw,235px);height:clamp(92px,15vh,155px);color:inherit;transition:filter .3s;cursor:pointer}.target:nth-child(2){--delay:200ms}.target:hover,.target.chosen{filter:brightness(1.18)}.target:before{content:'';width:clamp(50px,5.7vw,82px);height:clamp(50px,5.7vw,82px);border:1px solid currentColor;opacity:.2;border-radius:50%;position:absolute;top:3%;left:50%;transform:translateX(-50%) scale(.94);transition:transform .4s,border-color .4s,opacity .4s;box-shadow:0 0 0 12px rgba(255,255,255,.015)}.target:after{content:'';height:1px;width:0;background:var(--accent);position:absolute;bottom:9px;transition:width .3s}.target.chosen:before,.target:hover:before{border-color:var(--accent);opacity:.76;transform:translateX(-50%) scale(1.15);box-shadow:0 0 28px color-mix(in srgb,var(--accent) 28%,transparent)}.target.chosen:after,.target:hover:after{width:52px}.target-label{margin-top:43px;max-width:200px;padding:8px 12px 7px;border:1px solid rgba(195,192,188,.25);border-radius:5px;white-space:normal;line-height:1.3;background:rgba(9,15,24,.53);color:#f9f8f6;font-size:11px;letter-spacing:.045em;font-weight:650;backdrop-filter:blur(12px);text-shadow:0 1px 8px rgba(0,0,0,.3);transition:border-color .2s,background .2s}.app[data-tone=light] .target-label{background:rgba(255,255,255,.72);color:#263040;border-color:rgba(30,40,55,.12);text-shadow:none}.target.chosen .target-label,.target:hover .target-label{border-color:var(--accent)}.target-meta{font-size:9px;letter-spacing:.12em;margin-top:9px;opacity:.74;text-transform:uppercase;text-shadow:0 1px 5px #000}.app[data-tone=light] .target-meta{text-shadow:none}.target-marker{position:absolute;top:calc(10% + 18px);width:5px;height:5px;border:1px solid currentColor;border-radius:50%;opacity:.65}.target.chosen .target-marker{background:var(--accent);border-color:var(--accent)}.targets.one .target{width:260px;height:185px}.targets.one .target-label{margin-top:88px}.targets.home-targets .target-label{margin-top:68px}
.footer-controls{position:absolute;z-index:7;left:clamp(22px,3.3vw,56px);bottom:clamp(22px,3.4vw,46px);display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:.095em;font-weight:600;text-transform:uppercase;color:#faf6ed}.footer-controls .line{width:30px;height:1px;background:currentColor;opacity:.4}.footer-controls .dot{border:1px solid currentColor;border-radius:50%;width:19px;height:27px;display:grid;place-items:start center;padding-top:5px}.footer-controls .dot:before{content:'';display:block;width:2px;height:6px;border-radius:9px;background:currentColor;animation:scrolldot 2s ease-in-out infinite}@keyframes scrolldot{50%{transform:translateY(7px);opacity:.15}}
.progress{position:absolute;right:clamp(23px,3.5vw,53px);bottom:clamp(24px,3.4vw,49px);z-index:6;font-size:10px;font-weight:600;letter-spacing:.16em;opacity:.7}.progress strong{color:var(--accent);font-weight:600}.micro-path{font-size:9px;letter-spacing:.03em;opacity:.75;margin-top:8px}
.leaf-content{position:absolute;inset:0;z-index:4;pointer-events:none;display:grid;grid-template-columns:minmax(420px,45%) 1fr;align-items:stretch}.leaf-copy{pointer-events:auto;align-self:center;padding:clamp(115px,10vh,150px) 5.5vw 8vh clamp(24px,6vw,94px);max-height:96vh;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(120,120,120,.2) transparent}.leaf-overline{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--accent)}.leaf-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(43px,4.7vw,78px);line-height:1.03;font-weight:400;letter-spacing:-.05em;margin:17px 0 16px}.leaf-copy .lead{font-size:clamp(13px,1.17vw,17px);line-height:1.72;max-width:480px;margin:0;opacity:.85}.leaf-separator{height:1px;max-width:435px;background:currentColor;opacity:.15;margin:29px 0 25px}.leaf-kicker{font-size:9px;letter-spacing:.23em;text-transform:uppercase;opacity:.63;font-weight:700;margin:0 0 11px}.leaf-copy h2{font-size:14px;line-height:1.5;font-weight:650;margin:0 0 12px}.leaf-copy p.detail{font-size:12px;line-height:1.7;opacity:.68;max-width:490px;margin:0 0 17px}.evidence-list{display:grid;gap:8px;max-width:480px;margin-top:13px}.evidence{display:flex;align-items:baseline;gap:13px;border-bottom:1px solid rgba(160,160,160,.13);padding:5px 0 11px;line-height:1.4;font-size:12px;opacity:.85}.evidence em{font-size:9px;font-style:normal;color:var(--accent);font-weight:700}.leaf-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:21px}.action-link,.action-back{pointer-events:auto;display:inline-flex;gap:9px;align-items:center;justify-content:center;font-size:10px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:700;padding:11px 15px;border-radius:30px;border:1px solid currentColor;color:inherit;background:transparent;transition:color .2s,background .2s}.action-link{border-color:var(--accent);color:var(--accent)}.action-link:hover,.action-back:hover{background:var(--accent);color:#111a23}.leaf-art-note{position:absolute;right:clamp(27px,4.3vw,70px);bottom:clamp(95px,10vh,133px);font:10px 'DM Sans',sans-serif;letter-spacing:.13em;text-transform:uppercase;max-width:28vw;z-index:3;opacity:.56;text-align:right;pointer-events:none}.leaf-art-note span{display:block;font:italic clamp(18px,2.2vw,30px) Georgia,serif;text-transform:none;letter-spacing:-.03em;opacity:1;margin-bottom:5px}
.no-motion *{animation:none!important;transition-duration:0.01ms!important}.transition-block{pointer-events:none!important}.transition-block .navtree,.transition-block .controls,.transition-block .targets{opacity:.15;transition:opacity .3s}
.mobile-choices{display:none}.help{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:rgba(5,9,15,.65);backdrop-filter:blur(16px);padding:24px}.help[hidden]{display:none}.help-inner{position:relative;width:min(490px,100%);border-radius:20px;border:1px solid rgba(206,195,186,.19);background:#121924;color:#f3ede7;padding:37px}.help-inner h2{font:normal 42px Georgia,serif;margin:15px 0}.help-inner p{font-size:13px;line-height:1.8;opacity:.72}.help-inner .close-help{position:absolute;right:25px;top:22px;background:transparent;border:0;font-size:21px;color:inherit}.help-keys{font-size:11px;letter-spacing:.05em;line-height:2.3;margin-top:20px;opacity:.86}
@media(max-width:1100px){.navtree{width:170px}.scene-intro{max-width:330px}.scene-intro h1{font-size:clamp(45px,6vw,69px)}.leaf-content{grid-template-columns:minmax(340px,46%) 1fr}.leaf-copy{padding-left:5vw}.leaf-copy h1{font-size:clamp(40px,5vw,61px)}.controls{top:auto;left:auto;right:25px;bottom:26px;transform:none}.footer-controls{bottom:35px}.progress{display:none}}
@media(max-width:700px){.masthead{top:19px;left:19px;gap:9px}.monogram{width:30px;height:30px;font-size:17px}.brand-title{font-size:9px;letter-spacing:.19em}.brand-subtitle{font-size:7px;letter-spacing:.11em;margin-top:4px}.controls{top:20px;right:14px;bottom:auto}.tool{padding:8px;font-size:0}.tool svg{width:16px;height:16px}.tool span{display:none}.navtree{display:none;right:15px;top:68px;max-height:42vh;width:min(270px,83vw);z-index:14}.navtree.open{display:block}.scene-intro,.scene-intro.centered,.scene-intro.home-intro{top:100px;left:24px;transform:none;text-align:left;max-width:calc(100vw - 45px)}.scene-intro h1,.scene-intro.home-intro h1{font-size:clamp(41px,11vw,58px);max-width:290px}.scene-intro p{max-width:265px;font-size:11px;line-height:1.6}.scene-intro.centered p{margin:12px 0 0}.scene-intro .eyebrow{margin-bottom:9px;font-size:9px}.targets{display:none}.mobile-choices{display:flex;position:absolute;z-index:8;left:15px;right:15px;bottom:67px;gap:7px}.mobile-choices button{background:rgba(17,22,30,.77);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.3);border-radius:11px;color:#f9f7ef;padding:13px 8px;line-height:1.3;font-size:10px;font-weight:600;flex:1;min-height:50px}.mobile-choices button.chosen{border-color:var(--accent);color:var(--accent)}.app[data-tone=light] .mobile-choices button{background:rgba(255,255,255,.85);color:#263040;border-color:rgba(40,40,40,.17)}.footer-controls{bottom:24px;left:17px;font-size:8px}.footer-controls .line{width:9px}.footer-controls .dot{width:13px;height:20px}.micro-path,.progress{display:none}.leaf-content{display:block;z-index:5;overflow:auto;inset:0}.leaf-copy{padding:104px 22px 140px;max-height:none;background:linear-gradient(90deg,rgba(5,9,14,.80),rgba(5,9,14,.43) 75%,transparent)}.app[data-tone=light] .leaf-copy{background:linear-gradient(90deg,rgba(255,255,255,.93),rgba(255,255,255,.7) 80%,transparent)}.leaf-copy h1{font-size:clamp(43px,11vw,62px)}.leaf-copy .lead{font-size:14px}.leaf-copy p.detail{font-size:12px}.leaf-art-note{display:none}.app.is-leaf .footer-controls{display:none}.app.is-leaf .controls{z-index:12}.app.is-leaf .navtree{z-index:15}}
@media(prefers-reduced-motion:reduce){.footer-controls .dot:before{animation:none}}

/* V4 reference-matched, image-anchored navigation. All art is drawn from vector geometry. */
.app[data-scene="home"] .vignette{opacity:0}
.app[data-scene="home"] .masthead{top:12px;left:14px;opacity:.68;transform:scale(.72);transform-origin:top left;filter:drop-shadow(0px 1px 5px #090811)}
.app[data-scene="home"] .controls{top:auto;bottom:13px;left:auto;right:14px;transform:none;gap:4px;opacity:.52;transition:opacity .25s}
.app[data-scene="home"] .controls:hover,.app[data-scene="home"] .controls:focus-within{opacity:1}
.app[data-scene="home"] .tool{padding:6px 8px;background:rgba(8,10,16,.42);font-size:9px}
.app[data-scene="home"] .navtree:not(.open){display:none}
.app[data-scene="home"] .navtree.open{display:block;top:auto;bottom:57px;right:15px;width:210px}
.app[data-scene="home"] .footer-controls{bottom:16px;left:16px;opacity:.45;text-shadow:0 1px 5px #04040a}
.app[data-scene="home"] .progress{display:none}
.home-illustrated-nav{position:absolute;inset:0;pointer-events:none;z-index:5;font-family:Georgia,'Times New Roman',serif}
.home-hotspot{position:absolute;display:block;pointer-events:auto;background:transparent;border:0;border-radius:18%;cursor:zoom-in;z-index:1;touch-action:manipulation}
.home-hotspot:hover{background:rgba(255,178,80,.023)}
.home-hotspot:focus-visible{outline:1.5px solid #ffe2ab;outline-offset:0;box-shadow:0 0 25px rgba(255,150,43,.42)}
.home-label{position:absolute;color:#ffefd0;pointer-events:none;text-shadow:0px 1px 6px #19111b,0px 0px 10px #17111a}
.home-label-business{left:22.7%;top:47.35%;width:12.7%}
.home-label-life{left:59.45%;top:40.05%;width:12.65%}
.home-label-hobbies{left:88.4%;top:18.55%;width:10.4%}
.home-heading{font-size:clamp(13px,1.63vw,28px);line-height:1.08;letter-spacing:.17em;white-space:nowrap;text-transform:uppercase;font-weight:500}
.home-rule{position:relative;height:1px;background:rgba(253,218,156,.86);box-shadow:0 0 6px rgba(255,179,85,.3);margin-top:7px;margin-bottom:7px;transform-origin:left center;transition:background .18s,box-shadow .18s}
.home-rule:before{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:#ffdfa8;left:-13px;top:-3px;box-shadow:0px 0px 9px 2px rgba(250,181,92,.55)}
.home-subheading{font-size:clamp(7px,.85vw,14px);white-space:nowrap;line-height:1.2;letter-spacing:-.015em;color:#f4eee4;text-shadow:0 1px 4px #0d0912}
.home-label-life .home-subheading{white-space:normal;max-width:225px}.home-subline{display:block}
.home-label.chosen .home-rule{background:#ffecca;box-shadow:0 0 11px 1px rgba(255,198,101,.65)}
.home-label.chosen .home-heading{color:#ffeabd}
@media (max-width:1100px){.app[data-scene="home"] .controls{right:10px;bottom:12px;top:auto}.app[data-scene="home"] .navtree.open{top:auto;bottom:59px}.home-heading{font-size:clamp(12px,1.65vw,26px)}.home-subheading{font-size:clamp(7px,.79vw,13px)}}
@media (max-width:700px){.home-illustrated-nav{display:none}.app[data-scene="home"] .masthead{top:11px;left:9px}.app[data-scene="home"] .controls{right:12px;top:13px;bottom:auto;opacity:.9}.app[data-scene="home"] .controls .tool{background:rgba(9,11,16,.64);padding:7px}.app[data-scene="home"] .footer-controls{bottom:18px;left:16px}.app[data-scene="home"] .navtree.open{top:55px;bottom:auto}.app[data-scene="home"] .mobile-choices{bottom:63px}}
