/* ===== perfectpanel.ai design framework (compiled Tailwind tokens) ===== */
*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:Inter,Inter var,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{height:100%}
body{background-color:rgb(var(--bg-page));color:rgb(var(--text-primary));position:relative;isolation:isolate;width:100%;overflow-x:hidden;font-size:.875rem;line-height:1.25rem;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.grid>*{min-width:0}
h1,h2,h3{font-weight:600}h1{font-size:1.5rem;line-height:1.25}h2{font-size:1.25rem;line-height:1.25}h3{font-size:1.125rem;line-height:1.5}p{line-height:1.625}b,strong{font-weight:700}cite,em,i{font-style:italic}small{color:rgb(var(--text-label)/.8);font-size:.75rem;line-height:1rem}
[role=button],button,input[type=button],input[type=reset],input[type=submit]{display:inline-flex;-webkit-user-select:none;user-select:none;align-items:center;justify-content:center;outline:2px solid transparent;outline-offset:2px;padding:.5rem 1rem;cursor:pointer;border-radius:9999px;background-color:rgb(0 0 0);font-weight:500;color:rgb(255 255 255);transition:all .15s cubic-bezier(.4,0,.2,1);text-decoration-line:none}
[role=button]:hover,button:hover,input[type=submit]:hover{background-color:rgba(0,0,0,.9)}
[role=button]:active,button:active,input[type=submit]:active{transform:scale(.98)}
@media (min-width:0px){[role=button],button,input[type=button],input[type=reset],input[type=submit]{background-color:rgb(255 255 255);color:rgb(0 0 0)}[role=button]:hover,button:hover,input[type=submit]:hover{background-color:hsla(0,0%,100%,.9)}}
[role=button].secondary,button.secondary{background-color:rgb(var(--bg-secondary));color:rgb(var(--text-primary));box-shadow:0 0 0 1px var(--ring-primary)}
[role=button].secondary:hover,button.secondary:hover{background-color:rgb(var(--bg-tertiary))}
[role=button].outline,button.outline{color:rgb(var(--text-primary));background-color:transparent;box-shadow:0 0 0 1px var(--ring-primary)}
[role=button].outline:hover,button.outline:hover{background-color:rgba(0,0,0,.05)}
@media (min-width:0px){[role=button].outline:hover,button.outline:hover{background-color:hsla(0,0%,100%,.1)}}
[role=button].ghost,button.ghost{color:rgb(var(--text-primary));background-color:transparent}
[role=button].ghost:hover,button.ghost:hover{background-color:rgba(0,0,0,.05)}
@media (min-width:0px){[role=button].ghost:hover,button.ghost:hover{background-color:hsla(0,0%,100%,.1)}}
[role=button]:disabled,button:disabled{pointer-events:none;cursor:not-allowed;opacity:.5}
input,select,textarea{color:rgb(var(--text-primary));background-color:rgb(var(--bg-primary))}
input:focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px rgba(0,0,0,.2)}
@media (min-width:0px){input:focus,select:focus,textarea:focus{box-shadow:0 0 0 2px hsla(0,0%,100%,.4)}}
label{display:block;font-weight:500}
details summary{color:rgb(var(--text-label)/.8);padding-top:.25rem;padding-bottom:.25rem;cursor:pointer;align-items:center;justify-content:space-between;outline:2px solid transparent;font-size:1.125rem;line-height:1.5;font-weight:600;list-style-type:none;-webkit-user-select:none;user-select:none}
details[open]>summary{color:rgb(var(--text-primary))}details p{padding:.25rem 0}details summary::-webkit-details-marker{display:none}
details summary:after{float:right;width:1.25rem;height:1.25rem;background-color:currentColor;transition:transform .15s;content:"";-webkit-mask-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}
details[open] summary:after{transform:rotate(180deg)}
.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}
.marketing h1,h1.marketing{font-size:3rem;line-height:1.1}.marketing h2,h2.marketing{font-size:1.875rem;line-height:1.2}.marketing h3,h3.marketing{font-size:1.25rem;line-height:1.3}.marketing p,p.marketing{font-size:1.125rem;line-height:1.7}
.bg-primary{background-color:rgb(var(--bg-primary))}.bg-secondary{background-color:rgb(var(--bg-secondary))}.bg-tertiary{background-color:rgb(var(--bg-tertiary))}.bg-inverse{background-color:rgb(var(--bg-inverse))}.bg-success{background-color:rgb(var(--bg-success))}.bg-active{background-color:rgb(var(--bg-active))}.bg-transparent{background-color:transparent}.bg-black{background-color:#000}
.text-primary{color:rgb(var(--text-primary))}.text-secondary{color:rgb(var(--text-label)/.8)}.text-tertiary{color:rgb(var(--text-label)/.45)}.text-inverse{color:rgb(var(--text-inverse))}.text-success{color:rgb(var(--text-success))}.text-active{color:rgb(var(--text-active))}.text-white{color:#fff}.text-transparent{color:transparent}
.border-primary{border-color:var(--border-primary)}.ring-primary{--tw-ring-color:var(--ring-primary)}.border-active{border-color:var(--border-active)}
.divide-primary>:not([hidden])~:not([hidden]){border-color:var(--border-primary)}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.rounded-primary{border-radius:1.5rem}.rounded-secondary{border-radius:1rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-\[44px\]{border-radius:44px}.rounded-\[48px\]{border-radius:48px}.rounded-\[40px\]{border-radius:40px}
.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-inner{box-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05)}.shadow-none{box-shadow:none}
.ring-1{box-shadow:0 0 0 1px var(--ring-primary)}
:root{--text-primary:0 0 0;--text-inverse:255 255 255;--text-label:60 60 67;--text-success:52 199 89;--text-active:0 122 255;--bg-page:255 255 255;--bg-primary:255 255 255;--bg-secondary:249 249 251;--bg-tertiary:244 244 246;--bg-quaternary:229 229 234;--bg-inverse:0 0 0;--bg-active:0 122 255;--bg-success:52 199 89;--border-primary:rgba(0,0,0,.08);--border-secondary:rgba(0,0,0,.04);--border-active:rgba(0,0,0,.12);--ring-primary:rgba(0,0,0,.08);--shadow-sm:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 8px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04);--shadow-lg:0 8px 16px rgba(0,0,0,.08),0 4px 8px rgba(0,0,0,.04);--shadow-xl:0 16px 32px rgba(0,0,0,.08),0 8px 16px rgba(0,0,0,.04)}
@media (min-width:0px){:root{--text-primary:255 255 255;--text-inverse:0 0 0;--text-label:235 235 245;--text-success:48 209 88;--text-active:10 132 255;--bg-page:0 0 0;--bg-primary:7 7 8;--bg-secondary:21 21 22;--bg-tertiary:28 28 30;--bg-quaternary:35 35 37;--bg-inverse:255 255 255;--bg-active:10 132 255;--bg-success:48 209 88;--border-primary:hsla(0,0%,100%,.1);--border-secondary:rgba(84,84,88,.36);--border-active:rgba(84,84,88,.65);--ring-primary:hsla(0,0%,100%,.1);--shadow-sm:0 0 0 1px hsla(0,0%,100%,.06);--shadow-md:0 0 0 1px hsla(0,0%,100%,.08);--shadow-lg:0 0 0 1px hsla(0,0%,100%,.08);--shadow-xl:0 0 0 1px hsla(0,0%,100%,.1)}}
.hover\:bg-lighter:hover{background-color:hsla(240,3%,49%,.08)}@media (min-width:0px){.hover\:bg-lighter:hover{background-color:hsla(240,4%,48%,.18)}}
/* spacing scale */
.p-xs{padding:.25rem}.p-sm{padding:.5rem}.p-md{padding:.75rem}.p-lg{padding:1rem}.p-xl{padding:1.5rem}.p-2xl{padding:2rem}.p-3xl{padding:3rem}
.px-xs{padding-left:.25rem;padding-right:.25rem}.px-sm{padding-left:.5rem;padding-right:.5rem}.px-md{padding-left:.75rem;padding-right:.75rem}.px-lg{padding-left:1rem;padding-right:1rem}.px-xl{padding-left:1.5rem;padding-right:1.5rem}.px-2xl{padding-left:2rem;padding-right:2rem}
.py-xs{padding-top:.25rem;padding-bottom:.25rem}.py-sm{padding-top:.5rem;padding-bottom:.5rem}.py-md{padding-top:.75rem;padding-bottom:.75rem}.py-lg{padding-top:1rem;padding-bottom:1rem}.py-xl{padding-top:1.5rem;padding-bottom:1.5rem}.py-2xl{padding-top:2rem;padding-bottom:2rem}.py-3xl{padding-top:3rem;padding-bottom:3rem}.py-4xl{padding-top:4rem;padding-bottom:4rem}.py-5xl{padding-top:6rem;padding-bottom:6rem}.py-6xl{padding-top:8rem;padding-bottom:8rem}
.pt-xs{padding-top:.25rem}.pt-sm{padding-top:.5rem}.pt-md{padding-top:.75rem}.pt-lg{padding-top:1rem}.pt-xl{padding-top:1.5rem}.pt-2xl{padding-top:2rem}.pt-3xl{padding-top:3rem}.pt-4xl{padding-top:4rem}.pt-5xl{padding-top:6rem}
.pb-sm{padding-bottom:.5rem}.pb-md{padding-bottom:.75rem}.pb-lg{padding-bottom:1rem}.pb-xl{padding-bottom:1.5rem}.pb-2xl{padding-bottom:2rem}.pb-3xl{padding-bottom:3rem}
.pr-lg{padding-right:1rem}.pr-xl{padding-right:1.5rem}.pl-xl{padding-left:1.5rem}
.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.ml-auto{margin-left:auto}.mt-px{margin-top:1px}.mt-xs{margin-top:.25rem}.mt-sm{margin-top:.5rem}.mt-md{margin-top:.75rem}.mt-lg{margin-top:1rem}.mt-xl{margin-top:1.5rem}.mt-2xl{margin-top:2rem}.mt-3xl{margin-top:3rem}.mt-4xl{margin-top:4rem}.mt-5xl{margin-top:6rem}
.mb-xs{margin-bottom:.25rem}.mb-sm{margin-bottom:.5rem}.mb-md{margin-bottom:.75rem}.mb-lg{margin-bottom:1rem}.mb-xl{margin-bottom:1.5rem}.mb-2xl{margin-bottom:2rem}.mb-3xl{margin-bottom:3rem}.mr-xs{margin-right:.25rem}
.gap-xs{gap:.25rem}.gap-sm{gap:.5rem}.gap-md{gap:.75rem}.gap-lg{gap:1rem}.gap-xl{gap:1.5rem}.gap-2xl{gap:2rem}.gap-3xl{gap:3rem}.gap-4xl{gap:4rem}
.space-y-xs>:not([hidden])~:not([hidden]){margin-top:.25rem}.space-y-sm>:not([hidden])~:not([hidden]){margin-top:.5rem}.space-y-md>:not([hidden])~:not([hidden]){margin-top:.75rem}.space-y-lg>:not([hidden])~:not([hidden]){margin-top:1rem}
.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-\[610px\]{max-width:610px}
.w-full{width:100%}.w-auto{width:auto}.w-max{width:max-content}.w-px{width:1px}.h-full{height:100%}.h-px{height:1px}.h-7{height:1.75rem}.h-8{height:2rem}.h-12{height:3rem}.min-h-0{min-height:0}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}
.size-2{width:.5rem;height:.5rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-full{width:100%;height:100%}
.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.flex{display:flex}.grid{display:grid}.hidden{display:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.top-0{top:0}.left-0{left:0}.right-0{right:0}.left-1\/2{left:50%}.top-1\/2{top:50%}.bottom-3{bottom:.75rem}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.-z-10{z-index:-10}
.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.self-start{align-self:flex-start}.self-end{align-self:flex-end}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}
.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}
.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-snug{line-height:1.375}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tabular-nums{font-variant-numeric:tabular-nums}
.border{border-width:1px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-x{border-left-width:1px;border-right-width:1px}.border-t-0{border-top-width:0}.border-dashed{border-style:dashed}
.divide-y>:not([hidden])~:not([hidden]){border-top-width:1px}.divide-x>:not([hidden])~:not([hidden]){border-left-width:1px}
.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}
.transition-all{transition:all .15s cubic-bezier(.4,0,.2,1)}.transition-colors{transition:color,background-color,border-color .15s cubic-bezier(.4,0,.2,1)}.transition-transform{transition:transform .15s cubic-bezier(.4,0,.2,1)}.transition-opacity{transition:opacity .15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.will-change-transform{will-change:transform}
.scroll-mt-24{scroll-margin-top:6rem}.cursor-pointer{cursor:pointer}.pointer-events-none{pointer-events:none}.select-none{-webkit-user-select:none;user-select:none}.no-underline{text-decoration-line:none}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.last\:border-0:last-child{border-width:0}.last\:mb-0:last-child{margin-bottom:0}
@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:py-6xl{padding-top:8rem;padding-bottom:8rem}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:inline-flex{display:inline-flex}.sm\:block{display:block}}
@media (min-width:1024px){.lg\:grid{display:grid}.lg\:flex{display:flex}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1fr_1\.3fr\]{grid-template-columns:1fr 1.3fr}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:divide-x>:not([hidden])~:not([hidden]){border-left-width:1px}.lg\:divide-y-0>:not([hidden])~:not([hidden]){border-top-width:0}.lg\:px-0{padding-left:0;padding-right:0}.lg\:px-2xl{padding-left:2rem;padding-right:2rem}.lg\:py-0{padding-top:0;padding-bottom:0}.lg\:gap-3xl{gap:3rem}.lg\:gap-4xl{gap:4rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:min-h-\[50vh\]{min-height:50vh}.lg\:flex-col{flex-direction:column}.lg\:justify-center{justify-content:center}.lg\:justify-start{justify-content:flex-start}.lg\:pb-\[calc\(25vh-6rem\)\]{padding-bottom:calc(25vh - 6rem)}.lg\:first\:pl-0:first-child{padding-left:0}.lg\:last\:pr-0:last-child{padding-right:0}.lg\:col-span-2{grid-column:span 2/span 2}}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
.ms-mark{color:rgb(var(--text-primary))}
/* hero scrolling activity cards */
@keyframes ms-vscroll{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.ms-track{animation:ms-vscroll 30s linear infinite;will-change:transform}
@keyframes ms-rise{from{opacity:0;transform:translateY(.3em)}to{opacity:1;transform:none}}
.ms-char{display:inline-block;opacity:0;animation:ms-rise .55s ease-out forwards}
@keyframes ms-chip{0%{opacity:0}4%{opacity:1}29%{opacity:1}34%{opacity:0}100%{opacity:0}}
.ms-chip{opacity:0;animation:ms-chip 9s linear infinite}
@keyframes ms-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ms-marq{animation:ms-marquee 38s linear infinite;will-change:transform}
@keyframes ms-row{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.ms-new{animation:ms-row .3s ease-out}
/* orbital */
@keyframes ms-spin{to{transform:rotate(360deg)}}
.ms-orbit{position:absolute;left:50%;top:50%;border-radius:9999px;border:1px solid rgb(var(--text-primary)/.16);box-shadow:inset 0 0 60px 20px rgb(var(--text-primary)/.04)}
.ms-node{position:absolute;width:2.75rem;height:2.75rem;margin:-1.375rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;background:rgb(var(--bg-primary));box-shadow:var(--shadow-sm);color:rgb(var(--text-label)/.7);font-size:1rem}
/* CTA pulse */
@keyframes ms-pulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}40%{opacity:.55}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
.ms-circle{position:absolute;top:50%;left:50%;border-radius:9999px;border:1px solid var(--border-active);animation:ms-pulse 4.5s ease-out infinite;animation-delay:var(--delay)}
/* feature-scroll */
[data-fs-mock]{opacity:0;filter:blur(2px);transition:opacity .5s,transform .5s,filter .5s;pointer-events:none}
[data-fs-mock].fs-on{opacity:1;transform:none;filter:none;pointer-events:auto}
/* form fields */
.fld{width:100%;padding:.7rem .85rem;border-radius:.85rem;border:1px solid var(--border-primary);background:rgb(var(--bg-primary));color:rgb(var(--text-primary));font-size:.95rem}
.fld::placeholder{color:rgb(var(--text-label)/.45)}
.chk{display:flex;align-items:center;gap:.5rem;padding:.55rem .7rem;border:1px solid var(--border-primary);border-radius:.7rem;font-size:.85rem;cursor:pointer}
.chk input{width:1rem;height:1rem;accent-color:rgb(var(--bg-active))}
/* responsive, premium typography */
.marketing h1,h1.marketing{font-size:clamp(2rem,5.2vw,3rem);line-height:1.07;letter-spacing:-.022em}
.marketing h2,h2.marketing{font-size:clamp(1.55rem,3.4vw,2.1rem);line-height:1.15;letter-spacing:-.015em}
.marketing h3,h3.marketing{font-size:1.25rem;line-height:1.3;letter-spacing:-.01em}
.marketing p,p.marketing{font-size:clamp(1rem,1.3vw,1.15rem)}
/* premium event card */
.evt{background:rgb(var(--bg-secondary));border:1px solid var(--border-primary);border-radius:1.15rem;box-shadow:var(--shadow-sm)}
.evt-ic{width:2.1rem;height:2.1rem;border-radius:.7rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgb(var(--bg-tertiary));color:rgb(var(--text-primary))}
.pill-ok{font-size:.7rem;font-weight:600;padding:.1rem .55rem;border-radius:9999px;background:rgb(var(--bg-success)/.16);color:rgb(var(--text-success));white-space:nowrap}
/* chat bubbles */
.bub{max-width:88%;border-radius:1rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.35}
.bub-in{align-self:flex-start;background:rgb(var(--bg-tertiary));border:1px solid var(--border-primary);border-top-left-radius:.25rem}
.bub-out{align-self:flex-end;background:rgb(var(--bg-active));color:#fff;border-top-right-radius:.25rem}
/* device frame */
.device{border-radius:46px;padding:.55rem;background:rgb(var(--bg-tertiary));box-shadow:var(--shadow-lg);position:relative}
.device:before{content:"";position:absolute;top:.95rem;left:50%;transform:translateX(-50%);width:30%;height:1.05rem;background:rgb(var(--bg-page));border-radius:9999px;z-index:5}
.device-screen{border-radius:38px;overflow:hidden;background:rgb(var(--bg-primary));border:1px solid var(--border-primary);height:100%;position:relative;padding-top:1.6rem}
/* perfectpanel-style chat / ticket mocks */
.cm-wa{background:#efeae2}.cm-tg{background:#fff}
.cm-hd{display:flex;align-items:center;gap:.5rem}
.cm-av{width:1.75rem;height:1.75rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cm-b{position:relative;max-width:82%;width:fit-content;padding:5px 9px;border-radius:9px;font-size:12px;line-height:1.4;color:#111b21;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.cm-in{background:#fff;border-top-left-radius:2px;align-self:flex-start}
.cm-wa .cm-out{background:#d9fdd3;border-top-right-radius:2px;align-self:flex-end}
.cm-tg .cm-out{background:#e3fee0;border-top-right-radius:2px;align-self:flex-end}
.cm-t{float:right;font-size:10px;color:rgba(17,27,33,.55);margin:6px 0 0 8px}
.cm-notify{align-self:flex-end;max-width:92%;background:#3578d4;color:#fff;border-radius:16px;border-bottom-right-radius:5px;padding:7px 11px;font-size:12px;line-height:1.45;box-shadow:0 1px 1px rgba(0,0,0,.18)}
.cm-notify b{font-weight:600}
@media (min-width:0px){.cm-wa{background:#0b141a}.cm-wa .cm-in{background:#202c33}.cm-wa .cm-out{background:#005c4b}.cm-tg{background:#0c0c0d}.cm-tg .cm-in{background:#202021}.cm-tg .cm-out{background:#3f3a78}.cm-b{color:#e9edef;box-shadow:0 1px .5px rgba(0,0,0,.3)}.cm-t{color:rgba(233,237,239,.7)}}
.cm-new{animation:cmin .26s ease-out}@keyframes cmin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tk{font-size:.72rem}.tk th{padding:.5rem .4rem;font-weight:500;text-align:left;white-space:nowrap;color:rgb(var(--text-label)/.7)}
.tk td{padding:.5rem .4rem;white-space:nowrap}
.tk-new{animation:cmin .3s ease-out}
.st-amber{color:#f59e0b}.st-green{color:#16a34a}.st-blue{color:#3b82f6}.st-rose{color:#f43f5e}
/* hero cards column — perfectpanel: 60vh on mobile, fills text height on desktop */
.hero-cards{height:60vh;min-height:0;overflow:hidden}
@media(min-width:1024px){.hero-cards{height:100%;min-height:480px}}
.ah-card{background:rgb(var(--bg-primary))}
.ah-rows{background:rgb(var(--bg-tertiary));border-radius:1rem}
/* agent coordination */
.coord-card{background:rgb(var(--bg-secondary));border:1px solid var(--border-primary);border-radius:1.5rem;--bg-active:62 207 142}
.coord-node{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.9rem .4rem;border:1px solid var(--border-primary);border-radius:.85rem;background:rgb(var(--bg-primary));font-size:.78rem;font-weight:600;text-align:center;line-height:1.2}
.coord-node svg{width:18px;height:18px;color:rgb(var(--text-primary))}
.coord-net{display:block;width:100%;height:auto;overflow:visible;margin:.35rem 0 .15rem}
.coord-net .net-base{fill:none;stroke:var(--border-primary);stroke-width:1.4}
.coord-net .net-pulse{fill:none;stroke:rgb(var(--bg-active));stroke-width:2.2;stroke-linecap:round;stroke-dasharray:9 91;stroke-dashoffset:100;filter:drop-shadow(0 0 4px rgb(var(--bg-active)/.85));animation:netpulse 3.2s linear infinite}
@keyframes netpulse{to{stroke-dashoffset:0}}
.coord-net .net-dot{fill:rgb(var(--bg-active));filter:drop-shadow(0 0 5px rgb(var(--bg-active)/.7));animation:netblink 3.2s ease-in-out infinite}
.coord-net .net-hub{fill:rgb(var(--bg-active));filter:drop-shadow(0 0 11px rgb(var(--bg-active)/.95));animation:nethub 3.2s ease-in-out infinite}
.coord-net .net-hub-ring{fill:none;stroke:rgb(var(--bg-active));stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:nethubring 2.6s ease-out infinite}
@keyframes netblink{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes nethub{0%,100%{opacity:.8}50%{opacity:1}}
@keyframes nethubring{0%{transform:scale(.6);opacity:.7}80%,100%{transform:scale(3.2);opacity:0}}
.coord-hub{position:relative;animation:hubglow 3.2s ease-in-out infinite}
@keyframes hubglow{0%,100%{box-shadow:0 0 0 0 rgb(var(--bg-active)/0)}50%{box-shadow:0 0 22px 0 rgb(var(--bg-active)/.35)}}
.coord-hub svg{animation:hubspin 14s linear infinite}
@keyframes hubspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.coord-net .net-pulse,.coord-net .net-dot,.coord-net .net-hub,.coord-net .net-hub-ring,.coord-hub,.coord-hub svg{animation:none}}
/* handoff pipeline */
.flow{position:relative;padding-top:.5rem;--bg-active:62 207 142}
.flow-rail{position:absolute;left:10%;right:10%;top:calc(.5rem + 26px);height:2px;background:var(--border-primary);border-radius:2px;overflow:hidden}
.flow-rail::after{content:"";position:absolute;top:0;bottom:0;left:-42%;width:42%;background:linear-gradient(90deg,transparent,rgb(var(--bg-active)),transparent);animation:flowsweep 6s cubic-bezier(.4,0,.2,1) infinite}
@keyframes flowsweep{0%{left:-42%}100%{left:100%}}
.flow-token{position:absolute;top:calc(.5rem + 26px);left:0;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:rgb(var(--bg-active));box-shadow:0 0 14px rgb(var(--bg-active)),0 0 4px rgb(var(--bg-active));animation:flowtok 6s cubic-bezier(.65,0,.35,1) infinite}
@keyframes flowtok{0%{left:10%;opacity:0}3%{opacity:1}8%{left:10%}20%{left:30%}28%{left:30%}40%{left:50%}48%{left:50%}60%{left:70%}68%{left:70%}80%{left:90%}97%{opacity:1}100%{left:90%;opacity:0}}
.flow-stages{display:flex;position:relative;z-index:1}
.flow-stage{flex:1;display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}
.flow-node{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1px solid var(--border-primary);background:rgb(var(--bg-primary));color:rgb(var(--text-primary));animation:flowfire 6s ease-in-out infinite;will-change:transform,box-shadow}
.flow-node svg{width:20px;height:20px}
@keyframes flowfire{0%{transform:scale(1);box-shadow:0 0 0 0 rgb(var(--bg-active)/0);border-color:var(--border-primary)}5%{transform:scale(1.16);box-shadow:0 0 22px 2px rgb(var(--bg-active)/.55);border-color:rgb(var(--bg-active)/.9)}16%{transform:scale(1);box-shadow:0 0 0 0 rgb(var(--bg-active)/0);border-color:var(--border-primary)}100%{transform:scale(1)}}
.flow-cap{font-size:.78rem;font-weight:600;line-height:1.15}
.flow-sub{font-size:.68rem;color:rgb(var(--text-primary)/.5);line-height:1.2}
@media (prefers-reduced-motion:reduce){.flow-rail::after,.flow-token,.flow-node{animation:none}}
/* reliability heartbeat */
.ekg{display:block;width:100%;max-width:620px;margin:2.2rem auto 0;height:auto;overflow:visible;--bg-active:62 207 142}
.ekg-base{fill:none;stroke:var(--border-primary);stroke-width:2}
.ekg-pulse{fill:none;stroke:rgb(var(--bg-active));stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:15 85;stroke-dashoffset:100;filter:drop-shadow(0 0 6px rgb(var(--bg-active)));animation:ekgrun 2.6s linear infinite}
@keyframes ekgrun{to{stroke-dashoffset:0}}
/* human gate lane */
.gate{position:relative;height:118px;overflow:hidden;--bg-active:62 207 142;--amber:245 184 64;-webkit-mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)}
.gate-line{position:absolute;left:0;right:0;top:50%;height:2px;background:var(--border-primary)}
.gate-pill{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.05rem;border-radius:9999px;border:1px solid rgb(var(--bg-active)/.5);background:rgb(var(--bg-secondary));color:rgb(var(--text-primary));font-size:.8rem;font-weight:600;white-space:nowrap;animation:gateglow 3s ease-in-out infinite}
.gate-pill svg{width:15px;height:15px;color:rgb(var(--bg-active))}
@keyframes gateglow{0%,100%{box-shadow:0 0 0 0 rgb(var(--bg-active)/0)}50%{box-shadow:0 0 26px 0 rgb(var(--bg-active)/.32)}}
.gate-chip{position:absolute;top:50%;left:0;z-index:1;display:inline-flex;align-items:center;gap:.4rem;padding:.34rem .72rem;border-radius:9999px;border:1px solid var(--border-primary);background:rgb(var(--bg-primary));color:rgb(var(--text-primary));font-size:.72rem;font-weight:600;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;animation:gateflow 12s linear infinite}
.gate-chip .dot{width:7px;height:7px;border-radius:50%;background:rgb(var(--bg-active));box-shadow:0 0 7px rgb(var(--bg-active))}
.gate-chip.hold{z-index:2;border-color:rgb(var(--amber)/.6);animation-name:gatehold}
.gate-chip.hold .dot{background:rgb(var(--amber));box-shadow:0 0 7px rgb(var(--amber))}
@keyframes gateflow{0%{left:-3%;opacity:0}7%{opacity:1}93%{opacity:1}100%{left:103%;opacity:0}}
@keyframes gatehold{0%{left:-3%;opacity:0}6%{opacity:1}30%{left:50%}52%{left:50%}54%{left:50%}90%{left:103%;opacity:1}100%{left:103%;opacity:0}}
@media (prefers-reduced-motion:reduce){.ekg-pulse,.gate-pill{animation:none}.ekg-pulse{stroke-dasharray:none;stroke-dashoffset:0}.gate-chip{display:none}}
/* live status ping */
.live-dot{position:relative}
.live-dot::after{content:"";position:absolute;inset:0;border-radius:9999px;background:rgb(var(--bg-success));animation:liveping 2s ease-out infinite}
@keyframes liveping{0%{transform:scale(1);opacity:.6}100%{transform:scale(3.4);opacity:0}}
/* story divider sweep */
.story-div{position:absolute;left:50%;top:0;width:300px;height:1px;transform:translateX(-50%);overflow:hidden;background:linear-gradient(90deg,transparent,rgb(var(--text-primary)/.4) 50%,transparent)}
.story-div::after{content:"";position:absolute;top:0;left:-40%;height:100%;width:40%;--bg-active:62 207 142;background:linear-gradient(90deg,transparent,rgb(var(--bg-active)),transparent);animation:divsweep 4s ease-in-out infinite}
@keyframes divsweep{0%{left:-40%}55%,100%{left:100%}}
/* terminal cursor */
.cur{display:inline-block;width:7px;height:1.05em;--bg-active:62 207 142;background:rgb(var(--bg-active));vertical-align:text-bottom;margin-left:3px;box-shadow:0 0 6px rgb(var(--bg-active)/.7);animation:curblink 1.1s steps(1) infinite}
@keyframes curblink{0%,50%{opacity:1}50.01%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.live-dot::after,.story-div::after,.cur{animation:none}.cur{opacity:1}}
.coord-hub{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border-primary);background:rgb(var(--bg-tertiary));border-radius:9999px;padding:.55rem 1.1rem;font-size:.82rem;font-weight:600}
/* scroll reveal */
.reveal{opacity:0;transform:translateY(26px) scale(.985);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}
.reveal.in{opacity:1;transform:none}
.rounded-primary.border.border-primary,.coord-card,.codeblk{box-shadow:var(--shadow-sm)}
@media(hover:hover){.ah-card,.rounded-primary.border,.codeblk{transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .25s ease,box-shadow .25s ease}.rounded-primary.border:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}}
/* stat shimmer bg */
.shim{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000 25%,transparent 80%);mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000 25%,transparent 80%)}
.shim:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgb(var(--text-primary)/.06) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--text-primary)/.06) 1px,transparent 1px);background-size:64px 64px}
.shim i{position:absolute;left:0;right:0;height:1px;opacity:.5;animation:shimX linear infinite}
@keyframes shimX{from{transform:translateX(-40%)}to{transform:translateX(140%)}}
/* capability chip */
.cap{display:flex;align-items:flex-start;gap:.6rem}
.cap-d{width:1.4rem;height:1.4rem;border-radius:9999px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgb(var(--bg-tertiary));margin-top:1px}
/* code block */
.codeblk{background:#0b0b0d;color:#e6edf3;border-radius:1rem;padding:1.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8rem;line-height:1.7;overflow-x:auto;box-shadow:0 0 0 1px hsla(0,0%,100%,.08)}
.codeblk .c{color:#7d8590}.codeblk .k{color:#ffa657}.codeblk .s{color:#a5d6ff}
@media (prefers-reduced-motion:reduce){.ms-track,.ms-char,.ms-chip,.ms-marq,.ms-new,.cm-new,.tk-new,.shim i{animation:none}.ms-char{opacity:1}}
/* ===== MARSA dark brand palette (forced, brand identity) ===== */
:root{
  --bg-page:10 10 10;        /* #0A0A0A */
  --bg-primary:17 17 19;     /* #111113 */
  --bg-secondary:24 24 28;   /* card surface */
  --bg-tertiary:32 32 38;
  --bg-quaternary:44 44 52;
  --bg-inverse:255 255 255;
  --text-primary:240 240 242;/* #F0F0F2 */
  --text-inverse:10 10 10;
  --text-label:148 148 158;  /* #94949E secondary */
  --text-success:62 207 142; /* MARSA green */
  --text-active:62 207 142;
  --bg-active:62 207 142;     /* green accent */
  --bg-success:62 207 142;
  --border-primary:rgba(255,255,255,.10);
  --border-secondary:rgba(255,255,255,.06);
  --border-active:rgba(255,255,255,.20);
  --ring-primary:rgba(255,255,255,.10);
  --shadow-sm:0 0 0 1px rgba(255,255,255,.05);
  --shadow-md:0 0 0 1px rgba(255,255,255,.07),0 8px 24px rgba(0,0,0,.5);
  --shadow-lg:0 0 0 1px rgba(255,255,255,.08),0 16px 40px rgba(0,0,0,.55);
}
html{color-scheme:dark}
/* ===== world-class pulse refinement: hot core (lighter), brand-green halo ===== */
.net-pulse,.ekg-pulse{stroke:#5FE3A6}
.flow-token{background:#5FE3A6;box-shadow:0 0 14px rgb(var(--bg-active)),0 0 5px #5FE3A6}
@media (min-width:640px){.sm\:flex{display:flex}}
