.hero-bg-stage{position:absolute;inset:0;overflow:hidden}.hero-bg-photo-wrap{position:absolute;inset:-8%;overflow:hidden}.hero-bg-photo{object-fit:cover;object-position:center 30%;filter:brightness(.82)saturate(.35)contrast(1.1);will-change:transform;transform-origin:50%;width:100%;height:100%;animation:50s ease-in-out infinite alternate heroBgKenBurns}@keyframes heroBgKenBurns{0%{transform:scale(1)translate(0%)}33%{transform:scale(1.06)translate(-1.5%,.8%)}66%{transform:scale(1.04)translate(1%,-.5%)}to{transform:scale(1.08)translate(-.8%,1%)}}.hero-bg-duotone-shadow{mix-blend-mode:multiply;opacity:.48;background:#000c1c;position:absolute;inset:0}.hero-bg-duotone-highlight{mix-blend-mode:screen;background:radial-gradient(120% 80% at 55% 60%,#f7941e38 0%,#ed145b1f 45%,#0000 70%);position:absolute;inset:0}.hero-bg-radial{background:radial-gradient(70% 60% at 50% 45%,#00081461 0%,#0000 100%),radial-gradient(50% 40% at 72% 68%,#f7941e2e 0%,#0000 70%),linear-gradient(175deg,#00051059 0%,#0012282e 50%,#00051073 100%);position:absolute;inset:0}.hero-bg-grain{opacity:.4;pointer-events:none;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23noise)' opacity='0.06'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px 180px;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.hero-bg-photo,.hero-scroll-line,.hero-scroll-chevron{animation:none}}.hero-circuit-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-trace{stroke:#f7941e1f;stroke-width:1px;fill:none;stroke-linecap:square}.hero-trace-dot{fill:#f7941e38}.hero-trace-dot--sm{fill:#ed145b2e}.hero-corner-bracket{stroke:#f7941e47;stroke-width:1.5px;fill:none;stroke-linecap:square;stroke-linejoin:miter}.hero-trace-pulse{fill:#f7941ed9;filter:drop-shadow(0 0 4px #f7941ee6)}.hero-trace-pulse--alt{fill:#ed145bcc;filter:drop-shadow(0 0 4px #ed145be6)}.hero-bg-vignette{pointer-events:none;background:linear-gradient(#0000 62%,#0005128c 100%),linear-gradient(#00051259 0%,#0000 22%),radial-gradient(100% 100%,#0000 55%,#00040e66 100%);position:absolute;inset:0}.hero-tagline-block{flex-direction:column;align-items:center;gap:.9rem;margin:1rem 0 1.75rem;display:flex}.hero-tagline-sub{color:#ffffffd1;letter-spacing:.015em;text-shadow:0 1px 8px #00000080;margin:0;font-size:clamp(.9rem,2vw,1.05rem);font-weight:300;line-height:1.65}.hero-divider-row{align-items:center;gap:.75rem;width:100%;max-width:420px;display:flex}.hero-divider-line{background:linear-gradient(90deg,#0000,#f7941e8c 40%,#ed145b8c 60%,#0000);flex:1;height:1px}.hero-divider-label{letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(110deg, var(--primary-color), var(--secondary-color));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:.7rem;font-weight:700}.hero-location-badge{cursor:default;background:#080e1c8c;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem 1.1rem;font-size:.8rem;display:inline-flex;position:relative;overflow:hidden}.hero-location-icon{color:var(--accent-color);font-size:.95rem}.hero-location-city{color:#fffffff2;letter-spacing:.04em;font-weight:600}.hero-location-sep{color:#ffffff4d;font-size:.7rem}.hero-location-reach{color:#ffffff8c;font-size:.75rem}.hero-service-card{text-align:center;background:#0c142673;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem .75rem 1.25rem;transition:border-color .35s,background .35s,box-shadow .35s,transform .3s;display:flex;position:relative;overflow:hidden}.hero-service-card:after{content:"";background:linear-gradient(90deg, var(--primary-color), var(--secondary-color));transform-origin:0;width:100%;height:2px;transition:transform .45s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.hero-service-card:hover:after,.hero-service-card.group:hover:after{transform:scaleX(1)}.hero-service-card:hover,.hero-service-card.group:hover{background:#ffffff12;border-color:#f7941e38;transform:translateY(-6px);box-shadow:0 12px 40px #00000047,0 4px 16px #f7941e14}.hero-card-num{letter-spacing:.08em;color:#ffffff1f;font-size:.65rem;font-weight:800;font-family:var(--heading-font);-webkit-user-select:none;user-select:none;transition:color .35s;position:absolute;top:.55rem;left:.7rem}.hero-service-card:hover .hero-card-num,.hero-service-card.group:hover .hero-card-num{color:#f7941e59}.hero-card-bar{background:linear-gradient(90deg, var(--primary-color), var(--secondary-color));transform-origin:0;border-radius:0 2px 2px 0;width:100%;height:2px;transition:transform .45s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0;transform:scaleX(0)}.hero-service-card:hover .hero-card-bar,.hero-service-card.group:hover .hero-card-bar{transform:scaleX(1)}.hero-card-icon{color:var(--accent-color);z-index:1;font-size:2rem;transition:color .35s,transform .35s cubic-bezier(.34,1.56,.64,1);position:relative}.hero-service-card:hover .hero-card-icon,.hero-service-card.group:hover .hero-card-icon{color:var(--accent-color2);transform:scale(1.18)translateY(-2px)}.hero-card-title{color:#ffffffe0;z-index:1;margin-top:.75rem;font-size:.78rem;font-weight:600;line-height:1.4;transition:color .3s;position:relative}.hero-service-card:hover .hero-card-title,.hero-service-card.group:hover .hero-card-title{color:#fff}.hero-card-glow{opacity:0;pointer-events:none;background:radial-gradient(circle,#f7941e1f,#0000 70%);border-radius:50%;width:64px;height:64px;transition:opacity .4s;position:absolute;bottom:-16px;right:-16px}.hero-service-card:hover .hero-card-glow,.hero-service-card.group:hover .hero-card-glow{opacity:1}.hero-scroll-indicator{flex-direction:column;align-items:center;gap:.4rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero-scroll-line{background:linear-gradient(#0000,#ffffff59);width:1px;height:36px;animation:2s ease-in-out infinite heroScrollLine}@keyframes heroScrollLine{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.1)}}.hero-scroll-chevron{color:#ffffff6b;justify-content:center;align-items:center;font-size:1rem;text-decoration:none;transition:color .3s,transform .3s;animation:2s ease-in-out infinite heroScrollBounce;display:flex}.hero-scroll-chevron:hover{color:#ffffffd9;transform:translateY(3px)}@keyframes heroScrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}
