/* Revotech homepage styles (ported from design) */
@keyframes rv-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
  @keyframes rv-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
  @keyframes rv-pulse{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}
  @keyframes rv-spin{to{transform:rotate(360deg)}}
  @keyframes rv-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
  @keyframes rv-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
  @keyframes rv-glow{0%,100%{opacity:.35}50%{opacity:.7}}
  @keyframes rv-dash{to{stroke-dashoffset:0}}
  @keyframes rv-pop{0%{transform:scale(.96);opacity:.4}100%{transform:scale(1);opacity:1}}
  @keyframes rv-sheen{0%{transform:translateX(-120%) skewX(-18deg)}100%{transform:translateX(220%) skewX(-18deg)}}
  /* ── Cooler scroll-reveal system ───────────────────────────── */
  .rv-reveal{opacity:0;transform:translate3d(0,52px,0) scale(.94);filter:blur(10px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter .9s ease;will-change:transform,opacity,filter}
  .rv-reveal.is-in{opacity:1;transform:none;filter:blur(0)}
  .rv-reveal[data-rv="left"]{transform:translate3d(-72px,18px,0) scale(.96)}
  .rv-reveal[data-rv="right"]{transform:translate3d(72px,18px,0) scale(.96)}
  .rv-reveal[data-rv="zoom"]{transform:translate3d(0,40px,0) scale(.82)}
  .rv-reveal[data-rv="rise"]{transform:translate3d(0,80px,0) scale(.97)}
  /* perspective tilt for grid cards */
  .rv-reveal[data-rv="tilt"]{transform:translate3d(0,70px,0) scale(.95)}
  .rv-reveal[data-rv="tilt"].is-in{transform:none}
  /* clip-wipe reveal for headings */
  .rv-clip{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(20px);transition:opacity .2s ease,clip-path 1.05s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1)}
  .rv-clip.is-in{opacity:1;clip-path:inset(0 0 -8% 0);transform:none}
  .rv-parallax{will-change:transform}
  @media(prefers-reduced-motion:reduce){.rv-reveal,.rv-clip{transition:none!important;opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}}
  .rv-svc:hover{transform:translateY(-8px)!important;border-color:rgba(0,194,255,.5)!important;box-shadow:0 28px 64px -22px rgba(0,194,255,.4)!important}
  .rv-svc:hover .rv-svc-ic{background:linear-gradient(135deg,#1A4FBA,#00C2FF)!important;box-shadow:0 16px 32px -12px rgba(0,194,255,.7)!important;transform:scale(1.06)!important}
  .rv-svc:hover .rv-svc-mark{filter:brightness(0) invert(1)!important;animation:rv-spin 2.4s linear infinite}
  .rv-svc:hover .rv-svc-ar{transform:translateX(4px)!important;opacity:1!important}
  .rv-svc:hover .rv-svc-bar{transform:scaleX(1)!important}
  .rv-plan:hover{transform:translateY(-8px)!important;border-color:rgba(0,194,255,.5)!important;box-shadow:0 30px 70px -26px rgba(0,194,255,.45)!important}
  .rv-plan-pop:hover{transform:translateY(-8px) scale(1.01)!important}
  .rv-ind:hover{transform:translateY(-6px)!important;border-color:rgba(0,194,255,.5)!important;box-shadow:0 22px 50px -22px rgba(0,194,255,.35)!important}
  .rv-ind:hover .rv-ind-ic{background:linear-gradient(135deg,#1A4FBA,#00C2FF)!important;box-shadow:0 16px 32px -12px rgba(0,194,255,.7)!important;transform:scale(1.06)!important}
  .rv-ind:hover .rv-ind-mark{filter:brightness(0) invert(1)!important;animation:rv-spin 2.4s linear infinite}
  .rv-btn-primary:hover{transform:translateY(-3px)!important;box-shadow:0 16px 40px -10px rgba(0,194,255,.6)!important}
  .rv-btn-ghost:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.55)!important}
  .rv-btn-out:hover{background:#1A4FBA!important;color:#fff!important;border-color:#1A4FBA!important}
  .rv-nav-link{position:relative}
  .rv-nav-link:after{content:"";position:absolute;left:0;bottom:-4px;height:2px;width:0;background:#00C2FF;transition:width .3s}
  .rv-nav-link:hover:after{width:100%}
  .rv-dd-caret{transition:transform .25s}
  .rv-dd:hover .rv-dd-caret{transform:rotate(180deg)}
  .rv-dd:hover .rv-dd-menu{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}
  .rv-dd-item:hover{background:rgba(0,194,255,.12)!important;color:#fff!important}
  .rv-tab:hover{color:#fff!important}
  .rv-why:hover{transform:translateY(-6px)!important;border-color:rgba(0,194,255,.4)!important;box-shadow:0 24px 60px -24px rgba(0,194,255,.3)!important}
  .rv-why:hover .rv-why-ic{color:#00C2FF!important}
  input[type=range].rv-range{-webkit-appearance:none;appearance:none;height:6px;border-radius:999px;outline:none;cursor:pointer}
  input[type=range].rv-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#00C2FF;border:3px solid #fff;box-shadow:0 2px 10px rgba(0,194,255,.6);cursor:pointer;transition:transform .15s}
  input[type=range].rv-range::-webkit-slider-thumb:hover{transform:scale(1.18)}
  input[type=range].rv-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#00C2FF;border:3px solid #fff;cursor:pointer}
  @media(max-width:760px){.rv-hide-lg{display:none!important}}
  @media(max-width:880px){.rv-hide-m{display:none!important}.rv-grid-2{grid-template-columns:1fr!important}.rv-calc-grid{grid-template-columns:1fr!important}.rv-people-grid{grid-template-columns:1fr!important}}
