:root{--black:#000;--cyan:#7650ef}
.hero:before{display:none}.hero-inner{align-items:center;gap:5vw}
.hero-connections{min-width:0;width:100%;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.hero-connections .hero-note{max-width:none;margin:24px 0 0;font-size:16px}
.connection-art{position:relative;width:100%;aspect-ratio:6/5;overflow:hidden;background:#000;isolation:isolate}
.cable-svg{width:100%;height:100%;display:block;overflow:visible}
.cable-lines path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.cable-shadow{stroke:#7650ef;stroke-width:12;opacity:.18;filter:url(#cable-light)}
.cable-wire{stroke:#aba3b8;stroke-width:4.5}
.cable-highlight{stroke:#fff;stroke-width:1.1;opacity:.8}
.cable-energy{stroke:url(#energy-wave);stroke-width:7;stroke-dasharray:20 78;opacity:0;filter:drop-shadow(0 0 7px #35d7ff) drop-shadow(0 0 13px #8e5bff)}
.nova{opacity:0;pointer-events:none;mix-blend-mode:screen}.nova-rays{transform-origin:0 0}
.connection-toggle{position:absolute;bottom:8px;right:8px;width:32px;height:32px;display:grid;place-items:center;color:#a595bb;background:#0b080f;border:1px solid #ffffff20;border-radius:50%;cursor:pointer}
.connection-toggle:hover{color:#fff;border-color:#a184ed}.connection-toggle:focus-visible{outline:2px solid #b297ff;outline-offset:4px}
@media(max-width:800px){.hero-connections{max-width:580px;margin:auto}.connection-art{aspect-ratio:6/4}.hero-connections .hero-note{margin-top:30px}.hero-inner{gap:32px}}
@media(prefers-reduced-motion:reduce){.connection-toggle{display:none}}

/* Transparent plug bodies with fine white outlines. */
.male-plug rect,.male-plug path,.female-plug rect,.female-plug path{fill:none;stroke:#fff;stroke-width:1.5;stroke-opacity:1;stroke-linecap:round;stroke-linejoin:round}
.cable-wire{stroke:#fff;stroke-width:2}.cable-highlight{display:none}.cable-shadow{opacity:.08}
.nova-rays,.nova-shock{display:none}.nova-cloud{opacity:.25}
.outer-pin,.outer-socket{filter:drop-shadow(0 0 4px #ffffff90)}
.connection-ripple{pointer-events:none;filter:drop-shadow(0 0 5px #48d8ff) drop-shadow(0 0 12px #9d6cff);vector-effect:non-scaling-stroke}

/* Match the home-page footer exactly. */
.footer{background:#0e1021!important;color:#f4f3ff;padding:0!important}
.footer .shell{max-width:1440px}
.footer-main{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.12fr;gap:clamp(32px,4.5vw,76px);padding:72px 0 65px}
.footer-about{max-width:360px}
.footer-wordmark{display:inline-block;font:600 46px/1 'Outfit','DM Sans',sans-serif;letter-spacing:-.075em;color:#fff!important;border:0!important;text-transform:lowercase}
.footer-wordmark .wordmark-dot{color:#7650ef}
.footer-tagline{margin:18px 0 0;max-width:315px;color:#fff;font-size:17px;font-weight:700;line-height:1.42}
.footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.footer-group h2{font:700 13px/1.4 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#e3e5eb;margin:2px 0 7px}
.footer-group a{position:relative;display:inline-flex;align-items:center;padding-right:24px;color:#fff!important;font:16px/1.4 'DM Sans',sans-serif;border:0!important;text-decoration:none!important;transition:color .2s ease}
.footer-group a::after{content:'↗';position:absolute;right:0;top:0;color:#7650ef;opacity:0;transform:translate(-7px,5px);transition:opacity .24s ease,transform .24s ease}
.footer-group a:hover,.footer-group a:focus-visible{color:#fff;text-decoration:none!important}
.footer-group a:hover::after,.footer-group a:focus-visible::after{opacity:1;transform:translate(0,0)}
.footer-group .footer-more{padding-right:0}.footer-group .footer-more::after{display:none}
.footer-bottom{border-top:1px solid #ffffff1c;display:flex;justify-content:space-between;gap:20px;padding:29px 0 36px;color:#d6d9e1;font-size:14px;letter-spacing:.01em}
.dynamx-signoff{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#fff;line-height:1;font-size:14px}
.dynamx-footer-logo{display:block;width:136px;height:42px;object-fit:none;object-position:-43px -17px;mix-blend-mode:lighten;transform:scale(.52);margin-inline:-31px}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1fr;gap:38px 22px;padding:62px 0 52px}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px;font-size:13px;padding:24px 0 30px}}
@media(max-width:560px){.footer-main{grid-template-columns:1fr}.footer-about{grid-column:auto}.footer-group{gap:11px}.footer-group a{font-size:15px}}
