/* Kairo Works v9.0 — Motion Foundation */
:root{
  --motion-micro:180ms;
  --motion-fast:320ms;
  --motion-base:560ms;
  --motion-slow:900ms;
  --motion-cinematic:1350ms;
  --motion-ease-standard:cubic-bezier(.22,.61,.36,1);
  --motion-ease-expressive:cubic-bezier(.16,1,.3,1);
  --motion-distance-xs:8px;
  --motion-distance-sm:16px;
  --motion-distance-md:28px;
  --motion-distance-lg:48px;
  --motion-focus:#e01922;
}
.page-product{--motion-focus:var(--app-accent,#e01922)}
.page-lumina{--motion-focus:#c59a37}

/* Scrollytelling owns easing in full mode. Native anchors/history must land deterministically. */
html[data-motion="full"],html[data-motion="reduced"]{scroll-behavior:auto}
html[data-motion="reduced"] *,html[data-motion="reduced"] *::before,html[data-motion="reduced"] *::after{
  scroll-behavior:auto!important;
  animation-duration:.001ms!important;
  animation-iteration-count:1!important;
  transition-duration:.001ms!important;
}

/* Accessible interaction baseline */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--motion-focus,#e01922);outline-offset:3px}
:where(button,.button,a[role="button"]){touch-action:manipulation}

/* Ambient system */
.motion-ambient{--motion-ambient-primary:#e01922;--motion-ambient-secondary:#ffffff;position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;isolation:isolate}
.page-product .motion-ambient{--motion-ambient-primary:var(--app-accent,#e01922);--motion-ambient-secondary:var(--app-accent-2,#ffffff)}
.page-lumina .motion-ambient{--motion-ambient-primary:#c59a37;--motion-ambient-secondary:#6d3b8e}
.motion-ambient::before,.motion-ambient::after{content:"";position:absolute;border-radius:999px;filter:blur(90px);opacity:.34;transform:translate3d(0,0,0);will-change:auto}
.motion-ambient::before{width:min(52vw,760px);aspect-ratio:1;right:-12%;top:8%;background:radial-gradient(circle,rgba(224,25,34,.46) 0%,rgba(224,25,34,.12) 46%,transparent 72%);background:radial-gradient(circle,color-mix(in srgb,var(--motion-ambient-primary) 46%,transparent) 0%,color-mix(in srgb,var(--motion-ambient-primary) 12%,transparent) 46%,transparent 72%)}
.motion-ambient::after{width:min(40vw,620px);aspect-ratio:1;left:-14%;bottom:-18%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,rgba(255,255,255,.02) 52%,transparent 74%);background:radial-gradient(circle,color-mix(in srgb,var(--motion-ambient-secondary) 18%,transparent) 0%,color-mix(in srgb,var(--motion-ambient-secondary) 4%,transparent) 52%,transparent 74%)}
html[data-motion="full"] .motion-ambient::before{animation:kairoAmbientA 16s ease-in-out infinite alternate;will-change:transform,opacity}
html[data-motion="full"] .motion-ambient::after{animation:kairoAmbientB 21s ease-in-out infinite alternate;will-change:transform,opacity}
@keyframes kairoAmbientA{from{transform:translate3d(-2%,0,0) scale(.96)}to{transform:translate3d(4%,5%,0) scale(1.08)}}
@keyframes kairoAmbientB{from{transform:translate3d(0,2%,0) scale(1)}to{transform:translate3d(7%,-4%,0) scale(1.12)}}

/* Header state */
.site-header{transition:min-height var(--motion-fast) var(--motion-ease-standard),background-color var(--motion-fast) var(--motion-ease-standard),box-shadow var(--motion-fast) var(--motion-ease-standard),border-color var(--motion-fast) var(--motion-ease-standard)}
.site-header .header-inner,.site-header .brand img,.site-header .brand-copy{transition:height var(--motion-fast) var(--motion-ease-expressive),width var(--motion-fast) var(--motion-ease-expressive),transform var(--motion-fast) var(--motion-ease-expressive),opacity var(--motion-fast) var(--motion-ease-standard)}
.site-header.is-condensed{background:rgba(6,6,8,.965);box-shadow:0 18px 46px rgba(0,0,0,.18)}
.site-header.is-condensed .header-inner{height:64px}
.site-header.is-condensed .brand img{width:36px;height:36px}
.site-header.is-condensed .brand-copy{transform:translateY(-1px)}
.menu-button span{transform-origin:center;transition:transform var(--motion-fast) var(--motion-ease-expressive),opacity var(--motion-micro) ease}
.menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-button[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.3)}
.menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Reveal system */
[data-motion-reveal]{opacity:0;transform:translate3d(0,var(--motion-distance-md),0);transition:opacity var(--motion-slow) var(--motion-ease-standard),transform var(--motion-slow) var(--motion-ease-expressive);will-change:transform,opacity}
[data-motion-reveal].is-motion-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
[data-motion-reveal="soft"]{transform:translate3d(0,var(--motion-distance-sm),0)}
[data-motion-reveal="left"]{transform:translate3d(calc(var(--motion-distance-md) * -1),0,0)}
[data-motion-reveal="right"]{transform:translate3d(var(--motion-distance-md),0,0)}

/* Microinteractions */
@media (hover:hover) and (pointer:fine){
  .button,.product-card,.legal-list a,.contact-links a{transition:transform var(--motion-fast) var(--motion-ease-expressive),border-color var(--motion-fast) var(--motion-ease-standard),background-color var(--motion-fast) var(--motion-ease-standard),box-shadow var(--motion-fast) var(--motion-ease-standard)}
  .button:hover{transform:translate3d(0,-3px,0)}
  .product-card:hover{transform:translate3d(0,-7px,0)}
  .legal-list a:hover,.contact-links a:hover{transform:translate3d(0,-4px,0)}
}
@media (pointer:coarse){.button:active,.product-card:active{transform:scale(.985)}}

/* Flagship ambient hooks */
.home-hero,.page-hero,.apps-hero,.product-hero,.lumina-hero,.lumina-topic-hero{position:relative;isolation:isolate}
.home-hero > :not(.motion-ambient),.page-hero > :not(.motion-ambient),.apps-hero > :not(.motion-ambient),.product-hero > :not(.motion-ambient),.lumina-hero > :not(.motion-ambient),.lumina-topic-hero > :not(.motion-ambient){position:relative;z-index:1}

/* Lúmina subnavigation */
.kairo-subnav-rail{position:relative;scrollbar-width:none}
.kairo-subnav-rail::-webkit-scrollbar{display:none}
.kairo-subnav-rail a{white-space:nowrap}

/* Native cross-document transitions as progressive enhancement */
@view-transition{navigation:auto}
.site-header .brand>img{view-transition-name:kairo-brand-mark}
::view-transition-old(root){animation:kairoPageOut 180ms var(--motion-ease-standard) both}
::view-transition-new(root){animation:kairoPageIn 300ms var(--motion-ease-expressive) both}
::view-transition-old(kairo-brand-mark),::view-transition-new(kairo-brand-mark){animation-duration:360ms;animation-timing-function:var(--motion-ease-expressive)}
::view-transition-group(kairo-product-icon){animation-duration:480ms;animation-timing-function:var(--motion-ease-expressive)}
::view-transition-old(kairo-product-icon),::view-transition-new(kairo-product-icon){animation-duration:480ms;animation-timing-function:var(--motion-ease-expressive);mix-blend-mode:normal}
@keyframes kairoPageOut{to{opacity:.72;transform:translate3d(0,-6px,0) scale(.997)}}
@keyframes kairoPageIn{from{opacity:.55;transform:translate3d(0,9px,0) scale(.998)}}

/* Mobile navigation polish */
@media (max-width:899px){
  body.kairo-nav-open{overflow:hidden}
  body.kairo-nav-open::before{content:"";position:fixed;inset:var(--header-h) 0 0;z-index:900;background:rgba(3,3,6,.58);backdrop-filter:blur(4px);animation:kairoNavBackdrop var(--motion-fast) ease both}
  .mobile-nav.is-open{display:grid;animation:kairoNavIn var(--motion-fast) var(--motion-ease-expressive) both;transform-origin:top center}
  .mobile-nav.is-open a{animation:kairoNavLinkIn var(--motion-base) var(--motion-ease-expressive) both}
  .mobile-nav.is-open a:nth-child(2){animation-delay:25ms}.mobile-nav.is-open a:nth-child(3){animation-delay:50ms}.mobile-nav.is-open a:nth-child(4){animation-delay:75ms}.mobile-nav.is-open a:nth-child(5){animation-delay:100ms}.mobile-nav.is-open a:nth-child(6){animation-delay:125ms}.mobile-nav.is-open a:nth-child(7){animation-delay:150ms}
  .motion-ambient::before{width:92vw;right:-42%;top:8%;opacity:.72}
  .motion-ambient::after{width:80vw;left:-44%;bottom:-14%;opacity:.48}
  [data-motion-reveal]{transform:translate3d(0,var(--motion-distance-sm),0)}
  .lumina-subnav{position:relative;overflow:hidden}
  .kairo-subnav-rail{display:flex!important;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding-inline:18px!important;margin-inline:0!important;width:100%!important;max-width:none!important;mask-image:linear-gradient(90deg,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%)}
  .kairo-subnav-rail a{flex:0 0 auto;scroll-snap-align:center}
  ::view-transition-old(root),::view-transition-new(root){animation-duration:180ms}
  ::view-transition-group(kairo-product-icon),::view-transition-old(kairo-product-icon),::view-transition-new(kairo-product-icon){animation-duration:360ms}
}
@keyframes kairoNavBackdrop{from{opacity:0}to{opacity:1}}
@keyframes kairoNavIn{from{opacity:0;transform:translate3d(0,-10px,0) scale(.985)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes kairoNavLinkIn{from{opacity:0;transform:translate3d(0,-6px,0)}to{opacity:1;transform:translate3d(0,0,0)}}

@media (prefers-reduced-motion:reduce){
  .motion-ambient::before,.motion-ambient::after{animation:none!important;transform:none!important;will-change:auto!important}
  [data-motion-reveal]{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}
  .mobile-nav.is-open,.mobile-nav.is-open a,body.kairo-nav-open::before{animation:none!important}
  ::view-transition-old(root),::view-transition-new(root),::view-transition-old(kairo-brand-mark),::view-transition-new(kairo-brand-mark),::view-transition-group(kairo-product-icon),::view-transition-old(kairo-product-icon),::view-transition-new(kairo-product-icon){animation:none!important}
}