/* Nube Clara, tercera revisión: claridad, respiración y proyección. */
.constellation-hero{--journey-duration:2400ms;--journey-ease:cubic-bezier(.37,.02,.19,1)}
.cloud-island{transition:left calc(var(--journey-duration)*.9) var(--journey-ease),top var(--journey-duration) cubic-bezier(.4,.03,.21,1),width calc(var(--journey-duration)*.86) var(--journey-ease),height calc(var(--journey-duration)*.86) var(--journey-ease),filter 1.4s,opacity 1.4s}
.constellation-hero .hero-sky{transition:transform 3.1s cubic-bezier(.35,.06,.2,1)}
.constellation-hero.is-travelling .hero-sky{transform:scale(1.047) translate(calc(var(--travel-direction,1)*-9px),-2px)}
.island-panel{transition:opacity .65s,transform 1.25s var(--journey-ease);transform:translateY(9px)}
.is-active .island-panel{transition-delay:.45s;transform:translateY(0)}
.island-kicker{display:flex;align-items:center;gap:9px;font-size:8px;letter-spacing:.16em;color:#70929b;line-height:1.6;margin-bottom:12px}
.island-kicker i{width:4px;height:4px;border-radius:50%;background:#82aca8;box-shadow:0 0 0 4px #aacac321}
.island-title{font-family:var(--sans);font-size:40px;font-weight:550;line-height:1.04;letter-spacing:-.052em;margin:0;color:#264750;text-wrap:balance}
.island-slogan{font-size:17px;line-height:1.45;letter-spacing:-.025em;color:#789299;margin-top:14px}
.island-slogan em{font-size:1.16em;color:#6b8b91}
.island-description{margin-top:17px;font-size:11.5px;line-height:1.85}
.island-tags{margin-top:15px}.island-actions{gap:17px;margin-top:21px;flex-wrap:wrap}
.island-actions .button{font-size:10px;padding:15px 18px;gap:17px}
.island-more{font-size:12px;line-height:1.5;min-height:34px;padding:7px 0;color:#4e7881;border-bottom-color:#96b6b8}
.island-more:hover{color:#284f5a;border-bottom-color:#284f5a}
.orbit-select{opacity:.94;color:#325965}
.orbit-select::after{background:radial-gradient(ellipse,#ffffffed,transparent 76%);filter:blur(6px)}
.satellite-copy{display:flex;align-items:center;justify-content:center;flex-direction:column;animation:satellite-text-drift 13s ease-in-out infinite;animation-delay:var(--drift-delay,0s)}
.orbit-select:hover .satellite-copy,.orbit-select:focus-visible .satellite-copy{animation-play-state:paused}
.satellite-title{font-size:14px;font-weight:550;line-height:1.3;letter-spacing:-.025em;text-shadow:0 1px 10px #fff}
.satellite-note{font-size:8.5px;line-height:1.5;color:#62818c;letter-spacing:0;text-shadow:0 1px 8px #fff;margin-top:7px;max-width:200px}
.satellite-number{font-size:7px;color:#76959d}.satellite-icon{opacity:.9}
.hologram-reveal{position:relative;isolation:isolate;opacity:0;transform:translateY(25px);transition:opacity .4s,transform .65s}
.is-active.is-projecting .hologram-reveal{opacity:1;transform:translateY(0);transition:opacity .7s,transform 1.5s var(--journey-ease)}
.hologram-reveal .island-visual{clip-path:inset(100% 0 0 0 round 15px);animation:none;transform:rotate(-3deg);border-color:#d2e8e8aa;box-shadow:0 14px 35px #3e7b9314,0 0 25px #b9e3e215}
.is-active.is-projecting .hologram-reveal .island-visual{animation:projection-unfold 1.65s 0s var(--journey-ease) both,projection-float 13s 1.65s ease-in-out infinite}
.hologram-reveal .island-visual::after{display:none}
.hologram-scan{position:absolute;left:6px;right:6px;top:100%;height:1px;background:linear-gradient(90deg,transparent,#9cd4dbcc 35%,#d7f2f2 50%,#9cd4dbcc 65%,transparent);box-shadow:0 0 12px #bce7ec;opacity:0;pointer-events:none;z-index:3}
.is-active.is-projecting .hologram-scan{animation:projection-scan 1.65s 0s var(--journey-ease) both}
.projection-base{position:absolute;width:78%;left:11%;height:8px;bottom:-20px;border:1px solid #b4d8d9a1;border-radius:50%;background:radial-gradient(ellipse,#d7eeee75,transparent 75%);box-shadow:0 0 18px #b7e1e425;opacity:0;transform:scaleX(.4);transition:opacity .7s,transform 1s}
.is-active.is-projecting .projection-base{opacity:.85;transform:scaleX(1);transition-delay:0s}
.projection-beam{position:absolute;inset:12% -6% -17px;background:linear-gradient(to top,#b6e2e527,transparent 72%);clip-path:polygon(2% 0,98% 0,78% 100%,22% 100%);filter:blur(8px);transform-origin:bottom;scale:1 .2;opacity:0;z-index:-1;transition:opacity 1.2s,scale 1.6s var(--journey-ease)}
.is-active.is-projecting .projection-beam{opacity:1;scale:1 1;transition-delay:0s}
.is-travelling .transit-mist::before{animation:soft-mist-passage var(--journey-duration) var(--journey-ease) both;filter:blur(18px)}
.is-travelling .transit-mist::after{animation:soft-mist-return calc(var(--journey-duration)*1.04) var(--journey-ease) both;filter:blur(25px)}
.detail-body h2{font-size:38px;line-height:1.08}.detail-slogan{font-family:var(--serif);font-style:italic;font-size:21px;color:#789098;margin:-7px 0 22px;line-height:1.4}
@keyframes satellite-text-drift{0%,100%{translate:0 1px}50%{translate:1px -3px}}
@keyframes projection-unfold{0%{clip-path:inset(100% 0 0 0 round 15px);filter:blur(3px);opacity:.1}25%{opacity:.75}65%{filter:blur(.4px)}100%{clip-path:inset(0 0 0 0 round 15px);filter:blur(0);opacity:1}}
@keyframes projection-scan{0%{top:100%;opacity:0}12%{opacity:.65}82%{opacity:.4}100%{top:0;opacity:0}}
@keyframes projection-float{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -3px;rotate:.5deg}}
@keyframes soft-mist-passage{0%{opacity:0;transform:translate(-72%,5%) scale(1.25) rotate(-3deg)}32%{opacity:.28}65%{opacity:.23}100%{opacity:0;transform:translate(80%,-5%) scale(1.45) rotate(2deg)}}
@keyframes soft-mist-return{0%{opacity:0;transform:translate(80%,8%) scale(1.1) rotate(4deg)}40%{opacity:.19}100%{opacity:0;transform:translate(-65%,-8%) scale(1.4) rotate(-2deg)}}
@media(min-width:1200px){.island-panel{width:720px;gap:34px;grid-template-columns:1.12fr 1fr}.island-title{font-size:41px}.island-description{font-size:12px;max-width:350px}.island-slogan{font-size:18px}.satellite-title{font-size:14.5px}.satellite-note{font-size:9px}.island-more{font-size:12px}}
@media(min-width:1550px){.island-panel{width:780px;gap:38px}.island-title{font-size:47px}.island-description{font-size:12.5px;max-width:370px}.island-slogan{font-size:20px}.satellite-title{font-size:16px}.satellite-note{font-size:9.5px}.island-more{font-size:13px}}
@media(max-width:1199px){.island-title{font-size:35px}.island-slogan{font-size:16px}.island-description{font-size:10.5px}.island-more{font-size:11px}.island-actions{gap:13px}.island-actions .button{font-size:9px;padding:14px 16px}.satellite-title{font-size:12px}.satellite-note{font-size:8px;max-width:175px}}
@media(max-width:900px) and (min-width:681px){.island-panel{width:565px;gap:24px}.island-title{font-size:34px}.island-slogan{font-size:15px}.island-description{font-size:10.5px}.island-actions{gap:12px}.island-actions .button{font-size:8.5px;padding:13px 14px}.island-more{font-size:10px}.cloud-island[data-slot='1']{--x:15%!important;--y:29%!important}.cloud-island[data-slot='2']{--x:15%!important;--y:78%!important}.cloud-island[data-slot='3']{--x:85%!important;--y:78%!important}.cloud-island[data-slot='4']{--x:85%!important;--y:29%!important}.satellite-title{font-size:11.5px}.satellite-note{font-size:7.5px;max-width:160px}.satellite-number{font-size:6px}}
@media(max-width:680px){.hero.constellation-hero{height:1140px;min-height:1140px}.cloud-island.is-active{top:54%}.island-panel{top:48%;width:calc(100vw - 64px);max-width:350px;gap:26px}.island-kicker{justify-content:center;font-size:6.5px;margin-bottom:12px}.island-title{font-size:32px;line-height:1.05;letter-spacing:-.045em}.island-slogan{font-size:15px;line-height:1.4;margin-top:12px}.island-description{font-size:10.5px;line-height:1.85;margin-top:15px}.island-actions{justify-content:center;gap:14px;margin-top:18px}.island-actions .button{font-size:9.5px;padding:14px 16px;gap:13px}.island-more{font-size:11px;min-height:36px}.island-tags{margin-top:12px}.satellite-title{font-size:11px;font-weight:550;max-width:155px}.satellite-note{font-size:6.7px;max-width:145px;line-height:1.5;margin-top:6px}.satellite-number{font-size:5.5px}.orbit-select{opacity:.94}.cloud-island[data-slot='1']{--x:19%!important;--y:27%!important}.cloud-island[data-slot='2']{--x:16%!important;--y:80%!important}.cloud-island[data-slot='3']{--x:84%!important;--y:80%!important}.cloud-island[data-slot='4']{--x:81%!important;--y:27%!important}.hologram-reveal{max-width:215px;width:100%;margin:auto}.hologram-reveal .island-visual{width:100%;max-width:100%}.projection-base{bottom:-14px;height:6px}.projection-beam{bottom:-12px}.scene-step{width:30px;height:30px}.scene-tab{font-size:7.5px;min-height:32px;padding:9px 11px}.scene-controls{min-height:46px}.detail-body h2{font-size:31px}.detail-slogan{font-size:19px;margin-bottom:19px}}
@media(max-width:370px){.island-panel{width:calc(100vw - 48px)}.island-title{font-size:29px}.island-slogan{font-size:14px}.island-description{font-size:10px}.satellite-title{font-size:10px;max-width:140px}.satellite-note{font-size:6.3px;max-width:130px}.island-actions{gap:12px}.island-actions .button{font-size:9px;padding:13px 14px}.island-more{font-size:10px}.hologram-reveal{max-width:195px}}
@media(prefers-reduced-motion:reduce){.satellite-copy,.hologram-reveal .island-visual,.hologram-scan{animation:none!important}.hologram-reveal,.island-panel,.cloud-island,.projection-beam,.projection-base{transition:none!important}.is-active.is-projecting .hologram-reveal{opacity:1;transform:none}.is-active.is-projecting .hologram-reveal .island-visual{clip-path:none!important;filter:none!important}.hologram-scan{display:none}.is-active .island-panel{transition-delay:0s}.is-active.is-projecting .projection-base{transform:none}}

/* Fine optical fibers echo the cloud constellation, with slow data pulses. */
.constellation-map .map-wire{stroke:#6f9eaa70;stroke-width:1;stroke-linecap:round}
.constellation-map .map-link{stroke:#ffffffb3;stroke-width:2.4;stroke-dasharray:none}
.constellation-map .map-signal{stroke:#589eaf;stroke-width:1.4;stroke-dasharray:10 1450;animation-duration:22s}
.constellation-map circle{fill:#7daeba;stroke:#edf9f7;stroke-width:1.8}
.projection-network{position:absolute;inset:-12% -10% -13%;width:120%;height:125%;fill:none;stroke:#7eb5c2;stroke-width:.85;pointer-events:none;z-index:-1;opacity:0;transition:opacity 1.2s}
.is-active.is-projecting .projection-network{opacity:.7}
.projection-network .projection-wire{stroke:#8bb8c177;stroke-linecap:round}
.projection-network .projection-data{stroke:#6ca9b7;stroke-dasharray:7 720;animation:projection-data-flow 17s linear infinite}
.projection-network circle{fill:#a3c8ca;stroke:#f1fafb;stroke-width:1.2}
.projection-network .projection-tick{stroke:#8bb8c188;stroke-width:.6}
.scene-out-of-view .projection-data,.scene-out-of-view .constellation-map .map-signal{animation-play-state:paused}
@keyframes projection-data-flow{to{stroke-dashoffset:-727}}
@media(prefers-reduced-motion:reduce){.projection-network .projection-data{animation:none!important}.projection-network{transition:none}}
