/* Capas decorativas independientes: las acciones y el texto conservan su posición. */
@media (min-width: 981px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .has-depth .hero-map { translate: calc(var(--scene-x, 0px) * .8) calc(var(--scene-y, 0px) * .7 + var(--scene-travel, 0px)); transition: transform 1.1s var(--ease), translate .34s ease-out; }
  .has-depth .label-science { translate: calc(var(--scene-x, 0px) * -1.1) calc(var(--scene-y, 0px) * -.65 - var(--scene-travel, 0px) * .3); transition: transform .5s, translate .45s ease-out; }
  .has-depth .label-federal { translate: calc(var(--scene-x, 0px) * 1.25) calc(var(--scene-y, 0px) * .85 - var(--scene-travel, 0px) * .5); transition: transform .5s, translate .5s ease-out; }
  .has-depth .map-orbit { translate: calc(var(--scene-x, 0px) * -.5) calc(var(--scene-y, 0px) * -.5 + var(--scene-travel, 0px) * .4); transition: translate .6s ease-out; }
  .has-depth .hero-map-dots { translate: calc(var(--scene-x, 0px) * -.3) calc(var(--scene-travel, 0px) * .2); transition: translate .6s ease-out; }
}
/* Énfasis de lectura, con todo el contenido disponible en cada estado. */
.interactions-ready .objective-card { isolation: isolate; transition: border-color .3s; }
.interactions-ready .objective-card::after { content: ''; position: absolute; top: -1px; left: 32px; right: 32px; height: 2px; background: #328bb9; transform: scaleX(0); transform-origin: left; transition: transform .35s ease; pointer-events: none; }
.interactions-ready .objective-card:first-child::after { left: 0; }
.interactions-ready .objective-card:last-child::after { right: 0; }
.interactions-ready .objective-card.is-current-objective { border-top-color: #9dbdce; box-shadow: none; }
.interactions-ready .objective-card.is-current-objective::after { transform: scaleX(1); }
.interactions-ready .objective-card.is-current-objective .objective-number { color: #237cad; }
.objective-card .objective-link { min-height: 44px; align-self: flex-start; display: inline-flex; align-items: center; gap: 10px; font-size: 12px; margin-top: auto; padding-top: 24px; color: #267bac; text-underline-offset: 4px; }
.objective-link .ui-icon { width: 17px; height: 17px; }
.objective-link:hover { text-decoration: underline; }
.interactions-ready .objective-card:hover { transform: none; }
.motion-ready .objective-card.reveal { transition: opacity .64s ease, transform .76s cubic-bezier(.22,.61,.36,1), border-color .3s, box-shadow .3s; transition-delay: var(--reveal-delay, 0ms), var(--reveal-delay, 0ms), 0ms, 0ms; }
.motion-ready .objective-card.reveal.is-visible { transform: none; }
.motion-ready .objective-card.reveal.reveal-immediate { transition: none; }
/* La grilla puede interpolar su altura sin estirar los recursos. */
.resource-grid { align-content: start; }
.resource-grid.is-filtering { overflow: clip; }
.button > .ui-icon, .text-link > .ui-icon, .objective-link > .ui-icon { transition: translate .2s ease; }
@media (hover: hover) and (pointer: fine) {
  .button:hover > .ui-icon, .text-link:hover > .ui-icon, .objective-link:hover > .ui-icon { translate: 2px -1px; }
}
@media (max-width: 700px) {
  .objective-card .objective-link { padding-top: 20px; }
}
@media (max-width: 980px) {
  .interactions-ready .objective-card::after { left: 0; right: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .has-depth .hero-map, .has-depth .floating-label, .has-depth .map-orbit, .has-depth .hero-map-dots { translate: none; }
  .interactions-ready .objective-card, .interactions-ready .objective-card::before, .interactions-ready .objective-card::after { transition: none; }
  .button > .ui-icon, .text-link > .ui-icon, .objective-link > .ui-icon { transition: none; translate: none; }
}
