/* ProMed cinematic motion graphics. CSS-first: independent of JavaScript and third-party animation libraries. */
:root{--pm-cyan:#5ce0b4;--pm-gold:#d4af52;--pm-lavender:#bba4e4}
#page-main .hero{isolation:isolate}
#page-main .hero-motion{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;contain:layout paint;translate:var(--pm-motion-x,0px) var(--pm-motion-y,0px);transition:translate 650ms cubic-bezier(.22,1,.36,1)}
#page-main .hero-motion span{position:absolute;display:block;pointer-events:none}
#page-main .hm-mesh{inset:-20%;opacity:.30;background-image:linear-gradient(rgba(92,224,180,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(92,224,180,.1) 1px,transparent 1px);background-size:68px 68px;mask-image:radial-gradient(ellipse 69% 65% at 70% 43%,black,transparent);animation:pm-mesh-move 26s linear infinite}
#page-main .hm-glow{width:min(72vw,950px);height:min(72vw,950px);left:42%;top:-27%;background:radial-gradient(circle,rgba(92,224,180,.23),rgba(103,85,140,.17) 33%,rgba(212,175,82,.065) 54%,transparent 69%);filter:blur(18px);border-radius:50%;animation:pm-glow-breathe 9s ease-in-out infinite alternate}
#page-main .hm-halo{border-radius:50%;border:1px solid rgba(92,224,180,.27);box-shadow:inset 0 0 54px rgba(92,224,180,.045),0 0 38px rgba(92,224,180,.055)}
#page-main .hm-halo-a{width:min(64vw,790px);aspect-ratio:1;right:-9%;top:3%;border-left-color:transparent;border-bottom-color:rgba(212,175,82,.47);animation:pm-orbit-spin 38s linear infinite}
#page-main .hm-halo-b{width:min(43vw,520px);aspect-ratio:1;right:4%;top:20%;border:2px dashed rgba(187,164,228,.29);border-right-color:rgba(212,175,82,.65);animation:pm-orbit-spin 27s linear infinite reverse}
#page-main .hm-halo-a::after,#page-main .hm-halo-b::after{content:'';position:absolute;width:12px;height:12px;left:49%;top:-7px;border-radius:50%;background:#f3d58c;box-shadow:0 0 0 7px rgba(212,175,82,.12),0 0 22px #f3d58c}
#page-main .hm-halo-b::after{width:8px;height:8px;top:-5px;background:#92f0d2;box-shadow:0 0 0 6px rgba(92,224,180,.14),0 0 18px #92f0d2}
#page-main .hm-sweep{width:140%;height:200px;left:-25%;top:40%;opacity:.57;transform:rotate(-23deg);background:linear-gradient(180deg,transparent 45%,rgba(92,224,180,.10) 49%,rgba(212,175,82,.30) 50%,rgba(187,164,228,.08) 51%,transparent 56%);filter:blur(6px);animation:pm-sweep 12s ease-in-out infinite alternate}
#page-main .hm-beacon{width:6px;height:6px;border-radius:50%;background:#e8ca75;box-shadow:0 0 0 6px rgba(212,175,82,.12),0 0 0 16px rgba(212,175,82,.05),0 0 18px #e8ca75;animation:pm-beacon 4s ease-in-out infinite}
#page-main .hm-beacon-a{top:19%;left:43%}
#page-main .hm-beacon-b{bottom:15%;right:18%;animation-delay:-1.7s;background:#7decc5}
#page-main .hm-beacon-c{top:57%;left:24%;animation-delay:-3s;width:4px;height:4px;background:#c1b0ed}
#page-main .hero-img-grid::before{content:'';position:absolute;inset:6% -2% 5% 8%;z-index:-1;border-radius:40px;background:linear-gradient(145deg,rgba(212,175,82,.38),rgba(92,224,180,.25),rgba(187,164,228,.3));filter:blur(28px);animation:pm-photo-aura 5.5s ease-in-out infinite alternate;pointer-events:none}
#page-main .himg-main::before{content:'';position:absolute;inset:-35% auto -35% -65%;width:40%;z-index:2;transform:skewX(-22deg) translateX(-130%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.035),rgba(245,211,129,.20),rgba(255,255,255,.055),transparent);filter:blur(3px);pointer-events:none;animation:pm-image-glint 9s cubic-bezier(.42,0,.58,1) infinite}
#page-main .hero .hh1 em{background-image:linear-gradient(100deg,#70edc4 7%,#e8c869 46%,#bda5e5 70%,#70edc4 94%);background-size:220% 100%;color:transparent!important;-webkit-background-clip:text;background-clip:text;animation:pm-gradient-flow 7s linear infinite}
#page-main .hero-orbit{animation:pm-existing-orbit 14s ease-in-out infinite alternate}
#page-main .hero-orbit .orb{animation:pm-beacon 4s ease-in-out infinite}
#page-main .hero-orbit .orb.o2{animation-delay:-1.3s}
#page-main .hero-orbit .orb.o3{animation-delay:-2.6s}
#page-main .va-card:not(.motion-pending){box-shadow:0 14px 40px rgba(0,0,0,.20),0 0 23px rgba(212,175,82,.14)}
#page-main .phoenix-logo{box-shadow:0 0 0 1px rgba(212,175,82,.44),0 0 26px rgba(212,175,82,.14);animation:pm-phoenix-heartbeat 4s ease-in-out infinite}
#page-main .phoenix-logo::after{content:'';position:absolute;inset:-6px;border:1px solid rgba(212,175,82,.55);border-radius:15px;pointer-events:none;animation:pm-phoenix-ring 4s ease-out infinite}
#page-main .svc{position:relative;isolation:isolate;overflow:hidden}
#page-main .svc::before{content:'';position:absolute;top:-120%;left:-85%;width:65%;height:340%;z-index:4;pointer-events:none;transform:rotate(22deg);background:linear-gradient(90deg,transparent,rgba(212,175,82,.11),transparent);animation:pm-service-sheen 11s ease-in-out infinite}
#page-main .svc:nth-child(3n+2)::before{animation-delay:-3.6s}
#page-main .svc:nth-child(3n)::before{animation-delay:-7.2s}
#page-main .floating-pill{animation-duration:3.5s;filter:drop-shadow(0 0 10px rgba(212,175,82,.10))}
@keyframes pm-mesh-move{from{transform:translate3d(-14px,-20px,0)}to{transform:translate3d(54px,48px,0)}}
@keyframes pm-glow-breathe{from{transform:translate3d(-3%,3%,0) scale(.93);opacity:.72}to{transform:translate3d(3%,-4%,0) scale(1.09);opacity:1}}
@keyframes pm-orbit-spin{to{transform:rotate(360deg)}}
@keyframes pm-sweep{from{transform:translateY(-48px) rotate(-23deg);opacity:.22}to{transform:translateY(65px) rotate(-23deg);opacity:.65}}
@keyframes pm-beacon{0%,100%{opacity:.45;filter:brightness(.9);scale:.93}50%{opacity:1;filter:brightness(1.23);scale:1.13}}
@keyframes pm-photo-aura{from{opacity:.48;scale:.98}to{opacity:1;scale:1.03}}
@keyframes pm-image-glint{0%,14%{translate:-115% 0;opacity:0}22%{opacity:.8}48%,100%{translate:520% 0;opacity:0}}
@keyframes pm-gradient-flow{to{background-position:220% 50%}}
@keyframes pm-existing-orbit{from{rotate:-3deg;opacity:.68}to{rotate:7deg;opacity:1}}
@keyframes pm-phoenix-heartbeat{0%,100%{box-shadow:0 0 0 1px rgba(212,175,82,.3),0 0 15px rgba(212,175,82,.12)}50%{box-shadow:0 0 0 2px rgba(212,175,82,.72),0 0 36px rgba(212,175,82,.48)}}
@keyframes pm-phoenix-ring{0%{opacity:.65;scale:.95}75%,100%{opacity:0;scale:1.22}}
@keyframes pm-service-sheen{0%,25%{translate:-150% 0;opacity:0}33%{opacity:1}55%,100%{translate:450% 0;opacity:0}}
#page-main .hero.motion-offscreen .hero-motion *,#page-main .hero.motion-offscreen .himg-main::before{animation-play-state:paused}
@media(max-width:900px){#page-main .hm-glow{left:15%;top:12%;width:92vw;height:92vw}#page-main .hm-halo-a{width:78vw;right:-20%;top:27%}#page-main .hm-halo-b{width:53vw;right:3%;top:40%}#page-main .hero-motion{opacity:.82}#page-main .hero-orbit{animation-duration:22s}}
@media(max-width:620px){#page-main .hero-motion{opacity:.59}#page-main .hm-mesh{opacity:.2}#page-main .hm-halo-a{width:100vw;right:-40%;top:22%}#page-main .hm-halo-b,#page-main .hm-beacon-c{display:none}#page-main .hm-sweep{opacity:.2}#page-main .himg-main::before{animation-duration:12s}#page-main .hero-img-grid::before{inset:4%;filter:blur(15px)}#page-main .hero-orbit{display:none}}
@media(prefers-reduced-motion:reduce){#page-main .hero-motion,#page-main .hero-motion *{animation:none!important;transition:none!important;translate:none!important;transform:none!important}#page-main .hm-halo-a,#page-main .hm-halo-b{border-style:solid}#page-main .himg-main::before,#page-main .svc::before{display:none}#page-main .hero-img-grid::before,#page-main .hero .hh1 em,#page-main .hero-orbit,#page-main .phoenix-logo,#page-main .phoenix-logo::after{animation:none!important}#page-main .hero .hh1 em{color:#d4af52!important;background:none!important}}
