/* Hero scroll (CSS scroll-driven, no script): the Today capture rises from a tilt and grows while the six destinations part to the sides. Browsers without scroll timelines keep the static hero. */
@keyframes hs-stage { from { translate: 0 46px; rotate: x 18deg; scale: .96; } to { translate: 0 0; rotate: x 0deg; scale: 1.34; } }
@keyframes hs-stage-narrow { from { translate: 0 18px; rotate: x 22deg; scale: .9; } to { translate: 0 0; rotate: x 0deg; scale: 1.08; } }
@keyframes hs-part-start { to { translate: -200px 0; opacity: 0; } }
@keyframes hs-part-end { to { translate: 200px 0; opacity: 0; } }
@keyframes hs-fade { to { opacity: 0; } }
@keyframes hs-lift { to { translate: 0 -36px; opacity: .45; } }
@supports (animation-timeline: scroll()) {
 @media (prefers-reduced-motion:no-preference) and (forced-colors:none) and (min-width:768px) {
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-map { perspective: 1600px; }
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-map > .atlas-stage { transform-origin: 50% 12%; margin-bottom: clamp(0px,9vw,140px); animation: hs-stage linear both; animation-timeline: scroll(root); animation-range: 0 42vh; }
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-hero__intro { animation: hs-lift linear both; animation-timeline: scroll(root); animation-range: 0 42vh; }
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-connectors { animation: hs-fade linear both; animation-timeline: scroll(root); animation-range: 0 26vh; }
  html[data-home-motion-controller="ready"][data-home-motion-blocked="false"][data-home-motion-suspended="false"]:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination,
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination { animation: atlas-destination-arrive 640ms cubic-bezier(.22,1,.36,1) calc(460ms + var(--atlas-n,0) * 90ms) 1 backwards,var(--hs-part,hs-part-start) linear both; animation-timeline: auto,scroll(root); animation-range: normal,0 26vh; }
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination:is(.atlas-destination--planning,.atlas-destination--focus,.atlas-destination--resources) { --hs-part: hs-part-end; }
  html[dir="rtl"]:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination,html[lang="ar"]:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination { --hs-part: hs-part-end; }
  html[dir="rtl"]:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination:is(.atlas-destination--planning,.atlas-destination--focus,.atlas-destination--resources),html[lang="ar"]:not([data-home-motion-paused="true"]) .atlas-hero .atlas-destination:is(.atlas-destination--planning,.atlas-destination--focus,.atlas-destination--resources) { --hs-part: hs-part-start; }
 }
 @media (prefers-reduced-motion:no-preference) and (forced-colors:none) and (max-width:767px) {
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-map { perspective: 900px; }
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-map > .atlas-stage { transform-origin: 50% 0; margin-bottom: 6vw; animation: hs-stage-narrow linear both; animation-timeline: scroll(root); animation-range: 0 34vh; }
  html:not([data-home-motion-paused="true"]) .atlas-hero .atlas-hero__intro { animation: hs-lift linear both; animation-timeline: scroll(root); animation-range: 0 34vh; }
 }
}
/* Hero typewriter (home-hero-type.js): calm caret in the Sarab mint, accessible text kept off-screen. */
.hero-type .hero-type__sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.hero-type .hero-type__text::after { content: ""; display: inline-block; width: .06em; height: .78em; margin-inline-start: .08em; vertical-align: -.02em; border-radius: 2px; background: #00b47c; animation: hero-type-caret 1.05s steps(1,end) infinite; }
@keyframes hero-type-caret { 50% { opacity: 0; } }
@media (forced-colors:active) { .hero-type .hero-type__text::after { background: CanvasText; } }
@media (max-width:767px) { html:not([lang="ar"]) .atlas-title.hero-type { font-size: clamp(42px,13.2vw,84px); } }
/* Trust line sits right under the hero button instead of below the capture. */
.atlas-hero__intro .atlas-local-note { margin: 14px 0 0; font-size: 13px; line-height: 1.4; color: #2f5345; letter-spacing: .01em; text-align: center; }
@media (forced-colors:active) { .atlas-hero__intro .atlas-local-note { color: CanvasText; } }
