/* Made by Swerve — v1.6.2 interface polish and accessible scrolling */
/* Never inherit the site's generic link hover color on button text. */
a.btn, button.btn, input.btn { text-decoration: none; }
a.btn.btn-blue, button.btn.btn-blue, input.btn.btn-blue { color: #fff !important; background-color: var(--blue, #2563eb); }
a.btn.btn-blue:hover, a.btn.btn-blue:focus-visible,
button.btn.btn-blue:hover, button.btn.btn-blue:focus-visible,
input.btn.btn-blue:hover, input.btn.btn-blue:focus-visible { color: #fff !important; background-color: #1749c4; }
a.btn.btn-light, button.btn.btn-light { background-color: #fff; color: #101d33 !important; }
a.btn.btn-light:hover, a.btn.btn-light:focus-visible,
button.btn.btn-light:hover, button.btn.btn-light:focus-visible,
.site-footer .footer-main a.btn.btn-light:hover,
.site-footer .footer-main a.btn.btn-light:focus-visible {
  background-color: #e8f1ff; color: #101d33 !important;
}
a.btn.btn-outline, button.btn.btn-outline { color: #fff !important; }
a.btn.btn-outline:hover, a.btn.btn-outline:focus-visible,
button.btn.btn-outline:hover, button.btn.btn-outline:focus-visible { color: #101d33 !important; background-color: #fff; }
.btn:focus-visible { outline: 3px solid #14b8a6; outline-offset: 4px; }
.btn { transition: background-color .22s ease, border-color .22s ease, color .22s ease, box-shadow .22s ease, transform .22s ease; }
/* The service and process symbols all share one stable visual box. */
.icon-badge svg { display:block; width:24px; height:24px; overflow:visible; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.process-layout .step-icon svg, .service-mark .icon-badge svg { width:26px; height:26px; }
/* The contents stay visible without JavaScript and for reduced motion. */
@media (prefers-reduced-motion: no-preference) {
  .js.swerve-motion-ready .swerve-scroll-enter {
    transition-property: opacity, transform;
    transition-duration: .72s;
    transition-timing-function: cubic-bezier(.22,1,.36,1);
    transition-delay: var(--swerve-stagger, 0ms);
  }
  .js.swerve-motion-ready .swerve-scroll-enter:not(.is-visible) {
    opacity: 0;
    transform: translate3d(0, 22px, 0);
  }
  .js.swerve-motion-ready .swerve-scroll-enter.is-visible { opacity: 1; }
  .js.swerve-motion-ready .reveal { transition-delay:var(--swerve-stagger, 0ms); }
}
@media (prefers-reduced-motion: reduce) {
  .swerve-scroll-enter, .reveal { opacity:1 !important; transform:none !important; transition:none !important; }
}

/* Growth Suite integration (shown only when plugin active) */
.sgs-theme-promo{background:#f1f6fc}.sgs-promo-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:46px}.sgs-promo-grid h2{max-width:600px}.sgs-promo-grid p{max-width:580px;color:#566a80}.sgs-promo-actions{display:flex;flex-wrap:wrap;gap:10px}.sgs-promo-art{min-height:290px;border-radius:28px;background:radial-gradient(circle at 70% 15%,#18c6b5a6,transparent 40%),linear-gradient(135deg,#0b1220,#233d80 75%,#1c7e98);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;color:#fff;transform:rotate(-2deg);box-shadow:0 22px 70px #0b12201a}.sgs-promo-art span{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-.08em;font-size:clamp(32px,5vw,56px)}.sgs-promo-art span:nth-child(2){color:#6ae1d9}@media(max-width:800px){.sgs-promo-grid{grid-template-columns:1fr}.sgs-promo-art{min-height:210px;transform:none}}
