/* Ensyra — global styles, keyframes, scroll-animation scaffolding & responsive rules */
@font-face{font-family:'Plus Jakarta Sans';src:url('pack/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
*{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:#FFFFFF;color:#18181B;font-family:'Plus Jakarta Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  ::selection{background:#CBCAFF;color:#18181B}
  @keyframes ens-spin{to{transform:rotate(360deg)}}
  @keyframes ens-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}
  @keyframes ens-marquee{to{transform:translateX(-50%)}}
  @keyframes ens-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
  @keyframes ens-fade{from{transform:translateY(12px)}to{transform:none}}
  @keyframes ens-orb{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.06)}}
  @keyframes ens-shimmer{to{background-position:200% 0}}

  /* progress bar */
  #ens-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#5AA9F8,#9E97FF,#C6A4FF);z-index:100;will-change:transform}
  #ens-progress::after{content:'';position:absolute;right:0;top:-2px;width:8px;height:7px;border-radius:50%;background:#C6A4FF;box-shadow:0 0 14px 3px rgba(158,151,255,.8)}

  /* scroll reveal scaffolding */
  [data-reveal]{opacity:0;transform:translateY(48px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1),filter .9s ease;will-change:opacity,transform}
  [data-reveal="left"]{transform:translateX(-64px)}
  [data-reveal="right"]{transform:translateX(64px)}
  [data-reveal="scale"]{transform:scale(.84)}
  [data-reveal="blur"]{filter:blur(16px);transform:translateY(34px)}
  [data-reveal="rise"]{transform:translateY(90px) scale(.97)}
  .ens-in[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}

  /* sticky showcase progress dots */
  .ens-dot{transition:transform .5s cubic-bezier(.16,1,.3,1),background .5s ease,height .5s ease}

  @media (prefers-reduced-motion: reduce){
    [data-reveal]{opacity:1!important;transform:none!important;filter:none!important}
    #ens-progress{display:none}
    html{scroll-behavior:auto}
  }

  /* ===== MOBILE ===== */
  [data-burger]{display:none}
  @media (max-width:920px){
    nav{padding:11px 18px!important}
    [data-nav-links]{display:none!important}
    [data-nav-login]{display:none!important}
    [data-burger]{display:inline-flex!important}
    [data-demo-full]{display:none!important}
    [data-demo-short]{display:inline!important}
    #route-home section,#route-pricing section{padding-left:20px!important;padding-right:20px!important}
    [style*="grid-template-columns"]:not([data-keepgrid]):not([data-modalgrid]){grid-template-columns:1fr!important}
    #sec-top{padding-top:30px!important;padding-bottom:46px!important;gap:34px!important}
    #ens-flow-panel{height:400px!important}
    [data-cta]{padding:44px 26px!important;border-radius:24px!important}
    [data-cta] h2{font-size:40px!important}
    [data-modalshell]{grid-template-columns:1fr!important;max-height:92vh!important}
    [data-modalleft]{display:none!important}
    [data-stickywrap]{height:auto!important}
    [data-stickyinner]{position:static!important;height:auto!important;padding-top:10px!important;padding-bottom:20px!important}
    [data-stickyinner] > div{gap:30px!important}
    .ens-msection{padding-top:60px!important;padding-bottom:60px!important}
    [data-mfp]{font-size:30px!important;line-height:1.32!important}
    [data-herostats]{gap:26px!important}
    #sec-discovery .ens-2col{display:flex!important;flex-direction:column!important;gap:30px!important;margin-top:36px!important}
    #sec-discovery .ens-2col > aside{position:static!important;top:auto!important}
    #sec-discovery .ens-2col > aside p{max-width:none!important}
    .ens-pace-grid{grid-template-columns:1fr!important}
  }
  @media (max-width:540px){
    nav{padding:10px 15px!important}
    #route-home section,#route-pricing section{padding-left:15px!important;padding-right:15px!important}
    [data-cta]{padding:36px 20px!important}
    [data-cta] h2{font-size:32px!important}
    [data-herostats]{gap:20px!important}
  }

/* ---- hover / focus states (vanilla equivalents of the design's style-hover) ---- */
.ens-link{transition:color .2s ease}
.ens-link:hover{color:#18181B!important}
.ens-btn-dark{transition:background .2s ease}
.ens-btn-dark:hover{background:#2A2A2E!important}
.ens-outline{transition:border-color .2s ease}
.ens-outline:hover{border-color:#18181B!important}
.ens-outline-dark{transition:border-color .2s ease}
.ens-outline-dark:hover{border-color:#18181B!important}
.ens-card-hover{transition:box-shadow .3s ease,opacity 1s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1),filter .9s ease}
.ens-card-hover:hover{box-shadow:0 18px 40px -20px rgba(16,24,40,.18)}
.ens-chip{transition:border-color .2s ease,color .2s ease}
.ens-chip:hover{border-color:#18181B;color:#18181B}
.ens-row:hover{transform:translateX(4px)}
.ens-genrow:hover{background:#FAFBFC}
.ens-faq:hover{background:#FAFBFC}
.ens-input:focus{border-color:#18181B!important}
.ens-ent-grid button{transition:background .2s ease}
.ens-ent-grid button:hover{background:#2A2A2E!important}
