/* An endless client strip with a soft, frosted fade at each edge. */
.client-strip-title{display:block;text-align:center;margin:0 0 20px}.client-marquee{position:relative;overflow:hidden;isolation:isolate;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)}.client-marquee-track{display:flex;width:max-content;animation:client-marquee 30s linear infinite}.client-marquee-group{display:flex;align-items:center;justify-content:space-around;gap:65px;padding:12px 32px;min-width:1100px;flex-shrink:0}.client-marquee:before,.client-marquee:after{content:'';position:absolute;top:0;bottom:0;width:11%;z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.client-marquee:before{left:0;mask-image:linear-gradient(to right,#000,transparent)}.client-marquee:after{right:0;mask-image:linear-gradient(to left,#000,transparent)}.client-marquee:hover .client-marquee-track{animation-play-state:paused}@keyframes client-marquee{to{transform:translateX(-50%)}}
/* The active page receives a persistent brand glow, including nested service pages. */
.navlinks>a[aria-current]{color:#e2caff;background:#8602fd22;box-shadow:0 0 0 1px #ba79ff66,0 0 20px #8602fd25;border-radius:6px;padding:10px 13px}.navlinks>a.button[aria-current]{padding:17px 24px}.navlinks>a[aria-current]:hover{box-shadow:0 0 0 1px #ff599588,0 0 24px #8602fd38}html[data-theme="light"] .navlinks>a[aria-current]{color:#7300d9;background:#8602fd0d;box-shadow:0 0 0 1px #8602fd40,0 0 20px #8602fd14}
.site-footer{padding:60px 0 28px}.footer-top{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;padding-bottom:42px}.footer-about{max-width:460px}.footer-description{font-size:15px;line-height:1.85;color:var(--muted);margin:24px 0}.footer-navigation{display:grid;grid-template-columns:1fr 1fr;gap:15px 22px;align-content:start;font-size:13px;color:var(--muted)}.footer-navigation a:hover{color:var(--accent)}.social-links{display:flex;gap:11px;flex-wrap:wrap}.social-links a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--muted);transition:color .2s,transform .2s,border-color .2s}.social-links a:hover{color:var(--accent);border-color:#b982ff;transform:translateY(-3px)}.social-links svg{width:16px;height:16px;fill:currentColor}.footer-companies{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid var(--line);padding:38px 0}.footer-company h3{font-size:20px;margin:0 0 16px}.footer-company .label{display:block;margin-bottom:20px}.footer-contact-list{list-style:none;padding:0;margin:0;display:grid;gap:13px;font-size:13px;color:var(--muted)}.footer-contact-list a{display:inline-flex;gap:11px;align-items:center;line-height:1.6}.footer-contact-list a:hover{color:var(--accent)}.footer-contact-list svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;font-size:11px;color:var(--muted)}.portfolio-copyright{font-size:10px;color:var(--muted);line-height:1.8;border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.simulation-tag{color:#c29de9;border-color:#b681ff40;background:#8602fd0a;text-transform:none;letter-spacing:.3px}.simulation-tag:before{content:'◈'}html[data-theme="light"] .simulation-tag{color:#7946a4}
@media(max-width:1000px){.nav{min-height:72px}.menu{display:block}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;padding:24px;background:var(--surface);flex-direction:column;align-items:start;border:0;gap:20px}.navlinks.open{display:flex}.navtools{margin-left:auto}.footer-top{gap:40px}.footer-companies{gap:35px}}
@media(max-width:600px){.footer-top,.footer-companies{grid-template-columns:1fr;gap:35px}.site-footer{padding-top:45px}.client-marquee-group{min-width:880px;gap:45px;padding:12px 25px}.client-marquee-track{animation-duration:26s}.footer-navigation{max-width:340px}.client-marquee:before,.client-marquee:after{width:14%}}
@media(prefers-reduced-motion:reduce){.client-marquee-track{animation:none}.client-marquee{overflow-x:auto;mask-image:none}.client-marquee-group[aria-hidden="true"]{display:none}.client-marquee:before,.client-marquee:after{display:none}.social-links a{transition:none}.social-links a:hover{transform:none}}
.client-marquee:focus-within .client-marquee-track{animation-play-state:paused}
