.elementor-90 .elementor-element.elementor-element-1e820ac{padding:00px 00px 00px 00px;}.elementor-90 .elementor-element.elementor-element-24ff999{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for section, class: .elementor-element-1e820ac */.elementor-90 .elementor-element.elementor-element-1e820ac .navlinks { align-items: center; }
.elementor-90 .elementor-element.elementor-element-1e820ac .logo img { height: 34px !important; width: auto !important; max-width: none !important; }
.elementor-90 .elementor-element.elementor-element-1e820ac .navlinks { gap: 4px; }
.elementor-90 .elementor-element.elementor-element-1e820ac .navlink { padding-left: 12px; padding-right: 12px; }

.elementor-90 .elementor-element.elementor-element-1e820ac .mobile-menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;background:transparent;border:1px solid rgba(255,255,255,0.15);border-radius:8px;cursor:pointer;padding:0;flex-shrink:0;}
.elementor-90 .elementor-element.elementor-element-1e820ac .mobile-menu-toggle span{display:block;width:20px;height:2px;background:#f3f4f7;transition:transform .2s ease, opacity .2s ease;}
.elementor-90 .elementor-element.elementor-element-1e820ac .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.elementor-90 .elementor-element.elementor-element-1e820ac .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.elementor-90 .elementor-element.elementor-element-1e820ac .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.55);z-index:999998;opacity:0;visibility:hidden;transition:opacity .25s ease, visibility .25s ease;}
.mobile-nav-overlay.open{opacity:1;visibility:visible;}
.mobile-nav{position:fixed;top:0;right:0;bottom:0;width:320px;max-width:86vw;background:#101116;border-left:1px solid rgba(255,255,255,0.08);z-index:999999;transform:translateX(100%);transition:transform .28s ease;display:flex;flex-direction:column;overflow-y:auto;}
.mobile-nav.open{transform:translateX(0);}
.mobile-nav-header{display:flex;justify-content:flex-end;align-items:center;padding:18px 18px 6px;}
.mobile-menu-close{background:transparent;border:1px solid rgba(255,255,255,0.15);color:#f3f4f7;width:36px;height:36px;border-radius:8px;font-size:20px;line-height:1;cursor:pointer;}
.mobile-nav-links{display:flex;flex-direction:column;padding:8px 10px;gap:2px;}
.mobile-navlink{padding:14px 12px;font-size:16px;font-weight:600;color:#f3f4f7;border-radius:8px;}
.mobile-navlink:hover{background:rgba(255,255,255,0.05);}
.mobile-navgroup-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 12px;font-size:16px;font-weight:600;color:#f3f4f7;background:transparent;border:none;cursor:pointer;border-radius:8px;font-family:inherit;}
.mobile-navgroup-toggle .caret{width:11px;height:11px;transition:transform .2s ease;flex-shrink:0;}
.mobile-navgroup.open .mobile-navgroup-toggle .caret{transform:rotate(180deg);}
.mobile-subnav{max-height:0;overflow:hidden;transition:max-height .25s ease;padding-left:12px;display:flex;flex-direction:column;}
.mobile-navgroup.open .mobile-subnav{max-height:400px;}
.mobile-subnav a{padding:11px 12px;font-size:14.5px;color:#9a9db0;border-radius:8px;}
.mobile-subnav a:hover{color:#f3f4f7;background:rgba(255,255,255,0.05);}
.mobile-nav-ctas{margin-top:auto;padding:18px;display:flex;flex-direction:column;gap:10px;border-top:1px solid rgba(255,255,255,0.08);}
.mobile-nav-ctas .btn{justify-content:center;width:100%;}
body.mobile-nav-open{overflow:hidden;}
@media (max-width: 980px){
  .elementor-90 .elementor-element.elementor-element-1e820ac .cta-group{display:none;}
  .elementor-90 .elementor-element.elementor-element-1e820ac .mobile-menu-toggle{display:flex;}
}

/* Site-wide scroll-reveal animation + hero glow + hover interactions (desktop only) */
@media (min-width: 981px) {
  .reveal {
    opacity: 0;
    transform: perspective(900px) translateY(46px) scale(0.92) rotateX(10deg);
    transition: opacity .85s cubic-bezier(.34,1.56,.64,1), transform .85s cubic-bezier(.34,1.56,.64,1);
  }
  .reveal.reveal-visible {
    opacity: 1;
    transform: perspective(900px) translateY(0) scale(1) rotateX(0deg);
  }

  .hero-glow { display: block; position: absolute; border-radius: 50%; filter: blur(60px); pointer-events: none; z-index: 0; opacity: .55; }
  .hero-glow-a { width: 420px; height: 420px; background: radial-gradient(circle, rgba(235,33,39,.55), transparent 70%); top: -80px; left: -60px; animation: heroGlowDriftA 12s ease-in-out infinite alternate; }
  .hero-glow-b { width: 500px; height: 500px; background: radial-gradient(circle, rgba(235,33,39,.35), transparent 70%); bottom: -140px; right: -80px; animation: heroGlowDriftB 14s ease-in-out infinite alternate; }
  .hero, .page-hero { position: relative; }
  .hero-content, .hero-ctas, .trust-bar, .page-hero-content, .page-hero-ctas { position: relative; z-index: 1; }

  .service-card.reveal-visible .service-icon { animation: iconFloat 3.2s ease-in-out infinite; animation-delay: .8s; }
  .count-pop { display: inline-block; animation: countPop .45s ease; }

  .service-card, .review-card, .approach-step, .related-card {
    transition: transform .35s ease, box-shadow .35s ease;
  }
  .service-card:hover, .review-card:hover, .approach-step:hover, .related-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  }
  .service-icon svg { transition: transform .35s ease; }
  .service-card:hover .service-icon svg { transform: scale(1.15) rotate(-4deg); }
  .markets-row span {
    transition: transform .3s ease, border-color .3s ease, color .3s ease;
  }
  .markets-row span:hover {
    transform: translateY(-3px);
    border-color: #eb2127;
    color: #fff;
  }
  .btn { transition: transform .25s ease, box-shadow .25s ease; }
  .btn:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(235,33,39,0.35); }
}

@keyframes heroGlowDriftA { from { transform: translate(0,0) scale(1); } to { transform: translate(40px, 30px) scale(1.15); } }
@keyframes heroGlowDriftB { from { transform: translate(0,0) scale(1); } to { transform: translate(-30px,-40px) scale(1.1); } }
@keyframes iconFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@keyframes countPop { 0% { transform: scale(1); } 50% { transform: scale(1.18); } 100% { transform: scale(1); } }

@media (prefers-reduced-motion: reduce) {
  .hero-glow { display: none !important; animation: none !important; }
  .service-icon { animation: none !important; }
  .count-pop { animation: none !important; }
}

/* Mega-menu card: show Prime AV logo mark instead of faint placeholder watermark */
.mega-logo-img { opacity: 0.4 !important; }
.mega-logo-ph::after { content: none !important; }
.mega-side-content h4 { text-shadow: 0 1px 6px rgba(0,0,0,0.8), 0 1px 2px rgba(0,0,0,0.9); }/* End custom CSS */