/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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 none);--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 none);--color-neutral-100:oklch(97% 0 none);--color-neutral-200:oklch(92.2% 0 none);--color-neutral-300:oklch(87% 0 none);--color-neutral-400:oklch(70.8% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-neutral-600:oklch(43.9% 0 none);--color-neutral-700:oklch(37.1% 0 none);--color-neutral-800:oklch(26.9% 0 none);--color-neutral-900:oklch(20.5% 0 none);--color-neutral-950:oklch(14.5% 0 none);--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 none);--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:calc(1.5 / 1);--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:calc(2.25 / 1.875);--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 #0000000d;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--inset-shadow-2xs:inset 0 1px #0000000d;--inset-shadow-xs:inset 0 1px 1px #0000000d;--inset-shadow-sm:inset 0 2px 4px #0000000d;--drop-shadow-xs:0 1px 1px #0000000d;--drop-shadow-sm:0 1px 2px #00000026;--drop-shadow-md:0 3px 3px #0000001f;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-xl:0 9px 7px #0000001a;--drop-shadow-2xl:0 25px 25px #00000026;--text-shadow-2xs:0px 1px 0px #00000026;--text-shadow-xs:0px 1px 1px #0003;--text-shadow-sm:0px 1px 0px #00000013, 0px 1px 1px #00000013, 0px 2px 2px #00000013;--text-shadow-md:0px 1px 1px #0000001a, 0px 1px 2px #0000001a, 0px 2px 4px #0000001a;--text-shadow-lg:0px 1px 2px #0000001a, 0px 3px 2px #0000001a, 0px 4px 8px #0000001a;--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;--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:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.bg-green-400{background-color:var(--color-green-400)}.bg-indigo-400{background-color:var(--color-indigo-400)}.bg-red-400{background-color:var(--color-red-400)}.bg-yellow-400{background-color:var(--color-yellow-400)}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-1{padding-block:var(--spacing)}.text-green-50{color:var(--color-green-50)}.text-indigo-50{color:var(--color-indigo-50)}.text-red-50{color:var(--color-red-50)}.text-yellow-50{color:var(--color-yellow-50)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}}:root{--ink:#14161b;--ink-soft:#565c6b;--paper:#fbfbfc;--paper-2:#eef1f6;--paper-3:#e3e8f1;--cobalt:#4f39f6;--cobalt-deep:#3b27c9;--cobalt-wash:#ece9fe;--haze:#cbc9e4;--hairline:#dedcec;--void:#07080b;--void-2:#121419;--void-line:#23262f;--void-ink:#f2f3f6;--void-ink-soft:#8a90a0;--spark:#5b84ff;--grad-1:#5b84ff;--grad-2:#7c5cff;--grad-3:#35d0ff;--violet:#7c5cff;--violet-soft:#a78bff;--ok:#0e9f6e;--err:#d93a3a;--shadow-card:0 1px 2px #14161b0d, 0 14px 34px -14px #1b54e829;--shadow-lift:0 3px 6px #14161b0f, 0 30px 70px -20px #1b54e842;--shadow-glow:0 10px 30px -12px #7c5cffb3;--step:clamp(1rem, .86rem + .66vw, 1.12rem);--maxw:1240px;--ease:cubic-bezier(.16, 1, .3, 1);--h-hero:clamp(2.4rem, 11cqi, 6rem);--h-section:clamp(1.9rem, 6.6cqi, 3.1rem);--h-display:clamp(2rem, 7.2cqi, 3.8rem);--h-sub:clamp(1.5rem, 4.4cqi, 2.2rem)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#eceef3;--ink-soft:#9aa1b1;--paper:#0e1015;--paper-2:#161922;--paper-3:#1e222d;--cobalt:#8b7cff;--cobalt-deep:#a78bff;--cobalt-wash:#1b1830;--haze:#3a3550;--hairline:#2a2740;--shadow-card:0 1px 2px #00000073, 0 14px 34px -14px #0009;--shadow-lift:0 3px 6px #00000080, 0 32px 72px -20px #000000b8}}:root[data-theme=dark]{--ink:#eceef3;--ink-soft:#9aa1b1;--paper:#0e1015;--paper-2:#161922;--paper-3:#1e222d;--cobalt:#8b7cff;--cobalt-deep:#a78bff;--cobalt-wash:#1b1830;--haze:#3a3550;--hairline:#2a2740;--shadow-card:0 1px 2px #00000073, 0 14px 34px -14px #0009;--shadow-lift:0 3px 6px #00000080, 0 32px 72px -20px #000000b8}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:84px}body{background:var(--paper);color:var(--ink);font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;font-size:var(--step);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.72}h1,h2,h3,h4{letter-spacing:.005em;text-wrap:balance;margin:0;font-family:Zen Kaku Gothic New,Noto Sans TC,system-ui,sans-serif;font-weight:900;line-height:1.12}p{margin:0}a{color:inherit;text-decoration:none}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,3.25rem)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.section>.wrap:not(.inq-grid):not(.contact-grid){container-type:inline-size}.sec-head{flex-direction:column;gap:.9rem;margin-bottom:clamp(2.5rem,5vw,4rem);display:flex}.sec-head h2{font-size:var(--h-section);letter-spacing:-.01em;text-wrap:balance}.h-sub{font-size:var(--h-sub)}.grad{--bg-size:300%;background:linear-gradient(92deg, var(--grad-1), var(--grad-2), var(--grad-3), var(--grad-1)) 0 0 / var(--bg-size) 100%;color:#0000;-webkit-background-clip:text;background-clip:text;padding-bottom:.06em;animation:9s linear infinite grad-drift}@keyframes grad-drift{to{background-position:var(--bg-size) 0}}.grad--light{--grad-1:#4f39f6;--grad-2:#7c5cff;--grad-3:#1b54e8}.eyebrow+h2{margin-top:.4rem}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--cobalt);font-family:Roboto Mono,ui-monospace,monospace;font-size:.74rem;font-weight:500}.section{padding-block:clamp(4.5rem,10vw,9rem);position:relative}.section--tint{background:var(--paper-2)}.lede{color:var(--ink-soft);max-width:52ch;font-size:1.05rem}.lede--void{color:var(--void-ink-soft);margin-top:1rem}.btn{cursor:pointer;transition:transform .2s var(--ease), background-color .2s, box-shadow .2s, border-color .2s;white-space:nowrap;border:1px solid #0000;border-radius:12px;align-items:center;gap:.55rem;padding:1rem 1.7rem;font-family:Zen Kaku Gothic New,sans-serif;font-size:1rem;font-weight:700;display:inline-flex}.btn--primary{background:linear-gradient(96deg, var(--grad-1), var(--grad-2));color:#fff;box-shadow:var(--shadow-card)}.btn--primary:hover{background:linear-gradient(96deg, var(--grad-2), var(--grad-1));box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn--primary:active{transform:translateY(0)}.btn--ghost{background:var(--paper);color:var(--ink);border-color:var(--haze)}.btn--ghost:hover{border-color:var(--violet);color:var(--violet);transform:translateY(-2px)}.btn--sm{border-radius:10px;padding:.6rem 1.05rem;font-size:.92rem}button.btn{line-height:normal}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px;border-radius:6px}header.site{z-index:60;background:0 0;border-top:1px solid #ffffff1a;border-bottom:1px solid #0000;transition:background-color .3s,border-color .3s;position:absolute;inset:auto 0 0}header.site .nav-links a{color:var(--void-ink-soft)}header.site .nav-links a:hover{color:var(--void-ink)}header.site .brand{opacity:0;pointer-events:none}header.site.is-past{background:var(--paper);border-top-color:#0000;border-bottom-color:var(--hairline);position:fixed;top:0;bottom:auto}header.site.is-past .nav-links a{color:var(--ink-soft)}header.site.is-past .nav-links a:hover{color:var(--ink)}header.site.is-past .brand{opacity:1;pointer-events:auto}header.site.is-static{background:var(--paper);border-top-color:#0000;border-bottom-color:var(--hairline);position:sticky;top:0;bottom:auto}header.site.is-static .brand{opacity:1;pointer-events:auto}header.site.is-static .nav-links a{color:var(--ink-soft)}header.site.is-static .nav-links a:hover{color:var(--ink)}.nav-links a[aria-current=page]{color:var(--cobalt);font-weight:700}.nav{justify-content:space-between;align-items:center;height:68px;display:flex}.brand{letter-spacing:.005em;transition:color .3s, opacity .4s var(--ease);align-items:center;gap:.75rem;font-family:Zen Kaku Gothic New,sans-serif;font-size:1.12rem;font-weight:900;display:flex}.brand .logo-mark{width:auto;height:38px;color:var(--ink);transition:color .3s;display:block}@media (width<=560px){.brand .logo-mark{height:32px}}header.site:not(.is-past):not(.is-static) .brand .logo-mark{color:var(--void-ink)}.brand small{color:var(--ink-soft);letter-spacing:.18em;font-family:Roboto Mono,monospace;font-size:.7rem;font-weight:500;transition:color .3s}.nav-links{align-items:center;gap:1.6rem;display:flex}.nav-links a{color:var(--ink-soft);align-items:center;min-height:44px;padding-inline:.35rem;font-size:.94rem;font-weight:500;transition:color .15s;display:inline-flex}.nav-links a:hover{color:var(--ink)}@media (width<=880px){.nav-links{display:none}}.nav-toggle{appearance:none;cursor:pointer;width:44px;height:44px;color:inherit;background:0 0;border:0;place-items:center;margin:0;padding:0;display:none}@media (width<=880px){.nav-toggle{display:grid}}.nav-toggle-bars,.nav-toggle-bars:before,.nav-toggle-bars:after{background:var(--ink);width:22px;height:2px;transition:background-color .3s, opacity .2s, top .25s var(--ease), bottom .25s var(--ease);border-radius:2px;display:block}.nav-toggle-bars{position:relative}.nav-toggle-bars:before,.nav-toggle-bars:after{content:"";position:absolute;left:0}.nav-toggle-bars:before{top:-7px}.nav-toggle-bars:after{bottom:-7px}header.site:not(.is-past):not(.is-static) .nav-toggle-bars,header.site:not(.is-past):not(.is-static) .nav-toggle-bars:before,header.site:not(.is-past):not(.is-static) .nav-toggle-bars:after{background:var(--void-ink)}.nav-toggle[aria-expanded=true] .nav-toggle-bars{background:0 0}.nav-toggle[aria-expanded=true] .nav-toggle-bars:before{top:0}.nav-toggle[aria-expanded=true] .nav-toggle-bars:after{bottom:0}.nav-panel{z-index:59;background:var(--paper);border-bottom:1px solid var(--hairline);box-shadow:var(--shadow-card);opacity:0;transition:opacity .22s var(--ease);position:fixed;top:68px;left:0;right:0}.nav-panel.is-open{opacity:1}.nav-panel-inner{max-width:var(--maxw);margin-inline:auto;padding:.5rem clamp(1.25rem,5vw,3.25rem) 1.25rem;display:grid}.nav-panel-inner a{color:var(--ink);border-bottom:1px solid var(--hairline);padding:.95rem 0;font-family:Zen Kaku Gothic New,sans-serif;font-size:1.02rem;font-weight:700;transition:color .15s}.nav-panel-inner a:last-child{border-bottom:0}.nav-panel-inner a:hover{color:var(--cobalt)}.hero{background:var(--void);place-items:center;min-height:100dvh;display:grid;position:relative}.hero-media{z-index:0;background:linear-gradient(115deg,#12224d 0%,#1b54e8 22%,#5b84ff 40%,#0d1730 62%,#1b54e8 82%,#12224d 100%) 0 0/320% 320%;animation:18s ease-in-out infinite alternate drift;position:absolute;inset:0;overflow:hidden}@keyframes drift{0%{background-position:0 40%}to{background-position:100% 60%}}.hero-media video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-knockout{z-index:1;pointer-events:none;position:absolute;inset:0}.hero-knockout svg{width:100%;height:100%;display:block;position:absolute;inset:0}.hero-knockout .plate{fill:var(--void)}.hero-knockout{animation:knockIn 1.2s var(--ease) both}@keyframes knockIn{0%{opacity:0}to{opacity:1}}.work-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:clamp(2.5rem,5vw,4rem);display:flex}.work-head .left{flex-direction:column;gap:.9rem;display:flex}.work-head h2{font-size:var(--h-section);letter-spacing:-.01em;text-wrap:balance}.bento{grid-template-columns:repeat(12,1fr);gap:clamp(.8rem,1.6vw,1.25rem);display:grid}.tile{background:var(--void-2);border:1px solid var(--hairline);min-height:240px;transition:transform .4s var(--ease), box-shadow .4s var(--ease), border-color .3s;appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:flex-end;width:100%;margin:0;padding:0;display:flex;position:relative;overflow:hidden}.tile:hover{box-shadow:var(--shadow-lift);border-color:var(--haze);transform:translateY(-6px)}.tile-img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease), filter .4s var(--ease);position:absolute;inset:0}.tile:hover .tile-img{filter:brightness(1.06);transform:scale(1.05)}.tile .ph{color:var(--ink-soft);letter-spacing:.12em;background:var(--paper-3);place-items:center;font-family:Roboto Mono,monospace;font-size:.7rem;display:grid;position:absolute;inset:0}.tile .caption{z-index:2;color:var(--void-ink);background:linear-gradient(#0000,#07080b8c 26%,#07080beb 58%);padding:1.15rem 1.25rem;position:relative}.tile .caption .kind{letter-spacing:.16em;text-transform:uppercase;color:var(--violet-soft);font-family:Roboto Mono,monospace;font-size:.66rem}.tile .caption .tile-title{color:var(--void-ink);margin-top:.3rem;font-family:Zen Kaku Gothic New,Noto Sans TC,system-ui,sans-serif;font-size:1.06rem;font-weight:900;line-height:1.25;display:block}.tile .caption .kind{display:block}.tile .play-dot{z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:42px;height:42px;transition:background-color .3s var(--ease), transform .3s var(--ease), border-color .3s;background:#07080b8c;border:1px solid #ffffff3d;border-radius:50%;place-items:center;display:grid;position:absolute;top:1rem;right:1rem}.tile .play-dot svg{fill:#fff;width:16px;height:16px;margin-left:2px}.tile:hover .play-dot{background:linear-gradient(96deg, var(--grad-1), var(--grad-2));border-color:#0000;transform:scale(1.08)}.tile--hero{grid-column:span 7;min-height:460px}.tile--side{grid-column:span 5;min-height:460px}.tile--third{grid-column:span 4}@media (width<=900px){.bento{grid-template-columns:repeat(2,1fr)}.tile--hero,.tile--side,.tile--third{grid-column:span 2;min-height:220px}}.lightbox{z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:opacity .3s var(--ease), visibility .3s;background:#040508db;place-items:center;padding:clamp(1rem,4vw,3rem);display:grid;position:fixed;inset:0}.lightbox.is-open{opacity:1;visibility:visible}.lightbox-frame{aspect-ratio:16/9;width:100%;transition:transform .35s var(--ease);background:#000;border-radius:14px;position:relative;overflow:hidden;transform:scale(.97);box-shadow:0 40px 120px -30px #000000e6}.lightbox.is-open .lightbox-frame{transform:scale(1)}.lightbox-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.lightbox-close{z-index:2;color:#fff;cursor:pointer;width:44px;height:44px;transition:background-color .2s, transform .2s var(--ease);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;place-items:center;display:grid;position:absolute;top:clamp(.75rem,2vw,1.5rem);right:clamp(.75rem,2vw,1.5rem)}.lightbox-close:hover{background:#fff3;transform:scale(1.06)}.lightbox-stage{width:min(100%,1180px)}.lightbox-title{text-align:center;letter-spacing:.1em;color:#ffffffb3;margin-top:1rem;font-family:Roboto Mono,monospace;font-size:.78rem}body.lb-open{overflow:hidden}.svc-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(2rem,6vw,5rem);display:grid;container-type:inline-size}@media (width<=900px){.svc-grid{grid-template-columns:1fr;gap:2rem}}.svc-grid .head h2{font-size:var(--h-display);letter-spacing:-.015em;text-wrap:balance;line-height:1.08}.svc-list{display:grid}.svc-item{border-top:1px solid var(--hairline);grid-template-columns:auto 1fr;align-items:baseline;gap:1.4rem;padding:1.7rem 0;display:grid}.svc-item:last-child{border-bottom:1px solid var(--hairline)}.svc-item .idx{color:var(--ink-soft);font-family:Roboto Mono,monospace;font-size:.78rem}.svc-item h3{font-size:1.22rem}.svc-item p{color:var(--ink-soft);max-width:44ch;margin-top:.45rem;font-size:.95rem}.svc-item .svc-who{letter-spacing:.04em;color:var(--cobalt);margin-top:.55rem;font-family:Roboto Mono,monospace;font-size:.74rem}.svc-lede{margin-top:1rem}.proc{max-width:860px;display:grid}.proc-step{border-bottom:1px solid var(--hairline);grid-template-columns:56px minmax(0,1fr);gap:0 1.6rem;padding:2.2rem 0;display:grid}.proc-step:first-child{border-top:1px solid var(--hairline)}.proc-step .n{color:var(--cobalt);font-variant-numeric:tabular-nums;padding-top:.35rem;font-family:Roboto Mono,monospace;font-size:.82rem}.proc-step h3{font-size:1.28rem}.proc-step p{color:var(--ink-soft);max-width:52ch;margin-top:.4rem;font-size:.96rem}@media (width<=560px){.proc-step{grid-template-columns:1fr;gap:.5rem}}.stance-sec{background:var(--void);color:var(--void-ink);border-block:1px solid var(--void-line);position:relative;overflow:hidden}.stance-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2.5rem,6vw,5rem);display:grid;position:relative;container-type:inline-size}@media (width<=900px){.stance-grid{grid-template-columns:1fr}}.stance-grid--top{align-items:start}.stance h2{font-size:var(--h-display);letter-spacing:-.02em;text-wrap:balance;line-height:1.06}.stance h2 .accent{color:var(--spark)}.stance .btn--primary{margin-top:2rem}.stack{background:var(--void-line);border:1px solid var(--void-line);border-radius:14px;gap:1px;display:grid;overflow:hidden}.stack-row{background:var(--void-2);transition:background-color .25s var(--ease);grid-template-columns:40px 1fr auto;align-items:center;gap:1rem;padding:1.15rem 1.3rem;display:grid}.stack-row:hover{background:#1a1d25}.stack-row .ico{width:40px;height:40px;color:var(--spark);background:#5b84ff1f;border:1px solid #5b84ff38;border-radius:10px;place-items:center;font-size:1.05rem;display:grid}.stack-row .label{color:var(--void-ink);font-family:Zen Kaku Gothic New,sans-serif;font-size:.98rem;font-weight:700}.stack-row .label small{letter-spacing:.04em;color:var(--void-ink-soft);margin-top:.15rem;font-family:Roboto Mono,monospace;font-size:.72rem;font-weight:400;display:block}.stack-row .tag{letter-spacing:.12em;text-transform:uppercase;color:var(--void-ink-soft);font-family:Roboto Mono,monospace;font-size:.68rem}@media (width<=420px){.stack-row{grid-template-columns:32px 1fr}.stack-row .tag{display:none}}.inq{background:var(--paper-2)}.inq-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.inq-grid>.head{container-type:inline-size}@media (width<=920px){.inq-grid{grid-template-columns:1fr;gap:2.5rem}}.inq h2{font-size:var(--h-section);letter-spacing:-.01em;text-wrap:balance}.inq .lede{margin-top:1rem}.inq-contact{color:var(--ink-soft);gap:.35rem;margin-top:1.75rem;font-family:Roboto Mono,monospace;font-size:.84rem;display:grid}.inq-contact a{color:var(--cobalt);align-items:center;min-height:32px;display:inline-flex}.inq-contact a:hover{text-decoration:underline}form.inquiry{background:var(--paper);border:1px solid var(--hairline);box-shadow:var(--shadow-card);border-radius:18px;gap:1.4rem;padding:clamp(1.5rem,4vw,2.6rem);display:grid}.inquiry fieldset{border:0;gap:1.4rem;margin:0;padding:0;display:grid}.inquiry legend{padding:0}.form-row{grid-template-columns:1fr 1fr;align-items:start;gap:1.2rem;display:grid}@media (width<=560px){.form-row{grid-template-columns:1fr}}.field{align-content:start;gap:.4rem;display:grid}.field label{font-family:Zen Kaku Gothic New,sans-serif;font-size:.9rem;font-weight:700;line-height:1.4}.field .req{color:var(--cobalt)}.field .hint{color:var(--ink-soft);font-family:Roboto Mono,monospace;font-size:.72rem}.field input,.field select,.field textarea{color:var(--ink);background:var(--paper-2);border:1px solid var(--haze);border-radius:10px;width:100%;min-height:3rem;padding:.82rem .95rem;font-family:inherit;font-size:.96rem;line-height:1.5;transition:border-color .15s,box-shadow .15s,background-color .15s}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23565C6B' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right .95rem center;background-repeat:no-repeat;background-size:16px 16px;padding-right:2.6rem}:root[data-theme=dark] .field select,.field select{background-color:var(--paper-2)}.field input::placeholder,.field textarea::placeholder{color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.field input::placeholder,.field textarea::placeholder{color:color-mix(in srgb, var(--ink-soft) 72%, transparent)}}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--cobalt);background-color:var(--paper);box-shadow:0 0 0 3px var(--cobalt-wash);outline:none}.field textarea{resize:vertical;min-height:130px}.hp{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.field .err-text{color:var(--err);visibility:hidden;font-family:Roboto Mono,monospace;font-size:.74rem}.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea{border-color:var(--err);background-color:var(--err)}@supports (color:color-mix(in lab, red, red)){.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea{background-color:color-mix(in srgb, var(--err) 8%, var(--paper))}}.field.is-invalid .err-text{visibility:visible}.form-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:.3rem;display:flex}.form-foot .note{color:var(--ink-soft);max-width:32ch;font-family:Roboto Mono,monospace;font-size:.72rem}.inquiry button[type=submit]{justify-content:center;width:100%}@media (width>=560px){.inquiry button[type=submit]{width:auto}}.form-status{border-radius:12px;align-items:flex-start;gap:.7rem;padding:1rem 1.2rem;font-size:.9rem;display:none}.form-status.ok{background:var(--ok)}@supports (color:color-mix(in lab, red, red)){.form-status.ok{background:color-mix(in srgb, var(--ok) 12%, var(--paper))}}.form-status.ok{border:1px solid var(--ok)}@supports (color:color-mix(in lab, red, red)){.form-status.ok{border:1px solid color-mix(in srgb, var(--ok) 40%, transparent)}}.form-status.ok{color:var(--ok)}.form-status.bad{background:var(--err)}@supports (color:color-mix(in lab, red, red)){.form-status.bad{background:color-mix(in srgb, var(--err) 10%, var(--paper))}}.form-status.bad{border:1px solid var(--err)}@supports (color:color-mix(in lab, red, red)){.form-status.bad{border:1px solid color-mix(in srgb, var(--err) 40%, transparent)}}.form-status.bad{color:var(--err)}.form-status.show{display:flex}footer.site{border-top:1px solid var(--hairline);background:var(--paper);padding-block:clamp(3rem,6vw,4.5rem)}.foot-grid{grid-template-columns:1.5fr 1fr 1fr;align-items:start;gap:2.5rem;display:grid}@media (width<=780px){.foot-grid{grid-template-columns:1fr 1fr}}@media (width<=500px){.foot-grid{grid-template-columns:1fr}}.foot-brand{flex-direction:column;align-items:flex-start;gap:.6rem;display:flex}.mascot{mix-blend-mode:multiply;flex-shrink:0;width:clamp(120px,16vw,168px);height:auto;display:block}:root[data-theme=dark] .mascot{filter:invert();mix-blend-mode:screen}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mascot{filter:invert();mix-blend-mode:screen}}.foot-blurb{color:var(--ink-soft);max-width:34ch;margin-top:.7rem;font-size:.88rem}.foot-col-label{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:1rem;font-family:Roboto Mono,monospace;font-size:.78rem;font-weight:500}.foot-col a{color:var(--ink-soft);padding:.5rem 0;font-size:.92rem;transition:color .15s;display:block}.foot-col a:hover{color:var(--cobalt)}.foot-legal{border-top:1px solid var(--hairline);color:var(--ink-soft);letter-spacing:.06em;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;font-family:Roboto Mono,monospace;font-size:.72rem;display:flex}.reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(30px)}.reveal.in{opacity:1;transform:none}.reveal[data-d="1"]{transition-delay:80ms}.reveal[data-d="2"]{transition-delay:.16s}.reveal[data-d="3"]{transition-delay:.24s}.reveal--fade{opacity:0;transition:opacity .8s var(--ease);transform:none}.reveal--fade.in{opacity:1}.page-head{border-bottom:1px solid var(--hairline);background:var(--paper);padding-block:clamp(3.5rem,8vw,6.5rem) clamp(2.5rem,5vw,4rem);position:relative;container-type:inline-size}.page-head .wrap{flex-direction:column;gap:1rem;display:flex;container-type:inline-size}.page-head h1{font-size:var(--h-display);letter-spacing:-.02em;text-wrap:balance;line-height:1.06}.page-head .lede{max-width:34em;font-size:1.08rem}.page-head--blog{padding-block:clamp(2.75rem,5vw,4.25rem) clamp(2.25rem,4vw,3.25rem)}.page-head--blog .wrap{grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr);align-items:end;gap:clamp(2rem,7vw,7rem);display:grid}.page-head--blog .blog-intro{flex-direction:column;gap:.8rem;display:flex}.page-head--blog .lede{align-self:end;margin-bottom:.2rem}@media (width<=760px){.page-head--blog .wrap{grid-template-columns:1fr;gap:1.25rem}.page-head--blog .lede{margin-bottom:0}}.page-head--work{padding-block:clamp(2.75rem,5vw,4.25rem) clamp(2rem,3.5vw,3rem)}.page-head--work .wrap{grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr);align-items:end;gap:clamp(2rem,7vw,6rem);display:grid}.page-head--work .work-intro{flex-direction:column;gap:.8rem;display:flex}.page-head--work .work-lede{align-self:end;margin-bottom:.2rem}@media (width<=760px){.page-head--work .wrap{grid-template-columns:1fr;gap:1.25rem}.page-head--work .work-lede{margin-bottom:0}}.page-back{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:.4rem;min-height:32px;font-family:Roboto Mono,monospace;font-size:.74rem;transition:color .15s;display:inline-flex}.page-back:hover{color:var(--cobalt)}.prose{max-width:38em;color:var(--ink);overflow-wrap:break-word;min-width:0;font-size:1.02rem;line-height:1.85}.prose>*+*{margin-top:1.35em}.prose h2{font-size:var(--h-sub);letter-spacing:-.01em;margin-top:2.4em;padding-top:.2em}.prose h3{margin-top:1.9em;font-size:1.2rem}.prose h2:first-child,.prose h3:first-child{margin-top:0}.prose p,.prose li{color:var(--ink-soft)}.prose strong{color:var(--ink);font-weight:700}.prose a{color:var(--cobalt);text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--cobalt);-webkit-text-decoration-color:var(--cobalt);-webkit-text-decoration-color:var(--cobalt);text-decoration-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.prose a{-webkit-text-decoration-color:color-mix(in srgb, var(--cobalt) 40%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--cobalt) 40%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--cobalt) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--cobalt) 40%, transparent)}}.prose a{transition:text-decoration-color .15s}.prose a:hover{-webkit-text-decoration-color:var(--cobalt);-webkit-text-decoration-color:var(--cobalt);-webkit-text-decoration-color:var(--cobalt);text-decoration-color:var(--cobalt)}.prose ul,.prose ol{gap:.5em;padding-left:1.3em;display:grid}.prose li::marker{color:var(--cobalt)}.prose blockquote{border-left:3px solid var(--haze);color:var(--ink-soft);margin-left:0;margin-right:0;padding:.2em 0 .2em 1.4em;font-style:normal}.prose img,.prose video{border-radius:12px;max-width:100%;height:auto;display:block}.prose figure{margin:0}.prose figcaption{color:var(--ink-soft);margin-top:.6rem;font-family:Roboto Mono,monospace;font-size:.74rem}.prose code{background:var(--paper-2);border:1px solid var(--hairline);border-radius:5px;padding:.12em .4em;font-family:Roboto Mono,monospace;font-size:.88em}.prose pre{background:var(--void-2);color:var(--void-ink);border-radius:12px;padding:1.1rem 1.25rem;overflow-x:auto}.prose pre code{color:inherit;background:0 0;border:0;padding:0}.prose hr{border:0;border-top:1px solid var(--hairline);margin-block:2.6em}.page-body{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:clamp(2.5rem,6vw,5rem);display:grid}@media (width<=980px){.page-body{grid-template-columns:minmax(0,1fr)}}.page-aside{gap:1.5rem;min-width:0;display:grid;position:sticky;top:92px}@media (width<=980px){.page-aside{position:static}}.aside-card{border:1px solid var(--hairline);background:var(--paper);border-radius:14px;gap:.7rem;padding:1.4rem 1.5rem;display:grid}.aside-card .foot-col-label{margin-bottom:0}.aside-card p{color:var(--ink-soft);font-size:.9rem}.section--blog{padding-block:clamp(3rem,6vw,5.25rem)}.blog-list-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:end;gap:1rem;margin-bottom:clamp(1.5rem,3vw,2.25rem);padding-bottom:.9rem;display:flex}.blog-list-title{flex-direction:column;gap:.35rem;display:flex}.blog-list-title h2{font-size:1.2rem;line-height:1.2}.blog-count{letter-spacing:.08em;color:var(--ink-soft);white-space:nowrap;flex:none;font-family:Roboto Mono,monospace;font-size:.72rem}@media (width<=480px){.blog-list-head{flex-direction:column;align-items:start;gap:.7rem}}.post-list{gap:clamp(1.5rem,3vw,2.2rem);display:grid}.post-card{border-bottom:1px solid var(--hairline);grid-template-columns:300px minmax(0,1fr);align-items:start;gap:clamp(1.25rem,3vw,2rem);padding-bottom:clamp(1.5rem,3vw,2.2rem);transition:border-color .3s;display:grid;position:relative}.post-card:hover{border-color:var(--haze)}@media (width<=760px){.post-card{grid-template-columns:1fr;gap:1rem}}.post-card .thumb{aspect-ratio:16/10;background:var(--paper-3);border:1px solid var(--hairline);border-radius:12px;position:relative;overflow:hidden}.post-card .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease);position:absolute;inset:0}.post-card:hover .thumb img{transform:scale(1.04)}.post-card .thumb .thumb-ph{color:var(--ink-soft);letter-spacing:.14em;place-items:center;font-family:Roboto Mono,monospace;font-size:.68rem;display:grid;position:absolute;inset:0}.post-card .body{align-content:start;gap:.55rem;display:grid}.post-card h2{letter-spacing:-.005em;font-size:1.32rem;line-height:1.28}.post-card h2 a:after{content:"";position:absolute;inset:0}.post-card h2 a{transition:color .15s}.post-card:hover h2 a{color:var(--cobalt)}.post-card .excerpt{color:var(--ink-soft);max-width:36em;font-size:.95rem}.post-meta{letter-spacing:.1em;color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.55rem;font-family:Roboto Mono,monospace;font-size:.72rem;display:flex}.post-meta .sep{opacity:.45}.post-hero{padding-block:clamp(3rem,7vw,5rem) clamp(1.75rem,4vw,2.75rem);container-type:inline-size}.post-hero .wrap{container-type:inline-size}.post-hero h1{font-size:var(--h-section);letter-spacing:-.018em;text-wrap:balance;line-height:1.12}.post-hero .post-meta{margin-top:1.1rem}.post-feature{margin-bottom:clamp(2rem,5vw,3.25rem)}.post-feature img{border:1px solid var(--hairline);border-radius:16px;width:100%;height:auto;display:block}.post-nav{border-top:1px solid var(--hairline);grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:clamp(3rem,6vw,4.5rem);margin-bottom:clamp(3.5rem,7vw,5.5rem);padding-top:2rem;display:grid}@media (width<=640px){.post-nav{grid-template-columns:1fr}}.post-nav a{border:1px solid var(--hairline);transition:border-color .2s, transform .2s var(--ease);border-radius:12px;gap:.35rem;padding:1rem 1.15rem;display:grid}.post-nav a:hover{border-color:var(--violet);transform:translateY(-2px)}.post-nav .dir{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-family:Roboto Mono,monospace;font-size:.68rem}.post-nav .t{font-family:Zen Kaku Gothic New,sans-serif;font-size:.97rem;font-weight:700;line-height:1.35}.post-nav .next{text-align:right}@media (width<=640px){.post-nav .next{text-align:left}}.pagination{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:clamp(2.5rem,5vw,3.5rem);display:flex}.pagination .page-numbers{border:1px solid var(--hairline);min-width:42px;min-height:42px;color:var(--ink-soft);border-radius:10px;justify-content:center;align-items:center;padding-inline:.7rem;font-family:Roboto Mono,monospace;font-size:.82rem;transition:border-color .2s,color .2s;display:inline-flex}.pagination .page-numbers:hover{border-color:var(--violet);color:var(--violet)}.pagination .page-numbers.current{background:var(--cobalt);border-color:var(--cobalt);color:#fff}.pagination .dots{border:0}.empty-note{border:1px dashed var(--haze);text-align:center;color:var(--ink-soft);border-radius:14px;gap:.6rem;padding:clamp(2rem,5vw,3rem);display:grid}.empty-note strong{color:var(--ink);font-family:Zen Kaku Gothic New,sans-serif}.svc-detail{gap:clamp(2.5rem,5vw,4rem);display:grid}.svc-block{border-top:1px solid var(--hairline);grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:clamp(1.5rem,4vw,3rem);padding-top:clamp(2rem,4vw,3rem);display:grid;container-type:inline-size}@media (width<=900px){.svc-block{grid-template-columns:1fr}}.svc-block h2{font-size:var(--h-sub);letter-spacing:-.01em}.svc-block .idx{letter-spacing:.12em;color:var(--cobalt);margin-bottom:.5rem;font-family:Roboto Mono,monospace;font-size:.74rem;display:block}.svc-block .body{gap:.9rem;display:grid}.svc-block .body p{color:var(--ink-soft);max-width:34em;font-size:.98rem}.deliverables{border:1px solid var(--hairline);background:var(--paper-2);border-radius:14px;gap:.55rem;padding:1.3rem 1.45rem;display:grid}.deliverables .foot-col-label{margin-bottom:.2rem}.deliverables ul{gap:.4rem;margin:0;padding-left:1.15em;display:grid}.deliverables li{color:var(--ink-soft);font-size:.89rem}.deliverables li::marker{color:var(--cobalt)}.about-lead{grid-template-columns:1.15fr .85fr;align-items:start;gap:clamp(2rem,5vw,4rem);display:grid;container-type:inline-size}@media (width<=900px){.about-lead{grid-template-columns:1fr}}.principles{counter-reset:principle;gap:0;display:grid}.principle{border-top:1px solid var(--hairline);counter-increment:principle;grid-template-columns:3.2rem minmax(0,1fr);gap:0 1.4rem;padding:1.9rem 0;display:grid}.principle:last-child{border-bottom:1px solid var(--hairline)}.principle:before{content:counter(principle, decimal-leading-zero);color:var(--cobalt);font-variant-numeric:tabular-nums;padding-top:.3rem;font-family:Roboto Mono,monospace;font-size:.82rem}.principle h3{font-size:1.2rem}.principle p{color:var(--ink-soft);max-width:38em;margin-top:.45rem;font-size:.96rem}@media (width<=560px){.principle{grid-template-columns:1fr;gap:.4rem}}.section--work{padding-block:clamp(2.75rem,5vw,4.5rem)}.work-list-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:end;gap:1rem;margin-bottom:clamp(1.5rem,3vw,2.25rem);padding-bottom:.9rem;display:flex}.work-list-title{flex-direction:column;gap:.35rem;display:flex}.work-list-title h2{font-size:1.2rem;line-height:1.2}@media (width<=480px){.work-list-head{flex-direction:column;align-items:start;gap:.7rem}}.work-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(1rem,2vw,1.5rem);display:grid}.work-grid--featured{grid-template-columns:repeat(12,minmax(0,1fr))}.work-grid--featured .tile{grid-column:span 4;min-height:clamp(280px,24vw,360px)}.work-grid--featured .tile--lead{grid-column:span 7;min-height:clamp(360px,34vw,500px)}.work-grid--featured .tile--lead+.tile{grid-column:span 5;min-height:clamp(360px,34vw,500px)}.work-grid--featured .tile--lead .caption{padding:1.4rem 1.5rem}.work-grid--featured .tile--lead .caption .tile-title{font-size:clamp(1.2rem,2vw,1.55rem)}@media (width<=900px){.work-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid--featured .tile,.work-grid--featured .tile--lead+.tile{grid-column:span 1;min-height:clamp(260px,36vw,360px)}.work-grid--featured .tile--lead{grid-column:1/-1;min-height:clamp(300px,56vw,440px)}}@media (width<=560px){.work-grid--featured{grid-template-columns:1fr}.work-grid--featured .tile,.work-grid--featured .tile--lead,.work-grid--featured .tile--lead+.tile{grid-column:1;min-height:240px}}.contact-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.contact-grid>.contact-facts{container-type:inline-size}@media (width<=920px){.contact-grid{grid-template-columns:1fr;gap:2.5rem}}.contact-facts{gap:1.6rem;display:grid}.fact{gap:.3rem;display:grid}.fact .k{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-family:Roboto Mono,monospace;font-size:.72rem}.fact .v{font-size:.98rem}.fact .v a{color:var(--cobalt)}.fact .v a:hover{text-decoration:underline}.faq{display:grid}.faq details{border-top:1px solid var(--hairline);padding:1.15rem 0}.faq details:last-of-type{border-bottom:1px solid var(--hairline)}.faq summary{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:1rem;min-height:32px;font-family:Zen Kaku Gothic New,sans-serif;font-size:1rem;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:2px solid var(--cobalt);border-bottom:2px solid var(--cobalt);width:10px;height:10px;transition:transform .25s var(--ease);flex:none;margin-top:.45rem;transform:rotate(45deg)}.faq details[open] summary:after{transform:rotate(-135deg)}.faq details p{color:var(--ink-soft);max-width:38em;margin-top:.7rem;font-size:.95rem}.cta{background:var(--void);color:var(--void-ink);border-top:1px solid var(--void-line);padding-block:clamp(3.5rem,7vw,5.5rem);container-type:inline-size}.cta .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;display:flex;container-type:inline-size}.cta h2{font-size:var(--h-sub);letter-spacing:-.01em;max-width:13em}.cta p{color:var(--void-ink-soft);max-width:30em;margin-top:.6rem;font-size:.96rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.001ms;animation-duration:.001ms;animation-iteration-count:1}.reveal{opacity:1;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
