*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--font-body), system-ui, sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}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-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-4{inset:-1rem}.inset-0{inset:0}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.left-0{left:0}.left-12{left:3rem}.right-0{right:0}.right-12{right:3rem}.right-8{right:2rem}.top-0{top:0}.top-10{top:2.5rem}.top-6{top:1.5rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[600px\]{height:600px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-20{width:5rem}.w-5{width:1.25rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[600px\]{width:600px}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-background-200{--tw-border-opacity:1;border-color:oklch(var(--background-200) / var(--tw-border-opacity,1))}.border-background-200\/70{border-color:oklch(var(--background-200) / .7)}.border-primary-200{--tw-border-opacity:1;border-color:oklch(var(--primary-200) / var(--tw-border-opacity,1))}.border-primary-300{--tw-border-opacity:1;border-color:oklch(var(--primary-300) / var(--tw-border-opacity,1))}.border-primary-400{--tw-border-opacity:1;border-color:oklch(var(--primary-400) / var(--tw-border-opacity,1))}.border-white\/10{border-color:#ffffff1a}.border-white\/20{border-color:#fff3}.border-white\/40{border-color:#fff6}.bg-accent-100{--tw-bg-opacity:1;background-color:oklch(var(--accent-100) / var(--tw-bg-opacity,1))}.bg-accent-500{--tw-bg-opacity:1;background-color:oklch(var(--accent-500) / var(--tw-bg-opacity,1))}.bg-background-100{--tw-bg-opacity:1;background-color:oklch(var(--background-100) / var(--tw-bg-opacity,1))}.bg-background-200{--tw-bg-opacity:1;background-color:oklch(var(--background-200) / var(--tw-bg-opacity,1))}.bg-background-50{--tw-bg-opacity:1;background-color:oklch(var(--background-50) / var(--tw-bg-opacity,1))}.bg-background-50\/10{background-color:oklch(var(--background-50) / .1)}.bg-background-50\/60{background-color:oklch(var(--background-50) / .6)}.bg-background-50\/95{background-color:oklch(var(--background-50) / .95)}.bg-foreground-950{--tw-bg-opacity:1;background-color:oklch(var(--foreground-950) / var(--tw-bg-opacity,1))}.bg-primary-100{--tw-bg-opacity:1;background-color:oklch(var(--primary-100) / var(--tw-bg-opacity,1))}.bg-primary-500{--tw-bg-opacity:1;background-color:oklch(var(--primary-500) / var(--tw-bg-opacity,1))}.bg-secondary-100{--tw-bg-opacity:1;background-color:oklch(var(--secondary-100) / var(--tw-bg-opacity,1))}.bg-secondary-500{--tw-bg-opacity:1;background-color:oklch(var(--secondary-500) / var(--tw-bg-opacity,1))}.bg-transparent{background-color:#0000}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/20{background-color:#fff3}.bg-white\/5{background-color:#ffffff0d}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right, var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top, var(--tw-gradient-stops))}.from-foreground-950\/70{--tw-gradient-from:oklch(var(--foreground-950) / .7) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-foreground-950\/95{--tw-gradient-from:oklch(var(--foreground-950) / .95) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-200{--tw-gradient-from:oklch(var(--primary-200) / 1) var(--tw-gradient-from-position);--tw-gradient-to:oklch(var(--primary-200) / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-foreground-900\/90{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), oklch(var(--foreground-900) / .9) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-foreground-950\/20{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), oklch(var(--foreground-950) / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary-400{--tw-gradient-to:oklch(var(--primary-400) / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), oklch(var(--primary-400) / 1) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-accent-400{--tw-gradient-to:oklch(var(--accent-400) / 1) var(--tw-gradient-to-position)}.to-primary-950\/80{--tw-gradient-to:oklch(var(--primary-950) / .8) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.object-top{-o-object-position:top;object-position:top}.p-1{padding:.25rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pb-5{padding-bottom:1.25rem}.pt-10{padding-top:2.5rem}.pt-28{padding-top:7rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-7xl{font-size:4.5rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-accent-900{--tw-text-opacity:1;color:oklch(var(--accent-900) / var(--tw-text-opacity,1))}.text-background-100\/70{color:oklch(var(--background-100) / .7)}.text-background-100\/80{color:oklch(var(--background-100) / .8)}.text-background-100\/90{color:oklch(var(--background-100) / .9)}.text-background-50{--tw-text-opacity:1;color:oklch(var(--background-50) / var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-foreground-500{--tw-text-opacity:1;color:oklch(var(--foreground-500) / var(--tw-text-opacity,1))}.text-foreground-600{--tw-text-opacity:1;color:oklch(var(--foreground-600) / var(--tw-text-opacity,1))}.text-foreground-700{--tw-text-opacity:1;color:oklch(var(--foreground-700) / var(--tw-text-opacity,1))}.text-foreground-800{--tw-text-opacity:1;color:oklch(var(--foreground-800) / var(--tw-text-opacity,1))}.text-foreground-900{--tw-text-opacity:1;color:oklch(var(--foreground-900) / var(--tw-text-opacity,1))}.text-foreground-950{--tw-text-opacity:1;color:oklch(var(--foreground-950) / var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-50{--tw-text-opacity:1;color:rgb(249 250 251/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-lime-400{--tw-text-opacity:1;color:rgb(163 230 53/var(--tw-text-opacity,1))}.text-primary-200{--tw-text-opacity:1;color:oklch(var(--primary-200) / var(--tw-text-opacity,1))}.text-primary-300{--tw-text-opacity:1;color:oklch(var(--primary-300) / var(--tw-text-opacity,1))}.text-primary-600{--tw-text-opacity:1;color:oklch(var(--primary-600) / var(--tw-text-opacity,1))}.text-primary-700{--tw-text-opacity:1;color:oklch(var(--primary-700) / var(--tw-text-opacity,1))}.text-primary-800{--tw-text-opacity:1;color:oklch(var(--primary-800) / var(--tw-text-opacity,1))}.text-secondary-900{--tw-text-opacity:1;color:oklch(var(--secondary-900) / var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/60{color:#fff9}.text-white\/70{color:#ffffffb3}.text-white\/80{color:#fffc}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-90{opacity:.9}.opacity-95{opacity:.95}.outline-none{outline-offset:2px;outline:2px solid #0000}.blur-2xl{--tw-blur:blur(40px);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)}.blur-3xl{--tw-blur:blur(64px);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)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}:root{--background-50:.99 .005 150;--background-100:.975 .008 150;--background-200:.95 .01 150;--background-300:.92 .012 150;--background-400:.85 .015 150;--background-500:.75 .018 150;--background-600:.6 .02 150;--background-700:.45 .02 150;--background-800:.32 .018 150;--background-900:.2 .015 150;--background-950:.13 .01 150;--primary-50:.97 .04 250;--primary-100:.93 .08 250;--primary-200:.87 .12 250;--primary-300:.78 .16 250;--primary-400:.7 .18 250;--primary-500:.62 .18 250;--primary-600:.54 .18 250;--primary-700:.46 .16 250;--primary-800:.38 .13 250;--primary-900:.3 .1 250;--primary-950:.2 .07 250;--accent-50:.97 .03 225;--accent-100:.93 .06 225;--accent-200:.87 .1 225;--accent-300:.78 .13 225;--accent-400:.68 .15 225;--accent-500:.58 .15 225;--accent-600:.5 .14 225;--accent-700:.42 .12 225;--accent-800:.34 .1 225;--accent-900:.26 .08 225;--accent-950:.18 .05 225;--secondary-50:.98 .02 85;--secondary-100:.95 .05 85;--secondary-200:.9 .09 85;--secondary-300:.84 .12 85;--secondary-400:.78 .14 85;--secondary-500:.72 .15 70;--secondary-600:.62 .15 60;--secondary-700:.52 .13 55;--secondary-800:.42 .11 50;--secondary-900:.32 .08 50;--secondary-950:.22 .05 50;--foreground-50:.99 .002 150;--foreground-100:.96 .003 150;--foreground-200:.92 .004 150;--foreground-300:.85 .005 150;--foreground-400:.72 .005 150;--foreground-500:.58 .005 150;--foreground-600:.45 .005 150;--foreground-700:.35 .005 150;--foreground-800:.25 .005 150;--foreground-900:.17 .005 150;--foreground-950:.1 .005 150;--font-body:"Inter", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-heading:"Plus Jakarta Sans", "Inter", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-label:"Inter", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif}html,body,#root{background-color:oklch(var(--background-50));color:oklch(var(--foreground-900));font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5{font-family:var(--font-heading)}.hp-shield{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.bg-grid-soft{background-image:radial-gradient(oklch(var(--primary-200) / .4) 1px, transparent 1px);background-size:22px 22px}@keyframes float-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.animate-float-slow{animation:6s ease-in-out infinite float-slow}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:.7s ease-out both fade-up}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:oklch(var(--background-300));border-radius:8px}::-webkit-scrollbar-thumb:hover{background:oklch(var(--background-400))}.hover\:-translate-y-1:hover{--tw-translate-y:-.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-primary-200:hover{--tw-border-opacity:1;border-color:oklch(var(--primary-200) / var(--tw-border-opacity,1))}.hover\:border-primary-300:hover{--tw-border-opacity:1;border-color:oklch(var(--primary-300) / var(--tw-border-opacity,1))}.hover\:border-primary-400:hover{--tw-border-opacity:1;border-color:oklch(var(--primary-400) / var(--tw-border-opacity,1))}.hover\:border-white:hover{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.hover\:bg-background-100:hover{--tw-bg-opacity:1;background-color:oklch(var(--background-100) / var(--tw-bg-opacity,1))}.hover\:bg-primary-600:hover{--tw-bg-opacity:1;background-color:oklch(var(--primary-600) / var(--tw-bg-opacity,1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/90:hover{background-color:#ffffffe6}.hover\:text-foreground-950:hover{--tw-text-opacity:1;color:oklch(var(--foreground-950) / var(--tw-text-opacity,1))}.hover\:text-primary-600:hover{--tw-text-opacity:1;color:oklch(var(--primary-600) / var(--tw-text-opacity,1))}.hover\:text-primary-700:hover{--tw-text-opacity:1;color:oklch(var(--primary-700) / var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.focus\:border-primary-400:focus{--tw-border-opacity:1;border-color:oklch(var(--primary-400) / var(--tw-border-opacity,1))}.focus\:bg-background-50:focus{--tw-bg-opacity:1;background-color:oklch(var(--background-50) / var(--tw-bg-opacity,1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:gap-2{gap:.5rem}@media (width>=640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media (width>=768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-\[12rem\]{font-size:12rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (width>=1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-full{height:100%}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:p-10{padding:2.5rem}.lg\:p-9{padding:2.25rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:pt-32{padding-top:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-base{font-size:1rem;line-height:1.5rem}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (prefers-color-scheme:dark){.dark\:text-foreground-950{--tw-text-opacity:1;color:oklch(var(--foreground-950) / var(--tw-text-opacity,1))}}

/* Site extras */
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.px-2\.5{padding-left:.625rem;padding-right:.625rem}
.max-w-3xl{max-width:48rem}
.group:hover .group-hover\:translate-x-1{--tw-translate-x:.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y))}
html {
  scroll-behavior: smooth;
}
html,
body {
  overflow-x: clip;
}

#hero-tabs {
  gap: 0.25rem;
}

/* Hero section */
.hero-section__inner {
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 3.5rem;
  box-sizing: border-box;
  width: 100%;
}
@media (min-width: 1024px) {
  .hero-section__inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .hero-section__grid {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }
}

/* Hero section image */
.hero-section__media {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.hero-section__img {
  display: block;
  width: auto;
  height: auto;
  max-width: none;
}
@media (max-width: 1023px) {
  .hero-section__img {
    max-width: 100%;
    height: auto;
  }
}

/* Hero stats strip */
.hero-stats-bar {
  position: relative;
  z-index: 1;
  width: 100%;
  background: #eef1f5;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
  border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}
.hero-stats-bar__inner {
  max-width: 80rem;
  margin: 0 auto;
  padding: 1.75rem 1.5rem;
  box-sizing: border-box;
  width: 100%;
}
.hero-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem 1.5rem;
}
.hero-stats__item {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.hero-stats__icon {
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  border-radius: 0.9375rem;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.07);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.625rem;
  color: #65a30d;
}
.hero-stats__value {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #111827;
  font-family: var(--font-heading);
  letter-spacing: -0.02em;
}
.hero-stats__label {
  margin-top: 0.2rem;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #4b5563;
  font-weight: 500;
}
@media (min-width: 1024px) {
  .hero-stats-bar__inner {
    padding: 2rem 2.5rem;
  }
  .hero-stats {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
  }
  .hero-stats__value {
    font-size: 1.625rem;
  }
}

/* Site header */
.site-header__inner {
  max-width: 80rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  box-sizing: border-box;
  width: 100%;
}
@media (min-width: 1024px) {
  .site-header__inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.site-header__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 4rem;
}
.site-header__logo {
  flex-shrink: 0;
}
.header-logo-img {
  display: block;
  width: auto;
  height: auto;
  max-width: none;
}
.site-header:not(.bg-transparent) .nav-link,
.site-header:not(.bg-transparent) .mobile-nav-link {
  color: #000000;
}
.site-header__nav {
  margin-left: auto;
  gap: 2rem;
}
.site-header__menu {
  margin-left: auto;
  flex-shrink: 0;
}

/* Value section - video + stats */
.value-section__body {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: stretch;
  margin-bottom: 1rem;
}
.value-section__video-wrap {
  border-radius: 1rem;
  overflow: hidden;
  background: #0f172a;
  border: 1px solid oklch(var(--background-200) / 0.7);
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.08);
}
.value-section__video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #0f172a;
  vertical-align: middle;
}
.value-section__stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
}
.value-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0.875rem 0.75rem;
  border-radius: 1.25rem;
  min-height: 0;
  border: none;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
  box-shadow: none;
}
.value-stat:hover {
  transform: translateY(-2px);
}
/* 浅色底 + 同色系深色文字（对应设计稿） */
.value-stat--sky {
  background: #c9e4fb;
  color: #123885;
}
.value-stat--mint {
  background: #c8f0e0;
  color: #044d32;
}
.value-stat--lavender {
  background: #e4d8fc;
  color: #3b1d6e;
}
.value-stat--lavender .value-stat__value {
  background: linear-gradient(135deg, #4c1d95 0%, #312e81 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
.value-stat--periwinkle {
  background: #d5dff5;
  color: #1e3a8a;
}
.value-stat--peach {
  background: #f8e4c8;
  color: #7c2d0a;
}
.value-stat--rose {
  background: #f9d6e8;
  color: #831843;
}
.value-stat__value {
  font-size: clamp(1.625rem, 2.6vw, 2.25rem);
  font-weight: 800;
  line-height: 1.15;
  font-family: var(--font-heading);
  letter-spacing: -0.03em;
}
.value-stat__label {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0.35rem;
  opacity: 1;
  font-weight: 600;
}
@media (min-width: 1024px) {
  .value-section__body {
    grid-template-columns: 3fr 2fr;
    gap: 1.25rem;
    align-items: stretch;
  }
  .value-section__stats {
    grid-template-rows: repeat(3, 1fr);
    gap: 0.75rem;
    height: 100%;
    min-height: 0;
  }
  .value-stat {
    padding: 0.75rem 0.625rem;
  }
  .value-stat__value {
    font-size: clamp(1.5rem, 2vw, 2rem);
  }
  .value-stat__label {
    font-size: 0.9375rem;
  }
}
@media (max-width: 1023px) {
  .value-section__stats {
    gap: 0.875rem;
  }
  .value-stat {
    padding: 1.125rem 1rem;
    min-height: 5.75rem;
  }
  .value-stat__value {
    font-size: 2rem;
  }
  .value-stat__label {
    font-size: 1.0625rem;
  }
}

/* Learn more CTA button */
.more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 1.15rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
  color: oklch(var(--background-50));
  background-color: oklch(var(--primary-500));
  border: none;
  border-radius: 0.5rem;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.more-btn:hover {
  background-color: oklch(var(--primary-700));
}

/* Implementation timeline (dark) */
.impl-section {
  position: relative;
  padding: 5rem 0 6rem;
  background: #0b111e;
  overflow: hidden;
}
.impl-section__grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(132, 204, 22, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(132, 204, 22, 0.04) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}
.impl-section__label {
  font-size: 0.875rem;
  font-weight: 600;
  color: #84cc16;
  margin-bottom: 1rem;
}
.impl-section__title {
  font-size: clamp(1.875rem, 4vw, 3rem);
  font-weight: 800;
  line-height: 1.25;
  color: #fff;
  letter-spacing: -0.02em;
}
.impl-section__highlight {
  color: #84cc16;
}
.impl-section__subtitle {
  margin-top: 1.25rem;
  font-size: 1rem;
  color: #94a3b8;
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
}
.impl-timeline {
  position: relative;
  padding-top: 2rem;
}
.impl-timeline__line {
  display: none;
  position: absolute;
  top: 3.25rem;
  left: 10%;
  right: 10%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(132, 204, 22, 0.35) 10%, rgba(132, 204, 22, 0.35) 90%, transparent);
}
.impl-timeline__steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
.impl-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.impl-step__node {
  position: relative;
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 50%;
  background: #0f1a2e;
  border: 2px solid rgba(132, 204, 22, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  box-shadow: 0 0 0 6px rgba(132, 204, 22, 0.08), 0 0 24px rgba(132, 204, 22, 0.12);
}
.impl-step__node span {
  font-size: 1.25rem;
  font-weight: 800;
  color: #84cc16;
  font-family: var(--font-heading);
}
.impl-step__title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.625rem;
  font-family: var(--font-heading);
}
.impl-step__desc {
  font-size: 0.8125rem;
  color: #94a3b8;
  line-height: 1.65;
  max-width: 11rem;
  margin-bottom: 0.875rem;
}
.impl-step__tag {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 0.375rem;
  border: 1px solid rgba(132, 204, 22, 0.5);
  background: rgba(132, 204, 22, 0.1);
  color: #84cc16;
  font-size: 0.75rem;
  font-weight: 600;
  white-space: nowrap;
}
@media (min-width: 1024px) {
  .impl-timeline__line {
    display: block;
  }
  .impl-timeline__steps {
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
  }
  .impl-step__desc {
    max-width: 10.5rem;
  }
}

/* Development history timeline */
.history-section {
  position: relative;
  padding: 5rem 0 0rem;
  background: #fff;
  overflow: hidden;
}
.history-decor {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 220px;
  height: 180px;
  pointer-events: none;
}
.history-cube {
  position: absolute;
  width: 56px;
  height: 56px;
  border: 1px solid rgba(56, 189, 248, 0.35);
  background: transparent;
  transform: skewY(-8deg) rotate(-12deg);
}
.history-cube--1 {
  left: 2rem;
  bottom: 2.5rem;
  opacity: 0.25;
}
.history-cube--2 {
  left: 5rem;
  bottom: 4rem;
  width: 72px;
  height: 72px;
  opacity: 0.45;
  border-color: rgba(56, 189, 248, 0.55);
}
.history-title {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 800;
  color: #1e293b;
  margin-bottom: 1.25rem;
  letter-spacing: -0.02em;
}
.history-title__en {
  font-weight: 700;
  color: #334155;
  margin-right: 0.35rem;
}
.history-intro {
  width: 100%;
  font-size: 0.9375rem;
  line-height: 1.85;
  color: #64748b;
  margin-bottom: 0.9375rem;
  text-align: justify;
}
.history-chart {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 0.5rem;
  margin-top: -0.5rem;
}
.history-chart__img {
  display: block;
  width: auto;
  height: auto;
  max-width: none;
  margin: 0 auto;
}
@media (max-width: 1023px) {
  .history-chart {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .history-chart__img {
    max-width: 100%;
    height: auto;
  }
}
.history-chart__visual {
  display: none;
}
.history-chart__labels {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}
.history-chart__label {
  position: absolute;
  left: var(--x);
  top: calc(var(--cy) * 1px - 14px);
  transform: translate(-50%, -100%);
  width: 19%;
  max-width: 11rem;
  margin: 0;
  font-size: 0.8125rem;
  color: #475569;
  line-height: 1.5;
  text-align: center;
}
.history-chart__mobile {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 1rem;
}
.history-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.history-item__event {
  font-size: 0.8125rem;
  color: #475569;
  line-height: 1.5;
  margin-bottom: 0.5rem;
}
.history-item__year {
  font-size: 0.875rem;
  font-weight: 600;
  color: #334155;
  margin-bottom: 0.75rem;
}
.history-item__bar {
  width: 2.75rem;
  height: calc(var(--bar-h) * 1px);
  min-height: 56px;
  background: linear-gradient(180deg, #67e8f9 0%, #22d3ee 100%);
  border-radius: 2px 2px 0 0;
  box-shadow: 0 -2px 12px rgba(34, 211, 238, 0.25);
}
@media (min-width: 768px) {
  .history-chart__mobile {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1024px) {
  .history-chart__visual {
    display: block;
    position: relative;
    padding-top: 40px;
    height: calc(520px + 40px);
    overflow: visible;
  }
  .history-chart__labels {
    height: 520px;
    top: 40px;
  }
  .history-chart__label {
    font-size: 0.875rem;
    max-width: 12rem;
  }
  .history-chart__svg {
    display: block;
    width: 100%;
    height: 520px;
  }
  .history-chart__mobile {
    display: none;
  }
}
@media (max-width: 1023px) {
  .history-item {
    padding: 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 0.75rem;
    background: #f8fafc;
  }
}

/* Production flow diagram */
.flow-section {
  padding: 4.5rem 0 5rem;
  background: #fff;
}
.flow-section__header {
  text-align: center;
  margin-bottom: 3rem;
}
.flow-section__title {
  font-size: clamp(1.75rem, 3.2vw, 2.25rem);
  font-weight: 700;
  color: #1a1a1a;
  letter-spacing: 0.02em;
  margin-bottom: 0.55rem;
}
.flow-section__desc {
  margin: 0 auto;
  max-width: 52rem;
  padding: 0 0.25rem;
  font-size: 0.9375rem;
  line-height: 1.75;
  color: #666;
  text-align: center;
  white-space: normal;
}
@media (min-width: 1280px) {
  .flow-section__desc {
    white-space: nowrap;
    line-height: 1.85;
  }
}
.flow-section__diagram {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.flow-section__img {
  display: block;
  width: 100%;
  max-width: 1200px;
  height: auto;
  margin: 1rem auto;
}
@media (min-width: 1200px) {
  .flow-section__img {
    width: 1200px;
    max-width: 1200px;
  }
}
@media (max-width: 767px) {
  .flow-section {
    padding: 3rem 0 3.5rem;
  }
  .flow-section__header {
    margin-bottom: 2rem;
  }
  .flow-section__desc {
    font-size: 0.875rem;
    line-height: 1.65;
  }
}

/* FAQ section */
.faq-section {
  padding: 5rem 0;
  background: oklch(var(--background-100));
}
.faq-section__inner {
  max-width: 72rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media (min-width: 1024px) {
  .faq-section__inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.faq-section__header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.faq-section__label {
  font-size: 1rem;
  font-weight: 600;
  color: oklch(var(--primary-600));
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}
.faq-section__title {
  font-size: clamp(2.125rem, 3.5vw, 2.625rem);
  font-weight: 700;
  color: oklch(var(--foreground-950));
  letter-spacing: -0.02em;
}
.faq-list {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.faq-item {
  background: #fff;
  border: 1px solid oklch(var(--background-200) / 0.7);
  border-radius: 0.75rem;
  overflow: hidden;
  transition: border-color 0.2s ease;
}
.faq-item--open {
  border-color: oklch(var(--primary-400));
}
.faq-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1.375rem 1.75rem;
  text-align: left;
  background: transparent;
  border: 0;
  cursor: pointer;
}
.faq-question {
  font-size: 1.125rem;
  font-weight: 600;
  color: oklch(var(--foreground-950));
  line-height: 1.55;
}
.faq-toggle {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: oklch(var(--background-200));
  color: oklch(var(--foreground-500));
  transition: background-color 0.2s ease, color 0.2s ease;
}
.faq-item--open .faq-toggle {
  background: oklch(var(--primary-500));
  color: #fff;
}
.faq-icon {
  font-size: 1.25rem;
  line-height: 1;
}
.faq-answer {
  display: none;
  padding: 0 1.75rem 1.375rem;
}
.faq-item--open .faq-answer {
  display: block;
}
.faq-answer p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.75;
  color: oklch(var(--foreground-600));
}
@media (max-width: 767px) {
  .faq-section {
    padding: 3.5rem 0;
  }
  .faq-section__header {
    margin-bottom: 2.5rem;
  }
  .faq-btn {
    padding: 1.125rem 1.375rem;
  }
  .faq-answer {
    padding: 0 1.375rem 1.125rem;
  }
  .faq-question {
    font-size: 1rem;
  }
  .faq-answer p {
    font-size: 0.9375rem;
  }
}

/* Site footer */
.site-footer {
  background: #000;
  color: #fff;
}
.site-footer__inner {
  max-width: 80rem;
  margin: 0 auto;
  padding: 3rem 1.5rem 2rem;
}
@media (min-width: 1024px) {
  .site-footer__inner {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.site-footer__top {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  align-items: flex-start;
  justify-content: space-between;
  padding-bottom: 2rem;
}
@media (min-width: 768px) {
  .site-footer__top {
    flex-direction: row;
    align-items: flex-start;
  }
}
.site-footer__brand {
  max-width: 28rem;
}
.site-footer__logo-row {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}
.site-footer__logo-img {
  display: block;
  width: auto;
  height: auto;
  max-width: none;
}
.site-footer__desc {
  font-size: 0.875rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.65);
}
.site-footer__contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .site-footer__contact {
    margin-left: auto;
    align-items: flex-start;
  }
}
.site-footer__contact-title {
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 1rem;
}
.site-footer__qr {
  display: block;
  width: 7.5rem;
  height: 7.5rem;
  border-radius: 0.25rem;
  background: #fff;
}
.site-footer__bottom {
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  text-align: center;
}
.site-footer__copyright {
  font-size: 0.85rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.45);
  word-break: break-word;
}
.site-footer__copyright a {
  color: rgba(255, 255, 255, 0.45);
  text-decoration: none;
}
.site-footer__copyright a:hover {
  color: rgba(255, 255, 255, 0.75);
}

/* Why choose section */
.why-section {
  padding: 0.8rem 0 0rem;
  background: #fff;
}
.why-section__card {
  margin-top:0rem ;
  border-radius: 1.25rem;
  background: #fff;
}
.left-align-text {
  text-align: left;
  margin-left: 0;
  padding-left: 0;
}
.why-section__banner {
  position: relative;
  padding: 0rem 0rem 0;
}
@media (min-width: 1024px) {
  .why-section__banner {
    padding: 0.8rem 3rem 0;
    min-height: 17.5rem;
  }
}
.why-section__header {
  position: relative;
  z-index: 3;
  max-width: 56%;
  margin-bottom: 0;
  padding-top: 2.5rem;
}
@media (min-width: 1024px) {
  .why-section__header {
    padding-top: 0rem;
  }
}
.why-section__title {
  font-size: clamp(1.875rem, 3.5vw, 2.5rem);
  font-weight: 700;
  color: #111827;
  letter-spacing: -0.02em;
  margin-bottom: 0.8rem;
}
.why-section__subtitle {
  max-width: 36rem;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #6b7280;
  padding-bottom: 1rem;
}
.why-section__highlight {
  position: relative;
  z-index: 1;
  margin-top: 0rem;
  margin-left: -2rem;
  margin-right: -2rem;
  width: calc(100% + 4rem);
  padding: 1.5rem 2rem;
  background: linear-gradient(135deg, #eef2ff 0%, #e0e7ff 45%, #dbeafe 100%);
  border-radius: 1.25rem 1.25rem 0 0;
  min-height: 5.5rem;
  display: flex;
  align-items: center;
}
@media (min-width: 1024px) {
  .why-section__highlight {
    margin-top: 0rem;
    margin-left: -3rem;
    margin-right: -3rem;
    width: calc(100% + 6rem);
    padding: 1.75rem 3rem;
    min-height: 8.25rem;
  }
}
.why-section__stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  width: 100%;
  max-width: 62%;
  z-index: 2;
}
@media (min-width: 1024px) {
  .why-section__stats {
    gap: 0;
  }
}
.why-section__stat-value {
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 700;
  color: #111827;
  line-height: 1.2;
  margin-bottom: 0.6rem;
}
.why-section__stat-label {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #6b7280;
}
.why-section__photo-wrap {
  position: absolute;
  right: 2rem;
  top: 2rem;
  bottom: 0;
  width: min(42%, 22rem);
  z-index: 3;
  pointer-events: none;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: visible;
}
@media (min-width: 1024px) {
  .why-section__photo-wrap {
    right: 3rem;
    top: 2.25rem;
    bottom: 0;
    width: 38%;
    max-width: 24rem;
  }
}
.why-section__photo {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: bottom center;
  transform: translateY(0rem);
}
.why-section__features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  background: #fff;
  border-top: 1px solid rgba(148, 163, 184, 0.15);
  box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
  border-radius: 0 0 1.25rem 1.25rem;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .why-section__features {
    grid-template-columns: repeat(3, 1fr);
  }
}
.why-section__feature {
  padding: 2rem 2rem 2.25rem;
  border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}
@media (min-width: 1024px) {
  .why-section__feature {
    padding: 2.25rem 2rem 2.5rem;
    border-bottom: 0;
    border-right: 1px solid rgba(148, 163, 184, 0.12);
  }
  .why-section__feature:last-child {
    border-right: 0;
  }
}
.why-section__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  height: 2rem;
  padding: 0 0.5rem;
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 1rem;
}
.why-section__badge--red {
  background: linear-gradient(135deg, #ef4444, #dc2626);
}
.why-section__badge--purple {
  background: linear-gradient(135deg, #a855f7, #7c3aed);
}
.why-section__badge--blue {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}
.why-section__feature-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #111827;
  line-height: 1.4;
  margin-bottom: 0.875rem;
}
.why-section__feature-desc {
  font-size: 0.875rem;
  line-height: 1.75;
  color: #6b7280;
}
@media (max-width: 1023px) {
  .history-intro {
    text-align: left;
  }
  .history-chart__mobile {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1023px) {
  .why-section__banner {
    display: flex;
    flex-direction: column;
    padding: 2rem 1.5rem 0;
    min-height: auto;
  }
  .why-section__header {
    order: 1;
    max-width: none;
    padding-top: 0;
  }
  .why-section__photo-wrap {
    order: 2;
    position: relative;
    right: auto;
    top: auto;
    bottom: auto;
    width: 100%;
    max-width: 20rem;
    margin: 1.25rem auto 0;
    display: block;
  }
  .why-section__photo {
    transform: none;
  }
  .why-section__highlight {
    order: 3;
    margin-top: 1rem;
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    width: calc(100% + 3rem);
    min-height: auto;
    padding: 1.25rem 1.5rem;
  }
  .why-section__stats {
    grid-template-columns: 1fr;
    gap: 0;
    max-width: none;
  }
}

@media (max-width: 767px) {
  .why-section {
    padding: 0rem 0 4rem;
  }
  .why-section__banner {
    padding: 0.5rem 1.25rem 0;
  }
  .why-section__highlight {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    width: calc(100% + 2.5rem);
    padding: 1.125rem 1.25rem;
  }
  .why-section__feature {
    padding: 1.5rem 1.25rem 1.75rem;
  }
  .why-section__stat-value {
    font-size: 1.125rem;
  }
  .history-section {
    padding: 3.5rem 0 4rem;
  }
  .impl-section {
    padding: 3.5rem 0 4.5rem;
  }
  .impl-step__desc {
    max-width: none;
  }
  #cases .rounded-2xl.p-8 {
    padding: 1.25rem;
  }
  .faq-section__inner {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .why-section__stats {
    max-width: 52%;
  }
  .why-section__photo-wrap {
    width: 34%;
  }
}
