/* Framework-independent interactions. Content remains visible without JavaScript. */
.skip-link { position:fixed;top:8px;left:8px;z-index:10000;background:var(--color-ink);color:white;padding:12px 18px;transform:translateY(-150%); }
.skip-link:focus { transform:none; }
a:focus-visible,button:focus-visible,[role=button]:focus-visible,input:focus-visible,textarea:focus-visible { outline:2px solid var(--color-accent);outline-offset:5px; }
[data-part="hover animation"] { pointer-events:none; }
[data-parallax] { will-change:transform; }
[data-accordion] { height:auto!important; cursor:default!important; }
[data-accordion-trigger] { cursor:pointer; }
[data-accordion-answer][hidden] { display:none!important; }
[data-accordion] [data-accordion-answer] { position:relative!important;inset:auto!important;width:100%!important;box-sizing:border-box;padding:0!important;min-height:0; }
/* Keep spacing inside the clipped content so the animated shell can reach zero. */
[data-accordion-answer] > div { padding-bottom:16px; }
[data-accordion-answer]:not([hidden]) { height:auto;opacity:1;overflow:visible; }
[data-accordion-trigger] svg { color:var(--color-white);transition:color 300ms cubic-bezier(1,.01,.56,1) 100ms; }
[data-accordion-trigger] .faq-icon-vertical { transform-origin:12px 12px;transition:transform 300ms cubic-bezier(1,.01,.56,1) 100ms; }
[data-accordion-trigger][aria-expanded=true] svg { color:var(--color-ink); }
[data-accordion-trigger][aria-expanded=true] .faq-icon-vertical { transform:scaleY(0); }
[data-accordion] [data-part="Divider"] { transition:width 300ms cubic-bezier(1,.01,.56,1) 100ms; }
.mobile-menu { position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;box-sizing:border-box;border:0;margin:0;padding:90px 20px 32px;color:var(--color-ink);background:var(--color-white);z-index:9999; }
.mobile-menu::backdrop { background:rgba(0,0,0,.12); }
.mobile-menu nav { display:flex;flex-direction:column;gap:0; }
.mobile-menu nav a { display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:inherit;font:600 26px/1.2 var(--font-display);padding:24px 0; }
.mobile-menu .mobile-social { position:absolute;left:20px;right:20px;bottom:32px;display:flex;justify-content:space-between; }
.mobile-social a { font:600 14px var(--font-body);color:inherit;text-decoration:none; }
.menu-close { position:absolute;top:12px;right:15px;background:none;border:0;padding:4px 12px;font:32px var(--font-body);cursor:pointer; }
.menu-brand { position:absolute;top:12px;left:20px;font:700 36px/1 var(--font-display);letter-spacing:-1.8px; }
.form-notice { position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:min(480px,calc(100vw - 32px));box-sizing:border-box;padding:18px 24px;border-radius:12px;background:var(--color-ink);color:var(--color-white);z-index:10001;font:400 16px/1.45 var(--font-body);box-shadow:0 8px 40px #0003; }
.form-notice[hidden] { display:none; }
.form-notice button { margin-left:12px;background:none;border:0;color:inherit;cursor:pointer;font-size:18px; }
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important;transition-duration:.01ms!important; }
  [data-parallax] { transform:none!important; }
}

/* Client logos reveal their short case-study descriptions. */
/* Preserve the artwork's intended oversized crop inside its flex wrapper. */
img[data-parallax] { flex-shrink:0; max-width:none; }

.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
[data-pricing-front] { z-index:1!important; }
[data-pricing-front="true"] { z-index:2!important; }
[data-pricing-front] > div { transition:background-color .4s cubic-bezier(.44,0,.56,1),box-shadow .4s cubic-bezier(.44,0,.56,1); }
[data-pricing-front="true"] > div { background-color:var(--token-1f32a6c5-e7fe-4fa0-830a-9d056964c691,#2e2f38)!important;cursor:default; }
[data-pricing-front="false"] > div { background-color:var(--token-794520ef-faec-440e-8f2d-9d79cc1f8644,#24242e)!important;box-shadow:none!important;cursor:pointer; }
.design-1j1pwuj-container[data-pricing-front="true"] > div { box-shadow:-30px 18px 24px #0004!important; }
.design-fp0vd4-container[data-pricing-front="true"] > div { box-shadow:30px 18px 24px #0004!important; }
[data-pricing-front="false"] a { opacity:.2!important;pointer-events:none; }
[data-pricing-front="true"] a { opacity:1!important; }
@media(prefers-reduced-motion:reduce) { [data-pricing-front] > div { transition:none; } }

nav a[data-part="Logo"] { color:inherit;text-decoration:none; }
