/* ==== Interface touches (October 2026): cursor ==== */
.zs-cursor{position:fixed;left:0;top:0;z-index:2147483000;pointer-events:none;opacity:0;transition:opacity .2s}
.zs-cursor.is-on{opacity:1}
.zs-cursor__dot{position:absolute;left:-7px;top:-7px;width:14px;height:14px;border-radius:999px;background:var(--e-global-color-accent,#DDFE65);transition:transform .2s,opacity .2s}
.zs-cursor__label{position:absolute;left:0;top:0;transform:translate(-50%,-50%) scale(.3);opacity:0;padding:10px 20px;border-radius:999px;background:var(--e-global-color-accent,#DDFE65);color:#151515;font:500 15px/1 "Open Sauce One",Arial,sans-serif;white-space:nowrap;transition:transform .22s,opacity .22s}
.zs-cursor.is-view .zs-cursor__dot{opacity:0;transform:scale(.4)}
.zs-cursor.is-view .zs-cursor__label{opacity:1;transform:translate(-50%,-50%) scale(1)}
html.zs-has-cursor [data-cursor]{cursor:none}
@media (prefers-reduced-motion: reduce){.zs-cursor__dot,.zs-cursor__label{transition:none}}

/* ==== Floating "Get in touch" button ==== */
.elementor-kit-10 a.zs-fab,.elementor-kit-10 a.zs-fab:hover{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:9990;display:flex;align-items:center;gap:12px;padding:8px 20px 8px 8px;border-radius:999px;background:#151515;color:#fff;text-decoration:none;box-shadow:0 12px 30px rgba(0,0,0,.28);transform:translateY(16px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s,background-color .2s}
.elementor-kit-10 a.zs-fab:hover{background:#2A2A2A}
.elementor-kit-10 a.zs-fab.is-on{opacity:1;transform:none;pointer-events:auto}
.zs-fab img{display:block;width:44px;height:44px;border-radius:999px;object-fit:cover;box-shadow:0 0 0 2px var(--e-global-color-accent,#DDFE65)}
.zs-fab__text{display:flex;flex-direction:column;gap:2px;line-height:1.2}
.zs-fab__text strong{font-size:15px;font-weight:500;color:#fff}
.zs-fab__text span{font-size:13px;color:var(--e-global-color-accent,#DDFE65)}
@media(max-width:767px){.elementor-kit-10 a.zs-fab,.elementor-kit-10 a.zs-fab:hover{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:6px 16px 6px 6px}.zs-fab img{width:36px;height:36px}}

/* ==== Video player: muted autoplay, "Click for sound", simple controls ==== */
.zs-player{position:relative}
.elementor-kit-10 .zs-player__sound{position:absolute;left:16px;top:16px;z-index:2;display:inline-flex;align-items:center;gap:10px;margin:0;padding:11px 18px;border:0;border-radius:999px;background:var(--e-global-color-accent,#DDFE65);color:#151515;font:500 15px/1 "Open Sauce One",Arial,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.3);transition:transform .2s,background-color .2s}
.elementor-kit-10 .zs-player__sound:hover{background:#fff;color:#151515;transform:scale(1.04)}
.zs-player__sound svg{width:20px;height:20px;fill:currentColor}
.zs-player.is-live .zs-player__sound{display:none}
.zs-player__bar{position:absolute;left:14px;right:14px;bottom:14px;z-index:2;display:none;align-items:center;gap:12px;padding:6px 12px;border-radius:999px;background:rgba(21,21,21,.78);opacity:0;transition:opacity .3s}
.zs-player.is-live .zs-player__bar{display:flex}
.zs-player.is-live:hover .zs-player__bar,.zs-player.is-live.show-bar .zs-player__bar,.zs-player.is-live.is-paused .zs-player__bar,.zs-player__bar:focus-within{opacity:1}
.elementor-kit-10 .zs-player__btn,.elementor-kit-10 .zs-player__btn:hover,.elementor-kit-10 .zs-player__btn:focus{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin:0;padding:0;border:0;border-radius:999px;background:transparent;color:#fff;cursor:pointer}
.elementor-kit-10 .zs-player__btn:hover{background:rgba(255,255,255,.15)}
.zs-player__btn svg{width:20px;height:20px;fill:currentColor}
.zs-player__track{position:relative;flex:1;height:6px;border-radius:999px;background:rgba(255,255,255,.25);cursor:pointer}
.zs-player__fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:inherit;background:var(--e-global-color-accent,#DDFE65)}
.zs-video__preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.8}
.zs-video.has-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),rgba(0,0,0,0) 55%)}
.zs-video.has-preview>span{z-index:1}

/* ==== Headings (October 2026): Inter Tight for headings, Monument Extended kept for the hero and "Let's work together" ==== */
@font-face{font-family:"Inter Tight";src:url(../fonts/inter-tight-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
body :is(h2,h3,.elementor-heading-title,.zs-h2,.zs-h3,.e-n-accordion-item-title-text,.zs-why__item dt,.zs-faq__item summary,.zs-row__name,.zs-mega__title,.zs-ai__label,.zs-founder__name,.zs-svc__title,.zs-work__title):not(.elementor-element-d8d7e62 *):not(.elementor-element-eafe59c *){font-family:"Inter Tight",Arial,sans-serif !important;text-transform:none !important;letter-spacing:-.02em !important;font-weight:700 !important}
body .elementor-element-210b101 .elementor-heading-title:not(#zs-x),body .scrolling-banner-custom .elementor-heading-title:not(#zs-x){font-family:"Monument Extended",Sans-serif !important;text-transform:uppercase !important;letter-spacing:normal !important;font-weight:400 !important}
