*,:after,:before{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}html{scroll-behavior:smooth}body{font-family:Inter,Plus Jakarta Sans,Segoe UI,sans-serif;background:#fff;color:#0f172a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-display{font-family:Geist,Inter,sans-serif;letter-spacing:-.02em}:root{--ink:#0b0b0c;--ink-2:#3f3f46;--muted:#71717a;--line:#e7e7e4;--paper:#fff;--paper-2:#f6f6f4;--accent:#ff5a1f}.pf-page{background:var(--paper);color:var(--ink);font-family:Inter,sans-serif;overflow-x:hidden}.pf-container{max-width:1200px;margin:0 auto;padding:0 32px}.pf-section{padding:112px 0}.pf-section-tight{padding:80px 0}.pf-alt{background:var(--paper-2)}.pf-dark{background:var(--ink);color:#fff}.pf-h1{font-size:clamp(40px,6vw,76px);line-height:1.04;letter-spacing:-.035em}.pf-h1,.pf-h2{font-family:Geist,Inter,sans-serif;font-weight:500;color:var(--ink)}.pf-h2{font-size:clamp(30px,3.6vw,48px);line-height:1.1;letter-spacing:-.03em}.pf-h3{font-family:Geist,Inter,sans-serif;font-weight:500;font-size:clamp(20px,2vw,24px);line-height:1.25;letter-spacing:-.02em;color:var(--ink)}.pf-lead{font-size:18px;line-height:1.65}.pf-body,.pf-lead{color:var(--muted)}.pf-body{font-size:15px;line-height:1.7}.pf-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.pf-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.pf-btn{display:inline-flex;align-items:center;gap:12px;padding:7px 7px 7px 22px;border-radius:999px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .15s ease,background .15s ease;white-space:nowrap}.pf-btn:hover{transform:translateY(-1px)}.pf-btn-dark{background:var(--ink);color:#fff}.pf-btn-dark:hover{background:#26262a}.pf-btn-light{background:#fff;color:var(--ink);border:1px solid var(--line)}.pf-btn-light:hover{border-color:#cfcfcb}.pf-btn-arrow{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.pf-btn-dark .pf-btn-arrow{background:#fff;color:var(--ink)}.pf-btn-light .pf-btn-arrow{background:var(--ink);color:#fff}.pf-btn-plain{padding:13px 24px}.pf-nav-link{font-size:14px;color:var(--ink-2);text-decoration:none;padding:6px 12px;border-radius:999px;transition:background .15s ease,color .15s ease}.pf-nav-link:hover,.pf-nav-link[aria-current=page]{background:var(--paper-2);color:var(--ink)}.pf-card{background:#fff;border:1px solid var(--line);border-radius:20px}.pf-img{display:block;width:100%;object-fit:cover;object-position:top;border-radius:16px;background:var(--paper-2)}.pf-img-frame{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}.pf-link-card{display:block;text-decoration:none;color:inherit}.pf-link-card:hover .pf-img{transform:scale(1.015)}.pf-link-card .pf-img{transition:transform .4s ease}.pf-row{border-top:1px solid var(--line)}.pf-row:last-child{border-bottom:1px solid var(--line)}.pf-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px}.pf-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.pf-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:20px;gap:20px}.pf-split{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:start}.pf-split-head{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:48px;gap:48px;align-items:end;margin-bottom:56px}.pf-service-row{display:grid;grid-template-columns:80px 1fr 220px;grid-gap:32px;gap:32px;padding:36px 0;align-items:start}.pf-stats{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-gap:16px;gap:16px}.pf-faq{border-top:1px solid var(--line)}.pf-faq:last-child{border-bottom:1px solid var(--line)}.pf-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;font-family:Geist,Inter,sans-serif;font-size:18px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}.pf-faq summary::-webkit-details-marker{display:none}.pf-faq summary span{font-size:22px;font-weight:400;color:var(--muted);transition:transform .2s ease;flex-shrink:0}.pf-faq[open] summary span{transform:rotate(45deg)}.pf-label{display:block;font-size:13px;font-weight:500;color:var(--ink);margin-bottom:8px}.pf-input{width:100%;box-sizing:border-box;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:15px;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.pf-input::placeholder{color:#a1a1aa}.pf-input:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(11,11,12,.06)}select.pf-input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2371717A' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}textarea.pf-input{resize:vertical;min-height:120px}.pf-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:640px){.pf-form-row{grid-template-columns:1fr}}.pf-legal-grid{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:72px;gap:72px;align-items:start}.pf-legal-toc{position:-webkit-sticky;position:sticky;top:104px}.pf-legal-toc a:hover{color:var(--ink);text-decoration:underline}@media (max-width:960px){.pf-legal-grid{grid-template-columns:1fr;gap:32px}.pf-legal-toc{position:static}}.pf-prose{max-width:720px}.pf-prose h2{font-size:28px;letter-spacing:-.025em;line-height:1.2;margin:48px 0 16px}.pf-prose h2,.pf-prose h3{font-family:Geist,Inter,sans-serif;font-weight:500;color:var(--ink)}.pf-prose h3{font-size:21px;letter-spacing:-.015em;margin:32px 0 12px}.pf-prose h4{font-size:17px;font-weight:600;color:var(--ink);margin:24px 0 8px}.pf-prose p{font-size:17px;line-height:1.8;color:var(--ink-2);margin:0 0 20px}.pf-prose ol,.pf-prose ul{padding-left:22px;margin:0 0 20px}.pf-prose li{font-size:17px;line-height:1.75;color:var(--ink-2);margin-bottom:8px}.pf-prose li::marker{color:var(--accent)}.pf-prose blockquote{border-left:2px solid var(--accent);margin:32px 0;padding:4px 0 4px 24px}.pf-prose blockquote p{font-family:Geist,Inter,sans-serif;font-size:22px;line-height:1.45;letter-spacing:-.015em;color:var(--ink);margin:0}.pf-prose strong{color:var(--ink);font-weight:600}.pf-prose a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px}.pf-prose table{width:100%;border-collapse:collapse;margin:28px 0;font-size:15px;display:block;overflow-x:auto}.pf-prose th{text-align:left;font-weight:600;color:var(--ink);padding:12px 14px;border-bottom:1px solid var(--ink)}.pf-prose td{padding:12px 14px;border-bottom:1px solid var(--line);color:var(--ink-2)}.pf-prose hr{border:none;border-top:1px solid var(--line);margin:40px 0}.pf-prose code{background:var(--paper-2);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:14px}.pf-prose pre{background:var(--ink);color:#e7e7e4;border-radius:14px;padding:20px 22px;overflow-x:auto;margin:24px 0;font-size:14px;line-height:1.6}.pf-prose pre code{background:none;border:none;padding:0;color:inherit}.pf-prose img{max-width:100%;height:auto;border-radius:14px}.pf-blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:72px;gap:72px;align-items:start}.pf-blog-sidebar{position:-webkit-sticky;position:sticky;top:104px;display:flex;flex-direction:column;gap:36px}@media (max-width:960px){.pf-blog-layout{grid-template-columns:1fr;gap:48px}.pf-blog-sidebar{position:static}}.pf-grid-5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:24px;gap:24px}.pf-sabs-screens{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:28px;gap:28px;align-items:start}@media (max-width:960px){.pf-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-sabs-screens{grid-template-columns:1fr}.pf-sabs-screens>:last-child{max-width:320px}}@media (max-width:640px){.pf-grid-5{grid-template-columns:1fr}.pf-br-d{display:none}}.pf-phone-stage{position:relative;background:radial-gradient(120% 90% at 50% 0,#fff 0,var(--paper-2) 60%);border:1px solid var(--line);border-radius:28px;height:620px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.pf-phone{height:560px;width:auto;display:block;margin-bottom:-40px;border-radius:40px;box-shadow:0 40px 80px -20px rgba(11,11,12,.35),0 12px 24px -12px rgba(11,11,12,.2);animation:pfFloat 6s ease-in-out infinite}.pf-phone-chip{position:absolute;display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:12px 18px;font-size:14px;font-weight:500;color:var(--ink);box-shadow:0 12px 30px rgba(11,11,12,.08);animation:pfFloat 7s ease-in-out infinite}.pf-phone-chip-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.pf-phone-chip-0{left:9%;top:26%}.pf-phone-chip-1{right:9%;top:40%;animation-delay:-2s}.pf-phone-chip-2{left:14%;top:62%;animation-delay:-4s}.pf-phone-caption{position:absolute;left:24px;top:20px;font-size:12px;color:var(--muted)}@keyframes pfFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width:760px){.pf-phone-stage{height:460px}.pf-phone{height:420px;border-radius:30px}.pf-phone-chip{display:none}}@media (prefers-reduced-motion:reduce){.pf-phone,.pf-phone-chip{animation:none!important}}.pf-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}.pf-reveal.pf-in{opacity:1;transform:none}@keyframes pfRise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes pfFade{0%{opacity:0}to{opacity:1}}.pf-hero-in>*{animation:pfRise .9s cubic-bezier(.2,.7,.2,1) both}.pf-hero-in>:first-child{animation-delay:.05s}.pf-hero-in>:nth-child(2){animation-delay:.15s}.pf-hero-in>:nth-child(3){animation-delay:.27s}.pf-hero-in>:nth-child(4){animation-delay:.39s}.pf-hero-in>:nth-child(5){animation-delay:.5s}.pf-hero-shots>*{animation:pfRise 1s cubic-bezier(.2,.7,.2,1) both}.pf-hero-shots>:first-child{animation-delay:.55s}.pf-hero-shots>:nth-child(2){animation-delay:.65s}.pf-hero-shots>:nth-child(3){animation-delay:.75s}.pf-marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.pf-marquee-track{display:flex;width:max-content;animation:pfMarquee 36s linear infinite}.pf-marquee:hover .pf-marquee-track{animation-play-state:paused}.pf-marquee-item{display:inline-flex;align-items:center;gap:28px;padding-right:28px;font-family:Geist,Inter,sans-serif;font-size:clamp(18px,2vw,26px);font-weight:500;letter-spacing:-.02em;color:var(--ink);white-space:nowrap}.pf-marquee-item .pf-marquee-dot{color:var(--accent);font-size:.6em}.pf-marquee-item .pf-marquee-ghost{color:#b4b4b0}@keyframes pfMarquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.pf-btn-arrow svg{transition:transform .3s cubic-bezier(.2,.7,.2,1)}.pf-btn:hover .pf-btn-arrow svg,.pf-link-card:hover h3 svg{transform:rotate(45deg)}.pf-link-card h3 svg{transition:transform .3s cubic-bezier(.2,.7,.2,1)}.pf-img-frame img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}.pf-link-card:hover .pf-img-frame img{transform:scale(1.03)}.pf-link-card:hover .pf-img{transform:scale(1.02)}.pf-card{transition:border-color .2s ease,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}.pf-link-card .pf-card:hover,a.pf-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(11,11,12,.08)}@media (prefers-reduced-motion:reduce){.pf-hero-in>*,.pf-hero-shots>*,.pf-marquee-track{animation:none!important}.pf-reveal{opacity:1!important;transform:none!important}.pf-btn-arrow svg,.pf-img,.pf-img-frame img,.pf-reveal{transition:none!important}}.pf-float{position:absolute;width:190px;height:130px;object-fit:cover;object-position:top;border-radius:14px;border:1px solid var(--line);box-shadow:0 12px 32px rgba(11,11,12,.1)}@media (max-width:960px){.pf-about-grid{grid-template-columns:1fr!important;gap:20px!important}.pf-grid-3,.pf-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-split,.pf-split-head{grid-template-columns:1fr;gap:32px}.pf-service-row{grid-template-columns:56px 1fr}.pf-service-row .pf-service-img{display:none}.pf-stats{grid-template-columns:1fr 1fr}.pf-contact-grid{grid-template-columns:1fr!important;gap:40px!important}}@media (max-width:640px){.pf-container{padding:0 20px}.pf-section{padding:72px 0}.pf-section-tight{padding:56px 0}.pf-grid-2,.pf-grid-3,.pf-grid-4,.pf-stats{grid-template-columns:1fr}.pf-lead{font-size:16px}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes barIn{0%{width:0}to{width:var(--w,100%)}}.fade-up{animation:fadeUp .45s ease both}.fade-in{animation:fadeIn .35s ease both}.spinner{animation:spin .9s linear infinite}.slide-down{animation:slideDown .35s ease both}.btn{cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:scale(.97)}.card-lift{transition:transform .22s ease,box-shadow .22s ease}.card-lift:hover{transform:translateY(-3px)}.nav-link{font-size:14px;font-weight:500;color:#475569;text-decoration:none;transition:color .18s;padding:6px 0;position:relative}.nav-link:hover{color:#4f46e5}.footer-link{display:block;font-size:13px;color:hsla(0,0%,100%,.42);text-decoration:none;margin-bottom:9px;transition:color .18s}.footer-link:hover{color:hsla(0,0%,100%,.85)}.section{padding:88px 24px}.section-sm{padding:64px 24px}.container{max-width:1120px;margin:0 auto}.label-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.tech-tag{display:inline-block;padding:5px 12px;border-radius:6px;font-size:12px;font-weight:600;background:#f8faff;border:1px solid #e2e8f0;color:#475569;transition:all .18s}.tech-tag:hover{background:#eef2ff;border-color:#c7d2fe;color:#4f46e5}.data-table{width:100%;border-collapse:collapse}.data-table th{font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;padding:10px 16px;border-bottom:1px solid #f1f5f9;text-align:left;white-space:nowrap;background:#fafafa}.data-table td{padding:12px 16px;border-bottom:1px solid #f8faff;font-size:13px;color:#334155}.data-table tbody tr:hover{background:#fafafa}.data-table tbody tr:last-child td{border-bottom:none}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600}.pill-green{background:#d1fae5;color:#065f46}.pill-amber{background:#fef3c7;color:#92400e}.pill-red{background:#fee2e2;color:#991b1b}.pill-blue{background:#dbeafe;color:#1e40af}.pill-purple{background:#ede9fe;color:#5b21b6}.reveal{opacity:0;transform:translateY(30px);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.reveal-left.visible{opacity:1;transform:translateX(0)}.reveal-right{opacity:0;transform:translateX(30px);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.reveal-right.visible{opacity:1;transform:translateX(0)}.reveal-scale{opacity:0;transform:scale(.94);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.reveal-scale.visible{opacity:1;transform:scale(1)}.d1{transition-delay:80ms!important}.d2{transition-delay:.16s!important}.d3{transition-delay:.24s!important}.d4{transition-delay:.32s!important}.d5{transition-delay:.4s!important}.d6{transition-delay:.48s!important}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes floatAlt{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(1deg)}}.float{animation:float 4.5s ease-in-out infinite}.float-alt{animation:floatAlt 5s ease-in-out infinite}.gradient-text{background:linear-gradient(135deg,#4f46e5,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes glowPulse{0%,to{box-shadow:0 8px 24px rgba(79,70,229,.25)}50%{box-shadow:0 8px 40px rgba(79,70,229,.55),0 0 0 6px rgba(79,70,229,.08)}}.glow-pulse{animation:glowPulse 2.8s ease-in-out infinite}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(20px,-15px) scale(1.05)}66%{transform:translate(-12px,10px) scale(.97)}}.orb{animation:orbFloat 9s ease-in-out infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer{background:linear-gradient(90deg,#f0f4ff 25%,#e0e8ff 50%,#f0f4ff 75%);background-size:200% 100%;animation:shimmer 2s infinite;border-radius:8px}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cursor{display:inline-block;width:2px;height:.85em;background:currentColor;margin-left:2px;animation:blink 1s step-end infinite;vertical-align:text-bottom}.gradient-border{position:relative;border-radius:16px;background:#fff}.gradient-border:before{content:"";position:absolute;inset:-1.5px;border-radius:17px;background:linear-gradient(135deg,#4f46e5,#7c3aed,#06b6d4);z-index:-1}.demo-shell{min-height:100vh;background:#f8faff;font-family:Inter,Plus Jakarta Sans,sans-serif}@media (max-width:768px){.section{padding:60px 16px}.section-sm{padding:44px 16px}.hide-mobile{display:none!important}.data-table td:nth-child(n+4),.data-table th:nth-child(n+4){display:none}}@media (min-width:769px){.show-mobile{display:none!important}}