/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Geist","Inter",system-ui,-apple-system,sans-serif;--font-mono:"Geist Mono","JetBrains Mono",ui-monospace,monospace;--color-red-600:oklch(57.7% .245 27.325);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-3xl:1.5rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-void:#07050f;--color-bg:#0d081d;--color-elevated:#15102a;--color-elevated-2:#1d1638;--color-text:#fff;--color-secondary:#b8b5c9;--color-tertiary:#8a85a3;--color-muted:#5c5774;--color-accent:#8b5cf6;--color-accent-from:#a78bfa;--color-cyan:#22d3ee;--color-danger:#ed3700}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-9{top:calc(var(--spacing)*9)}.right-0{right:calc(var(--spacing)*0)}.right-4{right:calc(var(--spacing)*4)}.right-7{right:calc(var(--spacing)*7)}.right-\[200\%\]{right:200%}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-10{bottom:calc(var(--spacing)*10)}.-left-\[200\%\]{left:-200%}.left-0{left:calc(var(--spacing)*0)}.left-3{left:calc(var(--spacing)*3)}.z-2{z-index:2}.z-10{z-index:10}.z-20{z-index:20}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.order-first{order:-9999}.order-last{order:9999}.col-1{grid-column:1}.col-2{grid-column:2}.col-3{grid-column:3}.col-4{grid-column:4}.col-5{grid-column:5}.col-6{grid-column:6}.col-7{grid-column:7}.col-8{grid-column:8}.col-9{grid-column:9}.col-10{grid-column:10}.col-11{grid-column:11}.col-12{grid-column:12}.col-auto{grid-column:auto}.float-left{float:left}.float-none{float:none}.float-right{float:right}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.m-1{margin:calc(var(--spacing)*1)}.m-2{margin:calc(var(--spacing)*2)}.m-3{margin:calc(var(--spacing)*3)}.m-4{margin:calc(var(--spacing)*4)}.m-5{margin:calc(var(--spacing)*5)}.m-auto{margin:auto}.mx-0{margin-inline:calc(var(--spacing)*0)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-1\.5{margin-inline:calc(var(--spacing)*1.5)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-5{margin-inline:calc(var(--spacing)*5)}.mx-auto{margin-inline:auto}.-my-1{margin-block:calc(var(--spacing)*-1)}.my-0{margin-block:calc(var(--spacing)*0)}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.my-4{margin-block:calc(var(--spacing)*4)}.my-5{margin-block:calc(var(--spacing)*5)}.my-auto{margin-block:auto}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-6{margin-top:calc(var(--spacing)*6)}.-mr-2{margin-right:calc(var(--spacing)*-2)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-2\.5{margin-right:calc(var(--spacing)*2.5)}.mr-3{margin-right:calc(var(--spacing)*3)}.mr-4{margin-right:calc(var(--spacing)*4)}.mr-5{margin-right:calc(var(--spacing)*5)}.mr-auto{margin-right:auto}.-mb-0\.5{margin-bottom:calc(var(--spacing)*-.5)}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-7{margin-bottom:calc(var(--spacing)*7)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-15{margin-bottom:calc(var(--spacing)*15)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-5{margin-left:calc(var(--spacing)*5)}.ml-auto{margin-left:auto}.\!hidden{display:none!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.size-32{width:calc(var(--spacing)*32);height:calc(var(--spacing)*32)}.size-40{width:calc(var(--spacing)*40);height:calc(var(--spacing)*40)}.size-50{width:calc(var(--spacing)*50);height:calc(var(--spacing)*50)}.h-0{height:calc(var(--spacing)*0)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-14{height:calc(var(--spacing)*14)}.h-25{height:calc(var(--spacing)*25)}.h-50{height:calc(var(--spacing)*50)}.h-75{height:calc(var(--spacing)*75)}.h-100{height:calc(var(--spacing)*100)}.h-\[18px\]{height:18px}.h-auto{height:auto}.h-full{height:100%}.max-h-60{max-height:calc(var(--spacing)*60)}.max-h-screen{max-height:100vh}.min-h-\[38px\]{min-height:38px}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-4\/24{width:16.6667%}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-6\/24{width:25%}.w-14{width:calc(var(--spacing)*14)}.w-25{width:calc(var(--spacing)*25)}.w-48{width:calc(var(--spacing)*48)}.w-50{width:calc(var(--spacing)*50)}.w-75{width:calc(var(--spacing)*75)}.w-100{width:calc(var(--spacing)*100)}.w-\[18px\]{width:18px}.w-\[120px\]{width:120px}.w-auto{width:auto}.w-full{width:100%}.w-screen{width:100vw}.max-w-\[1px\]{max-width:1px}.max-w-full{max-width:100%}.max-w-md{max-width:var(--container-md)}.min-w-\[240px\]{min-width:240px}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.flex-shrink-1,.shrink{flex-shrink:1}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.flex-grow-1,.grow{flex-grow:1}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-flow-col{grid-auto-flow:column}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.gap-7{gap:calc(var(--spacing)*7)}:where(.space-x-6>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*6)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-x-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-y-scroll{overflow-y:scroll}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-b-3xl{border-bottom-right-radius:var(--radius-3xl);border-bottom-left-radius:var(--radius-3xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-danger{border-color:var(--color-danger)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-secondary{border-color:var(--color-secondary)}.border-transparent{border-color:#0000}.border-white{border-color:var(--color-white)}.border-yellow-300{border-color:var(--color-yellow-300)}.bg-black{background-color:var(--color-black)}.bg-cyan{background-color:var(--color-cyan)}.bg-danger{background-color:var(--color-danger)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-gray-100{--tw-gradient-from:var(--color-gray-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-12{padding:calc(var(--spacing)*12)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-0{padding-block:calc(var(--spacing)*0)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-4{padding-right:calc(var(--spacing)*4)}.pr-9{padding-right:calc(var(--spacing)*9)}.pr-10{padding-right:calc(var(--spacing)*10)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-5{padding-bottom:calc(var(--spacing)*5)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-16{padding-bottom:calc(var(--spacing)*16)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-10{padding-left:calc(var(--spacing)*10)}.text-center{text-align:center}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.align-baseline{vertical-align:baseline}.align-bottom{vertical-align:bottom}.align-middle{vertical-align:middle}.align-text-bottom{vertical-align:text-bottom}.align-text-top{vertical-align:text-top}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-6{--tw-leading:calc(var(--spacing)*6);line-height:calc(var(--spacing)*6)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-nowrap{text-wrap:nowrap}.text-wrap{text-wrap:wrap}.whitespace-nowrap{white-space:nowrap}.text-blue-600{color:var(--color-blue-600)}.text-cyan{color:var(--color-cyan)}.text-danger{color:var(--color-danger)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-inherit{color:inherit}.text-muted{color:var(--color-muted)}.text-red-600{color:var(--color-red-600)}.text-secondary{color:var(--color-secondary)}.text-text{color:var(--color-text)}.text-white{color:var(--color-white)}.text-yellow-700{color:var(--color-yellow-700)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.accent-cyan{accent-color:var(--color-cyan)}.accent-danger{accent-color:var(--color-danger)}.accent-secondary{accent-color:var(--color-secondary)}.accent-white{accent-color:var(--color-white)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.\!filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)!important}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:hidden:is(:where(.group):hover *){display:none}.group-hover\:inline-block:is(:where(.group):hover *){display:inline-block}.group-hover\:underline:is(:where(.group):hover *){text-decoration-line:underline}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-focus\:hidden:is(:where(.group):focus *){display:none}.group-focus\:inline-block:is(:where(.group):focus *){display:inline-block}@media (hover:hover){.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:text-gray-500:hover{color:var(--color-gray-500)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\:opacity-100:focus{opacity:1}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (min-width:40rem){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:flex-col-reverse{flex-direction:column-reverse}.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}.sm\:duration-300{--tw-duration:.3s;transition-duration:.3s}}@media (min-width:48rem){.md\:fixed{position:fixed}.md\:inset-y-0{inset-block:calc(var(--spacing)*0)}.md\:right-auto{right:auto}.md\:left-0{left:calc(var(--spacing)*0)}.md\:left-auto{left:auto}.md\:mx-0{margin-inline:calc(var(--spacing)*0)}.md\:mx-3{margin-inline:calc(var(--spacing)*3)}.md\:mt-0{margin-top:calc(var(--spacing)*0)}.md\:mb-0{margin-bottom:calc(var(--spacing)*0)}.md\:mb-2{margin-bottom:calc(var(--spacing)*2)}.md\:mb-20{margin-bottom:calc(var(--spacing)*20)}.md\:mb-30{margin-bottom:calc(var(--spacing)*30)}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline{display:inline}.md\:w-1\/2{width:50%}.md\:w-88{width:calc(var(--spacing)*88)}.md\:flex-col{flex-direction:column}.md\:flex-row{flex-direction:row}.md\:gap-10{gap:calc(var(--spacing)*10)}.md\:p-4{padding:calc(var(--spacing)*4)}.md\:px-4{padding-inline:calc(var(--spacing)*4)}.md\:px-10{padding-inline:calc(var(--spacing)*10)}.md\:py-7{padding-block:calc(var(--spacing)*7)}.md\:pb-12{padding-bottom:calc(var(--spacing)*12)}.md\:pl-10{padding-left:calc(var(--spacing)*10)}.md\:pl-30{padding-left:calc(var(--spacing)*30)}.md\:pl-88{padding-left:calc(var(--spacing)*88)}.md\:whitespace-pre-line{white-space:pre-line}.md\:opacity-75{opacity:.75}}@media (min-width:64rem){.lg\:absolute{position:absolute}.lg\:top-2{top:calc(var(--spacing)*2)}.lg\:right-0{right:calc(var(--spacing)*0)}.lg\:right-6{right:calc(var(--spacing)*6)}.lg\:left-0{left:calc(var(--spacing)*0)}.lg\:mx-0{margin-inline:calc(var(--spacing)*0)}.lg\:mx-8{margin-inline:calc(var(--spacing)*8)}.lg\:mt-0{margin-top:calc(var(--spacing)*0)}.lg\:mb-0{margin-bottom:calc(var(--spacing)*0)}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:inline{display:inline}.lg\:table-cell{display:table-cell}.lg\:w-\[170px\]{width:170px}.lg\:w-auto{width:auto}.lg\:flex-row{flex-direction:row}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}.lg\:pt-6{padding-top:calc(var(--spacing)*6)}.lg\:pt-7{padding-top:calc(var(--spacing)*7)}.lg\:pb-4{padding-bottom:calc(var(--spacing)*4)}.lg\:pb-8{padding-bottom:calc(var(--spacing)*8)}.lg\:pl-2{padding-left:calc(var(--spacing)*2)}.lg\:pl-30{padding-left:calc(var(--spacing)*30)}.lg\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.lg\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.lg\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.lg\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.lg\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:80rem){.xl\:inline{display:inline}}@media (prefers-color-scheme:dark){.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:border-gray-700{border-color:var(--color-gray-700)}.dark\:border-gray-800{border-color:var(--color-gray-800)}.dark\:border-yellow-800{border-color:var(--color-yellow-800)}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:bg-yellow-900{background-color:var(--color-yellow-900)}.dark\:from-gray-900{--tw-gradient-from:var(--color-gray-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.dark\:text-blue-500{color:var(--color-blue-500)}.dark\:text-gray-100{color:var(--color-gray-100)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-green-500{color:var(--color-green-500)}.dark\:text-yellow-400{color:var(--color-yellow-400)}.dark\:opacity-90{opacity:.9}@media (hover:hover){.dark\:hover\:border-gray-400:hover{border-color:var(--color-gray-400)}.dark\:hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.dark\:hover\:text-blue-400:hover{color:var(--color-blue-400)}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:hover{color:var(--color-gray-300)}}}}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}body{background-color:var(--color-void);color:var(--color-secondary);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:17px;line-height:1.6;overflow-x:hidden}::selection{background:var(--color-accent);color:#fff}.container{max-width:1280px;margin:0 auto;padding:0 32px;position:relative}@media (max-width:768px){.container{padding:0 20px}}.section{border-top:1px solid #ffffff0f;padding:140px 0;position:relative}@media (max-width:768px){.section{padding:80px 0}}@media (max-width:600px){.section{padding:60px 0}}.mono{font-family:var(--font-mono);font-feature-settings:"ss01","ss02"}.grad-text-soft{-webkit-text-fill-color:transparent;color:#0000;background:linear-gradient(135deg,#fff,#b8b5c9);-webkit-background-clip:text;background-clip:text}.grad-text-accent{-webkit-text-fill-color:transparent;color:#0000;background:linear-gradient(135deg,#a78bfa,#8b5cf6 45%,#5b21b6) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:8s ease-in-out infinite gradTextShimmer}@keyframes gradTextShimmer{0%,to{background-position:0%}50%{background-position:100%}}.grain{pointer-events:none;z-index:1000;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:1;filter:blur(40px);opacity:0;background:radial-gradient(circle,#8b5cf62e,#8b5cf60d,#0000 70%);border-radius:50%;width:480px;height:480px;transition:opacity .3s;position:fixed;top:0;left:0;transform:translate(-9999px,-9999px)}.cursor-glow.on{opacity:1}.grid-lines{pointer-events:none;z-index:0;background-image:linear-gradient(90deg,#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-position:32px 0,calc(100% - 32px) 0;background-repeat:no-repeat;background-size:100% 100%;max-width:1280px;margin:0 auto;position:absolute;inset:0}.section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-from);font-size:11px;font-weight:500;font-family:var(--font-mono);align-items:center;gap:10px;margin-bottom:24px;display:inline-flex}.section-label .dot{background:var(--color-accent-from);width:6px;height:6px;box-shadow:0 0 12px var(--color-accent-from);border-radius:50%;flex-shrink:0}.sweep-line{background:linear-gradient(90deg,transparent,var(--color-accent-from),transparent);transform-origin:0;z-index:1;width:100%;height:1px;transition:transform 1.2s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0;transform:scaleX(0)}.section.in-view .sweep-line{transform:scaleX(1)}.fade-up{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.fade-up.visible{opacity:1;transform:translateY(0)}#scrollProgress{z-index:49;pointer-events:none;visibility:hidden;height:1px;position:fixed;top:0;left:0;right:0}#scrollProgressFill{transform-origin:0;will-change:transform;background:linear-gradient(90deg,#a78bfa,#8b5cf6,#5b21b6);width:100%;height:100%;transform:scaleX(0);box-shadow:0 0 8px #8b5cf666}.nav-wrap{z-index:50;-webkit-backdrop-filter:blur(12px);background:#07050fcc;border-bottom:1px solid #ffffff0a;padding:16px 0;transition:background .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s,border-color .3s;position:fixed;top:0;left:0;right:0}.nav-wrap.scrolled{-webkit-backdrop-filter:blur(24px);background:#07050feb;border-bottom-color:#ffffff14}.nav-inner{justify-content:space-between;align-items:center;gap:32px;display:flex}.nav-brand{color:#fff;letter-spacing:-.01em;align-items:center;gap:12px;font-size:17px;font-weight:500;text-decoration:none;display:flex}.nav-links{align-items:center;gap:4px;display:flex}.nav-links a{color:var(--color-secondary);border-radius:6px;padding:8px 14px;font-size:14px;text-decoration:none;transition:color .2s,background .2s}.nav-links a:hover{color:#fff;background:#ffffff0a}.nav-end{align-items:center;gap:10px;display:flex}.nav-mobile-toggle{width:38px;height:38px;color:var(--color-secondary);cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;display:none}.nav-mobile-toggle:hover{color:#fff;background:#ffffff0f}.nav-drawer{background:#07050ffa;border-top:1px solid #ffffff14;flex-direction:column;gap:4px;padding:16px 0 24px;display:none}.nav-drawer.open{display:flex}.nav-drawer a{color:var(--color-secondary);border-radius:6px;padding:10px 4px;font-size:16px;text-decoration:none;transition:color .2s}.nav-drawer a:hover{color:#fff}@media (max-width:980px){.nav-links{display:none}.nav-mobile-toggle{display:flex}.lang-switch-desktop{display:none}}.nav-drawer-lang{border-top:1px solid #ffffff0f;gap:8px;margin-top:8px;padding:10px 4px 0;display:flex}.nav-drawer-lang-opt{color:var(--color-tertiary);border:1px solid #ffffff14;border-radius:5px;padding:4px 8px;font-size:13px;text-decoration:none;transition:color .2s,background .2s}.nav-drawer-lang-opt:hover,.nav-drawer-lang-opt.active{color:#fff;background:#ffffff0f}.lang-switch{position:relative}.lang-btn{color:var(--color-secondary);cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:7px;align-items:center;gap:8px;padding:7px 10px 7px 9px;transition:all .2s;display:flex}.lang-btn:hover{color:#fff;background:#ffffff0f;border-color:#ffffff2e}.lang-code{letter-spacing:.08em;color:#fff;font-size:11px;font-weight:500}.lang-menu{-webkit-backdrop-filter:blur(20px);opacity:0;pointer-events:none;z-index:80;background:#0d081df2;border:1px solid #ffffff2e;border-radius:10px;min-width:180px;padding:6px;transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px)scale(.98);box-shadow:0 20px 60px #00000080,0 0 0 1px #a78bfa1a}.lang-switch.open .lang-menu{opacity:1;pointer-events:auto;transform:none}.lang-opt{width:100%;color:var(--color-secondary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;text-decoration:none;transition:background .2s,color .2s;display:flex}.lang-opt:hover{color:#fff;background:#a78bfa14}.lang-opt.active{color:#fff;background:#8b5cf62e}.btn-primary{color:#fff;isolation:isolate;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#5b21b6);border:none;border-radius:8px;align-items:center;gap:10px;padding:14px 22px;font-size:14.5px;font-weight:500;text-decoration:none;transition:box-shadow .4s cubic-bezier(.16,1,.3,1),background .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1);animation:3s ease-in-out infinite btnBreathe;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #8b5cf64d,0 8px 24px #8b5cf633,inset 0 1px #ffffff2e}.btn-primary:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,#0000 30%,#ffffff59,#0000 70%);transition:transform .8s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translate(-120%)}.btn-primary:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);box-shadow:0 0 0 1px #a78bfa80,0 12px 40px #8b5cf666,inset 0 1px #ffffff40}.btn-primary:hover:before{transform:translate(120%)}@keyframes btnBreathe{0%,to{box-shadow:0 0 0 1px #8b5cf64d,0 8px 24px #8b5cf633,inset 0 1px #ffffff2e}50%{box-shadow:0 0 0 1px #8b5cf659,0 10px 30px #8b5cf652,inset 0 1px #fff3}}.btn-secondary{color:#fff;cursor:pointer;background:#ffffff05;border:1px solid #ffffff2e;border-radius:8px;align-items:center;gap:10px;padding:14px 22px;font-size:14.5px;font-weight:500;text-decoration:none;transition:border-color .4s,background .4s,transform .2s;display:inline-flex}.btn-secondary:hover{background:#ffffff0d;border-color:#fff6}.btn-tertiary{color:#fff;align-items:center;gap:8px;padding:6px 0;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.btn-tertiary .arr{transition:transform .4s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-tertiary:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .4s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;right:24px;transform:scaleX(0)}.btn-tertiary:hover:after{transform:scaleX(1)}.btn-tertiary:hover .arr{transform:translate(4px)}.glass-card{background:linear-gradient(#ffffff14,#ffffff0a);border:1px solid #ffffff1a;border-radius:12px;transition:border-color .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1)}.glass-card:hover{border-color:#ffffff2e;box-shadow:inset 0 0 60px #8b5cf60f}.hero{isolation:isolate;padding:200px 0 140px;position:relative;overflow:hidden}.hero-bg{z-index:-1;pointer-events:none;position:absolute;inset:-20% -10% 0}.aurora{filter:blur(90px);will-change:transform,opacity;border-radius:50%;position:absolute}.aurora-1{opacity:.28;background:radial-gradient(circle,#8b5cf6,#0000 65%);width:60vw;height:60vw;animation:22s ease-in-out infinite alternate auroraDrift1;top:-10%;left:-10%}.aurora-2{opacity:.36;background:radial-gradient(circle,#5b21b6,#0000 65%);width:55vw;height:55vw;animation:28s ease-in-out infinite alternate auroraDrift2;top:10%;right:-5%}.aurora-3{opacity:.19;background:radial-gradient(#a78bfa,#0000 60%);width:70vw;height:50vw;animation:26s ease-in-out infinite alternate auroraDrift3;bottom:-30%;left:15%}@keyframes auroraDrift1{0%{transform:translate(0)scale(1)}to{transform:translate(8%,5%)scale(1.15)}}@keyframes auroraDrift2{0%{transform:translate(0)scale(1.05)}to{transform:translate(-6%,8%)scale(.95)}}@keyframes auroraDrift3{0%{transform:translate(-4%)scale(1)}to{transform:translate(4%,-4%)scale(1.1)}}.hero-stars{z-index:-1;background-image:radial-gradient(1px 1px at 20% 30%,#fff6,#0000),radial-gradient(1px 1px at 60% 70%,#ffffff59,#0000),radial-gradient(1px 1px at 80% 20%,#ffffff4d,#0000),radial-gradient(1px 1px at 35% 85%,#ffffff4d,#0000),radial-gradient(1.5px 1.5px at 90% 60%,#fff6,#0000),radial-gradient(1px 1px at 10% 60%,#ffffff40,#0000);position:absolute;inset:0}.hero-vignette{background:linear-gradient(to bottom,transparent,var(--color-void));z-index:-1;height:240px;position:absolute;bottom:0;left:0;right:0}.hero-eyebrow{color:var(--color-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#a78bfa14;border:1px solid #a78bfa33;border-radius:99px;align-items:center;gap:10px;margin-bottom:36px;padding:6px 14px 6px 6px;font-size:12.5px;display:inline-flex}.hero-eyebrow .badge{letter-spacing:.12em;color:#fff;font-size:10.5px;font-weight:600;font-family:var(--font-mono);text-transform:uppercase;background:linear-gradient(135deg,#a78bfa,#5b21b6);border-radius:99px;padding:4px 10px}.live-dot{background:var(--color-cyan);width:6px;height:6px;box-shadow:0 0 10px var(--color-cyan);border-radius:50%;animation:2s ease-in-out infinite livePulse;display:inline-block}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.4}}.hero h1{letter-spacing:-.045em;color:#fff;max-width:1100px;margin:0 0 36px;font-size:clamp(48px,8.5vw,108px);font-weight:500;line-height:1}.hero h1[data-reveal] .word{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#fff,#b8b5c9);-webkit-background-clip:text;background-clip:text;animation:.85s cubic-bezier(.16,1,.3,1) both wordReveal;display:inline-block}@keyframes wordReveal{0%{opacity:0;filter:blur(8px);transform:translateY(22px)}to{opacity:1;filter:blur();transform:translateY(0)}}.hero-sub{color:var(--color-secondary);opacity:0;max-width:620px;margin:0 0 44px;font-size:21px;line-height:1.5;animation:1s cubic-bezier(.16,1,.3,1) 1s forwards fadeUp;transform:translateY(20px)}.hero-actions{opacity:0;flex-wrap:wrap;align-items:center;gap:14px;animation:1s cubic-bezier(.16,1,.3,1) 1.2s forwards fadeUp;display:flex;transform:translateY(20px)}.hero-meta-note{color:var(--color-muted);align-items:center;gap:8px;margin-left:8px;font-size:13px;display:inline-flex}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.hero-meta-row{opacity:0;border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;grid-template-columns:repeat(4,1fr);margin-top:88px;animation:1s cubic-bezier(.16,1,.3,1) 1.5s forwards fadeUp;display:grid;transform:translateY(20px)}.hero-meta-cell{border-right:1px solid #ffffff0f;padding:24px 28px}.hero-meta-cell:last-child{border-right:0}.hero-meta-k{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);font-size:11px;font-family:var(--font-mono);margin-bottom:10px}.hero-meta-v{color:#fff;letter-spacing:-.01em;align-items:baseline;gap:8px;font-size:24px;display:flex}.hero-meta-v small{color:var(--color-tertiary);letter-spacing:0;font-size:13px;font-weight:400}.status-dot{background:var(--color-cyan);width:8px;height:8px;box-shadow:0 0 10px var(--color-cyan);border-radius:50%;animation:2s ease-in-out infinite livePulse}@media (max-width:900px){.hero{padding:160px 0 100px}.hero-meta-row{grid-template-columns:repeat(2,1fr);margin-top:60px}.hero-meta-cell:nth-child(2){border-right:0}.hero-meta-cell:first-child,.hero-meta-cell:nth-child(2){border-bottom:1px solid #ffffff0f}}@media (max-width:600px){.hero{padding:100px 0 56px}.hero-eyebrow{margin-bottom:20px}.hero h1{margin-bottom:16px}.hero-sub{margin-bottom:24px;font-size:16px}.hero-actions{gap:10px}.hero-meta-row{-webkit-overflow-scrolling:touch;grid-template-columns:repeat(2,1fr);margin-top:36px;overflow-x:auto}.hero-meta-cell{padding:16px 18px}.hero-meta-v{font-size:18px}}.stats-strip{background:#0d081d80;border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;padding:64px 0}.stats-grid{grid-template-columns:repeat(4,1fr);align-items:start;gap:48px;display:grid}.stat-num{letter-spacing:-.04em;color:#fff;font-feature-settings:"tnum","ss01";align-items:flex-end;height:64px;font-size:64px;font-weight:500;line-height:1;display:flex}.stat-num sup{color:var(--color-accent-from);margin-left:2px;font-size:32px;font-weight:400;line-height:1}.stat-unit{font-size:.65em;font-weight:inherit;color:inherit;vertical-align:baseline}.stat-label{color:var(--color-tertiary);max-width:200px;margin-top:18px;font-size:13px;line-height:1.4}@media (max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:32px}.stat-num{height:48px;font-size:48px}}.editorial-page{min-height:100vh}.editorial-hero{border-top:1px solid #ffffff0f;padding:160px 0 80px;position:relative}.editorial-hero h1{letter-spacing:-.04em;max-width:920px;margin:0;font-size:clamp(44px,6vw,82px);font-weight:500;line-height:1.02}.editorial-hero .section-lead{max-width:720px;margin-top:28px}.proof-strip{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;grid-template-columns:repeat(4,1fr);margin-top:58px;display:grid;overflow:hidden}.proof-strip>div{border-right:1px solid #ffffff0f;padding:22px 24px}.proof-strip>div:last-child{border-right:0}.proof-strip strong{color:#fff;font-family:var(--font-mono);letter-spacing:.11em;margin-bottom:8px;font-size:13px;display:block}.proof-strip span{color:var(--color-tertiary);font-size:13px;line-height:1.45;display:block}.editorial-list{padding-top:80px}.product-entry-grid{background:#ffffff0f;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.editorial-card,.quick-start-card{background:linear-gradient(180deg,var(--color-elevated)0%,var(--color-bg)100%);padding:34px}.editorial-card h2{color:#fff;letter-spacing:-.025em;margin:0 0 20px;font-size:clamp(26px,3vw,40px);font-weight:500;line-height:1.08}.editorial-card p,.quick-start-card p{color:var(--color-tertiary);margin:0 0 24px;line-height:1.6}.entry-kicker{color:var(--color-accent-from);letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;font-size:11px}.entry-facts{background:#ffffff0d;border:1px solid #ffffff12;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 24px;display:grid;overflow:hidden}.entry-facts div{background:#0d081d9e;padding:14px}.entry-facts dt{color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:10px}.entry-facts dd{color:var(--color-secondary);margin:0;font-size:13px;line-height:1.4}.entry-actions{flex-wrap:wrap;gap:18px;display:flex}.solution-layout{background:#ffffff0f;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:1px;display:grid;overflow:hidden}.editorial-list-plain{gap:16px;margin:0;padding:0;list-style:none;display:grid}.editorial-list-plain li{color:var(--color-secondary);padding-left:20px;line-height:1.55;position:relative}.editorial-list-plain li:before{content:"";background:var(--color-accent-from);border-radius:50%;width:6px;height:6px;position:absolute;top:.7em;left:0;box-shadow:0 0 12px #a78bfaa6}.quick-start-card{border-left:1px solid #ffffff0f}.case-study-card{max-width:900px}@media (max-width:900px){.proof-strip,.product-entry-grid,.solution-layout,.entry-facts{grid-template-columns:1fr}.proof-strip>div,.quick-start-card{border-bottom:1px solid #ffffff0f;border-left:0;border-right:0}.proof-strip>div:last-child{border-bottom:0}}@media (max-width:600px){.editorial-hero{padding:112px 0 56px}.editorial-card,.quick-start-card{padding:26px}}.services-grid{background:#ffffff0f;border:1px solid #ffffff0f;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:1.2fr 1fr 1fr;gap:1px;display:grid;overflow:hidden}.service-card-new{background:linear-gradient(180deg,var(--color-elevated)0%,var(--color-bg)100%);isolation:isolate;flex-direction:column;min-height:280px;padding:36px;transition:background .4s;display:flex;position:relative;overflow:hidden}.service-card-new:before{content:"";opacity:0;z-index:-1;background:radial-gradient(circle at 50% 0,#8b5cf62e,#0000 60%);transition:opacity .4s;position:absolute;inset:0}.service-card-new:hover:before{opacity:1}.service-icon{width:44px;height:44px;color:var(--color-accent-from);background:linear-gradient(135deg,#a78bfa26,#5b21b61a);border:1px solid #a78bfa2e;border-radius:10px;flex-shrink:0;place-items:center;margin-bottom:24px;display:grid}.service-card-new h3{color:#fff;letter-spacing:-.015em;margin:0 0 10px;font-size:22px;font-weight:500}.service-card-new p{color:var(--color-tertiary);margin-bottom:20px;font-size:15px;line-height:1.5}.service-chips{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.chip{font-family:var(--font-mono);color:var(--color-tertiary);letter-spacing:.04em;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:5px;padding:4px 8px;font-size:10.5px}.service-built-own{background:#a78bfa0f;border:1px solid #a78bfa1f;border-radius:10px;margin-top:22px;padding:16px}.service-built-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);margin-bottom:8px;font-size:10px}.service-built-products{color:#ffffffd1;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;line-height:1.45;display:flex}.service-built-separator{color:var(--color-accent-from);opacity:.65}.service-built-stat{font-family:var(--font-mono);color:var(--color-tertiary);margin-top:14px;font-size:12px;line-height:1.45}.service-card-footer{margin-top:auto;padding-top:24px}.service-lead-card{background:radial-gradient(circle at 50% 24%,#8b5cf629,transparent 50%),linear-gradient(180deg,#26194af5 0%,var(--color-bg)100%);grid-area:span 2/span 1;min-height:auto}.service-lead-card h3{line-height:1.15;margin-bottom:14px!important;font-size:32px!important}.service-lead-card p{max-width:380px;margin-bottom:24px!important;font-size:16px!important}.service-lead-card .service-card-footer{margin-top:4px;padding-top:0}.service-lead-card .service-built-own{flex-direction:column;flex:1;justify-content:center;min-height:150px;display:flex}.service-product-users{background:linear-gradient(#ffffff09 1px,#0000 1px) 0 0/42px 42px,linear-gradient(90deg,#ffffff09 1px,#0000 1px) 0 0/42px 42px,radial-gradient(circle at 24% 12%,#a78bfa2e,#0000 42%) 0 0/100% 100%,linear-gradient(135deg,#a78bfa1f,#0d081dad) 0 0/100% 100%;border:1px solid #a78bfa38;border-radius:14px;margin-top:auto;padding:16px 18px 18px;position:relative;overflow:hidden;box-shadow:inset 0 0 40px #a78bfa14}.service-product-users:after{content:"";background:linear-gradient(90deg,#0000,#ffffff24,#0000);height:1px;position:absolute;inset:auto 18px 12px}.service-users-head{color:var(--color-muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;font-size:10.5px;display:flex}.service-users-status{min-width:0;color:var(--color-tertiary);background:#a78bfa1a;border:1px solid #a78bfa38;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.service-users-dot{background:var(--color-cyan);border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 12px #22d3eebf}.service-users-list{gap:10px;display:grid}.service-user-row{background:#ffffff0b;border:1px solid #ffffff12;border-radius:10px;grid-template-columns:42px minmax(106px,1fr) minmax(90px,1.2fr) 72px;align-items:center;gap:12px;min-height:52px;padding:8px 10px;display:grid}.service-user-logo{color:#fff;width:32px;height:32px;font-family:var(--font-mono);letter-spacing:.02em;border-radius:9px;place-items:center;font-size:10px;font-weight:600;display:grid}.service-user-logo-cyan{background:linear-gradient(135deg,#22d3ee,#0891b2)}.service-user-logo-pink{background:linear-gradient(135deg,#f472b6,#be185d)}.service-user-logo-purple{background:linear-gradient(135deg,#a78bfa,#6d28d9)}.service-user-logo-green{background:linear-gradient(135deg,#34d399,#047857)}.service-user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14.5px;overflow:hidden}.service-user-bar{background:#ffffff14;border-radius:999px;height:7px;overflow:hidden}.service-user-bar span{width:var(--pct);border-radius:inherit;background:linear-gradient(90deg,#c4b5fd,#7c3aed);height:100%;display:block;box-shadow:0 0 14px #7c3aed59}.service-user-count{color:#fff;text-align:right;font-size:13px}.service-user-count:after{content:" users";color:var(--color-tertiary);letter-spacing:0;font-size:10px}@media (max-width:980px){.services-grid{grid-template-columns:1fr 1fr}.service-lead-card{grid-area:span 1/span 2}.service-lead-card .service-built-own{flex:initial;justify-content:flex-start;min-height:0}}@media (max-width:600px){.services-grid{grid-template-columns:1fr}.service-lead-card{grid-column:span 1}.service-card-new{padding:24px}.service-built-own{padding:14px}.service-card-footer{padding-top:20px}.service-product-users{margin-top:30px;padding:14px}.service-users-head{flex-direction:column;align-items:flex-start;gap:10px}.service-user-row{grid-template-columns:36px minmax(0,1fr) 64px;gap:10px}.service-user-bar{display:none}}.products-head{justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:48px;display:flex}.products-nav-btns{gap:8px;display:flex}.products-nav-btns button{width:40px;height:40px;color:var(--color-secondary);cursor:pointer;background:#ffffff05;border:1px solid #ffffff1a;border-radius:8px;place-items:center;transition:all .2s;display:grid}.products-nav-btns button:hover:not(:disabled){color:#fff;background:#ffffff0d;border-color:#ffffff2e}.products-nav-btns button:disabled{opacity:.35;cursor:default}.products-rail-wrap{margin:0 -32px;padding:0 32px;position:relative}.products-rail{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;gap:24px;margin:-24px -32px -24px 0;padding:24px 32px 24px 0;display:flex;overflow-x:auto}.products-rail::-webkit-scrollbar{display:none}.product-card-new{scroll-snap-align:start;background:linear-gradient(180deg,var(--color-elevated)0%,var(--color-bg)100%);transform-style:preserve-3d;will-change:transform;border:1px solid #ffffff1a;border-radius:16px;flex:0 0 460px;transition:border-color .4s,box-shadow .4s;position:relative;overflow:hidden}.product-card-new:hover{border-color:#ffffff2e;box-shadow:0 30px 60px -20px #8b5cf640,inset 0 0 0 1px #a78bfa26}.product-mockup{background:linear-gradient(135deg,var(--color-elevated-2)0%,#120d24 100%);border-bottom:1px solid #ffffff0f;height:280px;position:relative;overflow:hidden}.product-mockup:after{content:"";pointer-events:none;background:linear-gradient(#0000 60%,#0d081d99);position:absolute;inset:0}.product-meta{padding:28px 28px 32px}.product-name{color:#fff;letter-spacing:-.015em;align-items:center;gap:12px;margin-bottom:14px;font-size:19px;font-weight:500;display:flex}.product-glyph{color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.product-year{font-family:var(--font-mono);color:var(--color-muted);letter-spacing:.05em;margin-left:auto;font-size:11px}.product-desc{color:var(--color-tertiary);min-height:64px;margin-bottom:18px;font-size:14.5px;line-height:1.5}.product-category{width:fit-content;color:var(--color-cyan);letter-spacing:.11em;text-transform:uppercase;background:#22d3ee14;border:1px solid #22d3ee2e;border-radius:5px;margin:-4px 0 14px;padding:4px 8px;font-size:10px;display:inline-flex}.product-link{font-family:var(--font-mono);color:var(--color-accent-from);letter-spacing:.06em;text-transform:lowercase;align-items:center;gap:6px;font-size:11.5px;text-decoration:none;transition:gap .4s;display:inline-flex}.product-card-new:hover .product-link{gap:10px}.products-rail-wrap:before,.products-rail-wrap:after{content:"";pointer-events:none;z-index:2;width:80px;position:absolute;top:0;bottom:0}.products-rail-wrap:before{background:linear-gradient(90deg,var(--color-void),transparent);left:0}.products-rail-wrap:after{background:linear-gradient(-90deg,var(--color-void),transparent);right:0}.new-badge{letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-family:var(--font-mono);color:var(--color-cyan);background:#22d3ee26;border:1px solid #22d3ee4d;border-radius:99px;padding:3px 7px;font-weight:600;display:inline-block}@media (max-width:600px){.product-card-new{flex:0 0 85%}}.faux{font-family:var(--font-sans);flex-direction:column;padding:18px;display:flex;position:absolute;inset:0}.faux-bar{align-items:center;gap:6px;margin-bottom:12px;display:flex}.faux-bar i{background:#ffffff1f;border-radius:50%;width:8px;height:8px}.faux-bar i:first-child{background:#ff5f57}.faux-bar i:nth-child(2){background:#febc2e}.faux-bar i:nth-child(3){background:#28c840}.mf-card{background:linear-gradient(#a78bfa12,#5b21b60d);border:1px solid #a78bfa2e;border-radius:10px;flex-direction:column;flex:1;padding:14px 16px;display:flex;position:relative;overflow:hidden}.mf-route{justify-content:space-between;align-items:center;gap:8px;margin:12px 0;display:flex}.mf-airport{text-align:center;color:#fff}.mf-airport .code{font-size:28px;font-weight:500;line-height:1}.mf-airport .city{color:var(--color-tertiary);text-transform:uppercase;letter-spacing:.1em;margin-top:4px;font-size:9px}.mf-arrow{background:linear-gradient(90deg,#0000,#a78bfa,#0000);flex:1;height:1px;position:relative}.mf-arrow:before{content:"✈";color:#a78bfa;font-size:12px;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.mf-cta{color:#fff;text-align:center;background:linear-gradient(135deg,#8b5cf6,#5b21b6);border-radius:6px;margin-top:auto;padding:8px;font-size:10px;font-weight:500}.bw-list{flex-direction:column;flex:1;gap:5px;display:flex}.bw-row{color:var(--color-secondary);background:#ffffff05;border:1px solid #ffffff0a;border-radius:5px;grid-template-columns:14px 1fr auto;align-items:center;gap:8px;padding:7px 9px;font-size:10px;display:grid}.bw-dot{border-radius:50%;width:6px;height:6px}.bw-row.paid .bw-dot{background:#22d3ee;box-shadow:0 0 6px #22d3ee}.bw-row.pend .bw-dot{background:#a78bfa}.bw-row.late .bw-dot{background:#fb7185}.bw-amt{font-family:var(--font-mono);color:#fff;font-size:10px;font-weight:500}.mb-slots{flex:1;grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.mb-slot{color:var(--color-tertiary);background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;padding:8px 6px;font-size:9px}.mb-slot.booked{color:#e0d5ff;background:#a78bfa1f;border-color:#a78bfa40}.mb-time{color:#fff;font-size:11px;font-weight:500;font-family:var(--font-mono);margin-bottom:3px}.mb-name{color:var(--color-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.moonlinks-placeholder{background:radial-gradient(circle at 25% 20%,#22d3ee2e,#0000 34%),radial-gradient(circle at 76% 72%,#a78bfa38,#0000 36%),linear-gradient(135deg,#090719,#17102e);place-items:center;height:100%;display:grid;position:relative}.moonlinks-phone{background:#ffffff12;border:1px solid #ffffff24;border-radius:22px;width:142px;height:222px;padding:12px;box-shadow:0 24px 50px #00000047}.moonlinks-cover{background:linear-gradient(135deg,#22d3eea6,#a78bfab8);border-radius:12px;height:46px}.moonlinks-avatar{color:#fff;width:36px;height:36px;font-family:var(--font-mono);background:#0d081d;border:1px solid #ffffff2e;border-radius:12px;place-items:center;margin:-16px auto 10px;font-size:10px;display:grid}.moonlinks-line{background:#ffffff24;border-radius:99px;width:58%;height:5px;margin:0 auto 8px}.moonlinks-line.wide{width:76%}.moonlinks-button{color:#fff;background:linear-gradient(135deg,#22d3ee4d,#a78bfa47);border:1px solid #ffffff1f;border-radius:8px;place-items:center;height:25px;margin-top:7px;font-size:9px;font-weight:500;display:grid}.moonlinks-button.muted{color:var(--color-tertiary);background:#ffffff0d}.moonlinks-qr{background:#ffffffeb;border-radius:12px;grid-template-columns:repeat(2,1fr);gap:5px;width:58px;height:58px;padding:8px;display:grid;position:absolute;bottom:34px;right:62px;box-shadow:0 18px 36px #00000038}.moonlinks-qr span{background:#0d081d;border-radius:3px}.ca-map{background:linear-gradient(135deg,#ffffff08,#ffffff03);border:1px solid #ffffff0f;border-radius:8px;flex:1;position:relative;overflow:hidden}.ca-route-line{background:linear-gradient(90deg,#a78bfa,#22d3ee);border-radius:2px;height:2px;position:absolute;top:50%;left:15%;right:15%;transform:translateY(-50%)}.ca-dot{border-radius:50%;width:10px;height:10px;position:absolute;top:50%;transform:translateY(-50%)}.ca-dot.start{background:#a78bfa;left:15%;box-shadow:0 0 8px #a78bfa}.ca-dot.end{background:#22d3ee;right:15%;box-shadow:0 0 8px #22d3ee}.hg-tiles{flex:1;grid-template-columns:1fr 1fr;gap:6px;display:grid}.hg-tile{color:var(--color-tertiary);background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;padding:10px;font-size:9px}.hg-score{color:#fbbf24;margin-bottom:4px;font-size:18px;font-weight:700;line-height:1}.hg-title{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:9px;overflow:hidden}.ir-stars{gap:2px;margin-bottom:6px;display:flex}.ir-star{color:#fbbf24;font-size:12px}.ir-review{color:var(--color-tertiary);background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;margin-bottom:5px;padding:8px;font-size:10px;line-height:1.4}.ir-reviewer{color:var(--color-accent-from);font-size:9px;font-family:var(--font-mono)}.proof-section{text-align:center;border-top:1px solid #ffffff0f;padding:120px 0}.proof-quote{color:var(--color-secondary);letter-spacing:-.02em;max-width:900px;margin:0 auto 32px;font-size:clamp(22px,3.5vw,40px);font-weight:400;line-height:1.25}.proof-quote em{color:var(--color-tertiary);font-style:normal;-webkit-text-decoration:line-through #ffffff4d;text-decoration:line-through #ffffff4d}.proof-quote .acc{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#a78bfa,#8b5cf6 45%,#5b21b6);-webkit-background-clip:text;background-clip:text}.proof-attr{color:var(--color-muted);font-size:13px;font-family:var(--font-mono);letter-spacing:.06em}.audiences-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:64px;display:grid}.audience-card{background:linear-gradient(#ffffff14,#ffffff0a);border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:16px;padding:32px;transition:border-color .4s,box-shadow .4s;display:flex}.audience-card:hover{border-color:#ffffff2e;box-shadow:inset 0 0 60px #8b5cf60f}.audience-num{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-from);font-size:11px;font-weight:500;font-family:var(--font-mono);-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#a78bfa,#5b21b6);-webkit-background-clip:text;background-clip:text}.audience-card h3{color:#fff;letter-spacing:-.015em;margin:0;font-size:24px;font-weight:500}.audience-card p{color:var(--color-tertiary);flex:1;margin:0;font-size:15px;line-height:1.6}@media (max-width:768px){.audiences-grid{grid-template-columns:1fr}}@media (max-width:600px){.audience-card{padding:20px}}.logos-section{border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;padding:48px 0}.logos-eyebrow{text-align:center;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);font-size:12px;font-family:var(--font-mono);margin-bottom:32px}.logos-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:32px 48px;display:flex}.logo-mark{opacity:.72;align-items:center;gap:10px;transition:opacity .3s;display:flex}.logo-mark:hover{opacity:1}.logo-initials{width:36px;height:36px;font-size:12px;font-weight:600;font-family:var(--font-mono);color:#fff;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;place-items:center;display:grid}.logo-name{color:var(--color-secondary);white-space:nowrap;font-size:14px;font-weight:500}.testimonials-grid{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:64px;display:grid}.testimonial-card{background:linear-gradient(#ffffff14,#ffffff0a);border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:24px;padding:36px;transition:border-color .4s;display:flex}.testimonial-card:hover{border-color:#ffffff2e}.testimonial-quote{color:var(--color-secondary);flex:1;font-size:17px;line-height:1.65}.testimonial-quote:before{content:"“";color:var(--color-accent-from);margin-bottom:16px;font-family:Georgia,serif;font-size:48px;line-height:.8;display:block}.testimonial-author{align-items:center;gap:14px;display:flex}.testimonial-photo{object-fit:cover;border:2px solid #ffffff1a;border-radius:50%;width:44px;height:44px}.testimonial-name{color:#fff;font-size:15px;font-weight:500}.testimonial-meta{color:var(--color-tertiary);margin-top:2px;font-size:13px}@media (max-width:768px){.testimonials-grid{grid-template-columns:1fr}}.process-layout{grid-template-columns:1fr 1.3fr;align-items:start;gap:96px;display:grid}.process-h2{color:#fff;letter-spacing:-.025em;margin:0 0 20px;font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.15}.process-lead{color:var(--color-tertiary);max-width:400px;margin-bottom:32px;font-size:17px;line-height:1.6}.process-badges{flex-direction:column;gap:10px;display:flex}.process-badge{color:var(--color-secondary);background:#ffffff08;border:1px solid #ffffff0f;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:flex}.process-badge-key{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-from);min-width:90px;font-size:10px}.process-steps{flex-direction:column;gap:0;display:flex}.process-step{border-bottom:1px solid #ffffff0f;grid-template-columns:48px 1fr;gap:24px;padding:32px 0;display:grid;position:relative}.process-step:first-child{padding-top:0}.process-step:last-child{border-bottom:none}.process-step-phase{flex-direction:column;align-items:center;display:flex}.process-phase-num{font-size:12px;font-weight:600;font-family:var(--font-mono);color:var(--color-accent-from);letter-spacing:.05em;-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#a78bfa,#5b21b6);-webkit-background-clip:text;background-clip:text}.process-line{background:linear-gradient(#a78bfa4d,#0000);flex:1;width:1px;margin-top:8px}.process-step:last-child .process-line{display:none}.process-step-body h3{color:#fff;letter-spacing:-.01em;margin:0 0 8px;font-size:20px;font-weight:500}.process-step-body p{color:var(--color-tertiary);margin:0 0 10px;font-size:15px;line-height:1.6}.process-duration{font-size:11px;font-family:var(--font-mono);color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase}@media (max-width:900px){.process-layout{grid-template-columns:1fr;gap:48px}}.code-section{border-top:1px solid #ffffff0f;padding:140px 0}.code-wrap{background:var(--color-elevated);border:1px solid #ffffff0f;border-radius:14px;position:relative;overflow:hidden}.code-toolbar{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding-right:20px;display:flex}.code-meta{color:var(--color-muted);letter-spacing:.06em;white-space:nowrap;flex-shrink:0;font-size:11px}.code-tabs{scrollbar-width:none;gap:0;padding:0 4px;display:flex;overflow-x:auto}.code-tabs::-webkit-scrollbar{display:none}.code-tab{font-size:12px;font-family:var(--font-mono);color:var(--color-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;padding:14px 16px;transition:color .2s,border-color .2s}.code-tab:hover{color:var(--color-secondary)}.code-tab.active{color:var(--color-accent-from);border-bottom-color:var(--color-accent-from)}.code-tab:focus-visible{outline:2px solid var(--color-accent-from);outline-offset:-2px;border-radius:4px}.code-panel-wrap{position:relative}.code-body{font-family:var(--font-mono);color:var(--color-tertiary);white-space:pre;min-height:280px;margin:0;padding:32px;font-size:13px;line-height:1.8;transition:opacity .2s;overflow-x:auto}.code-line{display:flex}.code-ln{-webkit-user-select:none;user-select:none;color:#5c577480;text-align:right;flex-shrink:0;min-width:28px;margin-right:20px}.code-kw{color:#a78bfa}.code-str{color:#22d3ee}.code-cmt{color:var(--color-muted);font-style:italic}.code-prop{color:#b8b5c9}.code-val{color:#34d399}.md-h1{color:var(--color-accent-from);font-weight:600}.md-h2{color:#fff;font-weight:500}.md-li,.md-num{color:var(--color-accent-from)}.md-bold{color:#fff;font-weight:600}.md-bq{color:var(--color-tertiary);border-left:2px solid var(--color-accent-from);padding-left:12px;font-style:italic;display:inline-block}.code-copy{height:30px;color:var(--color-muted);cursor:pointer;opacity:0;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:6px;padding:0 10px;transition:opacity .2s,color .2s,background .2s,border-color .2s;display:flex;position:absolute;top:16px;right:16px}.code-copy-label{font-size:11px;font-family:var(--font-mono);letter-spacing:.04em}.code-panel-wrap:hover .code-copy{opacity:1}.code-copy:hover{color:var(--color-secondary);background:#ffffff14}.code-copy.copied{color:var(--color-cyan);opacity:1;background:#22d3ee0f;border-color:#22d3ee4d}.code-copy:focus-visible{opacity:1;outline:2px solid var(--color-accent-from);outline-offset:2px}@media (max-width:768px){.code-section{padding:80px 0}.code-meta{display:none}}@media (prefers-reduced-motion:reduce){.code-body{transition:none}}.contact-section{border-top:1px solid #ffffff0f;padding:140px 0;position:relative}.contact-layout{grid-template-columns:1fr 1.2fr;align-items:start;gap:96px;display:grid}.contact-info-card{background:linear-gradient(#ffffff0d,#ffffff05);border:1px solid #ffffff14;border-radius:12px;margin-top:32px;padding:32px;position:relative}.contact-info-row{border-bottom:1px solid #ffffff0f;align-items:flex-start;gap:14px;padding:16px 0;display:flex}.contact-info-row:last-child{border-bottom:none;padding-bottom:0}.contact-info-row:first-child{padding-top:0}.contact-info-icon{width:36px;height:36px;color:var(--color-accent-from);background:#8b5cf61f;border:1px solid #8b5cf633;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.contact-info-label{font-size:11px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);margin-bottom:4px}.contact-info-value{color:var(--color-secondary);font-size:15px}.contact-form{background:linear-gradient(#ffffff0d,#ffffff05);border:1px solid #ffffff1a;border-radius:16px;padding:40px;position:relative}.contact-form:before{content:"";filter:blur(40px);pointer-events:none;background:radial-gradient(circle,#8b5cf633,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;top:-60px;right:-60px}.form-step-indicator{font-size:11px;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-from);margin-bottom:28px}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-field label{font-size:12px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.form-field input,.form-field select,.form-field textarea{color:#fff;font-size:15px;font-family:var(--font-sans);background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;outline:none;width:100%;padding:12px 14px;transition:border-color .2s,background .2s}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--color-muted)}.form-field select{appearance:none;cursor:pointer;color:#fff}.form-field select option{background:var(--color-bg);color:#fff}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{background:#ffffff0f;border-color:#8b5cf680}.form-field .field-error{color:var(--color-danger);font-size:12px;font-family:var(--font-mono);display:none}.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea{border-color:var(--color-danger)}.form-field.has-error .field-error{display:block}.form-check.has-error label{color:#ff9b82}.recaptcha-field{margin:12px 0 4px}.recaptcha-field .field-error{color:var(--color-danger);font-size:12px;font-family:var(--font-mono);margin-top:8px;display:none}.recaptcha-field.has-error .field-error{display:block}.project-chips{flex-wrap:wrap;gap:8px;display:flex}.project-chip{color:var(--color-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff08;border:1px solid #ffffff1a;border-radius:6px;padding:8px 14px;font-size:13px;transition:all .2s}.project-chip:hover{color:#fff;border-color:#a78bfa66}.project-chip.selected{color:#fff;background:#8b5cf62e;border-color:#a78bfa66}.char-count{font-size:11px;font-family:var(--font-mono);color:var(--color-muted);text-align:right;margin-top:4px}.form-check{align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.form-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0;margin-top:2px}.form-check label{color:var(--color-tertiary);cursor:pointer;font-size:13px;line-height:1.5}.form-check label a{color:var(--color-accent-from);text-decoration:underline}.form-footer{flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px;display:flex}.form-disclaimer{font-size:11px;font-family:var(--font-mono);color:var(--color-muted);line-height:1.5}.form-disclaimer a{color:var(--color-accent-from)}.form-success{text-align:center;padding:48px 24px}.form-success-icon{width:56px;height:56px;color:var(--color-accent-from);background:#8b5cf626;border:1px solid #a78bfa4d;border-radius:50%;place-items:center;margin:0 auto 24px;display:grid}@media (max-width:900px){.contact-layout{grid-template-columns:1fr;gap:48px}.form-row{grid-template-columns:1fr}.contact-form{padding:28px}}.footer{border-top:1px solid #ffffff0f;padding:80px 0 0}.footer-grid{grid-template-columns:1.8fr 1fr 1fr 1fr 1fr;gap:48px;padding-bottom:64px;display:grid}.footer-brand p{color:var(--color-tertiary);max-width:280px;margin:20px 0 24px;font-size:14px;line-height:1.6}.footer-addr{color:var(--color-muted);font-size:13px;line-height:1.7;font-family:var(--font-mono)}.footer-col h4{letter-spacing:.1em;text-transform:uppercase;color:var(--color-secondary);font-size:12px;font-weight:500;font-family:var(--font-mono);margin:0 0 20px}.footer-col ul{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.footer-col a{color:var(--color-tertiary);align-items:center;gap:6px;font-size:14px;text-decoration:none;transition:color .2s;display:flex}.footer-col a:hover{color:#fff}.footer-live-tag{letter-spacing:.1em;font-size:9px;font-family:var(--font-mono);color:var(--color-cyan);text-transform:uppercase;background:#22d3ee26;border:1px solid #22d3ee4d;border-radius:99px;padding:2px 6px;font-weight:600}.footer-bottom{border-top:1px solid #ffffff0f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:24px 0 40px;display:flex}.footer-copy{color:var(--color-muted);font-size:13px;font-family:var(--font-mono)}.footer-links{gap:20px;display:flex}.footer-links a{color:var(--color-muted);font-size:13px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--color-secondary)}.footer-lang-switch{align-items:center;gap:12px;display:flex}.footer-lang-link{color:var(--color-muted);font-size:13px;font-family:var(--font-mono);letter-spacing:.05em;text-decoration:none;transition:color .2s}.footer-lang-link:hover,.footer-lang-link.active{color:var(--color-secondary)}@media (max-width:980px){.footer-grid{grid-template-columns:1fr 1fr 1fr}.footer-brand{grid-column:span 3}}@media (max-width:600px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}}.legal-page,.error-page{min-height:72vh;padding-top:180px}.legal-title{letter-spacing:-.035em;margin:0 0 48px;font-size:clamp(36px,5vw,64px);font-weight:500;line-height:1.05}.legal-content{max-width:840px;color:var(--color-secondary);font-size:16px;line-height:1.75}.legal-content p{margin-top:1rem;margin-bottom:1rem}.legal-content h2{color:#fff;letter-spacing:-.02em;margin-top:2.5rem;margin-bottom:1rem;font-size:clamp(24px,3vw,34px);font-weight:500;line-height:1.2}.legal-content ul{margin:1rem 0;padding-left:1.25rem;list-style:outside}.legal-content li{margin:.4rem 0}.legal-content a{color:var(--color-accent-from);text-decoration:underline}.error-panel{background:linear-gradient(#ffffff0f,#ffffff08);border:1px solid #ffffff1a;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:36px 48px;max-width:880px;margin:0 auto;padding:56px;display:grid}.error-panel h1{letter-spacing:-.06em;margin:0;font-size:clamp(76px,12vw,152px);font-weight:600;line-height:.9}.error-kicker{color:#fff;letter-spacing:-.03em;margin:0 0 12px;font-size:clamp(26px,4vw,44px);line-height:1.1}.error-message{color:var(--color-secondary);margin:0;font-size:clamp(18px,2vw,24px);line-height:1.4}.error-panel .btn-primary{grid-column:2;width:fit-content}@media (max-width:700px){.legal-page,.error-page{padding-top:140px}.error-panel{grid-template-columns:1fr;padding:32px}.error-panel .btn-primary{grid-column:1}}.section-head{justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:72px;display:flex}.section-head-main{max-width:720px}.section-head h2{letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(36px,4.5vw,56px);font-weight:500;line-height:1.05}.section-lead{color:var(--color-secondary);max-width:560px;font-size:20px;line-height:1.5}@media (max-width:768px){.section-head{flex-direction:column;align-items:stretch;gap:24px;margin-bottom:48px}}@media (max-width:600px){.section-head{gap:16px;margin-bottom:32px}.section-head h2{margin-bottom:12px}.section-lead{font-size:17px}}@media (prefers-reduced-motion:reduce){.aurora-1,.aurora-2,.aurora-3{animation:none}.hero h1[data-reveal] .word{opacity:1;filter:none;animation:none;transform:none}.hero-sub,.hero-actions,.hero-meta-row{opacity:1;animation:none;transform:none}.btn-primary{animation:none}.grad-text-accent{background-position:0%;animation:none}.live-dot,.status-dot{animation:none}.fade-up{opacity:1;transition:none;transform:none}.sweep-line{transition:none}}.swal2-toast{color:#fff;overflow:hidden;background-color:#120c25!important}.swal2-timer-progress-bar{background:#211548}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}

/* ============================================================
   PRODUCT CARD  (.pc-*)
   ============================================================ */

.pc {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.10);
  background: linear-gradient(180deg, var(--color-elevated) 0%, var(--color-bg) 100%);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  outline: none;
  transition:
    border-color 400ms cubic-bezier(0.16,1,0.3,1),
    box-shadow   400ms cubic-bezier(0.16,1,0.3,1),
    transform    400ms cubic-bezier(0.16,1,0.3,1);
  transform-style: preserve-3d;
  will-change: transform;
}

/* Aurora glow behind card */
.pc-aurora {
  pointer-events: none;
  position: absolute;
  inset: -40px;
  background: radial-gradient(ellipse at 50% 0%, rgba(139,92,246,0.35) 0%, transparent 70%);
  opacity: 0;
  filter: blur(40px);
  z-index: -1;
  transition: opacity 400ms cubic-bezier(0.16,1,0.3,1);
}

.pc:hover,
.pc:focus-visible {
  border-color: rgba(255,255,255,0.25);
  box-shadow: inset 0 0 60px rgba(139,92,246,0.15);
}

.pc:hover .pc-aurora,
.pc:focus-visible .pc-aurora {
  opacity: 0.4;
}

/* Hero image 16:10 */
.pc-image {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--color-elevated);
}

.pc-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  display: block;
  transition: transform 400ms cubic-bezier(0.16,1,0.3,1);
}

.pc:hover .pc-image img,
.pc:focus-visible .pc-image img {
  transform: scale(1.03);
}

/* CSS placeholder when no screenshot */
.pc-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--color-elevated) 0%, var(--color-elevated-2) 100%);
  position: relative;
  overflow: hidden;
}

.pc-placeholder-glyph {
  font-size: 56px;
  opacity: 0.18;
  z-index: 1;
  transition: opacity 400ms;
}

.pc:hover .pc-placeholder-glyph { opacity: 0.32; }

.pc-placeholder-lines {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 24px 28px;
  opacity: 0.10;
}

.pc-placeholder-lines span {
  display: block;
  height: 2px;
  border-radius: 2px;
  background: rgba(167,139,250,0.6);
}

.pc-placeholder-lines span:nth-child(1) { width: 75%; }
.pc-placeholder-lines span:nth-child(2) { width: 55%; }
.pc-placeholder-lines span:nth-child(3) { width: 65%; }
.pc-placeholder-lines span:nth-child(4) { width: 40%; }

.pc-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(13,8,29,0.7) 100%);
  pointer-events: none;
}

/* Card body */
.pc-body {
  padding: 20px 24px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 10px;
}

/* Status + category row */
.pc-status-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.pc-live {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-cyan);
}

.pc-live-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-cyan);
  box-shadow: 0 0 6px var(--color-cyan);
  animation: livePulse 2s ease-in-out infinite;
  flex-shrink: 0;
}

@keyframes livePulse {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.45; }
}

.pc-category {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--color-muted);
}

/* Name */
.pc-name {
  font-size: 22px;
  font-weight: 500;
  color: #fff;
  margin: 0;
  letter-spacing: -0.015em;
  line-height: 1.2;
}

/* Tagline */
.pc-tagline {
  font-size: 14px;
  line-height: 1.55;
  color: var(--color-secondary);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Meta strip */
.pc-meta {
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-muted);
  margin: 0;
}

/* Hover reveal block */
.pc-reveal {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transform: translateY(12px);
  transition:
    max-height 400ms cubic-bezier(0.16,1,0.3,1) 100ms,
    opacity    400ms cubic-bezier(0.16,1,0.3,1) 100ms,
    transform  400ms cubic-bezier(0.16,1,0.3,1) 100ms;
}

.pc:hover .pc-reveal,
.pc:focus-visible .pc-reveal {
  max-height: 80px;
  opacity: 1;
  transform: translateY(0);
}

.pc-reveal-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent-from);
  margin-bottom: 6px;
}

.pc-reveal-metrics {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--color-secondary);
}

.pc-reveal-dot {
  color: var(--color-muted);
}

/* Divider */
.pc-divider {
  border: none;
  border-top: 1px solid rgba(255,255,255,0.07);
  margin: 4px 0 0;
}

/* CTA row */
.pc-cta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 4px;
}

/* Visit product button */
.pc-btn-visit {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  border-radius: 8px;
  font-size: 13.5px;
  font-weight: 500;
  color: #fff;
  background: linear-gradient(135deg, #8b5cf6, #5b21b6);
  border: none;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  transition:
    box-shadow  400ms cubic-bezier(0.16,1,0.3,1),
    background  400ms cubic-bezier(0.16,1,0.3,1);
  box-shadow: 0 0 0 1px rgba(139,92,246,0.3), 0 4px 16px rgba(139,92,246,0.2);
  flex-shrink: 0;
}

/* Shimmer sweep */
.pc-btn-shimmer {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,0.35) 50%, transparent 65%);
  transform: translateX(-100%);
  transition: none;
}

.pc:hover .pc-btn-shimmer,
.pc:focus-visible .pc-btn-shimmer {
  animation: pcShimmer 800ms cubic-bezier(0.16,1,0.3,1) forwards;
}

@keyframes pcShimmer {
  from { transform: translateX(-100%); }
  to   { transform: translateX(200%); }
}

.pc:hover .pc-btn-visit,
.pc:focus-visible .pc-btn-visit {
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  box-shadow: 0 0 0 1px rgba(167,139,250,0.4), 0 8px 24px rgba(139,92,246,0.35);
}

.pc-btn-arrow {
  transition: transform 300ms cubic-bezier(0.16,1,0.3,1);
}

.pc:hover .pc-btn-arrow,
.pc:focus-visible .pc-btn-arrow {
  transform: translateX(3px);
}

/* Read the story link */
.pc-btn-story {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  color: var(--color-tertiary);
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 0% 1px;
  transition:
    color            300ms,
    background-size  300ms cubic-bezier(0.16,1,0.3,1);
}

.pc:hover .pc-btn-story,
.pc:focus-visible .pc-btn-story {
  color: #fff;
  background-size: 100% 1px;
}

.pc-story-arrow {
  display: inline-block;
  transition: transform 300ms cubic-bezier(0.16,1,0.3,1);
}

.pc:hover .pc-story-arrow,
.pc:focus-visible .pc-story-arrow {
  transform: translateX(6px);
}

/* ============================================================
   PRODUCTS PAGE  (.ph-*)
   ============================================================ */

.products-page {
  min-height: 100vh;
}

/* Hero */
.ph-hero {
  position: relative;
  padding: 140px 0 80px;
  overflow: hidden;
}

.ph-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.ph-hero-bg .aurora {
  position: absolute;
  border-radius: 50%;
  filter: blur(120px);
  opacity: 0.3;
}

.ph-hero-bg .aurora-1 {
  width: 600px; height: 400px;
  top: -100px; left: -100px;
  background: radial-gradient(ellipse, rgba(139,92,246,0.6) 0%, transparent 70%);
}

.ph-hero-bg .aurora-2 {
  width: 500px; height: 300px;
  top: 50px; right: -80px;
  background: radial-gradient(ellipse, rgba(34,211,238,0.3) 0%, transparent 70%);
}

.ph-hero .container { position: relative; z-index: 1; }

.ph-hero-h1 {
  font-size: clamp(36px, 5.5vw, 72px);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.05;
  margin: 0 0 24px;
}

.ph-hero-sub {
  font-size: clamp(16px, 2vw, 19px);
  color: var(--color-secondary);
  line-height: 1.65;
  max-width: 620px;
  margin: 0 0 52px;
}

/* Proof strip override for 4 cols */
.ph-proof-strip {
  margin-top: 0;
}

/* Product grid */
.ph-grid-section { padding-top: 80px; }

.ph-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
}

/* Why section */
.ph-pull-quote {
  font-size: clamp(18px, 2.5vw, 24px);
  line-height: 1.5;
  font-weight: 400;
  font-style: normal;
  color: var(--color-secondary);
  border-left: 3px solid rgba(139,92,246,0.5);
  padding-left: 28px;
  margin: 32px 0 0;
}

/* CTA section */
.ph-cta-section {
  position: relative;
  padding: 120px 0;
  background: linear-gradient(180deg, transparent 0%, rgba(139,92,246,0.05) 50%, transparent 100%);
  border-top: 1px solid rgba(255,255,255,0.06);
}

.ph-cta-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* ============================================================
   CAROUSEL RAIL overrides for product-card in carousel
   ============================================================ */

.products-rail-item {
  flex-shrink: 0;
  width: 340px;
}

/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .pc,
  .pc-image img,
  .pc-btn-visit,
  .pc-btn-shimmer,
  .pc-btn-arrow,
  .pc-story-arrow,
  .pc-aurora {
    transition: none !important;
    animation: none !important;
  }

  .pc-reveal {
    max-height: none !important;
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .pc-live-dot { animation: none; }
  .grad-text-accent { animation: none; }
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1024px) {
  .ph-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}

@media (max-width: 768px) {
  .ph-hero { padding: 100px 0 60px; }
  .ph-grid { grid-template-columns: 1fr; gap: 20px; }
  .ph-proof-strip { grid-template-columns: repeat(2, 1fr); }
  .proof-strip > div { padding: 18px 16px; }
}

@media (max-width: 480px) {
  .ph-proof-strip { grid-template-columns: 1fr 1fr; }
  .pc-body { padding: 16px 18px 20px; }
  .pc-name { font-size: 19px; }
}

/* ============================================================
   SAAS SERVICE PAGE  (.sp-*)
   ============================================================ */

/* ── Hero ─────────────────────────────────────────────────── */
.sp-hero {
  position: relative;
  padding: 130px 0 80px;
  overflow: hidden;
}
.sp-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.sp-hero-h1 {
  font-size: clamp(32px, 5.5vw, 64px);
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.1;
  margin: 12px 0 24px;
  max-width: 860px;
}
.sp-hero-sub {
  font-size: clamp(16px, 1.8vw, 19px);
  color: var(--color-secondary);
  line-height: 1.65;
  max-width: 640px;
  margin-bottom: 36px;
}
.sp-hero-ctas {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  align-items: center;
}

/* ── Proof strip ──────────────────────────────────────────── */
.sp-proof-section {
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.02);
}
.sp-proof-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.sp-proof-strip > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 28px 32px;
  border-right: 1px solid rgba(255,255,255,.06);
}
.sp-proof-strip > div:last-child { border-right: none; }
.sp-proof-strip strong {
  font-size: clamp(26px, 3.5vw, 42px);
  font-weight: 600;
  letter-spacing: -0.03em;
  color: #fff;
  font-family: var(--font-mono);
}
.sp-proof-strip span {
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--color-tertiary);
}

/* ── Chapter shared ───────────────────────────────────────── */
.sp-chapter { padding: 72px 0; }
.sp-h2 {
  font-size: clamp(26px, 4vw, 48px);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.15;
  margin: 0 0 48px;
  max-width: 700px;
}
.sp-chapter-sub {
  font-size: 17px;
  color: var(--color-secondary);
  line-height: 1.65;
  max-width: 620px;
  margin: -28px 0 48px;
}
.sp-chapter-cta {
  margin-top: 56px;
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}
.sp-cta-note {
  font-size: 14px;
  color: var(--color-tertiary);
  letter-spacing: .03em;
}

/* ── Is this you? audience cards ──────────────────────────── */
.sp-audience-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 48px;
}
.sp-audience-card {
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 16px;
  padding: 32px 28px;
  transition: border-color .25s, transform .25s;
}
.sp-audience-card:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-3px);
}
.sp-audience-label {
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--color-accent);
  font-family: var(--font-mono);
  margin-bottom: 14px;
}
.sp-audience-title {
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 12px;
  line-height: 1.3;
}
.sp-audience-body {
  font-size: 15px;
  color: var(--color-secondary);
  line-height: 1.65;
  margin: 0;
}

/* ── What you get ─────────────────────────────────────────── */
.sp-what-you-get { background: rgba(255,255,255,.015); }
.sp-wyg-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.sp-wyg-item {
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
  padding: 24px 20px;
  transition: border-color .25s, transform .25s;
}
.sp-wyg-item:hover {
  border-color: rgba(139,92,246,.3);
  transform: translateY(-2px);
}
.sp-wyg-icon {
  width: 40px;
  height: 40px;
  background: rgba(139,92,246,.12);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  color: var(--color-accent-from);
}
.sp-wyg-icon svg { width: 18px; height: 18px; stroke-width: 1.5; }
.sp-wyg-title {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 8px;
}
.sp-wyg-desc {
  font-size: 13px;
  color: var(--color-tertiary);
  line-height: 1.6;
  margin: 0;
}

/* ── Receipts (product cards grid) ───────────────────────── */
.sp-receipts-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-bottom: 32px;
}
.sp-receipts-footer {
  text-align: center;
  font-size: 13px;
  color: var(--color-muted);
  letter-spacing: .04em;
  font-family: var(--font-mono);
  text-transform: uppercase;
}

/* ── Process timeline ─────────────────────────────────────── */
.sp-process { background: rgba(255,255,255,.015); }
.sp-timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
}
.sp-timeline::before {
  content: '';
  position: absolute;
  left: 28px;
  top: 16px;
  bottom: 16px;
  width: 1px;
  background: linear-gradient(to bottom, rgba(139,92,246,.5), rgba(139,92,246,.05));
}
.sp-stage {
  display: flex;
  gap: 32px;
  align-items: flex-start;
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.05);
  position: relative;
}
.sp-stage:last-child { border-bottom: none; }
.sp-stage-num {
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.3);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 600;
  color: var(--color-accent-from);
  letter-spacing: .05em;
  position: relative;
  z-index: 1;
}
.sp-stage-body { flex: 1; }
.sp-stage-header {
  display: flex;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.sp-stage-name {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-accent-from);
  font-weight: 600;
}
.sp-stage-duration {
  font-size: 12px;
  color: var(--color-muted);
  font-family: var(--font-mono);
  letter-spacing: .06em;
}
.sp-stage-rows { display: flex; flex-direction: column; gap: 8px; }
.sp-stage-row {
  display: flex;
  gap: 12px;
  font-size: 14px;
  color: var(--color-secondary);
  line-height: 1.55;
}
.sp-stage-row-label {
  flex-shrink: 0;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--color-muted);
  padding-top: 2px;
  min-width: 48px;
}

/* ── Scope / engagement models ────────────────────────────── */
.sp-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 48px;
}
.sp-scope-card {
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 16px;
  padding: 32px 28px;
  transition: border-color .25s, transform .25s;
}
.sp-scope-card:hover {
  border-color: rgba(139,92,246,.3);
  transform: translateY(-3px);
}
.sp-scope-num {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  margin-bottom: 14px;
}
.sp-scope-title {
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 12px;
}
.sp-scope-body {
  font-size: 15px;
  color: var(--color-secondary);
  line-height: 1.65;
  margin: 0;
}
.sp-scope-footer {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: flex-start;
  max-width: 680px;
}
.sp-scope-note {
  font-size: 15px;
  color: var(--color-secondary);
  line-height: 1.65;
  margin: 0;
  font-style: italic;
}

/* ── Accordion (objections + FAQ) ─────────────────────────── */
.sp-accordion {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-top: 1px solid rgba(255,255,255,.07);
}
.sp-accordion-item {
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.sp-accordion-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 0;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  color: #e8e4f3;
  font-family: var(--font-sans);
  line-height: 1.45;
  transition: color .2s;
}
.sp-accordion-trigger:hover { color: #fff; }
.sp-accordion-trigger[aria-expanded="true"] { color: #fff; }
.sp-accordion-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
  color: var(--color-accent-from);
  transition: transform .25s, border-color .25s;
}
.sp-accordion-trigger[aria-expanded="true"] .sp-accordion-icon {
  transform: rotate(45deg);
  border-color: rgba(139,92,246,.5);
}
.sp-accordion-panel {
  overflow: hidden;
  max-height: 0;
  transition: max-height .35s cubic-bezier(.4,0,.2,1);
}
.sp-accordion-panel:not([hidden]) { max-height: 600px; }
.sp-accordion-body {
  padding: 0 0 24px;
  font-size: 15px;
  color: var(--color-secondary);
  line-height: 1.75;
}

/* ── Insights ─────────────────────────────────────────────── */
.sp-insights { background: rgba(255,255,255,.015); }
.sp-insights-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 40px;
}
.sp-insight-card {
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 16px;
  padding: 28px 24px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: border-color .25s, transform .25s;
}
.sp-insight-card:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-3px);
}
.sp-insight-num {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--color-accent-from);
  letter-spacing: .1em;
}
.sp-insight-title {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  margin: 0;
  line-height: 1.35;
}
.sp-insight-excerpt {
  font-size: 13px;
  color: var(--color-tertiary);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.sp-insight-arrow {
  font-size: 18px;
  color: var(--color-accent-from);
  transition: transform .2s;
}
.sp-insight-card:hover .sp-insight-arrow { transform: translateX(4px); }
.sp-insights-footer { text-align: center; }

/* ── Final CTA ────────────────────────────────────────────── */
.sp-final-cta {
  padding: 120px 0;
  position: relative;
  overflow: hidden;
}
.sp-final-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 60% at 50% 50%, rgba(139,92,246,.08), transparent);
  pointer-events: none;
}
.sp-cta-h2 {
  font-size: clamp(28px, 5vw, 52px);
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.15;
  margin: 0 0 20px;
}
.sp-cta-sub {
  font-size: 17px;
  color: var(--color-secondary);
  line-height: 1.65;
  margin-bottom: 40px;
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}
.sp-cta-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}
.sp-cta-email {
  font-size: 15px;
  color: var(--color-tertiary);
  text-decoration: none;
  transition: color .2s;
}
.sp-cta-email:hover { color: var(--color-accent-from); }
.sp-cta-badge {
  font-size: 11px;
  letter-spacing: .1em;
  color: var(--color-muted);
  text-transform: uppercase;
  font-family: var(--font-mono);
  margin: 0;
}

/* btn-primary large variant */
.btn-primary--lg {
  padding: 16px 36px;
  font-size: 16px;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 1024px) {
  .sp-wyg-grid { grid-template-columns: repeat(2, 1fr); }
  .sp-receipts-grid { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  .sp-hero { padding: 100px 0 60px; }
  .sp-proof-strip { grid-template-columns: repeat(2, 1fr); }
  .sp-proof-strip > div { border-right: none; border-bottom: 1px solid rgba(255,255,255,.06); }
  .sp-proof-strip > div:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.06); }
  .sp-proof-strip > div:last-child { border-bottom: none; }
  .sp-audience-grid { grid-template-columns: 1fr; }
  .sp-wyg-grid { grid-template-columns: 1fr 1fr; }
  .sp-scope-grid { grid-template-columns: 1fr; }
  .sp-insights-grid { grid-template-columns: 1fr; }
  .sp-timeline::before { display: none; }
  .sp-stage { gap: 16px; }
  .sp-stage-num { width: 44px; height: 44px; font-size: 11px; }
}

@media (max-width: 480px) {
  .sp-hero-ctas { flex-direction: column; align-items: flex-start; }
  .sp-wyg-grid { grid-template-columns: 1fr; }
  .sp-chapter { padding: 48px 0; }
}

/* ============================================================
   SERVICE TEAM COMPONENT  (.st-*)
   ============================================================ */

.st-section { background: rgba(255,255,255,.015); }

.st-roles-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 0 0 28px;
}

.st-role-card {
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
  padding: 24px 20px;
  transition: border-color .25s, transform .25s;
}
.st-role-card:hover {
  border-color: rgba(139,92,246,.3);
  transform: translateY(-2px);
}

.st-role-abbr {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-accent-from);
  margin-bottom: 10px;
}

.st-role-title {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 8px;
}

.st-role-desc {
  font-size: 13px;
  color: var(--color-tertiary);
  line-height: 1.6;
  margin: 0;
}

/* On-site callout */
.st-onsite {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  background: rgba(139,92,246,.07);
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 16px;
  padding: 28px 32px;
  margin-top: 4px;
}

.st-onsite-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  background: rgba(139,92,246,.15);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
}
.st-onsite-icon svg { width: 20px; height: 20px; stroke-width: 1.5; }

.st-onsite-label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .12em;
  color: var(--color-accent-from);
  margin-bottom: 6px;
}

.st-onsite-title {
  font-size: 17px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 10px;
}

.st-onsite-body {
  font-size: 14px;
  color: var(--color-secondary);
  line-height: 1.7;
  margin: 0;
  max-width: 700px;
}

@media (max-width: 1024px) {
  .st-roles-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  .st-onsite { flex-direction: column; gap: 16px; padding: 24px 20px; }
}

@media (max-width: 480px) {
  .st-roles-grid { grid-template-columns: 1fr 1fr; }
}

/* ============================================================
   PRODUCT DETAIL PAGE  (.pp-*)
   ============================================================ */

/* ── Hero ─────────────────────────────────────────────────── */
.pp-hero {
  position: relative;
  padding: 100px 0 80px;
  overflow: hidden;
}
.pp-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.pp-hero-glow {
  position: absolute;
  top: -200px;
  left: -200px;
  width: 700px;
  height: 700px;
  background: radial-gradient(ellipse at center, rgba(139,92,246,.12), transparent 70%);
  pointer-events: none;
}
.pp-hero-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.pp-hero-content { display: flex; flex-direction: column; gap: 20px; }

/* Breadcrumb */
.pp-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--color-muted);
  font-family: var(--font-mono);
}
.pp-breadcrumb a {
  color: var(--color-tertiary);
  text-decoration: none;
  transition: color .2s;
}
.pp-breadcrumb a:hover { color: var(--color-accent-from); }

/* Badges */
.pp-hero-meta { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.pp-badge {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--color-tertiary);
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 6px;
  padding: 4px 10px;
}
.pp-badge--new {
  color: var(--color-cyan);
  border-color: rgba(34,211,238,.3);
  background: rgba(34,211,238,.06);
}
.pp-live-pill {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .1em;
  color: #4ade80;
  background: rgba(74,222,128,.06);
  border: 1px solid rgba(74,222,128,.2);
  border-radius: 6px;
  padding: 4px 10px;
}
.pp-live-dot {
  width: 6px;
  height: 6px;
  background: #4ade80;
  border-radius: 50%;
  animation: pulseDot 2s infinite;
}

/* Glyph + name */
.pp-hero-h1 {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: clamp(36px, 5.5vw, 64px);
  font-weight: 600;
  color: #fff;
  letter-spacing: -0.03em;
  line-height: 1.1;
  margin: 0;
}
.pp-glyph {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
}

.pp-hero-tagline {
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.015em;
  margin: 0;
}
.pp-hero-sub {
  font-size: 15px;
  color: var(--color-secondary);
  line-height: 1.7;
  margin: 0;
  max-width: 520px;
}
.pp-hero-meta-str {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .1em;
  color: var(--color-muted);
  text-transform: uppercase;
  margin: 0;
}
.pp-hero-ctas {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 4px;
}

/* Hero visual */
.pp-hero-visual { position: relative; }
.pp-hero-img-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 32px 80px rgba(0,0,0,.5);
}
.pp-hero-img-wrap img {
  width: 100%;
  display: block;
  border-radius: 20px;
}
.pp-hero-img-glow {
  position: absolute;
  inset: -1px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(139,92,246,.12), transparent 50%);
  pointer-events: none;
}

/* Placeholder for products without screenshot */
.pp-hero-placeholder {
  border-radius: 20px;
  aspect-ratio: 16/10;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  border: 1px solid rgba(255,255,255,.08);
  position: relative;
  overflow: hidden;
}
.pp-hero-placeholder-glyph {
  font-size: 56px;
  position: relative;
  z-index: 1;
}
.pp-hero-placeholder-lines {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 60%;
  position: relative;
  z-index: 1;
}
.pp-hero-placeholder-lines span {
  display: block;
  height: 2px;
  background: rgba(255,255,255,.12);
  border-radius: 2px;
}
.pp-hero-placeholder-lines span:nth-child(1) { width: 100%; }
.pp-hero-placeholder-lines span:nth-child(2) { width: 75%; }
.pp-hero-placeholder-lines span:nth-child(3) { width: 88%; }
.pp-hero-placeholder-lines span:nth-child(4) { width: 60%; }
.pp-hero-placeholder-lines span:nth-child(5) { width: 80%; }

/* ── Stats ────────────────────────────────────────────────── */
.pp-stats-section {
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.02);
}
.pp-stats-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.pp-stats-strip > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 28px 40px;
  border-right: 1px solid rgba(255,255,255,.06);
}
.pp-stats-strip > div:last-child { border-right: none; }
.pp-stats-strip strong {
  font-size: clamp(24px, 3vw, 40px);
  font-weight: 600;
  letter-spacing: -0.03em;
  color: #fff;
  font-family: var(--font-mono);
}
.pp-stats-strip span {
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--color-tertiary);
}

/* ── Story ────────────────────────────────────────────────── */
.pp-story { padding: 100px 0; }
.pp-story-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: start;
}
.pp-problem-label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-accent-from);
  margin: 20px 0 16px;
}
.pp-problem-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.pp-problem-list li {
  font-size: 14px;
  color: var(--color-secondary);
  line-height: 1.65;
  padding-left: 20px;
  position: relative;
}
.pp-problem-list li::before {
  content: '—';
  position: absolute;
  left: 0;
  color: var(--color-muted);
  font-family: var(--font-mono);
}
.pp-story-h2 {
  font-size: clamp(22px, 3.5vw, 38px);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin: 0 0 24px;
}
.pp-solution-label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-accent-from);
  margin-bottom: 12px;
}
.pp-solution-body {
  font-size: 15px;
  color: var(--color-secondary);
  line-height: 1.75;
  margin: 0;
}

/* ── Features ─────────────────────────────────────────────── */
.pp-features { background: rgba(255,255,255,.015); }
.pp-section-h2 {
  font-size: clamp(22px, 3.5vw, 40px);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin: 0 0 48px;
}
.pp-features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.pp-feature-card {
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
  padding: 24px 20px;
  transition: border-color .25s, transform .25s;
}
.pp-feature-card:hover {
  border-color: rgba(139,92,246,.3);
  transform: translateY(-2px);
}
.pp-feat-icon {
  width: 40px;
  height: 40px;
  background: rgba(139,92,246,.12);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  margin-bottom: 14px;
}
.pp-feat-icon svg { width: 18px; height: 18px; stroke-width: 1.5; }
.pp-feat-title {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 8px;
}
.pp-feat-desc {
  font-size: 13px;
  color: var(--color-tertiary);
  line-height: 1.6;
  margin: 0;
}

/* ── Tech points ──────────────────────────────────────────── */
.pp-tech { padding: 100px 0; }
.pp-tech-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-top: 1px solid rgba(255,255,255,.07);
  margin-top: 16px;
}
.pp-tech-item {
  display: flex;
  gap: 32px;
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
  align-items: flex-start;
}
.pp-tech-num {
  flex-shrink: 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  padding-top: 3px;
  min-width: 28px;
}
.pp-tech-title {
  font-size: 15px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 8px;
}
.pp-tech-desc {
  font-size: 14px;
  color: var(--color-secondary);
  line-height: 1.7;
  margin: 0;
}

/* ── Bottom CTA ───────────────────────────────────────────── */
.pp-cta {
  padding: 80px 0 100px;
  background: rgba(255,255,255,.015);
}
.pp-cta-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 48px;
  align-items: center;
  background: var(--color-elevated);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 20px;
  padding: 40px 48px;
}
.pp-cta-visit {
  display: flex;
  align-items: center;
  gap: 20px;
}
.pp-cta-glyph {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.pp-cta-h2 {
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 4px;
}
.pp-cta-sub {
  font-size: 13px;
  color: var(--color-tertiary);
  margin: 0;
  font-family: var(--font-mono);
  letter-spacing: .03em;
}
.pp-cta-divider {
  width: 1px;
  height: 80px;
  background: rgba(255,255,255,.08);
  align-self: center;
}
.pp-cta-service {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.pp-cta-service-label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .12em;
  color: var(--color-accent-from);
}
.pp-cta-service-body {
  font-size: 14px;
  color: var(--color-secondary);
  line-height: 1.6;
  margin: 0;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 1024px) {
  .pp-hero-inner { grid-template-columns: 1fr; gap: 40px; }
  .pp-hero-visual { order: -1; max-width: 560px; }
  .pp-features-grid { grid-template-columns: repeat(2, 1fr); }
  .pp-cta-inner { grid-template-columns: 1fr; gap: 28px; }
  .pp-cta-divider { width: 100%; height: 1px; }
}

@media (max-width: 768px) {
  .pp-hero { padding: 90px 0 60px; }
  .pp-stats-strip { grid-template-columns: 1fr 1fr 1fr; }
  .pp-stats-strip > div { padding: 20px 16px; border-right: none; border-bottom: 1px solid rgba(255,255,255,.06); }
  .pp-story-inner { grid-template-columns: 1fr; gap: 40px; }
  .pp-cta-visit { flex-direction: column; align-items: flex-start; gap: 12px; }
}

@media (max-width: 480px) {
  .pp-hero-h1 { font-size: 28px; gap: 12px; }
  .pp-glyph { width: 44px; height: 44px; font-size: 18px; }
  .pp-features-grid { grid-template-columns: 1fr; }
  .pp-stats-strip { grid-template-columns: 1fr; }
  .pp-cta-inner { padding: 28px 20px; }
}

/* ── Marketplace single-card receipts ─────────────────────── */
.sp-receipts-single {
  grid-template-columns: 1fr;
  max-width: 480px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   HOW WE WORK PAGE  (.hw-*)
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Hero ─────────────────────────────────────────────────────────────────── */
.hw-page { background: var(--color-bg); }

.hw-hero {
  position: relative;
  padding: 8rem 0 5rem;
  overflow: hidden;
  text-align: center;
}

.hw-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.hw-hero-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(139,92,246,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(139,92,246,.06) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, black, transparent);
}

.hw-hero-h1 {
  font-size: clamp(2.6rem, 6vw, 5rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.1;
  margin: 1rem 0 1.5rem;
}

.hw-hero-sub {
  max-width: 680px;
  margin: 0 auto 3rem;
  color: var(--color-secondary);
  font-size: 1.05rem;
  line-height: 1.7;
}

.hw-hero-stats {
  display: flex;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 16px;
  overflow: hidden;
  max-width: 760px;
  margin: 0 auto;
  background: var(--color-elevated);
}

.hw-hero-stat {
  flex: 1 1 160px;
  padding: 1.75rem 1.5rem;
  text-align: center;
  border-right: 1px solid rgba(139,92,246,.15);
  display: flex;
  flex-direction: column;
  gap: .4rem;
}

.hw-hero-stat:last-child { border-right: none; }

.hw-hero-stat strong {
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -.02em;
  display: block;
}

.hw-hero-stat span {
  font-size: .78rem;
  color: var(--color-tertiary);
  text-transform: uppercase;
  letter-spacing: .06em;
}

/* ── Shared section header ────────────────────────────────────────────────── */
.hw-section-h2 {
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -.03em;
  margin: .5rem 0 1rem;
}

.hw-section-sub {
  max-width: 640px;
  color: var(--color-secondary);
  font-size: 1rem;
  line-height: 1.7;
  margin-bottom: 3.5rem;
}

/* ── Phases ───────────────────────────────────────────────────────────────── */
.hw-phases { background: var(--color-bg); }

.hw-phases-list {
  display: grid;
  gap: 1.5rem;
}

.hw-phase-card {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.15);
  border-radius: 20px;
  padding: 2.5rem;
  transition: border-color .3s, transform .3s;
}

.hw-phase-card:hover {
  border-color: rgba(139,92,246,.4);
  transform: translateY(-2px);
}

.hw-phase-header {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

.hw-phase-num {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--color-accent);
  opacity: .35;
  line-height: 1;
  min-width: 3rem;
}

.hw-phase-meta {
  flex: 1;
}

.hw-phase-name {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  text-transform: uppercase;
  margin-bottom: .25rem;
}

.hw-phase-duration {
  font-size: .8rem;
  color: var(--color-tertiary);
  letter-spacing: .05em;
}

.hw-phase-icon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 10px;
  background: rgba(139,92,246,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  flex-shrink: 0;
}

.hw-phase-icon svg { width: 1.2rem; height: 1.2rem; }

.hw-phase-headline {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .75rem;
}

.hw-phase-body {
  color: var(--color-secondary);
  font-size: .95rem;
  line-height: 1.7;
  margin-bottom: 1.75rem;
}

.hw-phase-gets {
  background: rgba(139,92,246,.07);
  border: 1px solid rgba(139,92,246,.12);
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin-bottom: 1.25rem;
}

.hw-phase-gets-label {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  margin-bottom: .75rem;
}

.hw-phase-gets ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: .5rem;
}

.hw-phase-gets li {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  color: var(--color-secondary);
  font-size: .9rem;
  line-height: 1.5;
}

.hw-phase-gets li svg {
  width: .9rem;
  height: .9rem;
  color: #34d399;
  flex-shrink: 0;
  margin-top: .2rem;
}

.hw-phase-note {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  background: rgba(251,191,36,.07);
  border: 1px solid rgba(251,191,36,.2);
  border-radius: 10px;
  padding: .9rem 1.1rem;
  font-size: .85rem;
  color: #fbbf24;
  line-height: 1.5;
}

.hw-phase-note svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: .15rem;
}

/* ── Communication ────────────────────────────────────────────────────────── */
.hw-comms {
  background: var(--color-elevated);
}

.hw-comms-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.hw-comm-card {
  background: var(--color-bg);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 16px;
  padding: 2rem;
  transition: border-color .3s, transform .3s;
}

.hw-comm-card:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-3px);
}

.hw-comm-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 10px;
  background: rgba(139,92,246,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  margin-bottom: 1rem;
}

.hw-comm-icon svg { width: 1.15rem; height: 1.15rem; }

.hw-comm-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .5rem;
}

.hw-comm-body {
  font-size: .9rem;
  color: var(--color-secondary);
  line-height: 1.65;
}

/* ── Technical Principles ─────────────────────────────────────────────────── */
.hw-principles { background: var(--color-bg); }

.hw-principles-list {
  display: grid;
  gap: 1px;
  border: 1px solid rgba(139,92,246,.15);
  border-radius: 20px;
  overflow: hidden;
  background: rgba(139,92,246,.07);
}

.hw-principle {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 0;
  background: var(--color-elevated);
  transition: background .2s;
}

.hw-principle:hover { background: rgba(139,92,246,.06); }

.hw-principle-left {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 2rem;
  border-right: 1px solid rgba(139,92,246,.12);
}

.hw-principle-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 10px;
  background: rgba(139,92,246,.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  flex-shrink: 0;
  margin-top: .1rem;
}

.hw-principle-icon svg { width: 1.15rem; height: 1.15rem; }

.hw-principle-key {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  margin-bottom: .25rem;
  text-transform: uppercase;
}

.hw-principle-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-fg);
}

.hw-principle-right {
  padding: 2rem 2.5rem;
}

.hw-principle-headline {
  font-size: .85rem;
  font-weight: 700;
  color: var(--color-fg);
  letter-spacing: .03em;
  margin-bottom: .6rem;
}

.hw-principle-body {
  color: var(--color-secondary);
  font-size: .9rem;
  line-height: 1.7;
  margin-bottom: 1rem;
}

.hw-principle-bullets {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: .4rem;
}

.hw-principle-bullets li {
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  font-size: .85rem;
  color: var(--color-tertiary);
  line-height: 1.5;
}

.hw-principle-bullets li svg {
  width: .85rem;
  height: .85rem;
  color: var(--color-accent);
  flex-shrink: 0;
  margin-top: .2rem;
}

/* ── Fit / Not Fit ────────────────────────────────────────────────────────── */
.hw-fit { background: var(--color-elevated); }

.hw-fit-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}

.hw-fit-col {
  border-radius: 20px;
  padding: 2.5rem;
  border: 1px solid;
}

.hw-fit-yes {
  background: rgba(52,211,153,.05);
  border-color: rgba(52,211,153,.2);
}

.hw-fit-no {
  background: rgba(248,113,113,.05);
  border-color: rgba(248,113,113,.18);
}

.hw-fit-col-label {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
}

.hw-fit-yes .hw-fit-col-label { color: #34d399; }
.hw-fit-no  .hw-fit-col-label { color: #f87171; }

.hw-fit-yes .hw-fit-col-label svg,
.hw-fit-no  .hw-fit-col-label svg { width: 1rem; height: 1rem; }

.hw-fit-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: .75rem;
}

.hw-fit-col li {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  font-size: .92rem;
  color: var(--color-secondary);
  line-height: 1.5;
}

.hw-fit-yes li svg { width: .9rem; height: .9rem; color: #34d399; flex-shrink: 0; margin-top: .2rem; }
.hw-fit-no  li svg { width: .9rem; height: .9rem; color: #f87171; flex-shrink: 0; margin-top: .2rem; }

/* ── Process section "See more" button ────────────────────────────────────── */
.process-see-more {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(139,92,246,.15);
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
  .hw-comms-grid { grid-template-columns: 1fr 1fr; }
  .hw-principle { grid-template-columns: 1fr; }
  .hw-principle-left { border-right: none; border-bottom: 1px solid rgba(139,92,246,.12); }
  .hw-fit-grid { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .hw-hero { padding: 6rem 0 3rem; }
  .hw-hero-stats { border-radius: 12px; }
  .hw-hero-stat { flex: 1 1 140px; padding: 1.25rem 1rem; }
  .hw-comms-grid { grid-template-columns: 1fr; }
  .hw-phase-card { padding: 1.5rem; }
  .hw-phase-header { flex-wrap: wrap; }
  .hw-principle-left { padding: 1.25rem; }
  .hw-principle-right { padding: 1.25rem; }
  .hw-fit-col { padding: 1.5rem; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   ABOUT PAGE  (.ab-*)
   ═══════════════════════════════════════════════════════════════════════════ */

.ab-page { background: var(--color-bg); }

/* ── Hero ─────────────────────────────────────────────────────────────────── */
.ab-hero {
  position: relative;
  padding: 8rem 0 5rem;
  overflow: hidden;
  text-align: center;
}

.ab-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.ab-hero-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(139,92,246,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(139,92,246,.05) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, black, transparent);
}

.ab-hero-h1 {
  font-size: clamp(2.6rem, 6vw, 5rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.1;
  margin: 1rem 0 1.5rem;
}

.ab-hero-sub {
  max-width: 600px;
  margin: 0 auto;
  color: var(--color-secondary);
  font-size: 1.05rem;
  line-height: 1.7;
}

/* ── Shared section styles ────────────────────────────────────────────────── */
.ab-section-h2 {
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -.03em;
  margin: .5rem 0 1rem;
}

.ab-section-sub {
  color: var(--color-secondary);
  font-size: 1rem;
  line-height: 1.7;
  margin-bottom: 2rem;
}

.ab-body-text {
  color: var(--color-secondary);
  font-size: .97rem;
  line-height: 1.75;
  margin-bottom: 1.25rem;
}

/* ── Origin story ─────────────────────────────────────────────────────────── */
.ab-origin { background: var(--color-elevated); }

.ab-origin-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: start;
}

.ab-origin-left .ab-section-sub {
  max-width: 380px;
}

/* ── Founders ─────────────────────────────────────────────────────────────── */
.ab-founders { background: var(--color-bg); }

.ab-founder {
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: 4rem;
  align-items: start;
  padding: 3.5rem 0;
  border-bottom: 1px solid rgba(139,92,246,.1);
}

.ab-founder:last-of-type { border-bottom: none; }

.ab-founder--flip {
  grid-template-columns: 1fr 340px;
}

.ab-founder--flip .ab-founder-photo-wrap {
  order: 2;
}

.ab-founder--flip .ab-founder-story {
  order: 1;
}

/* Photo */
.ab-founder-photo-wrap {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.ab-founder-photo {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 3/4;
  background: var(--color-elevated);
}

.ab-founder-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  display: block;
}

.ab-founder-photo-glow {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(13,8,29,.6) 0%, transparent 50%);
  pointer-events: none;
}

.ab-founder-placeholder {
  aspect-ratio: 3/4;
  border-radius: 20px;
  background: var(--color-elevated);
  border: 2px dashed rgba(139,92,246,.25);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  color: var(--color-muted);
}

.ab-founder-placeholder-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: rgba(139,92,246,.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent);
}

.ab-founder-placeholder-icon svg { width: 1.75rem; height: 1.75rem; }

.ab-founder-placeholder-label {
  font-size: .8rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.ab-founder-id {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.15);
  border-radius: 12px;
  padding: 1.1rem 1.25rem;
}

.ab-founder-name {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .2rem;
}

.ab-founder-role {
  font-size: .8rem;
  color: var(--color-accent-from);
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* Story */
.ab-founder-tagline {
  font-size: 1.15rem;
  font-weight: 600;
  font-style: italic;
  line-height: 1.5;
  margin-bottom: 1.25rem;
}

/* Career timeline */
.ab-timeline {
  margin-top: 2rem;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.ab-timeline-step {
  display: grid;
  grid-template-columns: 80px 16px 1fr;
  gap: 0 1rem;
  align-items: start;
  padding-bottom: 1.5rem;
  position: relative;
}

.ab-timeline-year {
  font-size: .72rem;
  color: var(--color-accent-from);
  font-weight: 700;
  letter-spacing: .04em;
  padding-top: .1rem;
  text-align: right;
}

.ab-timeline-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--color-accent);
  margin-top: .25rem;
  position: relative;
  flex-shrink: 0;
}

.ab-timeline-dot::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 10px;
  width: 1px;
  height: calc(100% + 1.5rem - 10px);
  background: rgba(139,92,246,.2);
  transform: translateX(-50%);
}

.ab-timeline-step:last-child .ab-timeline-dot::after { display: none; }

.ab-timeline-title {
  font-size: .9rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .3rem;
}

.ab-timeline-desc {
  font-size: .83rem;
  color: var(--color-tertiary);
  line-height: 1.6;
  margin: 0;
}

/* ── Numbers ──────────────────────────────────────────────────────────────── */
.ab-numbers { background: var(--color-elevated); }

.ab-numbers-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.ab-number-card {
  background: var(--color-bg);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 16px;
  padding: 2rem 1.75rem;
  text-align: center;
  transition: border-color .3s, transform .3s;
}

.ab-number-card:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-3px);
}

.ab-number-value {
  display: block;
  font-size: 2.75rem;
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1;
  margin-bottom: .5rem;
}

.ab-number-label {
  font-size: .92rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .35rem;
}

.ab-number-sub {
  font-size: .78rem;
  color: var(--color-tertiary);
  line-height: 1.45;
}

/* ── Values ───────────────────────────────────────────────────────────────── */
.ab-values { background: var(--color-bg); }

.ab-values-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}

.ab-value-card {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 18px;
  padding: 2.25rem;
  transition: border-color .3s, transform .3s;
}

.ab-value-card:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-2px);
}

.ab-value-icon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 10px;
  background: rgba(139,92,246,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  margin-bottom: 1.1rem;
}

.ab-value-icon svg { width: 1.2rem; height: 1.2rem; }

.ab-value-title {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .6rem;
}

.ab-value-body {
  font-size: .9rem;
  color: var(--color-secondary);
  line-height: 1.65;
}

/* ── Office ───────────────────────────────────────────────────────────────── */
.ab-office { background: var(--color-elevated); }

.ab-office-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}

.ab-office-facts {
  margin-top: 2rem;
  display: grid;
  gap: 1rem;
}

.ab-office-fact {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: .9rem 1.1rem;
  background: var(--color-bg);
  border: 1px solid rgba(139,92,246,.12);
  border-radius: 10px;
}

.ab-office-fact-icon {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 8px;
  background: rgba(139,92,246,.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  flex-shrink: 0;
}

.ab-office-fact-icon svg { width: 1rem; height: 1rem; }

.ab-office-fact-label {
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--color-muted);
  margin-bottom: .15rem;
}

.ab-office-fact-value {
  font-size: .9rem;
  color: var(--color-fg);
  font-weight: 600;
}

/* Map card */
.ab-office-map {
  position: relative;
  height: 420px;
  border-radius: 20px;
  overflow: hidden;
  background: var(--color-bg);
  border: 1px solid rgba(139,92,246,.15);
}

.ab-map-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(139,92,246,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(139,92,246,.08) 1px, transparent 1px);
  background-size: 32px 32px;
}

.ab-map-card {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  z-index: 1;
}

.ab-map-pin-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ab-map-pin {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  background: var(--color-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  position: relative;
  z-index: 2;
  box-shadow: 0 0 0 6px rgba(139,92,246,.25);
}

.ab-map-pin svg { width: 1.5rem; height: 1.5rem; }

.ab-map-pulse {
  position: absolute;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 1.5px solid rgba(139,92,246,.4);
  animation: mapPulse 2s ease-out infinite;
}

@keyframes mapPulse {
  0%   { transform: scale(0.6); opacity: 1; }
  100% { transform: scale(1.4); opacity: 0; }
}

.ab-map-label {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 12px;
  padding: 1rem 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: .2rem;
}

.ab-map-label strong {
  font-size: .95rem;
  color: var(--color-fg);
  font-weight: 700;
}

.ab-map-label span {
  font-size: .8rem;
  color: var(--color-tertiary);
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .ab-founder,
  .ab-founder--flip {
    grid-template-columns: 280px 1fr;
    gap: 2.5rem;
  }
  .ab-founder--flip .ab-founder-photo-wrap { order: unset; }
  .ab-founder--flip .ab-founder-story { order: unset; }
  .ab-numbers-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 900px) {
  .ab-origin-inner { grid-template-columns: 1fr; gap: 2rem; }
  .ab-founder, .ab-founder--flip {
    grid-template-columns: 1fr;
  }
  .ab-founder-photo { max-width: 280px; margin: 0 auto; }
  .ab-office-inner { grid-template-columns: 1fr; }
  .ab-office-map { height: 300px; }
  .ab-values-grid { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .ab-hero { padding: 6rem 0 3rem; }
  .ab-numbers-grid { grid-template-columns: 1fr 1fr; }
  .ab-number-value { font-size: 2rem; }
  .ab-timeline { margin-top: 1.5rem; }
  .ab-timeline-step { grid-template-columns: 60px 12px 1fr; }
}

/* ── Founder LinkedIn link ────────────────────────────────────────────────── */
.ab-founder-linkedin {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  margin-top: .65rem;
  font-size: .78rem;
  font-weight: 600;
  color: #0a66c2;
  text-decoration: none;
  letter-spacing: .02em;
  transition: opacity .2s;
}

.ab-founder-linkedin:hover { opacity: .75; }
.ab-founder-linkedin svg { width: .85rem; height: .85rem; }

/* ═══════════════════════════════════════════════════════════════════════════
   CASE STUDIES  (.cs-*)
   ═══════════════════════════════════════════════════════════════════════════ */

.cs-page, .cs-detail-page { background: var(--color-bg); }

/* ── Hero (index) ─────────────────────────────────────────────────────────── */
.cs-hero {
  position: relative;
  padding: 8rem 0 4rem;
  overflow: hidden;
  text-align: center;
}

.cs-hero-bg { position: absolute; inset: 0; pointer-events: none; }

.cs-hero-h1 {
  font-size: clamp(2.6rem, 6vw, 5rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.1;
  margin: 1rem 0 1.5rem;
}

.cs-hero-sub {
  max-width: 620px;
  margin: 0 auto 3rem;
  color: var(--color-secondary);
  font-size: 1.05rem;
  line-height: 1.7;
}

.cs-proof-strip {
  display: flex;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
  max-width: 760px;
  margin: 0 auto;
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-elevated);
}

.cs-proof-item {
  flex: 1 1 160px;
  padding: 1.5rem 1.25rem;
  border-right: 1px solid rgba(139,92,246,.12);
  display: flex;
  flex-direction: column;
  gap: .35rem;
  text-align: center;
}

.cs-proof-item:last-child { border-right: none; }

.cs-proof-item strong {
  font-size: 1.9rem;
  font-weight: 800;
  letter-spacing: -.02em;
  display: block;
}

.cs-proof-item span {
  font-size: .75rem;
  color: var(--color-tertiary);
  text-transform: uppercase;
  letter-spacing: .06em;
}

/* ── Featured card ────────────────────────────────────────────────────────── */
.cs-featured { background: var(--color-elevated); }

.cs-featured-card {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 4rem;
  align-items: center;
  background: var(--color-bg);
  border: 1px solid rgba(139,92,246,.18);
  border-radius: 24px;
  padding: 3.5rem;
  overflow: hidden;
}

.cs-feat-tag {
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  text-transform: uppercase;
  margin-bottom: .75rem;
}

.cs-feat-h2 {
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.2;
  margin-bottom: 1rem;
}

.cs-feat-body {
  color: var(--color-secondary);
  font-size: .97rem;
  line-height: 1.7;
  margin-bottom: 2rem;
}

.cs-feat-stats {
  display: flex;
  gap: 2rem;
  margin-bottom: 2rem;
}

.cs-feat-stat { display: flex; flex-direction: column; gap: .2rem; }

.cs-feat-stat strong {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--color-accent-from);
  letter-spacing: -.02em;
}

.cs-feat-stat span {
  font-size: .72rem;
  color: var(--color-tertiary);
  text-transform: uppercase;
  letter-spacing: .06em;
}

.cs-featured-img-wrap {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 16/10;
}

.cs-featured-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cs-featured-img-glow {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(139,92,246,.15), transparent);
  pointer-events: none;
}

/* ── Section headings ─────────────────────────────────────────────────────── */
.cs-section-h2 {
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -.03em;
  margin: .5rem 0 2.5rem;
}

/* ── Grid ─────────────────────────────────────────────────────────────────── */
.cs-grid-section { background: var(--color-bg); }

.cs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}

.cs-card {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 18px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  transition: border-color .3s, transform .3s;
}

.cs-card:hover {
  border-color: rgba(139,92,246,.4);
  transform: translateY(-4px);
}

.cs-card-img {
  position: relative;
  aspect-ratio: 16/9;
  background: var(--color-bg);
  overflow: hidden;
}

.cs-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s;
}

.cs-card:hover .cs-card-img img { transform: scale(1.04); }

.cs-card-img-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-muted);
  background: rgba(139,92,246,.05);
}

.cs-card-img-placeholder svg { width: 2rem; height: 2rem; }

.cs-card-tag {
  position: absolute;
  top: .75rem;
  left: .75rem;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .08em;
  background: rgba(13,8,29,.8);
  color: var(--color-accent-from);
  padding: .25rem .6rem;
  border-radius: 6px;
  text-transform: uppercase;
  backdrop-filter: blur(4px);
}

.cs-card-badge {
  position: absolute;
  top: .75rem;
  right: .75rem;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .06em;
  background: var(--color-accent);
  color: #fff;
  padding: .2rem .55rem;
  border-radius: 6px;
}

.cs-card-body {
  padding: 1.25rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}

.cs-card-name {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-fg);
}

.cs-card-headline {
  font-size: .83rem;
  color: var(--color-secondary);
  line-height: 1.5;
  flex: 1;
}

.cs-card-metrics {
  display: flex;
  gap: 1.5rem;
  margin-top: .75rem;
  padding-top: .75rem;
  border-top: 1px solid rgba(139,92,246,.1);
}

.cs-card-metric { display: flex; flex-direction: column; gap: .1rem; }

.cs-card-metric strong {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--color-accent-from);
}

.cs-card-metric span {
  font-size: .68rem;
  color: var(--color-muted);
  text-transform: uppercase;
  letter-spacing: .05em;
}

.cs-card-arrow {
  margin-top: .75rem;
  color: var(--color-accent);
  display: flex;
}

.cs-card-arrow svg { width: 1rem; height: 1rem; }

/* ── Detail hero ──────────────────────────────────────────────────────────── */
.cs-detail-hero {
  position: relative;
  padding: 6rem 0 0;
  overflow: hidden;
}

.cs-breadcrumb {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .82rem;
  color: var(--color-tertiary);
  margin-bottom: 2rem;
}

.cs-breadcrumb a {
  color: var(--color-accent-from);
  text-decoration: none;
}

.cs-breadcrumb a:hover { text-decoration: underline; }

.cs-detail-tag {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--color-accent-from);
  text-transform: uppercase;
  margin-bottom: .75rem;
}

.cs-detail-hero-inner {
  display: grid;
  grid-template-columns: 1fr 480px;
  gap: 4rem;
  align-items: center;
  padding-bottom: 4rem;
}

.cs-detail-h1 {
  font-size: clamp(2.4rem, 5vw, 4rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.1;
  margin: .5rem 0 1.25rem;
}

.cs-detail-sub {
  color: var(--color-secondary);
  font-size: 1rem;
  line-height: 1.7;
}

.cs-detail-hero-img {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  aspect-ratio: 16/10;
}

.cs-detail-hero-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cs-detail-hero-glow {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(139,92,246,.2), transparent 60%);
  pointer-events: none;
}

/* ── Overview bar ─────────────────────────────────────────────────────────── */
.cs-overview-bar {
  background: var(--color-elevated);
  border-top: 1px solid rgba(139,92,246,.12);
  border-bottom: 1px solid rgba(139,92,246,.12);
}

.cs-overview-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  padding: 1.5rem 0;
}

.cs-overview-fact {
  flex: 1 1 160px;
  padding: .75rem 1.5rem;
  border-right: 1px solid rgba(139,92,246,.12);
  display: flex;
  flex-direction: column;
  gap: .25rem;
}

.cs-overview-fact:last-child { border-right: none; }

.cs-overview-label {
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--color-muted);
}

.cs-overview-value {
  font-size: .92rem;
  font-weight: 600;
  color: var(--color-fg);
}

/* ── Results grid ─────────────────────────────────────────────────────────── */
.cs-results { background: var(--color-bg); }

.cs-results-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.cs-result-card {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 16px;
  padding: 2rem;
  text-align: center;
  transition: border-color .3s, transform .3s;
}

.cs-result-card:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-2px);
}

.cs-result-value {
  display: block;
  font-size: 2.5rem;
  font-weight: 800;
  letter-spacing: -.03em;
  margin-bottom: .4rem;
}

.cs-result-label {
  font-size: .9rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .3rem;
}

.cs-result-sub {
  font-size: .78rem;
  color: var(--color-tertiary);
  line-height: 1.45;
}

/* ── Chapters ─────────────────────────────────────────────────────────────── */
.cs-chapter { background: var(--color-bg); }
.cs-chapter--alt { background: var(--color-elevated); }

.cs-chapter-inner { }
.cs-chapter-label { margin-bottom: 2rem; }

.cs-chapter-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: start;
}

.cs-chapter-h2 {
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  font-weight: 800;
  letter-spacing: -.03em;
  margin-bottom: 1.25rem;
}

.cs-body-text {
  color: var(--color-secondary);
  font-size: .97rem;
  line-height: 1.75;
  margin-bottom: 1.1rem;
}

/* Pain list */
.cs-pain-list {
  background: rgba(248,113,113,.05);
  border: 1px solid rgba(248,113,113,.18);
  border-radius: 16px;
  padding: 1.75rem;
}

.cs-pain-list-label {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: #f87171;
  margin-bottom: 1rem;
}

.cs-pain-item {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  font-size: .88rem;
  color: var(--color-secondary);
  line-height: 1.5;
  padding: .5rem 0;
  border-bottom: 1px solid rgba(248,113,113,.1);
}

.cs-pain-item:last-child { border-bottom: none; }
.cs-pain-item svg { width: .9rem; height: .9rem; color: #f87171; flex-shrink: 0; margin-top: .2rem; }

/* Decisions */
.cs-decisions { display: flex; flex-direction: column; gap: 1.25rem; }

.cs-decision {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  padding: 1.25rem;
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.12);
  border-radius: 12px;
}

.cs-chapter--alt .cs-decision { background: var(--color-bg); }

.cs-decision-num {
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--color-accent);
  opacity: .3;
  flex-shrink: 0;
  line-height: 1;
  padding-top: .1rem;
}

.cs-decision-title {
  font-size: .95rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .4rem;
}

.cs-decision-body {
  font-size: .85rem;
  color: var(--color-secondary);
  line-height: 1.65;
}

/* ── Build grid ───────────────────────────────────────────────────────────── */
.cs-build { background: var(--color-elevated); }

.cs-build-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.cs-build-col {
  background: var(--color-bg);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 16px;
  padding: 2rem;
}

.cs-build-col-header {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: 1.5rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid rgba(139,92,246,.1);
}

.cs-build-icon {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 8px;
  background: rgba(139,92,246,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  flex-shrink: 0;
}

.cs-build-icon svg { width: 1rem; height: 1rem; }

.cs-build-name {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  color: var(--color-accent-from);
  text-transform: uppercase;
}

.cs-build-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .6rem;
}

.cs-build-list li {
  display: flex;
  align-items: flex-start;
  gap: .55rem;
  font-size: .85rem;
  color: var(--color-secondary);
  line-height: 1.5;
}

.cs-build-list li svg { width: .85rem; height: .85rem; color: #34d399; flex-shrink: 0; margin-top: .2rem; }

/* ── Quote ────────────────────────────────────────────────────────────────── */
.cs-quote-section { background: var(--color-bg); }

.cs-quote {
  max-width: 800px;
  margin: 0 auto;
  padding: 3rem;
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 24px;
  position: relative;
}

.cs-quote-mark {
  font-size: 6rem;
  line-height: .6;
  color: var(--color-accent);
  opacity: .2;
  font-family: Georgia, serif;
  margin-bottom: 1rem;
}

.cs-quote-text {
  font-size: 1.15rem;
  color: var(--color-fg);
  line-height: 1.7;
  font-style: italic;
  margin-bottom: 1.75rem;
}

.cs-quote-footer { display: flex; align-items: center; gap: 1rem; }

.cs-quote-photo {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(139,92,246,.3);
}

.cs-quote-name {
  font-size: .95rem;
  font-weight: 700;
  color: var(--color-fg);
}

.cs-quote-role {
  font-size: .8rem;
  color: var(--color-tertiary);
}

/* ── Learnings ────────────────────────────────────────────────────────────── */
.cs-learnings-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.cs-learning {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 16px;
  padding: 2rem;
  transition: border-color .3s, transform .3s;
}

.cs-learning:hover {
  border-color: rgba(139,92,246,.35);
  transform: translateY(-2px);
}

.cs-learning-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 10px;
  background: rgba(139,92,246,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent-from);
  margin-bottom: 1rem;
}

.cs-learning-icon svg { width: 1.1rem; height: 1.1rem; }

.cs-learning-title {
  font-size: .97rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .6rem;
}

.cs-learning-body {
  font-size: .87rem;
  color: var(--color-secondary);
  line-height: 1.65;
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .cs-grid { grid-template-columns: repeat(2, 1fr); }
  .cs-featured-card { grid-template-columns: 1fr; }
  .cs-featured-img-wrap { max-width: 480px; }
}

@media (max-width: 900px) {
  .cs-detail-hero-inner { grid-template-columns: 1fr; }
  .cs-chapter-content { grid-template-columns: 1fr; gap: 2rem; }
  .cs-build-grid { grid-template-columns: 1fr; }
  .cs-results-grid { grid-template-columns: 1fr 1fr; }
  .cs-learnings-grid { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .cs-grid { grid-template-columns: 1fr; }
  .cs-feat-stats { flex-wrap: wrap; gap: 1rem; }
  .cs-results-grid { grid-template-columns: 1fr; }
  .cs-proof-strip { border-radius: 12px; }
  .cs-quote { padding: 1.75rem; }
  .cs-quote-text { font-size: .97rem; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   BLOG  (.bl-*)
   ═══════════════════════════════════════════════════════════════════════════ */

.bl-page, .bl-post-page { background: var(--color-bg); }

/* ── Hero ─────────────────────────────────────────────────────────────────── */
.bl-hero {
  position: relative;
  padding: 8rem 0 4rem;
  overflow: hidden;
  text-align: center;
}

.bl-post-hero {
  position: relative;
  padding: 6rem 0 3rem;
  overflow: hidden;
}

.bl-hero-bg { position: absolute; inset: 0; pointer-events: none; }

.bl-hero-h1 {
  font-size: clamp(2.8rem, 6vw, 5rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.1;
  margin: 1rem 0 1.25rem;
}

.bl-hero-sub {
  max-width: 580px;
  margin: 0 auto;
  color: var(--color-secondary);
  font-size: 1.05rem;
  line-height: 1.7;
}

.bl-post-h1 {
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.15;
  margin: .75rem 0 1.5rem;
  max-width: 820px;
}

/* ── Post meta shared ─────────────────────────────────────────────────────── */
.bl-post-meta {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .78rem;
  color: var(--color-tertiary);
}

.bl-category {
  font-weight: 700;
  color: var(--color-accent-from);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: .7rem;
}

.bl-dot { opacity: .4; }
.bl-read-time { }
.bl-date { font-size: .78rem; color: var(--color-muted); }

/* ── Author ───────────────────────────────────────────────────────────────── */
.bl-post-author {
  display: flex;
  align-items: center;
  gap: .75rem;
}

.bl-author-photo {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  object-position: top;
  border: 2px solid rgba(139,92,246,.3);
}

.bl-author-placeholder {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(139,92,246,.1);
  border: 2px solid rgba(139,92,246,.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent);
}

.bl-author-placeholder svg { width: 1rem; height: 1rem; }
.bl-author-placeholder--sm { width: 28px; height: 28px; }
.bl-author-placeholder--sm svg { width: .8rem; height: .8rem; }
.bl-author-placeholder--lg { width: 64px; height: 64px; }
.bl-author-placeholder--lg svg { width: 1.5rem; height: 1.5rem; }

.bl-author-photo--sm { width: 28px; height: 28px; }
.bl-author-name { font-size: .88rem; font-weight: 600; color: var(--color-fg); }
.bl-author-role { font-size: .75rem; color: var(--color-tertiary); }

/* ── Featured post ────────────────────────────────────────────────────────── */
.bl-posts { background: var(--color-bg); }

.bl-featured {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2rem;
  align-items: end;
  padding: 2.5rem;
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.18);
  border-radius: 20px;
  text-decoration: none;
  color: inherit;
  margin-bottom: 2rem;
  transition: border-color .3s, transform .3s;
}

.bl-featured:hover {
  border-color: rgba(139,92,246,.45);
  transform: translateY(-2px);
}

.bl-featured-body { display: flex; flex-direction: column; gap: .75rem; }

.bl-featured-title {
  font-size: clamp(1.5rem, 3vw, 2.2rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.2;
}

.bl-featured-excerpt {
  color: var(--color-secondary);
  font-size: .97rem;
  line-height: 1.7;
  max-width: 680px;
}

.bl-featured-author {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-top: .5rem;
}

.bl-featured-cta {
  display: flex;
  align-items: center;
  gap: .4rem;
  white-space: nowrap;
  font-size: .9rem;
  font-weight: 600;
  color: var(--color-accent-from);
  flex-shrink: 0;
  align-self: flex-end;
}

.bl-featured-cta svg { width: 1rem; height: 1rem; }

/* ── Post grid ────────────────────────────────────────────────────────────── */
.bl-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.bl-related-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  margin-top: 1.5rem;
}

.bl-card {
  display: flex;
  flex-direction: column;
  gap: .6rem;
  padding: 1.75rem;
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.13);
  border-radius: 16px;
  text-decoration: none;
  color: inherit;
  transition: border-color .3s, transform .3s;
}

.bl-card:hover {
  border-color: rgba(139,92,246,.4);
  transform: translateY(-3px);
}

.bl-card-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .5rem;
}

.bl-card-title {
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--color-fg);
  line-height: 1.35;
  flex: 1;
}

.bl-card-excerpt {
  font-size: .85rem;
  color: var(--color-secondary);
  line-height: 1.6;
  flex: 1;
}

.bl-card-footer {
  display: flex;
  align-items: center;
  gap: .6rem;
  margin-top: auto;
  padding-top: .75rem;
  border-top: 1px solid rgba(139,92,246,.1);
}

.bl-read-more {
  margin-left: auto;
  font-size: .8rem;
  font-weight: 600;
  color: var(--color-accent-from);
}

/* ── Blog post body ───────────────────────────────────────────────────────── */
.bl-post-body { background: var(--color-bg); padding: 3rem 0 4rem; }

.bl-post-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 4rem;
  align-items: start;
}

/* Article typography */
.bl-article { max-width: 720px; }

.bl-lead {
  font-size: 1.15rem;
  color: var(--color-fg);
  line-height: 1.75;
  font-weight: 500;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(139,92,246,.12);
}

.bl-h2 {
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--color-fg);
  letter-spacing: -.02em;
  margin: 2.5rem 0 .9rem;
}

.bl-h2:first-of-type { margin-top: 0; }

.bl-p {
  color: var(--color-secondary);
  font-size: .97rem;
  line-height: 1.8;
  margin-bottom: 1.1rem;
}

.bl-callout {
  background: rgba(139,92,246,.07);
  border-left: 3px solid var(--color-accent);
  border-radius: 0 12px 12px 0;
  padding: 1.25rem 1.5rem;
  margin: 1.75rem 0;
}

.bl-callout p {
  color: var(--color-fg);
  font-size: 1rem;
  font-style: italic;
  font-weight: 500;
  line-height: 1.6;
  margin: 0;
}

.bl-list-title {
  font-size: .92rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .75rem;
  margin-top: 1.5rem;
}

.bl-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
  display: flex;
  flex-direction: column;
  gap: .55rem;
}

.bl-list li {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  font-size: .9rem;
  color: var(--color-secondary);
  line-height: 1.6;
}

.bl-list li svg {
  width: .9rem;
  height: .9rem;
  color: var(--color-accent);
  flex-shrink: 0;
  margin-top: .25rem;
}

.bl-article-cta {
  margin-top: 3rem;
  padding: 2rem;
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.bl-article-cta p {
  color: var(--color-secondary);
  font-size: .95rem;
  line-height: 1.6;
  margin: 0;
  flex: 1;
  min-width: 200px;
}

/* Sidebar */
.bl-sidebar {
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.bl-sidebar-card {
  background: var(--color-elevated);
  border: 1px solid rgba(139,92,246,.15);
  border-radius: 16px;
  padding: 1.5rem;
}

.bl-sidebar-photo {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  object-position: top;
  border: 2px solid rgba(139,92,246,.3);
  margin: .75rem 0 .5rem;
  display: block;
}

.bl-sidebar-label {
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--color-muted);
  margin-bottom: .35rem;
}

.bl-sidebar-author {
  font-size: .97rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: .2rem;
}

.bl-sidebar-role {
  font-size: .78rem;
  color: var(--color-tertiary);
}

.bl-sidebar-date {
  font-size: .88rem;
  color: var(--color-secondary);
  font-weight: 500;
}

.bl-sidebar-divider {
  height: 1px;
  background: rgba(139,92,246,.12);
  margin: 1rem 0;
}

.bl-sidebar-cta p {
  font-size: .85rem;
  color: var(--color-secondary);
  line-height: 1.6;
  margin-bottom: 1rem;
}

/* Related */
.bl-related { background: var(--color-elevated); }

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .bl-post-layout { grid-template-columns: 1fr; }
  .bl-sidebar { position: static; flex-direction: row; flex-wrap: wrap; }
  .bl-sidebar-card { flex: 1 1 260px; }
}

@media (max-width: 900px) {
  .bl-grid { grid-template-columns: 1fr 1fr; }
  .bl-featured { grid-template-columns: 1fr; }
  .bl-featured-cta { display: none; }
}

@media (max-width: 600px) {
  .bl-grid { grid-template-columns: 1fr; }
  .bl-related-grid { grid-template-columns: 1fr; }
  .bl-article-cta { flex-direction: column; }
  .bl-post-h1 { font-size: 1.75rem; }
}

/* ============================================================
   SP-CTA-INNER / SP-CTA-BTNS — shared CTA block used on blog
   and other pages that embed the two-button contact section
   ============================================================ */
.sp-cta-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 640px;
  margin: 0 auto;
}
.sp-cta-btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

@media (max-width: 600px) {
  .sp-cta-btns {
    flex-direction: column;
    width: 100%;
  }
  .sp-cta-btns .btn-primary,
  .sp-cta-btns .btn-secondary {
    width: 100%;
    justify-content: center;
  }
}

/* ============================================================
   BLOG SHOW — mobile padding fixes
   ============================================================ */
@media (max-width: 600px) {
  /* Reduce large bottom padding on post hero */
  .bl-post-hero { padding-bottom: 1.5rem; }

  /* Add breathing room below article before sidebar */
  .bl-article { padding-bottom: 2rem; }

  /* Stack sidebar cards vertically on small screens */
  .bl-sidebar { flex-direction: column; }
  .bl-sidebar-card { flex: none; width: 100%; }

  /* Sidebar CTA full-width button already inline-styled,
     ensure text is centered and button fills the card */
  .bl-sidebar-cta .btn-primary { display: block; text-align: center; }
}
