/* Review-only TiiX orbital service selector. All geometry stays inside this component. */
.tiix-solar {
  --solar-cyan:#2fd8ec; --solar-rose:#ff7fae; --solar-violet:#a687f4;
  --solar-mint:#75e5ae; --solar-blue:#2948e8;
  position:relative; isolation:isolate; width:100%; max-width:1120px;
  margin:32px 0 28px; color:#f5f7ff;
}
.tiix-solar *, .tiix-solar *::before, .tiix-solar *::after { box-sizing:border-box; }
.tiix-solar .solar-caption { display:flex; align-items:center; gap:25px; flex-wrap:wrap; padding:0 0 6px; color:#c9d7ec; font-size:12px; line-height:1.6; }
.tiix-solar .solar-caption-pixel { color:var(--solar-cyan); font:8px/1.8 var(--pixel-font,ui-monospace,monospace); letter-spacing:.03em; }
.tiix-solar .solar-stage { position:relative; width:100%; height:400px; overflow:visible; }
.tiix-solar .solar-stage::before { content:""; position:absolute; inset:5% 13% 7%; pointer-events:none; background:radial-gradient(ellipse at 49% 46%,#2fd8ec15,transparent 48%); }
.tiix-solar .solar-orbits { position:absolute; inset:0; width:100%; height:100%; overflow:visible; fill:none; pointer-events:none; }
.tiix-solar .solar-orbits ellipse { stroke:url(#solar-orbit-light); stroke-width:1; opacity:.5; vector-effect:non-scaling-stroke; }
.tiix-solar .solar-orbits .solar-outer-orbit { stroke:#9ba9ef; stroke-dasharray:2 8; opacity:.27; }
.tiix-solar .solar-orbits .solar-orbit-route { stroke:#7f9cff; stroke-width:1.3; opacity:.42; stroke-dasharray:4 9; vector-effect:non-scaling-stroke; }
.tiix-solar.is-blue-selected .solar-orbits .solar-orbit-route { stroke:#a7b7ff; opacity:.9; animation:solar-route-flow 9s linear infinite; }
.tiix-solar .solar-core { position:absolute; z-index:3; left:50%; top:48%; width:152px; text-align:center; display:flex; align-items:center; flex-direction:column; gap:13px; transform:translate(-50%,-50%); outline-offset:10px; }
.tiix-solar .solar-core-glow { position:absolute; width:220px; height:220px; top:-42px; left:calc(50% - 110px); border-radius:50%; background:radial-gradient(circle,#2fd8ec30 0%,#2fd8ec0e 37%,transparent 68%); pointer-events:none; animation:solar-centre-breath 7s ease-in-out infinite; }
.tiix-solar .solar-core-sphere { position:relative; width:136px; height:136px; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 33% 23%,#b8f7ff 0%,#2bcce0 16%,#107b9b 39%,#07243e 72%,#020c1c 100%); box-shadow:inset -14px -14px 19px #000a,inset 2px 2px 3px #c0ffff90,0 0 1px 1px #62dfe85e,0 13px 27px #020b2499,0 0 65px #2fd8ec1a; }
.tiix-solar .solar-core-sphere::before { content:""; position:absolute; inset:11%; border-radius:50%; border:1px solid #a1eaf925; transform:rotate(-28deg) scaleX(.73); }
.tiix-solar .solar-core-sphere img { position:relative; display:block; width:112px; height:auto; max-width:83%; filter:drop-shadow(0 1px 2px #00131e90); }
.tiix-solar .solar-core small { color:#a5edfa; font:7px/1.7 var(--pixel-font,ui-monospace,monospace); letter-spacing:.04em; white-space:nowrap; }
.tiix-solar .solar-planet { --planet-color:var(--solar-cyan); --planet-size:88px; position:absolute; z-index:4; left:12%; top:51%; width:180px; display:flex; flex-direction:column; align-items:center; gap:13px; padding:0; margin:0; border:0; border-radius:0; box-shadow:none; background:none; clip-path:none; color:#edf4ff; font-family:inherit; font-size:13px; font-weight:750; line-height:1.4; letter-spacing:0; text-transform:none; text-align:center; transform:translate(-50%,-50%); isolation:isolate; cursor:pointer; touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
.tiix-solar .solar-planet::before, .tiix-solar .solar-planet::after { content:none; }
.tiix-solar .planet-video { left:31%; top:16%; --planet-size:76px; --planet-color:var(--solar-rose); }
.tiix-solar .planet-social { left:71%; top:16%; --planet-size:92px; --planet-color:var(--solar-violet); }
.tiix-solar .planet-media { left:89%; top:51%; --planet-size:80px; --planet-color:var(--solar-mint); }
.tiix-solar .planet-blue { left:68%; top:77%; --planet-size:90px; --planet-color:#819aff; gap:10px; }
.tiix-solar .planet-visual { display:block; position:relative; width:var(--planet-size); height:var(--planet-size); flex:none; border-radius:50%; animation:solar-world-float 7s ease-in-out infinite; animation-delay:-1s; }
.tiix-solar .planet-video .planet-visual { animation-delay:-3.2s; animation-duration:8s; }
.tiix-solar .planet-social .planet-visual { animation-delay:-5.5s; animation-duration:9s; }
.tiix-solar .planet-media .planet-visual { animation-delay:-2s; animation-duration:7.7s; }
.tiix-solar .planet-blue .planet-visual { animation-delay:-4.5s; animation-duration:8.8s; }
.tiix-solar .planet-visual::after { content:""; position:absolute; inset:-10px; border:1px solid var(--planet-color); border-radius:50%; opacity:0; transform:scale(.85); transition:opacity .22s,transform .3s; }
.tiix-solar .solar-planet:is(:hover,:focus-visible,.is-selected) .planet-visual::after { opacity:.65; transform:scale(1); }
.tiix-solar .solar-planet:focus-visible { outline:2px dashed var(--planet-color); outline-offset:10px; border-radius:3px; }
.tiix-solar .solar-planet:active .planet-surface { scale:.97; }
.tiix-solar .planet-name { position:relative; display:block; width:100%; max-width:180px; text-wrap:balance; text-shadow:0 2px 5px #020c24; transition:color .2s; }
.tiix-solar .solar-planet:is(:hover,.is-selected) .planet-name { color:var(--planet-color); }
.tiix-solar .planet-surface { display:block; position:absolute; inset:0; border-radius:50%; overflow:hidden; background:radial-gradient(circle at 29% 24%,#c5ffff 0%,#2fd8ec 26%,#10a9b8 47%,#075866 71%,#022330 100%); box-shadow:inset -13px -13px 18px #0015229e,inset 2px 2px 4px #e5ffff8c,0 10px 19px #0007,0 0 25px #2fd8ec15; transition:box-shadow .25s,scale .2s; }
.tiix-solar .planet-surface::before { content:""; position:absolute; inset:0; border-radius:50%; opacity:.8; background:repeating-conic-gradient(from 27deg at 68% 27%,transparent 0deg 16deg,#caffff20 19deg 21deg,transparent 24deg 47deg),radial-gradient(ellipse at 31% 34%,transparent 0 12%,#075e7440 13% 16%,transparent 17%),radial-gradient(ellipse at 69% 69%,#e8fffe4a 0 4%,transparent 5%); transform:rotate(-13deg); }
.tiix-solar .planet-surface::after { content:""; position:absolute; inset:0; border-radius:50%; background:radial-gradient(ellipse at 32% 24%,#fff8 0%,#ffffff12 17%,transparent 33%),linear-gradient(125deg,transparent 27%,#0001 50%,#0009 100%); mix-blend-mode:soft-light; }
.tiix-solar .planet-satellite { position:absolute; z-index:2; width:8px; height:8px; right:-10px; top:26%; border-radius:50%; background:radial-gradient(circle at 30% 25%,#fff,var(--planet-color) 45%,#20335f); box-shadow:0 0 11px color-mix(in srgb,var(--planet-color) 30%,transparent); animation:solar-moon-bob 6s ease-in-out infinite; }
.tiix-solar .planet-video .planet-surface { background:radial-gradient(circle at 29% 22%,#ffe4ef 0%,#ff7fae 27%,#d63b85 56%,#5f1456 89%); box-shadow:inset -12px -12px 18px #3c083080,inset 2px 2px 4px #ffdceab3,0 10px 19px #0007; }
.tiix-solar .planet-video .planet-surface::before { background:repeating-linear-gradient(166deg,#ff9ab100 0 12px,#fbd1ff32 13px 19px,#77115030 20px 25px); transform:rotate(-12deg) scale(1.2); }
.tiix-solar .planet-video .planet-visual::before { content:""; position:absolute; z-index:3; inset:19% -21%; border:5px solid #ffc3d16e; border-left-color:#fff0; border-bottom-color:#c2538799; border-radius:50%; transform:rotate(-22deg) scaleY(.5); box-shadow:0 2px 1px #3e144d42; pointer-events:none; }
.tiix-solar .planet-social .planet-surface { background:radial-gradient(circle at 31% 23%,#e3ccff 0%,#aa83ff 24%,#7844ce 51%,#2d175e 90%); box-shadow:inset -12px -12px 20px #170a4199,inset 2px 2px 4px #ebceff9c,0 10px 19px #0007; }
.tiix-solar .planet-social .planet-surface::before { opacity:.85; background:radial-gradient(ellipse at 29% 40%,#ffc4df 0 12%,transparent 13%),radial-gradient(ellipse at 58% 21%,#c8a8ff 0 15%,transparent 16%),radial-gradient(ellipse at 77% 67%,#7be1c8 0 14%,transparent 15%),radial-gradient(ellipse at 40% 84%,#ffa9d1 0 10%,transparent 11%); transform:rotate(-18deg); }
.tiix-solar .planet-social .planet-satellite { width:11px; height:11px; top:12%; right:-13px; background:radial-gradient(circle at 30% 25%,#feffb4,#ffcb57 50%,#7e3c23); }
.tiix-solar .planet-media .planet-surface { background:radial-gradient(circle at 29% 23%,#dbffea 0%,#75e5ae 24%,#36af89 52%,#0b4b59 88%); box-shadow:inset -12px -12px 18px #0439459e,inset 2px 2px 4px #dfffe58c,0 10px 19px #0007; }
.tiix-solar .planet-media .planet-surface::before { background:linear-gradient(90deg,transparent 25%,#d1f29c70 25% 43%,transparent 43% 62%,#134e5729 62% 77%,transparent 77%),linear-gradient(0deg,transparent 20%,#1f6e6838 20% 34%,transparent 34% 48%,#b9f1ba6b 48% 63%,transparent 63%); background-size:35px 29px,29px 35px; transform:rotate(16deg) scale(1.4); opacity:.5; }
.tiix-solar .planet-media .planet-satellite { width:6px; height:6px; right:-14px; top:45%; }
.tiix-solar .planet-blue .planet-surface { background:radial-gradient(circle at 33% 25%,#8eabff 0%,#3459f5 25%,#2848e8 43%,#1125a4 74%,#050e4a 100%); box-shadow:inset -13px -13px 18px #040e4d9e,inset 2px 2px 3px #b6c9ff88,0 10px 19px #0007,0 0 38px #2948e840; }
.tiix-solar .planet-blue .planet-surface::before { background:radial-gradient(ellipse at 62% 62%,#05156d70 0 4%,transparent 5%),radial-gradient(ellipse at 41% 70%,#94a4ff38 0 8%,transparent 9%); opacity:.55; }
.tiix-solar .planet-blue .planet-visual::before { content:""; position:absolute; z-index:-1; inset:12% -24%; border:10px solid #e9e7dd; border-right-color:#b3b9c8; border-bottom-color:#7381b8; border-radius:50%; transform:rotate(-27deg) scaleY(.53); box-shadow:0 3px 4px #030a3b7a,inset 0 1px 0 #fff; transition:transform .6s; }
.tiix-solar .planet-blue:is(:hover,.is-selected) .planet-visual::before { transform:rotate(-16deg) scaleY(.58); }
.tiix-solar .planet-blue .planet-satellite { width:13px; height:13px; background:radial-gradient(circle at 29% 23%,#fff,#e8e5d8 52%,#8c91b1); right:-22px; top:10%; }
.tiix-solar .planet-blue .planet-name { display:flex; flex-direction:column; align-items:center; gap:7px; max-width:185px; }
.tiix-solar .solar-blue-logo { display:block; width:110px; height:auto; padding:5px 8px; background:#eeede6; box-shadow:0 3px 12px #0207242b; transform:rotate(-2deg); }
.tiix-solar .planet-caption { font-size:9px; line-height:1.45; color:#e5e6ff; font-weight:500; letter-spacing:.02em; }
.tiix-solar .solar-focus { display:flex; align-items:center; justify-content:space-between; gap:36px; min-height:132px; border-top:1px solid #69c3e333; padding:22px 0 3px 22px; position:relative; transition:background .35s,color .35s,padding .35s; }
.tiix-solar .solar-focus::before { content:""; position:absolute; top:23px; bottom:17px; left:0; width:3px; background:var(--selected-planet,var(--solar-cyan)); }
.tiix-solar .solar-focus-copy { flex:1 1 auto; min-width:0; max-width:730px; }
.tiix-solar .solar-focus-kicker { display:block; color:var(--selected-planet,var(--solar-cyan)); font:7px/1.8 var(--pixel-font,ui-monospace,monospace); letter-spacing:.025em; margin-bottom:8px; }
.tiix-solar .solar-focus h3 { margin:0 0 6px; color:inherit; font-family:inherit; font-size:22px; line-height:1.2; font-weight:800; letter-spacing:-.025em; text-shadow:none; }
.tiix-solar .solar-focus p { margin:0; color:#c7d3e7; font:400 13px/1.65 Montserrat,Arial,sans-serif; max-width:670px; }
.tiix-solar .solar-focus-cta { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; padding:13px 18px; min-height:46px; border:1px solid #2fd8ec80; border-radius:3px; color:#88edff; font-size:12px; line-height:1.4; font-weight:750; text-decoration:none; transition:background .2s,color .2s,border-color .2s; }
.tiix-solar .solar-focus-cta:hover { background:#2fd8ec; color:#071b35; border-color:#2fd8ec; }
.tiix-solar.is-blue-selected .solar-focus { background:#eeede6; color:#181b2a; padding:22px 24px; border-top-color:#eeede6; }
.tiix-solar.is-blue-selected .solar-focus::before { left:0; top:0; bottom:0; background:#2948e8; }
.tiix-solar.is-blue-selected .solar-focus-kicker { color:#2948e8; }
.tiix-solar.is-blue-selected .solar-focus p { color:#3e4354; }
.tiix-solar.is-blue-selected .solar-focus-cta { color:#fff; background:#2948e8; border-color:#2948e8; }
.tiix-solar.is-blue-selected .solar-focus-cta:hover { background:#1735ca; }
@keyframes solar-centre-breath { 0%,100% { opacity:.7; scale:.97; } 50% { opacity:1; scale:1.05; } }
@keyframes solar-world-float { 0%,100% { translate:0 0; } 50% { translate:0 -4px; } }
@keyframes solar-moon-bob { 0%,100% { translate:0 0; } 50% { translate:2px 5px; } }
@keyframes solar-route-flow { to { stroke-dashoffset:-130; } }
@media (min-width:761px) and (max-width:1000px) {
  .tiix-solar .solar-stage { height:380px; }
  .tiix-solar .solar-planet { width:150px; font-size:12px; --planet-size:76px; }
  .tiix-solar .planet-social { --planet-size:82px; }
  .tiix-solar .planet-video { --planet-size:68px; }
  .tiix-solar .planet-media { --planet-size:70px; }
  .tiix-solar .planet-blue { --planet-size:80px; }
  .tiix-solar .solar-core { width:130px; }
  .tiix-solar .solar-core-sphere { width:120px; height:120px; }
  .tiix-solar .solar-focus h3 { font-size:20px; }
}
@media (max-width:760px) {
  .tiix-solar { margin:28px 0 25px; }
  .tiix-solar .solar-caption { gap:6px; align-items:flex-start; flex-direction:column; font-size:11px; }
  .tiix-solar .solar-caption-pixel { font-size:7px; }
  .tiix-solar .solar-stage { height:438px; margin-top:10px; }
  .tiix-solar .solar-orbits { inset:-28px 0 auto; height:410px; opacity:.55; }
  .tiix-solar .solar-orbits .solar-orbit-route { d:path("M560 190 C600 280 740 310 560 350"); }
  .tiix-solar .solar-core { left:50%; top:40%; width:110px; gap:11px; }
  .tiix-solar .solar-core-sphere { width:96px; height:96px; }
  .tiix-solar .solar-core-sphere img { width:82px; }
  .tiix-solar .solar-core small { font-size:6px; letter-spacing:0; }
  .tiix-solar .solar-core-glow { width:160px; height:160px; top:-31px; left:calc(50% - 80px); }
  .tiix-solar .solar-planet { width:132px; gap:10px; font-size:13px; line-height:1.4; --planet-size:66px; }
  .tiix-solar .planet-name { max-width:132px; }
  .tiix-solar .planet-concepts { left:20%; top:15%; }
  .tiix-solar .planet-video { left:80%; top:15%; --planet-size:64px; }
  .tiix-solar .planet-social { left:19%; top:56%; --planet-size:71px; }
  .tiix-solar .planet-media { left:81%; top:56%; --planet-size:65px; }
  .tiix-solar .planet-blue { left:51%; top:80%; --planet-size:76px; gap:8px; }
  .tiix-solar .planet-blue .planet-name { gap:6px; }
  .tiix-solar .solar-blue-logo { width:101px; }
  .tiix-solar .planet-caption { font-size:8px; }
  .tiix-solar .planet-satellite { right:-6px; width:6px; height:6px; }
  .tiix-solar .planet-social .planet-satellite { right:-8px; width:8px; height:8px; }
  .tiix-solar .planet-blue .planet-satellite { width:9px; height:9px; right:-15px; }
  .tiix-solar .planet-visual::after { inset:-7px; }
  .tiix-solar .solar-focus { min-height:171px; display:flex; align-items:flex-start; flex-direction:column; gap:16px; padding:19px 0 2px 15px; }
  .tiix-solar .solar-focus::before { top:20px; bottom:9px; width:2px; }
  .tiix-solar .solar-focus-copy { width:100%; }
  .tiix-solar .solar-focus h3 { font-size:19px; line-height:1.25; margin-bottom:8px; }
  .tiix-solar .solar-focus p { font-size:13px; line-height:1.6; }
  .tiix-solar .solar-focus-kicker { font-size:6px; }
  .tiix-solar .solar-focus-cta { min-height:43px; padding:11px 15px; font-size:11px; }
  .tiix-solar.is-blue-selected .solar-focus { padding:20px 18px; }
}
@media (max-width:359px) {
  .tiix-solar .solar-planet { width:116px; font-size:12px; }
  .tiix-solar .planet-name { max-width:116px; }
  .tiix-solar .solar-core-sphere { width:88px; height:88px; }
  .tiix-solar .solar-core-sphere img { width:75px; }
  .tiix-solar .solar-core { width:100px; }
}
@media (prefers-reduced-motion:reduce) {
  html:not(.motion-enabled) .tiix-solar *, html:not(.motion-enabled) .tiix-solar *::before, html:not(.motion-enabled) .tiix-solar *::after { animation:none!important; transition:none!important; }
}
.motion-paused .tiix-solar *, .motion-paused .tiix-solar *::before, .motion-paused .tiix-solar *::after { animation-play-state:paused!important; }
@media print {
  .tiix-solar .solar-stage { break-inside:avoid; }
  .tiix-solar *, .tiix-solar *::before, .tiix-solar *::after { animation:none!important; }
}

/* Keep the travelling point, while giving the central TiiX wordmark room. */
body.solar-map-in-view #dot-speech { opacity:0 !important; visibility:hidden; pointer-events:none; }

/* Solar story, second proposal: the turquoise source and its living routes. */
.tiix-solar .solar-caption { align-items:baseline; column-gap:25px; row-gap:10px; }
.tiix-solar .solar-caption-pixel {
  font-family:var(--solar-cinematic-font,Montserrat),Arial,sans-serif; font-size:clamp(15px,1.8vw,23px);
  font-weight:900; line-height:1.25; letter-spacing:.105em; text-transform:uppercase;
  color:#f3fcff; -webkit-text-stroke:.7px #d9faff;
  text-shadow:0 3px 0 #0d395b,0 0 25px #2fd8ec24;
}
.tiix-solar .solar-caption > span:last-child {
  font-family:var(--solar-cinematic-font,Montserrat),Arial,sans-serif; font-size:11px; font-weight:750;
  letter-spacing:.12em; text-transform:uppercase; color:#b6c9e6;
}
.tiix-solar .solar-core { gap:0; }
.tiix-solar .solar-core-glow {
  width:250px; height:250px; top:-57px; left:calc(50% - 125px);
  background:radial-gradient(circle,#2fd8ec4a 18%,#2fd8ec26 35%,#2fd8ec0b 54%,transparent 72%);
  animation:solar-centre-breath 8s ease-in-out infinite;
}
.tiix-solar .solar-core-sphere {
  background:radial-gradient(circle at 33% 24%,#e3ffff 0%,#9af6ff 7%,#2fd8ec 27%,#1cbed7 60%,#0b7f9d 88%,#064965 100%);
  box-shadow:inset -7px -9px 16px #00577788,inset 2px 2px 4px #e5ffffb3,0 0 5px #b2faff99,0 0 27px #2fd8ec52,0 0 75px #2fd8ec29;
}
.tiix-solar .solar-core-sphere::before {
  inset:-25px; z-index:-1; border:0; transform:none; opacity:.74;
  background:repeating-conic-gradient(from 8deg,#2fd8ec00 0deg 10deg,#6eeaf969 11deg 12deg,#2fd8ec00 14deg 23deg);
  -webkit-mask:radial-gradient(circle,transparent 47%,#000 49%,transparent 69%);
  mask:radial-gradient(circle,transparent 47%,#000 49%,transparent 69%);
  animation:solar-corona-turn 70s linear infinite;
}
.tiix-solar .solar-core-sphere::after {
  content:""; position:absolute; inset:-9px; border-radius:50%; pointer-events:none;
  background:conic-gradient(from 12deg,#2fd8ec00,#a7faff96 9%,#2fd8ec00 17%,#2fd8ec00 32%,#b4faff70 41%,#2fd8ec00 53%,#2fd8ec00 76%,#97f7ff78 88%,#2fd8ec00);
  -webkit-mask:radial-gradient(circle,transparent 60%,#000 61%,transparent 72%);
  mask:radial-gradient(circle,transparent 60%,#000 61%,transparent 72%);
  animation:solar-corona-turn 40s linear reverse infinite;
}
.tiix-solar .solar-core-sphere img { z-index:1; filter:drop-shadow(0 1px 1px #003650) drop-shadow(0 0 4px #003650aa); }
.tiix-solar .solar-orbits ellipse { stroke-width:1.45; opacity:.78; }
.tiix-solar .solar-orbits .solar-outer-orbit { stroke:#91a9ef; stroke-width:1.1; stroke-dasharray:3 7; opacity:.57; }
.tiix-solar .solar-orbits .solar-orbit-route { stroke:#99b3ff; stroke-width:1.5; opacity:.73; }
.tiix-solar .planet-blue { text-decoration:none; }
.tiix-solar .planet-blue .planet-surface {
  background:radial-gradient(circle at 32% 24%,#96afff 0%,#4968f2 13%,#2948e8 36%,#2948e8 57%,#152b9b 81%,#06104d 100%);
}
.tiix-solar .planet-blue .planet-caption {
  color:#fff6d9; font-size:10px; line-height:1.4; letter-spacing:.055em;
  font-weight:800; text-shadow:0 2px 7px #030b24;
}
.tiix-solar .planet-blue:focus-visible { outline:2px dashed #a9bdff; outline-offset:12px; border-radius:3px; }
.tiix-solar .solar-traffic {
  position:absolute; z-index:1; inset:0; width:100%; height:100%; overflow:visible;
  pointer-events:none; fill:none; contain:layout style;
}
.tiix-solar .solar-traffic-mobile { display:none; }
.tiix-solar .solar-craft { offset-distance:var(--flight-rest,0%); offset-rotate:auto; transform-box:fill-box; transform-origin:50% 50%; }
.tiix-solar .solar-voyager {
  offset-path:path("M130 195 C130 35 920 15 995 187 C1080 365 180 390 130 195 Z");
  animation:solar-craft-flight 28s linear infinite;
}
.tiix-solar .solar-voyager.voyager-two { --flight-rest:48%; animation-delay:-13.4s; animation-duration:32s; }
.tiix-solar .solar-fighter-a {
  offset-path:path("M898 88 C918 61 972 69 991 103 C1018 150 967 170 929 145 C909 131 916 104 898 88 Z");
  animation:solar-craft-flight 13s linear infinite;
}
.tiix-solar .solar-fighter-b {
  offset-path:path("M1003 151 C974 169 917 139 916 113 C912 66 959 67 986 95 C1003 113 985 137 1003 151 Z");
  animation:solar-craft-flight 15s linear infinite;
}
.tiix-solar .solar-craft.ship-two { --flight-rest:33%; animation-delay:-4.5s; }
.tiix-solar .solar-craft.ship-three { --flight-rest:66%; animation-delay:-9.1s; }
.tiix-solar .solar-laser { stroke:#b7f8ff; stroke-width:1.3; stroke-linecap:round; opacity:0; animation:solar-laser-pass 7.8s ease-out infinite; }
.tiix-solar .solar-laser.shot-b { stroke:#ffadc8; animation-delay:-2.7s; animation-duration:9.1s; }
.tiix-solar .solar-laser.shot-c { stroke:#c6d5ff; animation-delay:-5.1s; animation-duration:8.4s; }
.tiix-solar .solar-engine { fill:#b4fbff; opacity:.85; }
.tiix-solar .fleet-rose .solar-engine { fill:#ffc4dd; }
@keyframes solar-corona-turn { to { rotate:360deg; } }
@keyframes solar-craft-flight { from { offset-distance:0%; } to { offset-distance:100%; } }
/* One soft pass per cycle, rather than a flash train. */
@keyframes solar-laser-pass { 0%,16%,28%,100% { opacity:0; } 19%,22% { opacity:.85; } }
@media (max-width:760px) {
  .tiix-solar .solar-caption { gap:8px; }
  .tiix-solar .solar-caption-pixel { font-size:14px; line-height:1.35; letter-spacing:.065em; -webkit-text-stroke:.45px #d9faff; }
  .tiix-solar .solar-caption > span:last-child { max-width:290px; font-size:9px; line-height:1.6; letter-spacing:.105em; }
  .tiix-solar .solar-core-glow { width:185px; height:185px; top:-44px; left:calc(50% - 92.5px); }
  .tiix-solar .solar-core-sphere::before { inset:-24px; }
  .tiix-solar .solar-core-sphere::after { inset:-8px; }
  .tiix-solar .solar-orbits { opacity:.82; }
  .tiix-solar .planet-blue .planet-caption { font-size:9px; letter-spacing:.025em; }
  .tiix-solar .solar-traffic-desktop { display:none; }
  .tiix-solar .solar-traffic-mobile { display:block; }
  .tiix-solar .solar-voyager { offset-path:path("M73 88 C15 131 18 245 74 283 C148 341 294 315 311 240 C334 125 259 49 168 70 C115 78 93 72 73 88 Z"); animation-duration:32s; }
  .tiix-solar .solar-voyager.voyager-two { animation-delay:-15s; animation-duration:35s; }
  .tiix-solar .solar-fighter-a { offset-path:path("M137 251 C157 224 207 228 224 251 C235 275 191 287 166 276 C151 270 148 258 137 251 Z"); animation-duration:14s; }
  .tiix-solar .solar-fighter-b { offset-path:path("M219 277 C194 285 142 262 141 246 C145 219 194 225 211 247 C220 258 208 271 219 277 Z"); animation-duration:16s; }
  .tiix-solar .solar-craft.ship-two { animation-delay:-5s; }
  .tiix-solar .solar-craft.ship-three { animation-delay:-10s; }
}
@media (prefers-reduced-motion:reduce) {
  html:not(.motion-enabled) .tiix-solar .solar-craft { animation:none!important; }
  html:not(.motion-enabled) .tiix-solar .solar-laser { animation:none!important; opacity:0; }
}
.motion-paused .tiix-solar .solar-craft,
.motion-paused .tiix-solar .solar-laser,
.motion-paused .tiix-solar .solar-core-sphere::before,
.motion-paused .tiix-solar .solar-core-sphere::after { animation-play-state:paused!important; }

.tiix-solar .solar-voyager-trail { fill:none; stroke:#68cfe8; stroke-width:1; opacity:.36; vector-effect:non-scaling-stroke; }

/* Original wordmark in the introductory sentence. */
.solar-inline-blue { display:inline-block; vertical-align:-.16em; white-space:nowrap; border:0; text-decoration:none; margin:0 .08em; }
.solar-inline-blue img { display:block; height:1.12em; width:auto; max-width:4.1em; }
.solar-inline-blue:focus-visible { outline:2px dashed #8da7ff; outline-offset:5px; }

/* V3: faceted miniature fleets, layered in depth. No panel or modal interaction. */
.tiix-solar .solar-planet[href] { text-decoration:none; }
.tiix-solar .solar-planet[href] .planet-name { transition:color .2s,text-shadow .2s; }
.tiix-solar .solar-planet[href]:hover .planet-name { text-shadow:0 0 18px color-mix(in srgb,var(--planet-color) 30%,transparent),0 2px 5px #020c24; }
.tiix-solar .solar-model-defs { position:absolute; width:0; height:0; overflow:hidden; pointer-events:none; }
.tiix-solar .solar-orbits .solar-orbit-route { opacity:.2; }
.tiix-solar .solar-main-route { fill:none; stroke:#55dceccc; stroke-width:1.3; stroke-linecap:round; stroke-dasharray:2 7; opacity:.73; animation:solar-route-flow 20s linear infinite; vector-effect:non-scaling-stroke; }
.tiix-solar .solar-main-route-halo { fill:none; stroke:#2948e822; stroke-width:11; opacity:.7; vector-effect:non-scaling-stroke; }
.tiix-solar .solar-depth-far { opacity:.38; filter:blur(.3px); }
.tiix-solar .solar-depth-mid { opacity:.87; }
.tiix-solar .solar-depth-near { opacity:1; filter:drop-shadow(1px 4px 3px #030b1bcc); }
.tiix-solar .solar-craft { transform-box:view-box; transform-origin:0 0; offset-anchor:0px 0px; }
.tiix-solar .solar-model { transform-box:fill-box; transform-origin:center; animation:solar-model-bank 15s ease-in-out infinite; }
.tiix-solar .solar-fleet-rose { --ship-accent:#ff7fae; }
.tiix-solar .solar-fleet-cyan { --ship-accent:#2fd8ec; }
.tiix-solar .solar-depth-near .solar-model { animation-name:solar-near-bank; animation-duration:17s; }
.tiix-solar .solar-depth-far .solar-model { animation-duration:23s; }
.tiix-solar .solar-carrier { opacity:.59; animation:solar-carrier-drift 34s ease-in-out infinite; transform-origin:center; transform-box:fill-box; }
.tiix-solar .solar-carrier::after { content:none; }
.tiix-solar .solar-ferry {
  offset-path:path("M560 195 C647 185 696 250 760 278");
  offset-rotate:auto; animation:solar-ferry-outbound 14s linear infinite;
}
.tiix-solar .solar-ferry-return {
  offset-path:path("M560 195 C647 185 696 250 760 278");
  offset-rotate:auto 180deg; animation:solar-ferry-inbound 18s linear -5s infinite;
}
.tiix-solar .solar-voyager { animation-duration:42s; }
.tiix-solar .solar-fighter-a {
  offset-path:path("M878 95 C897 63 975 77 1001 113 C1022 149 967 173 926 145 C905 131 906 101 878 95 Z");
  animation-duration:18s;
}
.tiix-solar .solar-fighter-b {
  offset-path:path("M1005 151 C974 180 913 151 902 120 C888 83 948 63 987 98 C1006 116 989 140 1005 151 Z");
  animation-duration:21s;
}
.tiix-solar .solar-craft.ship-two { --flight-rest:36%; animation-delay:-7s; }
.tiix-solar .solar-craft.ship-three { --flight-rest:71%; animation-delay:-14s; }
.tiix-solar .solar-local-shot { stroke:#a8f6ff; stroke-width:1.2; fill:none; stroke-linecap:round; stroke-dasharray:11 52; stroke-dashoffset:20; opacity:0; animation:solar-streak-pass 8.2s linear infinite; vector-effect:non-scaling-stroke; }
.tiix-solar .solar-local-shot.shot-rose { stroke:#ffb1d1; animation-delay:-3.7s; animation-duration:9.4s; }
.tiix-solar .solar-local-shot.shot-white { stroke:#ecf1ff; stroke-width:1; animation-delay:-6s; animation-duration:10.7s; }
.tiix-solar .solar-impact { fill:#c2f5ff; opacity:0; transform-origin:center; transform-box:fill-box; animation:solar-impact-bloom 10.4s ease-out -3s infinite; }
.tiix-solar .solar-impact.impact-rose { fill:#ffb7cf; animation-duration:12.1s; animation-delay:-7s; }
.tiix-solar.solar-ready:not(.solar-in-view) .solar-craft,
.tiix-solar.solar-ready:not(.solar-in-view) .solar-model,
.tiix-solar.solar-ready:not(.solar-in-view) .solar-local-shot,
.tiix-solar.solar-ready:not(.solar-in-view) .solar-impact,
.tiix-solar.solar-ready:not(.solar-in-view) .solar-carrier { animation-play-state:paused; }
@keyframes solar-model-bank { 0%,100% { transform:rotate(-4deg) skewY(3deg) scale(.94); } 38% { transform:rotate(3deg) skewY(-3deg) scale(1.06); } 72% { transform:rotate(-1deg) skewY(1deg) scale(.98); } }
@keyframes solar-near-bank { 0%,100% { transform:rotate(-5deg) skewY(3deg) scale(.81); } 48% { transform:rotate(6deg) skewY(-5deg) scale(1.15); } }
@keyframes solar-carrier-drift { 0%,100% { translate:0 0; rotate:-3deg; } 50% { translate:4px -6px; rotate:0deg; } }
/* Endpoints disappear behind the sun and the blue planet before looping. */
@keyframes solar-ferry-outbound { from { offset-distance:0%; } to { offset-distance:100%; } }
@keyframes solar-ferry-inbound { from { offset-distance:100%; } to { offset-distance:0%; } }
@keyframes solar-streak-pass { 0%,16%,31%,100% { opacity:0; stroke-dashoffset:20; } 20% { opacity:.8; stroke-dashoffset:10; } 26% { opacity:.7; stroke-dashoffset:-22; } 30% { opacity:0; stroke-dashoffset:-35; } }
@keyframes solar-impact-bloom { 0%,23%,35%,100% { opacity:0; scale:.25; } 27% { opacity:.46; scale:.7; } 34% { opacity:0; scale:1.2; } }
@media (max-width:760px) {
  .tiix-solar .solar-main-route { stroke-width:1.1; opacity:.7; }
  .tiix-solar .solar-main-route-halo { stroke-width:7; }
  .tiix-solar .solar-depth-far { opacity:.32; filter:none; }
  .tiix-solar .solar-depth-near { filter:none; }
  .tiix-solar .solar-ferry { offset-path:path("M180 175 C204 216 223 270 184 320"); animation-duration:18s; }
  .tiix-solar .solar-fighter-a { offset-path:path("M135 248 C150 224 205 227 224 253 C236 280 186 288 161 270 C148 260 148 253 135 248 Z"); animation-duration:20s; }
  .tiix-solar .solar-fighter-b { offset-path:path("M221 278 C197 288 142 266 140 245 C142 219 195 225 213 247 C225 263 208 272 221 278 Z"); animation-duration:23s; }
  .tiix-solar .solar-craft.ship-two { animation-delay:-10s; }
  .tiix-solar .solar-carrier { opacity:.45; }
  .tiix-solar .solar-model { animation-duration:19s; }
}
@media (prefers-reduced-motion:reduce) {
  html:not(.motion-enabled) .tiix-solar .solar-local-shot,
  html:not(.motion-enabled) .tiix-solar .solar-impact { opacity:0; animation:none!important; }
}
.motion-paused .tiix-solar .solar-main-route,
.motion-paused .tiix-solar .solar-craft,
.motion-paused .tiix-solar .solar-model,
.motion-paused .tiix-solar .solar-local-shot,
.motion-paused .tiix-solar .solar-impact,
.motion-paused .tiix-solar .solar-carrier { animation-play-state:paused!important; }

/* Short, local laser passes in the miniature battle. */
.tiix-solar .solar-local-shot { stroke:#82ffba; }
.tiix-solar .solar-local-shot.shot-rose { stroke:#ff9a76; }
