/* UW3D Process Orbit — responsive, accessible, high contrast. */
.uw3d23-orbit{--or-primary:#00f1fe;--or-secondary:#ff6900;--or-size:470px;--or-gap:60px;--or-speed:750ms;--or-glow:.55;background:var(--or-bg,linear-gradient(120deg,#061923,#03111b));border-block:1px solid #0b4254;position:relative}
.uw3d23-orbit.has-image-bg{background-image:linear-gradient(rgba(3,16,24,var(--or-bg-opacity,.6)),rgba(3,16,24,var(--or-bg-opacity,.6))),var(--or-bg-image);background-size:cover;background-position:center}
.uw3d23-orbit:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 17% 46%,rgba(0,241,254,.12),transparent 40%);pointer-events:none}
.uw3d23-orbit__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:center;gap:var(--or-gap);max-width:1500px}
.uw3d23-orbit.is-orbit-right .uw3d23-orbit__dial{order:2}.uw3d23-orbit.is-orbit-right .uw3d23-orbit__content{order:1}
.uw3d23-orbit__dial{min-width:0;display:flex;align-items:center;justify-content:center;padding:20px 18px 24px}
.uw3d23-orbit__circle{width:min(100%,var(--or-size));aspect-ratio:1;position:relative;flex-shrink:0;isolation:isolate}
.uw3d23-orbit__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(0 0 calc(13px * var(--or-glow)) var(--or-primary))}
.uw3d23-orbit__track,.uw3d23-orbit__innertrack{fill:none;stroke:var(--or-primary);stroke-opacity:.2;stroke-width:1.6}
.uw3d23-orbit__ticks{fill:none;stroke:var(--or-primary);stroke-opacity:.31;stroke-width:1;stroke-dasharray:2 7}
.uw3d23-orbit__progress{fill:none;stroke-width:5;stroke-linecap:round;transform-origin:250px 250px;transform:rotate(-90deg);transition:stroke-dasharray var(--or-speed) cubic-bezier(.18,.8,.25,1);filter:drop-shadow(0 0 7px var(--or-primary))}
.uw3d23-orbit__center{position:absolute;width:48%;height:48%;top:26%;left:26%;border:1px solid color-mix(in srgb,var(--or-primary) 42%,transparent);border-radius:9px;box-shadow:inset 0 0 24px rgba(0,241,254,.05),0 0 25px rgba(0,241,254,.08);background:linear-gradient(150deg,rgba(3,21,32,.86),rgba(0,14,23,.9));display:grid;place-items:center;overflow:hidden}
.uw3d23-orbit__center:after{content:"";position:absolute;inset:8px;pointer-events:none;border:1px solid rgba(0,241,254,.14);border-radius:4px}
.uw3d23-orbit__center img{max-width:none;max-height:none;width:var(--or-center-icon-size,94%);height:var(--or-center-icon-size,94%);object-fit:contain;filter:drop-shadow(0 0 14px rgba(0,241,254,.38));transition:opacity .18s ease}
.uw3d23-orbit__center iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2}
.uw3d23-orbit__centertext{color:var(--or-primary);font-family:Quantico,monospace;font-size:clamp(16px,2vw,26px);text-align:center;padding:12px}
.uw3d23-orbit__point{position:absolute;left:var(--point-x);top:var(--point-y);width:clamp(44px,12%,63px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:rgba(2,24,34,.96);border:1px solid rgba(95,208,227,.55);display:grid;place-items:center;cursor:pointer;z-index:3;padding:5px;box-shadow:0 0 0 4px rgba(0,29,42,.73),inset 0 0 15px rgba(0,241,254,.07);transition:box-shadow .26s,border-color .26s,background .26s}
.uw3d23-orbit__point:hover,.uw3d23-orbit__point.is-active,.uw3d23-orbit__point:focus-visible{border-color:var(--or-primary);box-shadow:0 0 0 3px #063345,0 0 calc(22px * var(--or-glow)) var(--or-primary);background:#042a36;outline:none}
.uw3d23-orbit__point img{height:var(--or-ring-icon-size,100%);width:var(--or-ring-icon-size,100%);max-width:none;max-height:none;object-fit:contain;mix-blend-mode:screen}
.uw3d23-orbit__point span{font-size:18px;color:var(--or-primary)}
.uw3d23-orbit__point-label{position:absolute;left:var(--point-x);top:var(--point-y);transform:translate(-50%,36px);font:700 clamp(9px,.9vw,12px)/1.2 Quantico,sans-serif;text-align:center;color:#a9d7e4;white-space:nowrap;max-width:120px;text-shadow:0 1px 7px #000}
.uw3d23-orbit__content{min-width:0;background:linear-gradient(180deg,rgba(3,22,33,.55),rgba(3,22,33,.22));padding:clamp(8px,2vw,28px);border-top:1px solid rgba(0,241,254,.24)}
.uw3d23-orbit__content h2{font-size:clamp(26px,3vw,45px);margin:15px 0;color:#f2fcff;line-height:1.14}
.uw3d23-orbit__content h2 span{display:block;color:var(--or-primary)}
.uw3d23-orbit__intro{font:14px/1.8 Quantico,'Arial Narrow',system-ui,sans-serif!important;max-width:670px;margin-bottom:23px!important}
.uw3d23-orbit__tabs{display:flex;flex-wrap:wrap;gap:7px;padding:24px 0;border-top:1px solid rgba(0,241,254,.23);border-bottom:1px solid rgba(0,241,254,.18)}
.uw3d23-orbit__tab{appearance:none;border:1px solid #205468;border-radius:7px;background:#082331;color:#a2becb;padding:8px 11px;display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:clamp(10px,.85vw,12px);transition:background .25s,border-color .25s,color .25s,box-shadow .25s}
.uw3d23-orbit__tab b{display:grid;place-items:center;width:23px;height:23px;flex-shrink:0;border-radius:50%;background:#173c4a;color:#b9d6e1;font-size:12px}
.uw3d23-orbit__tab.is-active,.uw3d23-orbit__tab:hover{border-color:var(--or-primary);background:#073441;color:#e2fcff;box-shadow:0 0 calc(12px * var(--or-glow)) #00f1fe44}
.uw3d23-orbit__tab.is-active b{background:var(--or-secondary);color:#fff;box-shadow:0 0 12px #ff6900aa}
.uw3d23-orbit__panels{min-height:230px}.uw3d23-orbit__panel{padding-top:26px;animation:uw3d23-appear .32s ease}
.uw3d23-orbit__panel[hidden]{display:none!important}
.uw3d23-orbit__panel-head{display:flex;align-items:center;gap:22px;margin-bottom:17px}
.uw3d23-orbit__panel-head>img{height:var(--or-detail-icon-size,86px);width:var(--or-detail-icon-size,86px);flex:0 0 auto;border:1px solid #1a5262;border-radius:9px;object-fit:contain;background:#061d2a;mix-blend-mode:screen}
.uw3d23-orbit__panel-head small{color:var(--or-primary);font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase}
.uw3d23-orbit__panel-head h3{font-size:clamp(24px,2.7vw,38px);margin:7px 0;text-transform:uppercase}
.uw3d23-orbit__panel>p{font-size:14px;max-width:620px;color:#aec9d6;margin:0 0 20px}
.uw3d23-orbit__highlights{border-top:1px solid #1a4555;display:flex;flex-wrap:wrap;gap:10px;padding:15px 0}
.uw3d23-orbit__highlights span{display:flex;align-items:center;gap:8px;color:#b7d3de;font:600 10px/1.4 Quantico,sans-serif;letter-spacing:.4px}
.uw3d23-orbit__highlights span+span:before{content:"";height:19px;border-left:1px solid var(--or-secondary);margin-right:4px}
.uw3d23-orbit__highlights i{color:var(--or-primary);font-size:18px;font-style:normal}
@keyframes uw3d23-appear{from{opacity:.2;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.uw3d23-orbit__layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.uw3d23-orbit__point-label{display:none}.uw3d23-orbit__dial{padding:0}}
@media(max-width:820px){.uw3d23-orbit__layout{display:flex;flex-direction:column;align-items:stretch}.uw3d23-orbit.is-orbit-right .uw3d23-orbit__dial,.uw3d23-orbit.is-orbit-right .uw3d23-orbit__content{order:unset}.uw3d23-orbit__dial{padding:0 0 10px}.uw3d23-orbit__circle{max-width:min(95vw,450px)}.uw3d23-orbit__content{padding:17px}.uw3d23-orbit__point-label{display:block}}
@media(max-width:480px){.uw3d23-orbit__circle{width:min(100%,350px)}.uw3d23-orbit__point{width:44px;min-width:44px}.uw3d23-orbit__point-label{display:none}.uw3d23-orbit__center{width:48%;height:48%;top:26%;left:26%}.uw3d23-orbit__tab{font-size:10px;padding:6px 8px}.uw3d23-orbit__panel-head>img{width:min(var(--or-detail-icon-size,86px),63px);height:min(var(--or-detail-icon-size,86px),63px)}}
@media(prefers-reduced-motion:reduce){.uw3d23-orbit *{animation:none!important;transition:none!important}}

/* v0.1.24 — reserve intrinsic height of the longest stage, at every viewport width.
   Hidden panels are visually hidden and inert but remain in grid layout,
   which prevents shifting the page as the active description changes. */
.uw3d23-orbit.uw3d24-stable-panels .uw3d23-orbit__panels{
 display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto;
 min-height:max(0px,var(--or-panel-min,0px));
}
.uw3d23-orbit.uw3d24-stable-panels .uw3d23-orbit__panel{
 grid-area:1/1;min-width:0;align-self:var(--or-panel-align,start);
 animation:none;opacity:1;visibility:visible;
}
.uw3d23-orbit.uw3d24-stable-panels .uw3d23-orbit__panel[hidden]{
 display:block!important;visibility:hidden;opacity:0;pointer-events:none;
}
.uw3d23-orbit.uw3d24-stable-panels.uw3d24-transition-fade .uw3d23-orbit__panel.is-active{
 animation:uw3d24-panel-fade var(--or-panel-transition,320ms) ease both;
}
.uw3d23-orbit.uw3d24-stable-panels.uw3d24-transition-slide .uw3d23-orbit__panel.is-active{
 animation:uw3d23-appear var(--or-panel-transition,320ms) ease both;
}
.uw3d23-orbit.uw3d24-transition-none .uw3d23-orbit__panel{animation:none!important}
@keyframes uw3d24-panel-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.uw3d23-orbit.uw3d24-stable-panels .uw3d23-orbit__panel.is-active{animation:none!important}}

/* v0.1.32 — orange active stage, distinct from cyan hover/focus. */
.uw3d23-orbit__point.is-active,
.uw3d23-orbit__point.is-active:hover,
.uw3d23-orbit__point.is-active:focus-visible {
  border-color:var(--or-secondary,#ff6900);
  background:radial-gradient(circle at center,rgba(255,105,0,.15),rgba(2,24,34,.98) 69%);
  box-shadow:0 0 0 3px rgba(255,105,0,.16),0 0 18px color-mix(in srgb,var(--or-secondary,#ff6900) 65%,transparent),inset 0 0 12px rgba(255,105,0,.19);
}
.uw3d23-orbit__point.is-active img{filter:drop-shadow(0 0 4px var(--or-secondary,#ff6900)) drop-shadow(0 0 8px rgba(255,105,0,.38));}
.uw3d23-orbit__point-label{transition:color .25s,text-shadow .25s}
.uw3d23-orbit__point.is-active + .uw3d23-orbit__point-label{color:var(--or-secondary,#ff6900);text-shadow:0 0 12px rgba(255,105,0,.45)}
.uw3d32-orbit-mobile-stage{display:none;text-align:center;gap:5px;flex-direction:column;align-items:center;justify-content:center;max-width:100%;padding:0 12px 8px;}
.uw3d32-orbit-mobile-stage__eyebrow{font:700 9px/1.35 Quantico,sans-serif;letter-spacing:2px;color:var(--or-secondary,#ff6900);}
.uw3d32-orbit-mobile-stage__title{font:700 clamp(16px,5vw,21px)/1.3 Quantico,sans-serif;color:#e6f9ff;overflow-wrap:anywhere;}
.uw3d32-orbit-mobile-stage__subtitle{font:500 11px/1.5 Quantico,sans-serif;color:#94becb;}
@media(max-width:480px){
 .uw3d23-orbit__dial{flex-direction:column;gap:7px;}
 .uw3d32-orbit-mobile-stage{display:flex;}
}
