@layer theme,base,components,utilities;@layer theme{@theme default{ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --color-red-50: oklch(97.1% .013 17.38); --color-red-100: oklch(93.6% .032 17.717); --color-red-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --color-red-500: oklch(63.7% .237 25.331); --color-red-600: oklch(57.7% .245 27.325); --color-red-700: oklch(50.5% .213 27.518); --color-red-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --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-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-green-500: oklch(72.3% .219 149.579); --color-green-600: oklch(62.7% .194 149.214); --color-green-700: oklch(52.7% .154 150.069); --color-green-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --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-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --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-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 0); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-mauve-50: oklch(98.5% 0 0); --color-mauve-100: oklch(96% .003 325.6); --color-mauve-200: oklch(92.2% .005 325.62); --color-mauve-300: oklch(86.5% .012 325.68); --color-mauve-400: oklch(71.1% .019 323.02); --color-mauve-500: oklch(54.2% .034 322.5); --color-mauve-600: oklch(43.5% .029 321.78); --color-mauve-700: oklch(36.4% .029 323.89); --color-mauve-800: oklch(26.3% .024 320.12); --color-mauve-900: oklch(21.2% .019 322.12); --color-mauve-950: oklch(14.5% .008 326); --color-olive-50: oklch(98.8% .003 106.5); --color-olive-100: oklch(96.6% .005 106.5); --color-olive-200: oklch(93% .007 106.5); --color-olive-300: oklch(88% .011 106.6); --color-olive-400: oklch(73.7% .021 106.9); --color-olive-500: oklch(58% .031 107.3); --color-olive-600: oklch(46.6% .025 107.3); --color-olive-700: oklch(39.4% .023 107.4); --color-olive-800: oklch(28.6% .016 107.4); --color-olive-900: oklch(22.8% .013 107.4); --color-olive-950: oklch(15.3% .006 107.1); --color-mist-50: oklch(98.7% .002 197.1); --color-mist-100: oklch(96.3% .002 197.1); --color-mist-200: oklch(92.5% .005 214.3); --color-mist-300: oklch(87.2% .007 219.6); --color-mist-400: oklch(72.3% .014 214.4); --color-mist-500: oklch(56% .021 213.5); --color-mist-600: oklch(45% .017 213.2); --color-mist-700: oklch(37.8% .015 216); --color-mist-800: oklch(27.5% .011 216.9); --color-mist-900: oklch(21.8% .008 223.9); --color-mist-950: oklch(14.8% .004 228.8); --color-taupe-50: oklch(98.6% .002 67.8); --color-taupe-100: oklch(96% .002 17.2); --color-taupe-200: oklch(92.2% .005 34.3); --color-taupe-300: oklch(86.8% .007 39.5); --color-taupe-400: oklch(71.4% .014 41.2); --color-taupe-500: oklch(54.7% .021 43.1); --color-taupe-600: oklch(43.8% .017 39.3); --color-taupe-700: oklch(36.7% .016 35.7); --color-taupe-800: oklch(26.8% .011 36.5); --color-taupe-900: oklch(21.4% .009 43.1); --color-taupe-950: oklch(14.7% .004 49.3); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --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-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px rgb(0 0 0 / .05); --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25); --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / .05); --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05); --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05); --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05); --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15); --drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12); --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15); --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1); --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / .15); --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15); --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2); --text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075); --text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1); --text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1); --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; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme( --font-sans--font-feature-settings, initial ); --default-font-variation-settings: --theme( --font-sans--font-variation-settings, initial ); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme( --font-mono--font-feature-settings, initial ); --default-mono-font-variation-settings: --theme( --font-mono--font-variation-settings, initial ); }@theme default inline reference{ --blur: 8px; --shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05); --drop-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 1px 1px rgb(0 0 0 / .06); --radius: .25rem; --max-width-prose: 65ch; }}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:--theme(--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:--theme(--default-font-feature-settings,normal);font-variation-settings:--theme(--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:--theme(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:--theme(--default-mono-font-feature-settings,normal);font-variation-settings:--theme(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-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{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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: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,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{@tailwind utilities;}html,body{font-family:var(--snpro-font-family);scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}*{font-family:inherit}:root{--snpro-font-family: "SN Pro", "SN Pro Variable", sans-serif;--description-font-family: var(--snpro-font-family);--app-bg: #03091B;--app-surface: #0B132B;--app-surface-2: #101D3D;--app-text: #EAF2FF;--app-text-muted: rgba(234, 242, 255, .72);--app-border: rgba(255, 255, 255, .12);--app-border-strong: rgba(255, 255, 255, .18);--app-shadow-sm: 0 2px 10px rgba(0, 0, 0, .28);--app-shadow-md: 0 8px 20px rgba(0, 0, 0, .32);--app-primary: #2287FF;--app-primary-contrast: #ffffff}body{background:var(--app-bg);color:var(--app-text);color-scheme:dark}p{font-family:var(--description-font-family)}input::placeholder,textarea::placeholder{font-family:var(--description-font-family)}.site-footer__description,.services-description,.services-card__description,.gallery-description,.gallery-card__description,.contact-description,.contact-info__description,.contact-offer-description,.home-hero__description,.home-benefit-description,.home-company-description,.home-company-description p,.home-why-card__description,.home-inquiry-description,.home-inquiry-card__description,.home-cta-description,.about-profile-copy,.about-profile-copy p,.about-profile-highlight p{font-family:var(--description-font-family)}.app-button-icon,.app-button-label{position:relative;z-index:2}.app-button-icon{width:18px;height:18px;flex-shrink:0}.app-button-label{display:inline-flex;align-items:center}button,[type=button],[type=submit],[type=reset],select,[role=button]{cursor:pointer}@theme{ --color-primary: #2287FF; --color-primary-dark: #1C73DB; --color-primary-darker: #1552A3; --color-accent: #ffffff; --radius-xs: 6px; --radius-sm: 6px; --radius-md: 6px; --radius-lg: 6px; --radius-xl: 6px; --radius-2xl: 6px; --radius-3xl: 6px; --radius-4xl: 6px; }.app-section-card{@apply overflow-hidden rounded border border-gray-200 bg-white shadow-sm;}.app-section-body{@apply px-5 py-4 sm:px-6;}.app-title-text{@apply text-sm leading-5;}.app-description-text{@apply text-[10px] leading-[14px] text-gray-600 md:text-[13px] md:leading-[18px];}.app-field{@apply rounded border border-neutral-300/50 bg-white px-3 py-2 text-[13px] text-gray-700 transition-all duration-200 placeholder:text-gray-400 focus:border-[#2287FF] focus:outline-none focus:ring-2 focus:ring-[#2287FF]/20;}.app-btn-primary{@apply inline-flex items-center justify-center gap-2 rounded bg-gradient-to-r from-[#2287FF] to-[#2287FF] px-3 py-2 text-[13px] font-medium text-white transition-opacity hover:opacity-90;}.app-btn-secondary{@apply inline-flex items-center justify-center gap-2 rounded border border-gray-300 bg-white px-3 py-2 text-[13px] font-medium text-gray-700 transition-colors hover:bg-gray-50;}.app-btn-outline-hover-primary{@apply inline-flex items-center justify-center gap-2 rounded border border-gray-300 bg-white px-3 py-2 text-[13px] font-medium text-gray-700 transition-all hover:border-transparent hover:bg-gradient-to-r hover:from-[#2287FF] hover:to-[#2287FF] hover:text-white;}.app-btn-danger{@apply inline-flex items-center justify-center gap-2 rounded bg-red-500 px-3 py-2 text-[13px] font-medium text-white transition-colors hover:bg-red-600;}.app-btn-success{@apply inline-flex items-center justify-center gap-2 rounded bg-green-600 px-3 py-2 text-[13px] font-medium text-white transition-colors hover:bg-green-700;}.app-btn-outline-primary{@apply inline-flex items-center justify-center gap-2 rounded border border-primary bg-white px-3 py-2 text-[13px] font-medium text-primary transition-colors hover:bg-primary/5;}.app-modal-actions{@apply flex flex-col gap-2 sm:flex-row sm:justify-end;}.app-modal-action-btn{@apply w-full sm:w-auto sm:min-w-[120px];}.app-tab-button{@apply rounded border px-3 py-1.5 text-[13px] font-medium transition-colors;}.app-tab-button-plain{@apply rounded px-3 py-1.5 text-[13px] font-medium transition-all;}.app-filter-button{@apply flex items-center justify-between gap-2 rounded border px-3 py-2 text-[13px] font-medium transition-colors;}.app-table-head-row{@apply border-b border-gray-200 bg-gray-50 uppercase;letter-spacing:.04em}.app-table-head-row>th{font-size:9px}@media(min-width:768px){.app-table-head-row>th{font-size:11px}}.app-toolbar-control{@apply min-h-[34px] px-3 py-1.5 text-xs md:text-[13px];}.section-spacing{@apply py-24 lg:py-16;}.hero-section-spacing{@apply pt-12 pb-24 lg:pt-16 lg:pb-16;}.project-table-scroll{width:100%;max-width:calc(100vw - 2rem);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin}@media(min-width:768px){.project-table-scroll{max-width:100%}}.project-table{width:max-content;min-width:100%;table-layout:auto}.project-table th,.project-table td{white-space:nowrap}.overflow-x-auto>table{width:max-content;min-width:100%;table-layout:auto}.overflow-x-auto>table th,.overflow-x-auto>table td{white-space:nowrap}.hero-header__spacer{width:100%;flex-shrink:0}.hero-header{width:100%;position:fixed;top:0;left:0;right:0;z-index:110;background:#121212;box-shadow:var(--app-shadow-sm)}.main-header{width:min(1280px,100%);margin:0 auto;padding:12px 20px;background:transparent}.main-header__inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.header-menu{display:flex;align-items:center;gap:24px;margin-left:auto;margin-right:12px}.header-menu__link{border:none;background:transparent;color:#fff;text-decoration:none;text-underline-offset:2px;font-size:.92rem;font-weight:500;padding:6px 4px 10px;cursor:pointer;white-space:nowrap;transition:color .2s ease;position:relative}.header-menu__link:hover,.header-menu__link.is-active{color:#fff;text-decoration:underline}.header-menu__link+.header-menu__link{padding-left:4px}.header-right{display:flex;align-items:center;gap:12px;justify-self:end}.header-cta-group{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.header-cta{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.8125rem;font-weight:600;white-space:nowrap;border-radius:6px;height:36px;padding:0 14px;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease;isolation:isolate}.header-cta:before{content:"";position:absolute;top:-50%;left:-82%;width:44%;height:200%;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.08) 18%,rgba(255,255,255,.45) 34%,rgba(255,255,255,1) 50%,rgba(255,255,255,.55) 66%,rgba(255,255,255,.12) 82%,transparent 100%);transform:skew(-20deg);opacity:0;z-index:1;pointer-events:none}.header-cta>*{position:relative;z-index:2}.header-cta:hover:before{animation:header-button-flash-right .72s ease-out forwards}.header-cta:hover{transform:translateY(-2px)}.header-cta--primary{border:1px solid #ffffff;background:#fff;color:#121212}.header-cta--primary:hover{border-color:#fff;background:#ffffffeb;color:#121212}.header-cta--secondary{border:1px solid var(--app-primary);background:#fff;color:var(--app-primary)}.header-cta--secondary:hover{border-color:var(--app-primary);background:var(--app-primary);color:var(--app-primary-contrast)}.header-cta__icon{flex-shrink:0;width:16px;height:16px;color:currentColor}.header-logo{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;justify-self:start}.header-logo__typing{position:relative;display:inline-block;padding:6px 0;border-radius:8px;color:#fff;font-weight:800;letter-spacing:.01em;text-transform:none}.header-logo__typing-text{display:inline-block;overflow:hidden;white-space:nowrap;max-width:0ch;font-size:1.25rem;font-weight:800;line-height:1;color:transparent;background-image:linear-gradient(115deg,#fff 0% 42%,#ffffff73 50%,#fff 58% 100%);background-size:220% 100%;background-position:140% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;border-right:2px solid rgba(234,242,255,.6);padding-right:2px;animation:logo-type-loop 8.6s steps(10,end) infinite,logo-caret-blink .8s steps(1,end) infinite,logo-text-flash-right 8.6s ease-in-out infinite}@keyframes logo-type-loop{0%{max-width:0ch}28%{max-width:10ch}88%{max-width:10ch}to{max-width:0ch}}@keyframes logo-caret-blink{0%,49%{border-right-color:#eaf2ff99}50%,to{border-right-color:transparent}}@keyframes logo-text-flash-right{0%,38%{background-position:140% 0}56%{background-position:0% 0}78%,to{background-position:-120% 0}}.header-logo img{height:40px;width:auto;object-fit:contain}.header-drawer-toggle{display:none;width:38px;height:38px;border:none;border-radius:6px;background:transparent;color:#fff;align-items:center;justify-content:center;cursor:pointer}.header-drawer{display:none}@keyframes header-button-flash-right{0%{left:-80%;opacity:0}20%{opacity:1}to{left:125%;opacity:0}}@keyframes header-drawer-soft-gradient{0%{background-position:0% 0%,100% 100%,0% 50%}50%{background-position:100% 35%,0% 65%,100% 50%}to{background-position:0% 0%,100% 100%,0% 50%}}@media(max-width:980px){.main-header{padding:10px 12px}.main-header__inner{display:flex;align-items:center;justify-content:space-between;gap:10px}.header-menu,.header-cta--secondary{display:none}.header-cta{height:36px;padding:0 14px;font-size:.8125rem}.header-logo img{height:32px;max-width:180px;width:auto}.header-drawer-toggle{display:inline-flex;width:36px;height:36px}.header-right{gap:8px;flex-shrink:0}.header-drawer{display:block;position:fixed;inset:0;z-index:180;pointer-events:none}.header-drawer.is-open{pointer-events:auto}.header-drawer__overlay{position:absolute;inset:0;border:none;background:#02061780;opacity:0;transition:opacity .2s ease}.header-drawer.is-open .header-drawer__overlay{opacity:1}.header-drawer__content{position:absolute;top:0;left:0;width:min(340px,90vw);height:100%;background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.12),transparent 34%),radial-gradient(circle at 86% 72%,rgba(255,255,255,.09),transparent 36%),linear-gradient(135deg,#121212,#171717 42%,#121212);background-size:180% 180%,170% 170%,220% 220%;animation:header-drawer-soft-gradient 9s ease-in-out infinite;transform:translate(-100%);transition:transform .24s ease;box-shadow:8px 0 24px #0000006b;display:flex;flex-direction:column}.header-drawer.is-open .header-drawer__content{transform:translate(0)}.header-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px;border-bottom:1px solid var(--app-border)}.header-drawer__close{width:30px;height:30px;border:none;border-radius:6px;background:#fff;color:#121212;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.header-drawer__close:hover{opacity:.92}.header-drawer__menu{display:flex;flex-direction:column;gap:4px;padding:14px}.header-drawer__link{border:none;background:transparent;text-align:left;text-decoration:none;text-underline-offset:2px;color:#fff;border-radius:6px;font-size:.92rem;font-weight:500;padding:10px 12px;cursor:pointer}.header-drawer__link.is-active,.header-drawer__link:hover{background:transparent;color:#fff;text-decoration:underline}.header-drawer__cta-group{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding:0 14px 16px}.header-drawer__cta-group .header-cta--secondary{display:inline-flex}.header-drawer__cta-group .header-cta{width:100%}}@media(max-width:520px){.main-header{padding:8px 10px}.header-logo img{height:28px;max-width:160px}.header-drawer-toggle{width:34px;height:34px}}.site-footer{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#121212;color:var(--app-text);padding:56px 20px 18px;font-family:var(--snpro-font-family)}.site-footer__container{width:min(1200px,100%);margin:0 auto;display:flex;flex-direction:column;gap:18px}.site-footer__grid{width:100%;display:grid;grid-template-columns:35fr 25fr 40fr;gap:28px}.site-footer__col{min-width:0}.site-footer__title{margin:0 0 12px;color:#fff;font-size:1.06rem;font-weight:600;letter-spacing:.01em}.site-footer__description{margin:0 0 12px;color:#fff;font-size:.92rem;line-height:1.4}.site-footer__line{margin:0 0 8px;font-size:.92rem;line-height:1.4;color:#fff;font-family:SN Pro,sans-serif}.site-footer__contact-link{color:#fff;text-decoration:underline;text-underline-offset:2px;transition:opacity .2s ease}.site-footer__contact-link:hover{opacity:.78}.site-footer__menu{display:flex;flex-direction:column;gap:10px}.site-footer__menu-link{color:#fff;text-decoration:none;text-underline-offset:2px;font-size:.92rem;font-weight:500;line-height:1.4;transition:color .2s ease,opacity .2s ease}.site-footer__menu-link:hover{color:#fff;text-decoration:underline;opacity:1}.site-footer__subscribe-form{display:flex;gap:10px;align-items:center;margin-bottom:14px}.site-footer__input{flex:1 1 auto;min-width:0;height:42px;border-radius:6px;border:1px solid rgba(255,255,255,.35);background-color:#ffffff14;color:#fff;padding:0 12px;font-size:.92rem;outline:none}.site-footer__input::placeholder{color:#ffffffb3}.site-footer__subscribe-button{position:relative;overflow:hidden;isolation:isolate;height:40px;border:1px solid #ffffff;background-color:#fff;color:#121212;border-radius:6px;padding:0 18px;font-size:.875rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}.site-footer__subscribe-button>*{position:relative;z-index:1}.site-footer__subscribe-button:before{content:"";position:absolute;top:-50%;left:-82%;width:44%;height:200%;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.08) 24%,rgba(255,255,255,.72) 48%,rgba(216,220,226,.65) 58%,rgba(255,255,255,.08) 76%,transparent 100%);transform:skew(-20deg);opacity:0;z-index:0;pointer-events:none}.site-footer__subscribe-button:hover:before{animation:footer-button-flash-right .72s ease-out forwards}.site-footer__subscribe-button:hover{transform:translateY(-2px);border-color:#fff;background:#ffffffeb;color:#121212}.site-footer__bottom{width:100%;text-align:left;border-top:1px solid var(--app-border);padding-top:12px}.site-footer__offer-text{margin:14px 0 0;max-width:58ch;color:#ffffffe6;font-size:.95rem;line-height:1.4;font-weight:400;font-family:SN Pro,sans-serif}.site-footer__offer-email{color:#fff;font-size:inherit;line-height:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px}.site-footer__offer-email:hover{text-decoration:underline}.site-footer__socials{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap}.site-footer__social-link{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background-color:#ffffff14;color:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}.site-footer__social-link svg{flex-shrink:0}.site-footer__social-link:hover{transform:translateY(-2px);background-color:#fff;border-color:#fff;color:#121212}.site-footer__bottom p{margin:0;font-size:.82rem;color:#fff;font-family:SN Pro,sans-serif}@keyframes footer-button-flash-right{0%{left:-80%;opacity:0}20%{opacity:1}to{left:125%;opacity:0}}@media(max-width:768px){.site-footer{padding:40px 28px 14px}.site-footer__grid{grid-template-columns:1fr;gap:20px}.site-footer__subscribe-form{flex-direction:column;align-items:stretch}.site-footer__subscribe-button{width:100%}.site-footer__socials{justify-content:flex-start}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.home-hero-section{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:0}.home-hero{position:relative;width:100%;height:563px;min-height:563px;display:grid;grid-template-columns:1fr;align-items:center;justify-items:center;overflow:hidden;padding:clamp(40px,6vw,88px) max(20px,calc((100vw - 1200px)/2 + 20px));background:radial-gradient(circle at 8% 88%,#ffffff17,#ffffff0e 7%,#fff0 15%),radial-gradient(circle at 92% 88%,#ffffff17,#ffffff0e 7%,#fff0 15%),#121212;background-size:150% 150%,150% 150%,100% 100%;background-position:0% 100%,100% 100%,center;background-repeat:no-repeat;animation:home-hero-subtle-float 12s ease-in-out infinite}.home-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 92%,rgba(255,255,255,.04),transparent 18%),radial-gradient(circle at 86% 92%,rgba(255,255,255,.04),transparent 18%);opacity:.5;pointer-events:none}.home-hero__content{position:relative;z-index:1;width:min(100%,820px);color:#fff;text-align:center;justify-self:center}.home-hero__subtitle-label{margin:0 0 14px;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:none}.home-hero__title{position:relative;display:flex;justify-content:center;margin:0;max-width:100%;overflow:hidden;line-height:1.4;letter-spacing:.01em}.home-hero__typing{position:relative;display:inline-block;max-width:100%;white-space:normal;overflow-wrap:anywhere;color:#fff;font-size:clamp(1.28rem,4vw,2.85rem);font-weight:900;font-variation-settings:"wght" 900;line-height:1.25}.home-hero__description{margin:18px auto 0;max-width:68ch;color:#ffffffe6;font-size:clamp(.96rem,1.4vw,1.1rem);line-height:1.4;text-align:center}.home-hero__actions{margin-top:28px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.home-hero__button,.home-company-button{position:relative;min-width:190px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;overflow:hidden;border-radius:6px;padding:0 18px;font-size:.6875rem;line-height:1;font-weight:600;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;transition:all .2s ease;text-decoration:none;isolation:isolate}.home-hero__button .app-button-icon,.home-company-button .app-button-icon,.home-cta-button .app-button-icon{width:21px;height:21px}.home-hero__button span,.home-company-button span{position:relative;z-index:2}.home-hero__button:before,.home-company-button:before{content:"";position:absolute;top:-45%;left:-80%;width:42%;height:190%;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.08) 18%,rgba(255,255,255,.45) 34%,rgba(255,255,255,1) 50%,rgba(255,255,255,.55) 66%,rgba(255,255,255,.12) 82%,transparent 100%);transform:skew(-20deg);opacity:0;z-index:1;pointer-events:none}.home-hero__button:hover:before,.home-company-button:hover:before{animation:home-button-flash-right .72s ease-out forwards}.home-hero__button:hover,.home-company-button:hover{transform:translateY(-2px)}.home-hero__button--primary{border:1px solid #ffffff;background:#fff;color:#121212}.home-hero__button--primary:hover{border-color:#fff;background:#ffffffeb;color:#121212}.home-hero__button--secondary{border:1px solid #ffffff;background:transparent;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.home-hero__button--secondary:hover{background:#fff;border-color:#fff;color:#121212}.home-tech-section{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#121212;display:flex;justify-content:center;padding:0 0 20px;position:relative;z-index:4}.home-tech-card{width:min(1200px,100%);margin:0 22px -47px;padding:18px 0;border-radius:8px;border:1px solid rgba(15,23,42,.1);background:#fff;box-shadow:0 12px 28px #0f172a2e;transform:translateY(-62px);overflow:hidden;position:relative;z-index:5}.home-tech-marquee{width:100%;overflow:hidden}.home-tech-marquee__track{width:200%;display:flex;align-items:center;animation:home-tech-marquee-right 28s linear infinite;will-change:transform}.home-tech-marquee__group{flex:0 0 50%;width:50%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:10px;padding:0 16px}.home-tech-marquee__group .home-tech-marquee__item:nth-child(n+6){display:none}.home-tech-marquee__item{width:100%;height:64px;display:inline-flex;align-items:center;justify-content:center;padding:6px 8px;border-radius:8px;text-decoration:none}.home-tech-marquee__item img{max-width:100%;max-height:100%;object-fit:contain;display:block;filter:grayscale(100%);opacity:.8}.home-benefits-section{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);display:flex;justify-content:center;margin-top:-36px;padding:0 0 8px;position:relative;z-index:3;background:#fff}.home-benefits-strip{width:min(1200px,100%);margin:0 22px;padding:18px 24px;border-radius:6px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:var(--app-shadow-md);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:center}.home-benefit-item{display:flex;align-items:center;gap:18px;padding:6px 18px}.home-benefit-item+.home-benefit-item{border-left:1px solid var(--app-border)}.home-benefit-icon{flex:0 0 auto;width:56px;height:56px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#2287ff2e;color:var(--app-primary)}.home-benefit-copy{min-width:0;padding-top:4px}.home-benefit-title{margin:0;color:#0f172a;font-size:1rem;line-height:1.4;font-weight:600}.home-benefit-value{margin:4px 0 0;color:#0f172a;font-size:1.35rem;line-height:1.2;font-weight:800}.home-benefit-description{margin:4px 0 0;color:#64748b;font-size:.92rem;line-height:1.4}.home-company-section{width:100%;display:flex;justify-content:center;padding:76px 0 64px;background:transparent}.home-company-shell{width:min(1200px,100%);margin:0 22px;text-align:center}.home-company-logo-wrap{display:flex;justify-content:center;margin-bottom:22px}.home-company-title{margin:0;color:var(--app-text);font-size:clamp(1.45rem,3vw,2.12rem);line-height:1.45;font-weight:700;letter-spacing:.01em}.home-company-description{margin:18px auto 0;max-width:1080px;color:var(--app-text-muted);font-size:clamp(.95rem,1.4vw,1.05rem);line-height:1.4;text-align:center}.home-company-description p{margin:0}.home-company-description p+p{margin-top:16px}.home-company-action{display:flex;justify-content:center;margin-top:30px}.home-company-button{border:1px solid var(--app-primary);background:var(--app-primary);color:var(--app-primary-contrast)}.home-company-button:hover{border-color:var(--app-primary);background:#fff;color:var(--app-primary)}.home-why-section{width:100%;display:flex;justify-content:center;padding:72px 0;background:transparent}.home-why-shell{width:min(1200px,100%);margin:0 22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:72px}.home-why-visual{width:min(100%,520px);aspect-ratio:1 / 1;justify-self:center;overflow:hidden;border-radius:16px}.home-why-image{width:100%;height:100%;object-fit:cover;display:block}.home-why-content{display:flex;flex-direction:column;gap:16px}.home-why-card{display:flex;align-items:center;gap:18px;padding:18px 24px;border-radius:6px;background:var(--app-surface-2);border:1px solid var(--app-border);box-shadow:var(--app-shadow-md);text-align:left}.home-why-card__icon{flex:0 0 auto;width:56px;height:56px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#2287ff2e;color:var(--app-primary)}.home-why-card__copy{min-width:0;padding-top:4px}.home-why-card__title{margin:0;color:var(--app-text);font-size:1rem;line-height:1.4;font-weight:600}.home-why-card__description{margin:4px 0 0;color:var(--app-text-muted);font-size:.92rem;line-height:1.4}.home-inquiry-section{width:100%;display:flex;justify-content:center;padding:28px 0 24px}.home-inquiry-shell{width:min(1200px,100%);margin:0 22px;text-align:center}.home-inquiry-title{margin:0;color:var(--app-text);font-size:clamp(1.2rem,2.3vw,1.72rem);line-height:1.45;font-weight:600}.home-inquiry-description{margin:14px auto 0;max-width:760px;color:var(--app-text-muted);font-size:1rem;line-height:1.4}.home-inquiry-grid{margin-top:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.home-inquiry-card{display:flex;align-items:center;gap:18px;padding:18px 24px;border-radius:6px;background:var(--app-surface-2);border:1px solid var(--app-border);box-shadow:var(--app-shadow-md);text-align:left}.home-inquiry-card__icon{flex:0 0 auto;width:56px;height:56px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#2287ff2e;color:var(--app-primary)}.home-inquiry-card__copy{min-width:0;padding-top:4px}.home-inquiry-card__title{margin:0;color:var(--app-text);font-size:1rem;line-height:1.4;font-weight:600}.home-inquiry-card__description{margin:4px 0 0;color:var(--app-text-muted);font-size:.92rem;line-height:1.4}.home-cta-section{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);overflow:hidden;padding:40px 0;background:#fff;border-top:1px solid rgba(15,23,42,.08)}.home-cta-section:before{content:none}.home-cta-section:after{content:none}.home-cta-shell{position:relative;z-index:1;width:min(1200px,100%);margin:0 auto;padding:0 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px}.home-cta-title{margin:0;color:#0f172a;font-size:1.325rem;line-height:1.4;font-weight:600;font-family:var(--snpro-font-family);letter-spacing:.01em;text-transform:none}.home-cta-description{margin:5.625px 0 0;max-width:760px;color:#475569;font-size:.92rem;line-height:1.4}.home-cta-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.home-cta-button{position:relative;min-width:190px;height:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;overflow:hidden;border-radius:6px;padding:0 18px;border:1px solid transparent;font-size:.6875rem;line-height:1;font-weight:600;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease;isolation:isolate}.home-cta-button span{position:relative;z-index:2}.home-cta-button:before{content:"";position:absolute;top:-50%;left:-82%;width:44%;height:200%;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.12) 24%,rgba(255,255,255,.8) 48%,rgba(34,135,255,.75) 58%,rgba(255,255,255,.1) 76%,transparent 100%);transform:skew(-20deg);opacity:0;z-index:1;pointer-events:none}.home-cta-button:hover:before{animation:home-button-flash-right .72s ease-out forwards}.home-cta-button:hover{transform:translateY(-2px)}.home-cta-button--contact{border-color:#121212;background:#121212;color:#fff}.home-cta-button--contact:hover{background:#1f1f1f;border-color:#121212;color:#fff}.home-cta-button--profile{border-color:#121212;background:#121212;color:#fff}.home-cta-button--profile:hover{background:#1f1f1f;border-color:#121212;color:#fff}.home-history-section{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#121212;padding:15.75px 0 48px}.home-history-shell{width:min(1200px,100%);margin:0 auto;padding:0 22px}.home-history-visual{margin:0 0 14px}.home-history-visual__image{width:100%;height:auto;display:block;border-radius:0;border:0}.home-history-title{margin:0;color:#fff;font-size:1.06rem;line-height:1.4;font-weight:600;font-family:var(--snpro-font-family);letter-spacing:.01em;text-align:left}.home-history-title+.home-history-item{margin-top:14px}.home-history-item+.home-history-item{margin-top:20px}.home-history-item+.home-history-title{margin-top:32px}.home-history-item__title{margin:0;color:#fff;font-size:.92rem;line-height:1.4;font-weight:700}.home-history-item__title--underline{padding-bottom:0;border-bottom:none}.home-history-item__title-link{color:inherit;text-decoration:none}.home-history-item__word{display:inline-block;margin-right:.3em;padding-bottom:1px;border-bottom:1px solid rgba(255,255,255,.95);line-height:1.2}.home-history-item__description{margin:10px 0 0;max-width:1020px;color:#ffffffd1;font-size:.92rem;line-height:1.4}.home-history-link{margin-top:12px;display:inline-block;color:#fff;font-size:.92rem;line-height:1.4;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:opacity .2s ease}.home-history-link:hover{opacity:.82}.home-history-project-btn{margin-top:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border-radius:6px;border:1px solid #ffffff;background:#fff;color:#121212;font-size:.75rem;line-height:1;font-weight:600;text-transform:uppercase;text-decoration:none;transition:background-color .2s ease}.home-history-project-btn__icon{width:16px;height:16px}.home-history-project-btn:hover{background:#ffffffe6}@media(min-width:641px){.home-hero__button,.home-company-button,.home-cta-button{font-size:.75rem}.home-hero__button .app-button-icon,.home-company-button .app-button-icon,.home-cta-button .app-button-icon{width:22px;height:22px}}@keyframes home-button-flash-right{0%{left:-80%;opacity:0}20%{opacity:1}to{left:125%;opacity:0}}@keyframes home-hero-subtle-float{0%{background-position:0% 100%,100% 100%,center}50%{background-position:14% 84%,86% 84%,center}to{background-position:0% 100%,100% 100%,center}}@keyframes home-tech-marquee-right{0%{transform:translate3d(-50%,0,0)}to{transform:translateZ(0)}}@media(max-width:900px){.home-hero{height:563px;min-height:563px;padding:36px 22px}.home-tech-card{margin-bottom:-36px;transform:translateY(-48px)}.home-hero__content{width:100%}.home-hero__title{max-width:100%}.home-benefits-strip{grid-template-columns:1fr;gap:16px;padding:24px}.home-benefit-item+.home-benefit-item{border-left:none;border-top:1px solid var(--app-border);padding-top:22px}.home-cta-section{padding:34px 0}.home-history-section{padding:25.875px 0 39px}.home-cta-shell{grid-template-columns:1fr;gap:20px;text-align:center}.home-cta-description{margin-left:auto;margin-right:auto}.home-cta-actions{justify-content:center}}@media(max-width:640px){.home-hero{height:563px;min-height:563px;align-items:center;padding:28px 22px}.home-tech-section{padding-bottom:14px}.home-tech-card{margin:0 16px -29px;padding:14px 0;transform:translateY(-38px)}.home-tech-marquee__track{animation-duration:22s}.home-tech-marquee__group{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 12px}.home-tech-marquee__group .home-tech-marquee__item:nth-child(n+4){display:none}.home-tech-marquee__item{height:52px;padding:4px 8px}.home-hero__subtitle-label{margin-bottom:10px;font-size:.68rem;line-height:1.5}.home-hero__typing{max-width:100%;white-space:normal;overflow-wrap:anywhere;font-size:clamp(1.24rem,7.2vw,2rem);font-weight:900;font-variation-settings:"wght" 900}.home-hero__title{overflow:visible;line-height:1.3}.home-hero__description{margin-top:14px;font-size:.92rem;line-height:1.4}.home-hero__actions{margin-top:22px;flex-direction:column;align-items:stretch}.home-hero__button,.home-company-button{width:100%;min-width:0}.home-benefit-item{flex-direction:column;align-items:flex-start;gap:12px;padding:10px 0}.home-benefit-item+.home-benefit-item{padding-top:18px}.home-benefit-copy{padding-top:0}.home-cta-section{padding:30px 0}.home-history-section{padding:21.375px 0 33px}.home-history-shell{padding:0 16px}.home-history-visual{margin-bottom:12px}.home-history-visual__image{width:100%}.home-history-title{font-size:1.06rem}.home-history-item__title{font-size:.92rem}.home-cta-shell{padding:0 16px}.home-cta-title{font-size:1.325rem}.home-cta-description{font-size:.92rem;line-height:1.4}.home-cta-actions{width:100%;flex-direction:column;gap:12px;align-items:stretch}.home-cta-button{width:100%;min-width:0;height:40px;min-height:40px;padding:0 18px}}.about-intro-section,.about-history-section{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#121212}.about-intro-section{padding:28px 0 20px}.about-history-section{padding:8px 0 48px}.about-intro-shell,.about-history-shell{width:min(1200px,100%);margin:0 auto;padding:0 22px}.about-intro-visual{margin:0 0 14px}.about-intro-visual__image{width:100%;height:auto;display:block;border-radius:0;border:0}.about-intro-title,.about-history-title{margin:0;color:#fff;font-size:1.06rem;line-height:1.4;font-weight:600;font-family:var(--snpro-font-family);letter-spacing:.01em;text-align:left}.about-intro-description{margin:12px 0 0;max-width:1040px;color:#ffffffdb;font-size:.92rem;line-height:1.4}.about-intro-description+.about-intro-description{margin-top:10px}.about-history-title+.about-history-item{margin-top:14px}.about-history-item+.about-history-item{margin-top:20px}.about-history-item+.about-history-title{margin-top:32px}.about-history-item__title{margin:0;color:#fff;font-size:.92rem;line-height:1.4;font-weight:700}.about-history-item__title-link{color:inherit;text-decoration:none}.about-history-item__word{display:inline-block;margin-right:.3em;padding-bottom:1px;border-bottom:1px solid rgba(255,255,255,.95);line-height:1.2}.about-history-item__description{margin:10px 0 0;max-width:1020px;color:#ffffffd1;font-size:.92rem;line-height:1.4}.about-history-link{margin-top:12px;display:inline-block;color:#fff;font-size:.92rem;line-height:1.4;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:opacity .2s ease}.about-history-link:hover{opacity:.82}@media(max-width:900px){.about-intro-section{padding:24px 0 18px}.about-history-section{padding:8px 0 42px}}@media(max-width:640px){.about-intro-section{padding:20px 0 14px}.about-history-section{padding:8px 0 34px}.about-intro-shell,.about-history-shell{padding:0 16px}.about-intro-visual{margin-bottom:12px}.about-intro-visual__image{width:100%}}
