*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Roboto,sans-serif;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}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}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,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}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}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.-bottom-24{bottom:-6rem}.-left-1{left:-.25rem}.-left-16{left:-4rem}.-left-20{left:-5rem}.-left-24{left:-6rem}.-right-10{right:-2.5rem}.-right-14{right:-3.5rem}.-right-2{right:-.5rem}.-right-20{right:-5rem}.-right-24{right:-6rem}.-right-8{right:-2rem}.-top-16{top:-4rem}.-top-2{top:-.5rem}.-top-24{top:-6rem}.-top-3{top:-.75rem}.bottom-0{bottom:0}.bottom-24{bottom:6rem}.bottom-28{bottom:7rem}.left-0{left:0}.left-0\.5{left:.125rem}.left-1\/2{left:50%}.left-1\/3{left:33.333333%}.left-\[16\%\]{left:16%}.right-0{right:0}.right-0\.5{right:.125rem}.right-\[16\%\]{right:16%}.top-0{top:0}.top-0\.5{top:.125rem}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-14{top:3.5rem}.top-16{top:4rem}.top-20{top:5rem}.top-28{top:7rem}.top-40{top:10rem}.top-9{top:2.25rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.m-0{margin:0}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.mb-0{margin-bottom:0}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[28rem\]{height:28rem}.h-\[4\.5rem\]{height:4.5rem}.h-full{height:100%}.h-px{height:1px}.max-h-\[26rem\]{max-height:26rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[28rem\]{width:28rem}.w-\[30rem\]{width:30rem}.w-\[4\.5rem\]{width:4.5rem}.w-full{width:100%}.min-w-\[34rem\]{min-width:34rem}.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-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[14rem\]{max-width:14rem}.max-w-\[16rem\]{max-width:16rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.animate-fadeUp{animation:fadeUp .7s ease-out both}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.animate-floaty{animation:floaty 6s ease-in-out infinite}@keyframes floatySlow{0%,to{transform:translateY(0)}50%{transform:translateY(-22px)}}.animate-floatySlow{animation:floatySlow 8s ease-in-out infinite}@keyframes spinSlow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spinSlow{animation:spinSlow 22s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-center{scroll-snap-align:center}.scroll-mt-24{scroll-margin-top:6rem}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-y-2{row-gap:.5rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-slate-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(241 245 249/var(--tw-divide-opacity,1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[2\.5rem\]{border-radius:2.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-brand-100{--tw-border-opacity:1;border-color:rgb(219 238 254/var(--tw-border-opacity,1))}.border-brand-200{--tw-border-opacity:1;border-color:rgb(191 225 254/var(--tw-border-opacity,1))}.border-brand-300{--tw-border-opacity:1;border-color:rgb(147 206 253/var(--tw-border-opacity,1))}.border-brand-400{--tw-border-opacity:1;border-color:rgb(74 163 219/var(--tw-border-opacity,1))}.border-emerald-100{--tw-border-opacity:1;border-color:rgb(209 250 229/var(--tw-border-opacity,1))}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-slate-900{--tw-border-opacity:1;border-color:rgb(15 23 42/var(--tw-border-opacity,1))}.border-violet-300{--tw-border-opacity:1;border-color:rgb(196 181 253/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/15{border-color:hsla(0,0%,100%,.15)}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.border-white\/25{border-color:hsla(0,0%,100%,.25)}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-50\/60{background-color:rgba(255,251,235,.6)}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-brand-100{--tw-bg-opacity:1;background-color:rgb(219 238 254/var(--tw-bg-opacity,1))}.bg-brand-100\/20{background-color:rgba(219,238,254,.2)}.bg-brand-200\/40{background-color:rgba(191,225,254,.4)}.bg-brand-300\/40{background-color:rgba(147,206,253,.4)}.bg-brand-50{--tw-bg-opacity:1;background-color:rgb(239 248 255/var(--tw-bg-opacity,1))}.bg-brand-50\/40{background-color:rgba(239,248,255,.4)}.bg-brand-50\/50{background-color:rgba(239,248,255,.5)}.bg-brand-500{--tw-bg-opacity:1;background-color:rgb(43 143 208/var(--tw-bg-opacity,1))}.bg-brand-600{--tw-bg-opacity:1;background-color:rgb(31 116 179/var(--tw-bg-opacity,1))}.bg-brand-700{--tw-bg-opacity:1;background-color:rgb(28 93 144/var(--tw-bg-opacity,1))}.bg-cyan-300\/30{background-color:rgba(103,232,249,.3)}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-200{--tw-bg-opacity:1;background-color:rgb(167 243 208/var(--tw-bg-opacity,1))}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-50\/40{background-color:rgba(236,253,245,.4)}.bg-emerald-50\/50{background-color:rgba(236,253,245,.5)}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-50\/40{background-color:hsla(0,86%,97%,.4)}.bg-red-50\/50{background-color:hsla(0,86%,97%,.5)}.bg-red-50\/60{background-color:hsla(0,86%,97%,.6)}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.bg-slate-300{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-violet-100{--tw-bg-opacity:1;background-color:rgb(237 233 254/var(--tw-bg-opacity,1))}.bg-violet-50\/50{background-color:rgba(245,243,255,.5)}.bg-violet-500{--tw-bg-opacity:1;background-color:rgb(139 92 246/var(--tw-bg-opacity,1))}.bg-violet-600{--tw-bg-opacity:1;background-color:rgb(124 58 237/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/15{background-color:hsla(0,0%,100%,.15)}.bg-white\/20{background-color:hsla(0,0%,100%,.2)}.bg-white\/70{background-color:hsla(0,0%,100%,.7)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-amber-400{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,191,36,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-200{--tw-gradient-from:#bfe1fe var(--tw-gradient-from-position);--tw-gradient-to:rgba(191,225,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-400{--tw-gradient-from:#4aa3db var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,163,219,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-600{--tw-gradient-from:#1f74b3 var(--tw-gradient-from-position);--tw-gradient-to:rgba(31,116,179,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-400{--tw-gradient-from:#34d399 var(--tw-gradient-from-position);--tw-gradient-to:rgba(52,211,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-400{--tw-gradient-from:#f87171 var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,91%,71%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-500{--tw-gradient-from:#64748b var(--tw-gradient-from-position);--tw-gradient-to:rgba(100,116,139,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-teal-400{--tw-gradient-from:#2dd4bf var(--tw-gradient-from-position);--tw-gradient-to:rgba(45,212,191,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-violet-400{--tw-gradient-from:#a78bfa var(--tw-gradient-from-position);--tw-gradient-to:rgba(167,139,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-violet-500{--tw-gradient-from:#8b5cf6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(139,92,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-400{--tw-gradient-from:#facc15 var(--tw-gradient-from-position);--tw-gradient-to:rgba(250,204,21,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-brand-300{--tw-gradient-to:rgba(147,206,253,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#93cefd var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-500{--tw-gradient-to:#f59e0b var(--tw-gradient-to-position)}.to-brand-100{--tw-gradient-to:#dbeefe var(--tw-gradient-to-position)}.to-brand-200{--tw-gradient-to:#bfe1fe var(--tw-gradient-to-position)}.to-brand-700{--tw-gradient-to:#1c5d90 var(--tw-gradient-to-position)}.to-brand-800{--tw-gradient-to:#125a94 var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to:#059669 var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.to-slate-50{--tw-gradient-to:#f8fafc var(--tw-gradient-to-position)}.to-slate-700{--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.to-teal-600{--tw-gradient-to:#0d9488 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pb-28{padding-bottom:7rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pr-4{padding-right:1rem}.pr-6{padding-right:1.5rem}.pt-1{padding-top:.25rem}.pt-12{padding-top:3rem}.pt-16{padding-top:4rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-32{padding-top:8rem}.pt-36{padding-top:9rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-7{padding-top:1.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.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-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[1\.07\]{line-height:1.07}.leading-\[1\.08\]{line-height:1.08}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-brand-100{--tw-text-opacity:1;color:rgb(219 238 254/var(--tw-text-opacity,1))}.text-brand-300{--tw-text-opacity:1;color:rgb(147 206 253/var(--tw-text-opacity,1))}.text-brand-400{--tw-text-opacity:1;color:rgb(74 163 219/var(--tw-text-opacity,1))}.text-brand-500{--tw-text-opacity:1;color:rgb(43 143 208/var(--tw-text-opacity,1))}.text-brand-600{--tw-text-opacity:1;color:rgb(31 116 179/var(--tw-text-opacity,1))}.text-brand-700{--tw-text-opacity:1;color:rgb(28 93 144/var(--tw-text-opacity,1))}.text-brand-800{--tw-text-opacity:1;color:rgb(18 90 148/var(--tw-text-opacity,1))}.text-brand-900{--tw-text-opacity:1;color:rgb(18 63 95/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-600\/80{color:rgba(5,150,105,.8)}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-emerald-900{--tw-text-opacity:1;color:rgb(6 78 59/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-500\/80{color:rgba(239,68,68,.8)}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-900{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-teal-700{--tw-text-opacity:1;color:rgb(15 118 110/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-violet-600{--tw-text-opacity:1;color:rgb(124 58 237/var(--tw-text-opacity,1))}.text-violet-700{--tw-text-opacity:1;color:rgb(109 40 217/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/50{color:hsla(0,0%,100%,.5)}.text-white\/60{color:hsla(0,0%,100%,.6)}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/75{color:hsla(0,0%,100%,.75)}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/85{color:hsla(0,0%,100%,.85)}.text-white\/90{color:hsla(0,0%,100%,.9)}.text-white\/95{color:hsla(0,0%,100%,.95)}.text-yellow-300{--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity,1))}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-slate-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.placeholder-slate-400::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.shadow-amber-500\/10{--tw-shadow-color:rgba(245,158,11,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-amber-500\/30{--tw-shadow-color:rgba(245,158,11,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-brand-500\/10{--tw-shadow-color:rgba(43,143,208,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-brand-500\/30{--tw-shadow-color:rgba(43,143,208,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-brand-900\/10{--tw-shadow-color:rgba(18,63,95,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-500\/10{--tw-shadow-color:rgba(16,185,129,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-500\/30{--tw-shadow-color:rgba(16,185,129,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-indigo-500\/30{--tw-shadow-color:rgba(99,102,241,.3);--tw-shadow:var(--tw-shadow-colored)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-slate-200{--tw-ring-opacity:1;--tw-ring-color:rgb(226 232 240/var(--tw-ring-opacity,1))}.ring-slate-900\/5{--tw-ring-color:rgba(15,23,42,.05)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body{font-family:Roboto,sans-serif}.hero-gradient{background:linear-gradient(135deg,#4aa3db,#1f74b3 45%,#125a94)}.text-gradient{background:linear-gradient(120deg,#4aa3db,#125a94);-webkit-background-clip:text;background-clip:text;color:transparent}.glass{background:hsla(0,0%,100%,.12);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid hsla(0,0%,100%,.22)}.card-hover{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.card-hover:hover{transform:translateY(-8px);box-shadow:0 24px 50px -18px rgba(18,90,148,.45)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.show{opacity:1;transform:translateY(0)}.blob{filter:blur(60px)}::-moz-selection{background:#4aa3db;color:#fff}::selection{background:#4aa3db;color:#fff}.phone{width:270px;height:560px;background:#0f172a;border-radius:2.6rem;padding:10px;box-shadow:0 30px 60px -20px rgba(18,63,95,.5)}.phone-screen{width:100%;height:100%;background:#f4f7fb;border-radius:2rem;overflow:hidden;position:relative}.phone-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:96px;height:20px;background:#0f172a;border-radius:0 0 14px 14px;z-index:20}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.site-nav{transition:background .3s ease,box-shadow .3s ease,border-color .3s ease}.site-nav.nav-solid{background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-color:rgba(2,6,23,.06);box-shadow:0 12px 34px -14px rgba(2,6,23,.22)}.site-nav.nav-solid .nav-brand{color:#0f172a}.site-nav.nav-solid .brand-plus{color:#1f74b3}.site-nav.nav-solid .nav-link{color:#475569}.site-nav.nav-solid .nav-link:hover{color:#0f172a}.site-nav.nav-solid .nav-cta{background:#1f74b3;color:#fff}.site-nav.nav-solid .nav-cta:hover{background:#1c5d90}.site-nav.nav-solid .nav-burger{color:#0f172a}.feat-menu{opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,visibility .22s}.feat-wrap:focus-within .feat-menu,.feat-wrap:hover .feat-menu{opacity:1;visibility:visible;transform:translateY(0)}@media (max-width:1023px){.nav-md-hide{display:none}}#mobileMenu{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.2,.8,.2,1)}#mobileMenu.open{max-height:calc(100vh - 5.75rem);max-height:calc(100dvh - 5.75rem)}#mobileMenu>div{max-height:calc(100vh - 6.25rem);max-height:calc(100dvh - 6.25rem);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#navBackdrop{position:fixed;inset:0;z-index:40;background:rgba(2,6,23,.4);opacity:0;visibility:hidden;touch-action:none;transition:opacity .3s ease,visibility .3s ease}body.nav-open #navBackdrop{opacity:1;visibility:visible}html.nav-open,body.nav-open{overflow:hidden}@media (max-width:359px){.phone{transform:scale(.92);transform-origin:top center}}.prose-nwp h2{margin-top:2.75rem;font-weight:800;color:#0f172a;font-size:1.3rem;scroll-margin-top:7rem}.prose-nwp h3{margin-top:1.75rem;font-weight:700;color:#1e293b;font-size:1.02rem}.prose-nwp p{line-height:1.75}.prose-nwp p,.prose-nwp ul{margin-top:.85rem;color:#475569}.prose-nwp ul{padding-left:1.15rem;list-style:disc}.prose-nwp ol{margin-top:.85rem;padding-left:1.3rem;list-style:decimal;color:#475569}.prose-nwp li{margin-top:.45rem;line-height:1.7}.prose-nwp a{color:#1c5d90;font-weight:600}.prose-nwp a:hover{text-decoration:underline}.prose-nwp strong{color:#0f172a}.prose-nwp table{width:100%;margin-top:1.25rem;border-collapse:collapse;font-size:.875rem}.prose-nwp th{background:#f8fafc;text-align:left;padding:.7rem .8rem;font-weight:800;color:#334155;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid #e2e8f0}.prose-nwp td{padding:.7rem .8rem;border-bottom:1px solid #f1f5f9;color:#475569;vertical-align:top}.prose-nwp code{background:#f1f5f9;padding:.12rem .4rem;border-radius:.3rem;font-size:.85em}.toc a{display:block;padding:.35rem .75rem;border-left:2px solid #e2e8f0;color:#64748b;font-size:.83rem;line-height:1.4}.toc a:hover{color:#1c5d90;border-left-color:#4aa3db;background:#f8fafc}.callout{margin-top:1.5rem;border-radius:1rem;padding:1.15rem 1.3rem}.fld{width:100%;border:1px solid #e2e8f0;border-radius:.85rem;padding:.65rem .85rem;font-size:.95rem;color:#0f172a;font-weight:600;background:#fff}.fld:focus{outline:none;border-color:#4aa3db;box-shadow:0 0 0 3px rgba(74,163,219,.18)}.lbl{display:block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin-bottom:.35rem}.rng{width:100%;accent-color:#1f74b3}table.sched{width:100%;border-collapse:collapse;font-size:.8rem}table.sched th{position:sticky;top:0;background:#f8fafc;text-align:right;padding:.55rem .7rem;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#475569;border-bottom:1px solid #e2e8f0}table.sched td:first-child,table.sched th:first-child{text-align:left;padding-left:1.25rem}table.sched td:last-child,table.sched th:last-child{padding-right:1.25rem}table.sched td{text-align:right;padding:.5rem .7rem;border-bottom:1px solid #f1f5f9;color:#475569}.num,table.sched td{font-variant-numeric:tabular-nums}.open\:border-brand-200[open]{--tw-border-opacity:1;border-color:rgb(191 225 254/var(--tw-border-opacity,1))}.open\:shadow-lg[open]{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:gap-3:hover{gap:.75rem}.hover\:border-brand-300:hover{--tw-border-opacity:1;border-color:rgb(147 206 253/var(--tw-border-opacity,1))}.hover\:border-red-200:hover{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.hover\:bg-brand-50:hover{--tw-bg-opacity:1;background-color:rgb(239 248 255/var(--tw-bg-opacity,1))}.hover\:bg-brand-50\/40:hover{background-color:rgba(239,248,255,.4)}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:bg-slate-800:hover{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.hover\:bg-white\/20:hover{background-color:hsla(0,0%,100%,.2)}.hover\:text-brand-800:hover{--tw-text-opacity:1;color:rgb(18 90 148/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-white:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-0:disabled{opacity:0}.group[open] .group-open\:rotate-45{--tw-rotate:45deg}.group:hover .group-hover\:-translate-y-2,.group[open] .group-open\:rotate-45{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-2{--tw-translate-y:-0.5rem}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:bg-brand-600,.group\/i:hover .group-hover\/i\:bg-brand-600{--tw-bg-opacity:1;background-color:rgb(31 116 179/var(--tw-bg-opacity,1))}.group\/i:hover .group-hover\/i\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-brand-700{--tw-text-opacity:1;color:rgb(28 93 144/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}@media (max-width:359px){.max-\[359px\]\:hidden{display:none}}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:mt-16{margin-top:4rem}.sm\:block{display:block}.sm\:flex{display:flex}.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\:gap-4{gap:1rem}.sm\:gap-8{gap:2rem}.sm\:p-10{padding:2.5rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xs{font-size:.75rem;line-height:1rem}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-16{height:4rem}.md\:h-24{height:6rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:block{display:block}.lg\:flex{display:flex}.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-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[15rem_1fr\]{grid-template-columns:15rem 1fr}.lg\:grid-cols-\[1fr_20rem\]{grid-template-columns:1fr 20rem}.lg\:grid-cols-\[1fr_21rem\]{grid-template-columns:1fr 21rem}.lg\:grid-cols-\[1fr_22rem\]{grid-template-columns:1fr 22rem}.lg\:justify-end{justify-content:flex-end}.lg\:gap-14{gap:3.5rem}.lg\:gap-16{gap:4rem}.lg\:gap-8{gap:2rem}.lg\:px-16{padding-left:4rem;padding-right:4rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-20{padding-top:5rem;padding-bottom:5rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:py-28{padding-top:7rem;padding-bottom:7rem}.lg\:pb-32{padding-bottom:8rem}.lg\:pb-40{padding-bottom:10rem}.lg\:pt-40{padding-top:10rem}.lg\:pt-44{padding-top:11rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-\[3\.4rem\]{font-size:3.4rem}}
/* nwp-additions: utilities referenced by the markup but absent from the compiled Tailwind build. Kept together so a future rebuild can drop them. */.mr-1\.5{margin-right:.375rem}.ml-1{margin-left:.25rem}.-mx-3{margin-left:-.75rem;margin-right:-.75rem}.p-1{padding:.25rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.hover\:bg-brand-100:hover{--tw-bg-opacity:1;background-color:rgb(219 238 254/var(--tw-bg-opacity,1))}.hover\:bg-brand-700:hover{--tw-bg-opacity:1;background-color:rgb(28 93 144/var(--tw-bg-opacity,1))}.group:hover .group-hover\:gap-3{gap:.75rem}.group:hover .group-hover\:text-brand-800{--tw-text-opacity:1;color:rgb(18 90 148/var(--tw-text-opacity,1))}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:640px){.sm\:p-8{padding:2rem}}

/* ── Mobile fix: the long-form legal pages ──────────────────────────────────
   `.prose-nwp` is a GRID ITEM, and a grid item defaults to `min-width:auto`,
   so it cannot shrink below its own min-content width. The widest thing in
   that column is the third-party services table on the privacy page, whose
   min-content is far wider than a phone -- which forced the WHOLE column,
   every paragraph included, past the viewport. `html`/`body` are
   `overflow-x-hidden`, so the excess was CLIPPED rather than scrollable and
   the right-hand edge of every sentence was cut off.

   `min-width:0` lets the column shrink to the screen. The table then needs
   somewhere to go, so it gets a real minimum and scrolls inside its own
   `overflow-x-auto` wrapper instead of squashing four columns into 320px. */
.prose-nwp{min-width:0}
.prose-nwp .overflow-x-auto{-webkit-overflow-scrolling:touch}
.prose-nwp table{min-width:32rem}
.prose-nwp td,.prose-nwp th{overflow-wrap:anywhere}
@media (max-width:640px){
  .prose-nwp table{font-size:.8rem}
  .prose-nwp td{padding:.55rem .6rem}
}

/* Avatar images (the founder photo on / and /about) are cropped rather than
   squashed. The source is square today, so this only matters the day someone
   drops in a portrait-orientation replacement, which is exactly when nobody
   would think to check the CSS. */
.object-cover{object-fit:cover}

/* 6rem avatar, used by the founder note on / and /about. */
.w-24{width:6rem}
.h-24{height:6rem}

/* ---- Numo mark, for the features menu ------------------------------------
   The app's own three-armed spark: tips at -90/30/150 degrees, each arm ONE
   cubic with both control points at 0.55x the tip radius. Geometry read off
   NumoMark in the NWPV2 repo (numo_spark.dart); valley verified at 0.331r.

   Drawn as a MASK over a gradient, because the nav templates emit
   <i class="..."> and an <i> cannot carry an SVG.

   CONIC, not linear, and that is not a style choice: at 1em a linear gradient
   shows ONE colour, whichever band happens to fall across 16 pixels. Rendered
   and rejected -- it came out solid blue. A conic keeps all five stops on the
   mark at every frame, and rotating it is what makes them flow.

   THE VIEWBOX IS CENTRED ON THE ROTATION CENTRE, NOT ON THE BOUNDING BOX,
   and the difference is the whole bug. The three tips lie on a circle about
   (120,120); the bbox centre is (120,95), 25px higher. Centring the bbox --
   which looks like the careful thing to do -- puts the spin axis 14.4% off
   the mark's own centre, so it ORBITS instead of turning in place. A static
   mark hides this completely; it only shows once it moves.
   20 20 200 200 is the tips' circle exactly. ------------------------------ */
.nwp-spark{display:block;width:1.5rem;height:1.5rem;
  background:conic-gradient(from 0deg,#14B1FF,#4D94FF,#AB61FF,#FF6171,#FF9A1F,#14B1FF);
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'20%2020%20200%20200'%3E%3Cpath%20d%3D'M%20120%2C20%20C%20120%2C65%20167.631%2C147.5%20206.603%2C170%20C%20167.631%2C147.5%2072.369%2C147.5%2033.397%2C170%20C%2072.369%2C147.5%20120%2C65%20120%2C20%20Z'%20fill%3D'%23000'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'20%2020%20200%20200'%3E%3Cpath%20d%3D'M%20120%2C20%20C%20120%2C65%20167.631%2C147.5%20206.603%2C170%20C%20167.631%2C147.5%2072.369%2C147.5%2033.397%2C170%20C%2072.369%2C147.5%20120%2C65%20120%2C20%20Z'%20fill%3D'%23000'/%3E%3C/svg%3E") center/contain no-repeat;
  filter:drop-shadow(0 0 6px rgba(171,97,255,.45)) drop-shadow(0 0 13px rgba(20,177,255,.28));
  animation:nwpSparkTurn 24s linear infinite}
@keyframes nwpSparkTurn{to{transform:rotate(1turn)}}
@media(prefers-reduced-motion:reduce){.nwp-spark{animation:none}}

/* The Numo row has NO TILE. It was a solid black square (matching
   `_Palette.numoSurface`, #000000, in the app) with a hairline border, and on a
   WHITE dropdown that reads as a hard block rather than a mark -- every sibling
   row wears a light brand-100 tile, so the black one was the odd shape out.
   The mark now sits straight on the menu and its own two drop-shadows spill
   past where the tile's edge used to be. That glow was always there; the black
   square was swallowing it.
   The span KEEPS its w-8/h-8 footprint (Tailwind is border-box, so dropping the
   1px border does not resize it) -- only the paint changes, nothing reflows.
   Still targeted with :has() rather than a template change, because render.py
   emits ONE span for every feature row and forking it would put a second nav
   shape in circulation.
   `display:block` above replaces inline-block + vertical-align: the tile is a
   grid container, vertical-align does nothing in it, and the -0.14em nudge was
   what pushed the mark off centre. */
span:has(> .nwp-spark){background:transparent!important;border:0!important}
a:hover span:has(> .nwp-spark){background:transparent!important}


/* ---- Partner announcement strip -------------------------------------------
   AT THE TOP OF THE PAGE ONLY, not pinned. A full-width violet-to-purple bar,
   edge to edge -- NOT a second glass pill: the in-nav version (2026-09-21, the
   same day) copied the header's glass style and read as part of the header,
   and the owner asked for a strip. It is the header's FIRST child, outside the
   max-w-7xl <nav>, so nothing narrows it. White text clears WCAG AA on every
   gradient stop: #6d28d9 7.10:1, #7c3aed 5.70:1, #9333ea 5.38:1 (12px text
   needs 4.5:1). Hover underlines the text rather than lightening the fill, so
   no hover state can drop under that line.

   It lives INSIDE the fixed header (which floats over the hero's top padding,
   so it displaces nothing) and is
   hidden the moment the header goes solid -- reusing the `.nav-solid` class the
   existing scroll handler already toggles, via `:has()`, rather than adding a
   second scroll listener to 85 baked-in page scripts. A browser without `:has()`
   simply keeps the strip visible, which is the harmless direction to fail.

   Written as its own classes, not Tailwind utilities: site.css is hand-built and
   is NOT recompiled, so a utility that is not already in this file does nothing
   and does it silently.

   The wording is the OWNER'S, verbatim (2026-09-22): "Earn commission on every
   NetWorth+ Pro user you refer", the SAME line in both spans. It replaced the
   earlier rate line the day Meta rejected the partner ad for false claims (the
   terms pay 50% of the FIRST payment and 30% after, which that line did not
   say), so it now makes no income claim; keep it that way while this strip is an ad's
   landing page. The two spans stay, one shown: under 768px no icon, from 768px
   the handshake. `display:none` also hides the unused one from screen readers,
   so neither is read twice.

   THE PHONE LINE MUST STAY ON ONE LINE (owner). MEASURED in Roboto (the site's
   web font, so every device renders the same widths) through the iframe
   harness: the text needs 302px at 12px against 319px available at 360px, and
   277px at 11px against 287px at 320px. `nowrap` + ellipsis on the phone span
   makes one line a guarantee rather than a measurement: below ~310px, where no
   current phone is, it truncates instead of wrapping. Re-measure before
   lengthening it. */
.nav-strip a{
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.5rem .75rem;
  background:linear-gradient(90deg,#6d28d9,#7c3aed 50%,#9333ea);
  box-shadow:0 6px 18px -10px rgba(76,29,149,.6);
  color:#fff;font-size:.75rem;font-weight:600;line-height:1.35;
  text-align:center}
.nav-strip a:hover span{text-decoration:underline;text-underline-offset:3px}
.nav-strip strong{font-weight:800}
.nav-strip .nav-strip-icon{flex:none}
.nav-strip .nav-strip-long,.nav-strip .nav-strip-icon{display:none}
.nav-strip .nav-strip-short{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
@media (min-width:768px){
  .nav-strip .nav-strip-short{display:none}
  .nav-strip .nav-strip-long{display:inline}
  .nav-strip .nav-strip-icon{display:inline-block}}
.nav-strip .nav-strip-arrow{font-size:.625rem;flex:none;transition:transform .2s ease}
.nav-strip a:hover .nav-strip-arrow{transform:translateX(3px)}
@media (max-width:359px){.nav-strip a{padding-left:.5rem;padding-right:.5rem;font-size:.6875rem}}
@media (min-width:768px){.nav-strip a{font-size:.8125rem;padding:.5rem 1rem}}
header:has(.nav-solid) .nav-strip{display:none}

/* The strip adds ~62px of fixed-header height on a phone, and the hero's
   pt-32 / pt-36 was sized for a header without one. MEASURED: the hero's first
   line of text sat 62px below the nav before the strip and 0px after it -- the
   chip was touching the pill. The space is given back HERE rather than by
   editing the padding utility on 80 hero sections, which would leave the markup
   saying `pt-32` while meaning something else.

   Scoped with `:has()` so only a page carrying a strip pays for it, and keyed on
   the strip EXISTING rather than being visible -- it is `display:none` once
   scrolled, and a padding that changed with it would make the page jump.

   CUT BY 14px (12.5 -> 11.625rem, 13.5 -> 12.625rem) on 2026-09-21 when the
   strip left the <nav> and became a full-width bar: it lost its .75rem top
   margin and its 1px borders, and MEASURED on all 85 pages at 360/390/768/1280
   the pill's bottom edge rose by exactly 14px everywhere (144 -> 130 on a
   phone, 126 -> 112 from 768 up). Taking the same 14px off here keeps the gap
   under the header what it was. */
body:has(.nav-strip) .hero-gradient:is(.pt-32,.pt-36){padding-top:11.625rem}
@media (min-width:1024px){body:has(.nav-strip) .hero-gradient:is(.pt-32,.pt-36){padding-top:12.625rem}}

/* ---- Utilities the markup used but this file never had ----------------------
   site.css is NOT recompiled, so a Tailwind class written into a page after
   the last compile does nothing. verify_css.py found these three on the
   homepage's Get Pro card on 2026-09-21: the "Cancel any time" link was not
   underlined, so it did not read as a link, and neither it nor the button had
   a hover state. Written out as Tailwind's own definitions. */
.underline{text-decoration-line:underline}
.hover\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}
.hover\:opacity-95:hover{opacity:.95}
