/* Scoped interactive homepage system; shared pages keep their existing styling. */
.lum-home{--hi-navy:#10284e;--hi-blue:#0759d7;--hi-line:#d8e4f2;--hi-ice:#eef6fd;--hi-gold:#ac8243}
.lum-home .hi-section{width:min(1320px,90%);margin:52px auto;padding:0;color:var(--hi-navy);box-sizing:border-box}
.lum-home .hi-section *{box-sizing:border-box}
.lum-home .hi-kicker{display:block;font:600 10px/1.5 Arial,sans-serif;letter-spacing:.18em;color:#466b97;margin-bottom:12px}
.lum-home .hi-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:26px}
.lum-home .hi-heading h2,.lum-home .hi-discovery h2{font:400 clamp(29px,3vw,43px)/1.15 Georgia,serif;margin:0;color:#10284e;letter-spacing:-.025em}
.lum-home .hi-heading p{max-width:430px;font-size:15px;line-height:1.65;color:#47617f;margin:0}
.lum-home .hi-heading a{font-size:14px;white-space:nowrap;color:#0759d7;text-decoration:none}
.lum-home .hi-section button{font:inherit;cursor:pointer}
.lum-home .hi-section :is(a,button,select):focus-visible,.lum-home .orbital-hero-art :is(a,button,summary):focus-visible{outline:3px solid #1673dc;outline-offset:4px}
.lum-home .hi-selectors{display:flex;gap:8px;flex-wrap:wrap}
.lum-home .hi-selectors button,.lum-home .lab-switch button{min-height:46px;padding:12px 18px;border:1px solid #d6e3f1;background:#fff;color:#284665;border-radius:9px;font-size:14px;line-height:1.4;text-align:left}
.lum-home .hi-selectors button[aria-pressed=true],.lum-home .lab-switch button[aria-pressed=true]{background:#10284e;color:#fff;border-color:#10284e;box-shadow:0 4px 12px #14366a17}
.lum-home .lum-hero{min-height:0;grid-template-columns:.85fr 1.15fr;align-items:center;padding:15px 4% 30px;gap:0;overflow:hidden}
.lum-home .lum-hero-copy{padding:35px 0 40px 7%;z-index:2}
.lum-home .lum-hero-copy::before{pointer-events:none}
.lum-home .orbital-hero-art{width:100%;margin:0;padding:0;min-width:0;transform:none!important}
.lum-home .sphere-scene{position:relative;width:100%;isolation:isolate}
.lum-home .sphere-scene img{width:100%;height:auto;display:block;max-height:none}
.lum-home .sphere-node{position:absolute;z-index:3;display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:6px;border:1px solid #b8d5ef;background:#f9fdfff0;box-shadow:0 5px 17px #12437325;border-radius:24px;color:#123b69;cursor:pointer;transform:translate(-50%,-50%);font-size:16px;gap:6px}
.lum-home .sphere-node-label{font:600 10px/1.2 Arial,sans-serif;white-space:nowrap}
.lum-home .sphere-node[aria-pressed=true]{background:#0d4aa5;color:#fff;box-shadow:0 0 0 4px #a1d4ff70,0 5px 18px #1253ad40;border-color:#fff}
.lum-home .sphere-node-0{left:78%;top:62%}.lum-home .sphere-node-1{left:22%;top:49%}.lum-home .sphere-node-2{left:75%;top:30%}.lum-home .sphere-node-3{left:30%;top:22%}.lum-home .sphere-node-4{left:57%;top:14%}.lum-home .sphere-node-5{left:56%;top:71%}
.lum-home .solution-explorer{display:grid;grid-template-columns:260px minmax(0,1fr);gap:25px;border-top:1px solid var(--hi-line);padding-top:24px}.lum-home .solution-explorer>.hi-selectors{display:flex;flex-direction:column;gap:7px}.lum-home .solution-explorer>.hi-selectors button{flex:1;border:0;background:transparent;border-bottom:1px solid #e0e9f3;border-radius:0;padding:14px 16px;font-size:15px}.lum-home .solution-explorer>.hi-selectors button[aria-pressed=true]{background:#eaf3ff;color:#084ba2;border-left:3px solid #1468c8;border-radius:7px;box-shadow:none}
.lum-home .solution-panel{background:linear-gradient(125deg,#10294d,#173b66);border:1px solid #385775;border-radius:17px;padding:30px;color:white;min-height:395px}.lum-home .solution-panel .hi-kicker{color:#bad7f7}.lum-home .solution-panel h3{font:400 30px/1.25 Georgia,serif;margin:8px 0 14px;color:#fff}.lum-home .solution-panel p{font-size:15px;line-height:1.6;color:#d9e6f5;max-width:680px}.lum-home .solution-panel ul{display:flex;gap:12px 28px;flex-wrap:wrap;padding-left:18px;font-size:13px;line-height:1.6;color:#cddff4;margin:24px 0}.lum-home .solution-panel .lum-button{background:#fff;color:#12345b;border:0;min-height:44px;font-size:13px}
.lum-home .solution-diagram{display:flex;list-style:none;padding:0;margin:26px 0 18px;gap:24px;align-items:stretch}.lum-home .solution-diagram li{position:relative;flex:1;min-width:0;border:1px solid #7092b9;border-radius:8px;background:#ffffff0c;padding:16px 12px;text-align:center;font-size:14px;line-height:1.4}.lum-home .solution-diagram li+li:before{content:'→';position:absolute;left:-20px;top:50%;transform:translateY(-50%);color:#a4cdfa}
.lum-home .hi-process{background:linear-gradient(120deg,#faf9f4,#f2f6fb);border:1px solid #e0e6ec;border-radius:18px;padding:30px}.lum-home .hi-process .hi-heading p{max-width:540px}.lum-home .process-rail{display:flex;gap:12px;position:relative;padding:10px 0 22px}.lum-home .process-rail:before{content:'';position:absolute;left:5%;right:5%;height:1px;top:32px;background:#b9cadb}.lum-home .process-rail button{position:relative;z-index:1;flex:1;min-height:48px;background:#f8fbfe;border:1px solid #cad8e7;color:#2c4b70;border-radius:24px;font-size:14px}.lum-home .process-rail button[aria-pressed=true]{background:#14365b;color:white;border-color:#14365b}.lum-home .process-panel{display:grid;grid-template-columns:110px minmax(0,1fr);gap:25px;border-top:1px solid #d9e1eb;padding-top:23px;min-height:245px}.lum-home .process-index{font:400 75px/1 Georgia,serif;color:#aa874a}.lum-home .process-panel h3{font:400 29px/1.3 Georgia,serif;margin:0 0 12px}.lum-home .process-panel p{font-size:15px;line-height:1.6;margin:0 0 15px}.lum-home .process-panel dl{display:grid;grid-template-columns:125px 1fr;gap:9px 15px;font-size:14px;line-height:1.55;margin:0}.lum-home .process-panel dt{font-weight:600;color:#1c436c}.lum-home .process-panel dd{margin:0;color:#4a607c}.lum-home .process-purpose{font-size:12px;line-height:1.5;color:#657080;border-top:1px solid #dce4ec;padding-top:16px}.lum-home .hi-process>a{font-size:13px;color:#0759d7}
.lum-home .hi-showcase>.hi-selectors{margin-bottom:18px}.lum-home .project-stage{display:grid;grid-template-columns:1.35fr 1fr;background:#f3f8fd;border:1px solid #dbe7f3;border-radius:18px;overflow:hidden}.lum-home #project-image-link{display:flex;background:#e6eef8;padding:24px;align-items:center;min-width:0}.lum-home #project-image{width:100%;height:auto;aspect-ratio:1.6;object-fit:contain;border-radius:8px;box-shadow:0 15px 30px #11355c20;background:white}.lum-home #project-info{padding:30px;min-height:380px}.lum-home #project-info h3{font:400 32px/1.2 Georgia,serif;letter-spacing:.02em;margin:8px 0}.lum-home #project-info p,.lum-home #project-info li{font-size:14px;line-height:1.65;color:#405c7c}.lum-home #project-info ul{padding-left:18px;margin:16px 0 22px}.lum-home #project-info .project-category{color:#0870c0;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.lum-home #project-info small{display:block;font-size:11px;line-height:1.6;color:#5e7087;margin-top:15px}.lum-home .hi-section .lum-button{font-size:13px;min-height:46px}
.lum-home .hi-lab.home-lab-feature{display:block;padding:30px;background:linear-gradient(140deg,#fff,#edf6ff);gap:0}.lum-home .hi-lab .lab-switch{display:flex;gap:8px;margin-bottom:24px}.lum-home .lab-notebook{display:grid;grid-template-columns:.9fr 1.1fr;gap:35px}.lum-home .lab-notebook-side{border-left:2px solid #bca16e;padding-left:20px}.lum-home .lab-notebook-side h3{font:400 28px/1.3 Georgia,serif;margin:10px 0}.lum-home .lab-notebook-side p{font-size:15px;line-height:1.65;color:#395776}.lum-home .lab-notebook-side small{display:block;font-size:12px;line-height:1.6;color:#526b87;margin-top:17px;max-width:390px}.lum-home .lab-step-list{display:flex;flex-wrap:wrap;gap:8px}.lum-home .lab-step-list button{background:#fff;border:1px solid #cee0f1;border-radius:7px;color:#294e74;padding:12px;min-height:44px;font-size:13px;flex:1 1 40%}.lum-home .lab-step-list button[aria-pressed=true]{background:#e3f0ff;border-color:#69a2de;color:#074a93}.lum-home .lab-step-copy{margin-top:18px;border:1px solid #cfdfed;border-radius:10px;padding:20px;background:#ffffffb8;min-height:168px}.lum-home .lab-step-copy>span{font:600 10px/1.4 monospace;letter-spacing:.1em;color:#617fa2}.lum-home .lab-step-copy h4{font:500 21px/1.4 Georgia,serif;margin:10px 0}.lum-home .lab-step-copy p{font-size:14px;line-height:1.6;color:#385675;margin:0}.lum-home .hi-lab .home-lab-concierge-slot{margin-top:24px}
.lum-home .hi-discovery{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:#102b4e;border:1px solid #29496e;border-radius:18px;padding:35px;color:#fff}.lum-home .hi-discovery h2{color:#fff}.lum-home .hi-discovery .hi-kicker{color:#c0a87e}.lum-home .hi-discovery p{font-size:15px;line-height:1.6;color:#d5e3f4;max-width:520px}.lum-home .discovery-choice label{display:block;font-size:14px;color:#fff;margin-bottom:10px}.lum-home .discovery-choice select{width:100%;min-height:50px;padding:12px;background:#fff;color:#183557;border:1px solid #bdd0e6;border-radius:8px;font-size:15px}.lum-home #discovery-confirmation{font-size:13px;min-height:42px;margin:12px 0}.lum-home .hi-discovery .lum-button{background:#fff;color:#163b65;border:0}
@media(max-width:1100px){.lum-home .lum-hero{grid-template-columns:1fr 1.15fr;padding:15px 3% 25px}.lum-home .lum-hero-copy{padding:20px 0 30px 5%}.lum-home .lum-hero h1{font-size:49px}.lum-home .lum-hero h2{font-size:27px}.lum-home .sphere-node-label{display:none}.lum-home .solution-explorer{grid-template-columns:215px 1fr}.lum-home .project-stage{grid-template-columns:1fr 1fr}.lum-home #project-image-link{padding:15px}.lum-home #project-info{padding:23px}.lum-home .hi-heading{align-items:start}.lum-home .hi-heading p{max-width:350px}}
@media(max-width:760px){.lum-home .lum-hero{display:flex;padding:0 0 25px;gap:5px}.lum-home .lum-hero-copy{padding:30px 6% 0}.lum-home .lum-hero h1{font-size:44px}.lum-home .orbital-hero-art{max-width:620px;width:100%;margin:0}.lum-home .sphere-scene{margin-top:0}.lum-home .sphere-node-label{display:none}.lum-home .hi-section{width:90%;margin:35px auto}.lum-home .hi-heading{flex-direction:column;gap:15px;margin-bottom:22px}.lum-home .hi-heading p{max-width:none}.lum-home .solution-explorer{grid-template-columns:1fr;gap:16px}.lum-home .solution-explorer>.hi-selectors{flex-direction:row;flex-wrap:wrap;gap:6px}.lum-home .solution-explorer>.hi-selectors button{flex:1 1 42%;padding:11px;font-size:13px;border:1px solid #d7e3f1;border-radius:7px;min-height:48px}.lum-home .solution-panel{padding:22px;min-height:425px}.lum-home .solution-panel h3{font-size:27px}.lum-home .solution-diagram{gap:17px}.lum-home .solution-diagram li{padding:14px 5px;font-size:12px}.lum-home .solution-diagram li+li:before{left:-15px}.lum-home .hi-process{padding:22px}.lum-home .process-rail{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lum-home .process-rail:before{display:none}.lum-home .process-rail button{font-size:13px;min-height:46px}.lum-home .process-panel{grid-template-columns:1fr;gap:12px;min-height:390px}.lum-home .process-index{font-size:45px}.lum-home .process-panel dl{grid-template-columns:1fr;gap:4px}.lum-home .process-panel dd{margin-bottom:8px}.lum-home .project-stage{grid-template-columns:1fr}.lum-home #project-image-link{padding:15px}.lum-home #project-info{padding:23px;min-height:380px}.lum-home .hi-lab.home-lab-feature{padding:23px}.lum-home .lab-notebook{grid-template-columns:1fr;gap:24px}.lum-home .lab-notebook-side{padding-left:15px}.lum-home .lab-switch button{flex:1;font-size:13px}.lum-home .lab-step-copy{min-height:175px}.lum-home .hi-discovery{grid-template-columns:1fr;gap:23px;padding:25px}.lum-home .hi-discovery h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.lum-home .sphere-scene{transform:none!important}.lum-home .hi-section *, .lum-home .orbital-hero-art *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.lum-home .sphere-node[aria-pressed=true],.lum-home [aria-pressed=true]{outline:2px solid Highlight;outline-offset:2px}}
.lum-home .sphere-scene{max-width:720px;margin:0 auto}
@media(max-width:760px){}

/* Hit areas follow the four glass bubbles in the original raster artwork. */
.lum-home .sphere-node.sphere-glass-hit{width:11.5%;aspect-ratio:1;height:auto;min-width:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;gap:0}
.lum-home .sphere-node.sphere-glass-hit[aria-pressed=true]{background:transparent;box-shadow:none;border:0}
.lum-home .sphere-glass-hit:after{content:'';position:absolute;inset:4%;border-radius:50%;border:2px solid transparent;pointer-events:none}
.lum-home .sphere-glass-hit:hover:after,.lum-home .sphere-glass-hit[aria-pressed=true]:after{border-color:#79c6ff99;box-shadow:0 0 14px #78c8ff55}
.lum-home .sphere-glass-hit:focus-visible{outline:3px solid #0969cf;outline-offset:3px}
.lum-home .sphere-glass-hit.sphere-node-3{left:32.6%;top:26.4%}
.lum-home .sphere-glass-hit.sphere-node-1{left:26%;top:49.3%}
.lum-home .sphere-glass-hit.sphere-node-2{left:73.6%;top:32.2%}
.lum-home .sphere-glass-hit.sphere-node-0{left:71.6%;top:60.1%}
/* Independent satellite orbit. Original background remains unchanged in its archive. */
.lum-home .sphere-core-occluder{position:absolute;inset:0;z-index:2;pointer-events:none;background:url('../assets/homepage-interactive/sphere-background-clean.webp') center/100% 100% no-repeat;mask-image:radial-gradient(ellipse 15% 23% at 50% 44.5%,#000 92%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 15% 23% at 50% 44.5%,#000 92%,transparent 100%);mix-blend-mode:multiply}
.lum-home .sphere-node.sphere-orbit-node{left:var(--orbit-x,50%);top:var(--orbit-y,43%);width:12%;height:auto;aspect-ratio:1;min-width:44px;min-height:44px;padding:0;display:grid;place-items:center;border-radius:50%;border:0;transform:translate(-50%,-50%) scale(var(--orbit-scale,1));z-index:var(--orbit-z,3);background-color:transparent;background-image:url('../assets/homepage-interactive/original-glass-faces.webp');background-repeat:no-repeat;background-size:960% 640%;box-shadow:0 3px 8px #16426b22;isolation:isolate;transition:box-shadow .2s;cursor:pointer}
.lum-home .sphere-node.sphere-orbit-node[aria-pressed=true]{box-shadow:0 0 0 2px #d3f2ffdd,0 0 16px #69c7ff8c;border:0}
.lum-home .sphere-orbit-node.orbit-face-0{background-position:74.13% 61.92%}
.lum-home .sphere-orbit-node.orbit-face-1{background-position:23.26% 49.19%}
.lum-home .sphere-orbit-node.orbit-face-2{background-position:76.31% 28.94%}
.lum-home .sphere-orbit-node.orbit-face-3{background-position:30.52% 21.99%}
.lum-home .sphere-orbit-node:is(.orbit-face-4,.orbit-face-5){color:#b9f0ff;background-image:radial-gradient(ellipse at 30% 15%,#fff 0%,#f9fdffac 8%,transparent 24%),radial-gradient(ellipse at 72% 82%,#80cdfd99,transparent 48%),radial-gradient(circle at 50% 48%,#145e96 8%,#092b4f 43%,#a8e3ff 61%,#f9ffff 67%,#5d8daf 71%,#e5f6ff 77%,#5c8aa5 82%,#e2f6ff 89%,#ffffffdd 94%,#cbe7f8 99%);background-size:100% 100%;border:1px solid #ffffffed;box-shadow:inset 0 1px 3px #fff,0 3px 10px #234e7638}
.lum-home .sphere-orbit-node svg{width:45%;height:45%;filter:drop-shadow(0 0 3px #3bceff)}
.lum-home .sphere-orbit-node:focus-visible{outline:3px solid #0969cf;outline-offset:4px}
@media(max-width:760px){.lum-home .sphere-orbit-node{width:13%}}
@media(prefers-reduced-motion:reduce){.lum-home .sphere-orbit-node{transition:none!important}}

/* Keep moving targets at least 44px even on the receding part of the orbit. */
.lum-home .sphere-node.sphere-orbit-node{min-width:52px;min-height:52px}
/* Reuse the original photographic glass rim for the two new service faces. */
.lum-home .sphere-orbit-node:is(.orbit-face-4,.orbit-face-5){background-image:url('../assets/homepage-interactive/original-glass-faces.webp');background-size:960% 640%;background-position:76.31% 28.94%;border:0;color:#d9f9ff;box-shadow:0 3px 8px #16426b22}
.lum-home .sphere-orbit-node:is(.orbit-face-4,.orbit-face-5):before{content:'';position:absolute;inset:23%;border-radius:50%;background:radial-gradient(ellipse at 65% 70%,#176a9d,#0a2a48 72%);box-shadow:0 0 4px #123c62}
.lum-home .sphere-orbit-node svg{position:absolute;width:46%;height:46%;left:27%;top:27%;filter:drop-shadow(0 0 2px #52d6ff)}

/* A compact motion control stays with the sphere; no service panel or reserved row. */
.lum-home .orbital-hero-art{position:relative}
.lum-home .sphere-motion-toggle{position:absolute;left:16px;bottom:8px;z-index:4;min-height:44px;padding:8px 13px;border:1px solid #d6e3f1;border-radius:22px;background:#ffffffdb;color:#143969;font:13px/1.4 Arial,sans-serif;cursor:pointer}
.lum-home .sphere-motion-toggle:focus-visible{outline:3px solid #075bff;outline-offset:3px}
