/* Homepage refinements; UniFi styles stay independent. */
.home-service-hero .hero-visual img{animation:hero-ambient-zoom 18s ease-in-out infinite alternate;animation-play-state:paused}
.home-service-hero.hero-motion-running .hero-visual img{animation-play-state:running}
.home-service-hero .hero-visual{overflow:hidden}
.home-service-hero .hero-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform-origin:center}
.hero-ambient-overlay{opacity:0;transition:opacity 1.6s ease;pointer-events:none}
.hero-ambient-overlay.is-visible{opacity:1}
.home-service-hero .hero-path li{margin-inline:-12px;padding-inline:12px;transition:background .65s ease,box-shadow .65s ease}
.home-service-hero .hero-path li.is-hero-step-active{background:linear-gradient(90deg,#30d3dc12,transparent);border-radius:12px}
.hero-step-outline{position:absolute;inset:0;display:none;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none;stroke:#30d3dc;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.is-hero-step-active .hero-step-outline{display:block}
.hero-step-progress{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--hero-step-progress,0))}
.home-page .context-assistant{bottom:calc(var(--home-news-strip-height,34px) + 1rem + env(safe-area-inset-bottom,0px))}
@media(max-width:650px){.home-page .context-assistant-panel{bottom:calc(var(--home-news-strip-height,36px) + 1rem + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - var(--home-news-strip-height,36px) - 2rem - env(safe-area-inset-bottom,0px))}}
.home-page .home-news-strip-slot{height:var(--home-news-strip-height,34px);background:#0d2033}
.home-page .home-news-strip{position:fixed;inset-inline:0;top:auto;bottom:0;margin:0;box-shadow:none}
.home-page{padding-bottom:var(--home-news-strip-height,34px)}
.home-services-page main section[id]{scroll-margin-top:calc(var(--site-header-height) + var(--home-section-nav-height) + 12px)}
.home-services-page #academia{scroll-margin-top:calc(var(--site-header-height) + var(--home-section-nav-height) + 12px)}
.hero-motion-toggle{position:absolute;right:84px;bottom:calc(25px + env(safe-area-inset-bottom,0px));z-index:3;display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff29;border-radius:50%;color:#ffffff8c;background:#07142626;backdrop-filter:blur(4px);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
.hero-motion-toggle svg{width:14px;height:14px}
.hero-motion-toggle:hover,.hero-motion-toggle:focus-visible{color:#fff;border-color:#ffffff73;background:#07142694}
.hero-motion-toggle[hidden]{display:none}
.hero-motion-toggle:focus-visible{outline:3px solid #30d3dc;outline-offset:3px}
.hero-motion-play{display:none}
.hero-motion-toggle[aria-pressed=true] .hero-motion-pause{display:none}
.hero-motion-toggle[aria-pressed=true] .hero-motion-play{display:block}
@keyframes hero-ambient-zoom{from{transform:scale(1)}to{transform:scale(1.025)}}
@media(prefers-reduced-motion:reduce){.home-service-hero .hero-visual img{animation:none}.hero-ambient-overlay,.home-service-hero .hero-path li{transition:none}.home-service-hero .hero-step-outline,.hero-motion-toggle{display:none}}
.home-service-hero .hero-lead{min-block-size:5.1em}
@media(max-width:640px){.home-service-hero .hero-lead{min-block-size:8.5em}}
.home-service-hero .hero-path-link{position:absolute;inset:0;z-index:1;border-radius:8px;text-decoration:none}
.home-service-hero .hero-path li:has(.hero-path-link):hover{background:rgba(255,255,255,.05);border-radius:12px}
.home-service-hero .hero-path-link:focus-visible{outline:2px solid #30d3dc;outline-offset:3px;background:rgba(48,211,220,.04)}
.home-quick-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-block:1.75rem}
.home-quick-paths a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border:1px solid #d6e3e9;border-radius:12px;background:#fff;color:#0d6476;font-size:.9rem;font-weight:750;text-decoration:none;line-height:1.5}
.home-quick-paths a:hover{background:#edf5f8}
.home-quick-paths a:focus-visible{outline:3px solid #078aa3;outline-offset:3px}
.home-service-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.75rem}
.home-service-actions .button{white-space:nowrap}
@media(max-width:700px){.home-quick-paths{grid-template-columns:1fr;gap:.65rem;padding-block:1.25rem}.home-service-actions{justify-content:flex-start}}
