/* Motion and depth, ported from DomiSearch: scroll reveal, spotlight cards, glow blobs, 3D phones */
.reveal{opacity:0;will-change:opacity,transform;transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}
.spotlight{isolation:isolate;position:relative}.spotlight::before{content:"";border-radius:inherit;position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(360px circle at var(--spot-x,-200px) var(--spot-y,-200px),rgba(54,92,255,.16),transparent 55%)}.spotlight:hover::before{opacity:1}.spotlight>*{position:relative;z-index:1}
.card{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}.card:hover{transform:translateY(-3px);box-shadow:0 24px 50px -30px rgba(17,29,48,.35)}
.ds-site .ds-journey-art{box-shadow:0 30px 60px -40px rgba(17,29,48,.45);transition:transform .5s cubic-bezier(.2,.8,.2,1)}.ds-site .ds-journey-row:hover .ds-journey-art{transform:translateY(-4px)}
.ds-site .ds-case{box-shadow:0 40px 80px -40px rgba(17,29,48,.6)}
.ds-site .ds-button{transition:transform .2s,background .2s,box-shadow .2s!important}.ds-site .ds-button:hover{box-shadow:0 14px 30px -14px rgba(17,29,48,.6)}
.ds-site .ds-button-green{box-shadow:0 14px 40px -14px rgba(54,92,255,.7)}.ds-site .ds-button-green:hover{box-shadow:0 18px 48px -12px rgba(54,92,255,.8)}
/* phones: perspective, frame highlight, island, deeper shadow */
.fs-phones{perspective:1400px}
.fs-phone{box-shadow:0 50px 90px -40px rgba(17,29,48,.75),0 0 0 1.5px #2B3650 inset,0 1px 0 rgba(255,255,255,.35) inset;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.fs-phone::before{content:"";position:absolute;left:50%;top:14px;transform:translateX(-50%);width:76px;height:20px;border-radius:12px;background:#0E1626;z-index:2}
.fs-phone .fs-scr{padding-top:40px}
.fs-p1{transform:rotateY(14deg) rotate(-8deg)}.fs-p3{transform:rotateY(-14deg) rotate(8deg)}.fs-p2{transform:translateX(-50%) translateZ(30px)}
.fs-phones:hover .fs-p1{transform:rotateY(10deg) rotate(-7deg) translateY(-6px)}.fs-phones:hover .fs-p3{transform:rotateY(-10deg) rotate(7deg) translateY(-6px)}.fs-phones:hover .fs-p2{transform:translateX(-50%) translateZ(40px) translateY(-8px)}
.ds-site .ds-phones::before{background:radial-gradient(closest-side,var(--ds-pale),transparent 92%);filter:blur(2px)}
.ds-site .ds-hero-copy h1 .ds-hero-word{animation-duration:.85s}
.hero-glow{position:absolute;border-radius:50%;filter:blur(110px);opacity:.35;pointer-events:none;z-index:-1;background:var(--ds-green)}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.card,.fs-phone,.ds-site .ds-journey-art{transition:none}}
@media(max-width:960px){.fs-p1,.fs-p3{transform:rotate(-8deg)}.fs-p3{transform:rotate(8deg)}.fs-p2{transform:translateX(-50%)}}
.ds-site .ds-navbar{position:sticky;top:0;z-index:60;isolation:isolate;min-height:84px!important;border-bottom:0!important}
.ds-site .ds-navbar::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:rgba(240,243,250,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid #D8DCE8;box-shadow:0 12px 30px -26px rgba(17,29,48,.45);z-index:-1}
.ds-site .ds-navlinks{font-size:15px!important;gap:32px!important}.ds-site .ds-navlinks a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--ds-green)}.fs-sectors summary{font-size:15px!important}
.ds-site .ds-navlinks .ds-button{border-radius:999px!important;padding:14px 24px!important;min-height:52px!important;font-size:15px!important;font-weight:600!important;background:var(--ds-ink)!important;color:#fff!important;box-shadow:0 14px 30px -14px rgba(17,29,48,.6)}
.ds-site .ds-ticker{position:relative;z-index:61}
.ds-site .ds-form-feedback{background:#E8F5EC;border:1px solid #BFE3C8;color:#14532D;border-radius:12px;padding:14px 16px;font-weight:600;margin-top:16px}
/* floating check pill */
.cn-float{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(16px);z-index:70;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--ds-line);border-radius:999px;padding:8px 10px 8px 8px;box-shadow:0 20px 50px -20px rgba(17,29,48,.5);text-decoration:none!important;color:var(--ds-ink);opacity:0;transition:opacity .5s,transform .5s}.cn-float.on{opacity:1;transform:translateX(-50%)}
.cn-float img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:center top}.cn-float span{display:flex;flex-direction:column;line-height:1.2}.cn-float small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ds-muted);font-weight:600}.cn-float b{font-size:15px;font-weight:600}.cn-float i{width:34px;height:34px;border-radius:50%;background:var(--ds-green);color:#fff;display:grid;place-items:center;font-style:normal}
@media(max-width:600px){.cn-float{left:12px;right:12px;transform:none;bottom:12px}.cn-float.on{transform:none}}
.cn-float{padding:10px 14px 10px 10px;gap:14px}.cn-float img{width:56px;height:56px}.cn-float small{font-size:11px}.cn-float b{font-size:17px}.cn-float i{width:40px;height:40px;font-size:18px}
