/* A narrow scientific ribbon, bounded by the existing hero artwork. */
.home-page .consult-hero { position: relative; }
.home-page .consult-hero .hero-copy { padding-left: clamp(120px, 10.5vw, 175px); }
.science-rail { position: absolute; inset: 0 auto 0 0; width: clamp(76px, 7vw, 108px); overflow: hidden; background: linear-gradient(90deg, #142e38, #203e46); border-right: 1px solid #50706b; }
.science-rail-art { position: absolute; width: 100%; height: 100%; display: block; opacity: .9; }
.science-rail-art text { fill: #cbb68f; font: 8px Arial, sans-serif; letter-spacing: 1.8px; text-anchor: middle; }
.science-rail-track { animation: science-rise 48s linear infinite; }
.rail-base, .rail-cell { animation: science-breathe 5s ease-in-out infinite alternate; animation-delay: var(--delay, 0s); }
.rail-catheter { stroke-dasharray: 160; animation: science-guide 6s ease-in-out infinite; }
.rail-target { transform-box: fill-box; transform-origin: center; animation: science-turn 18s linear infinite; }
.rail-signal { stroke-dasharray: 4 6; animation: science-data 5s linear infinite; }
.science-rail-toggle { position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%); width: 36px; height: 36px; border: 1px solid #718f89; border-radius: 50%; color: #e4e9e0; background: #142e38e8; cursor: pointer; font-size: 14px; }
.science-rail.is-paused *, .science-rail:hover .science-rail-art *, .science-rail:focus-within .science-rail-art * { animation-play-state: paused !important; }
@keyframes science-rise { to { transform: translateY(-800px); } }
@keyframes science-breathe { from { opacity: .45; } to { opacity: 1; } }
@keyframes science-guide { 0%,100% { stroke-dashoffset: 150; } 65%,85% { stroke-dashoffset: 0; } }
@keyframes science-turn { to { transform: rotate(360deg); } }
@keyframes science-data { to { stroke-dashoffset: -60; } }
@media(max-width:780px) {
 .science-rail { width: 52px; }
 .science-rail-art { height: 800px; }
 .home-page .consult-hero .hero-copy { padding-left: 80px; padding-right: 6vw; }
 .home-page .consult-hero .pet-art { margin-left: 52px; }
 .science-rail-toggle { width: 34px; height: 44px; border-radius: 17px; }
}
@media(prefers-reduced-motion:reduce) { .science-rail-art * { animation: none !important; } }

/* Centre the introduction in the space between the two animated panels. */
body .home-page .consult-hero .hero-copy {
 --copy-gap: clamp(28px, 4vw, 64px);
 padding-left: calc(clamp(76px, 7vw, 108px) + var(--copy-gap));
 padding-right: var(--copy-gap);
 text-align: center;
}
body .home-page .consult-hero .hero-copy .lead { margin-inline: auto; }
body .home-page .consult-hero .hero-copy .button { margin-left: 4px; margin-right: 4px; }
@media(max-width:780px) {
 body .home-page .consult-hero .hero-copy { padding-left: 76px; padding-right: 24px; }
 body .home-page .consult-hero .hero-copy .button { margin-inline: auto; }
}
