@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_2ae47f08-module__h69qWW__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_2ae47f08-module__h69qWW__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_eb58308d-module__w_p2Lq__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_eb58308d-module__w_p2Lq__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration: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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:#fef2f2;--color-red-100:#ffe2e2;--color-red-200:#ffcaca;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-orange-50:#fff7ed;--color-orange-200:#ffd7a8;--color-orange-500:#fe6e00;--color-orange-600:#f05100;--color-yellow-100:#fef9c2;--color-yellow-600:#cd8900;--color-yellow-700:#a36100;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#b9f8cf;--color-green-300:#7bf1a8;--color-green-500:#00c758;--color-green-600:#00a544;--color-green-700:#008138;--color-teal-50:#f0fdfa;--color-teal-200:#96f7e4;--color-teal-500:#00baa7;--color-teal-600:#009588;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bedbff;--color-blue-300:#90c5ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-blue-800:#193cb8;--color-indigo-50:#eef2ff;--color-indigo-200:#c7d2ff;--color-indigo-500:#625fff;--color-indigo-600:#4f39f6;--color-purple-50:#faf5ff;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-500:#ac4bff;--color-purple-600:#9810fa;--color-purple-700:#8200da;--color-slate-50:#f8fafc;--color-slate-200:#e2e8f0;--color-slate-500:#62748e;--color-slate-600:#45556c;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-800:#1e2939;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-50:lab(96.5005% 4.18508 1.52328);--color-red-100:lab(92.243% 10.2865 3.83865);--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-orange-50:lab(97.7008% 1.53735 5.90649);--color-orange-200:lab(88.4871% 9.94918 28.8378);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-orange-600:lab(57.1026% 64.2584 89.8886);--color-yellow-100:lab(97.3564% -4.51407 27.344);--color-yellow-600:lab(62.7799% 22.4197 86.1544);--color-yellow-700:lab(47.8202% 25.2426 66.5015);--color-green-50:lab(98.1563% -5.60117 2.75915);--color-green-100:lab(96.1861% -13.8464 6.52365);--color-green-200:lab(92.4222% -26.4702 12.9427);--color-green-300:lab(86.9953% -47.2691 25.0054);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-green-700:lab(47.0329% -47.0239 31.4788);--color-teal-50:lab(98.3189% -4.74921 -.111711);--color-teal-200:lab(90.7612% -33.1343 -.542295);--color-teal-500:lab(67.3859% -49.0983 -2.63511);--color-teal-600:lab(55.0223% -41.0774 -3.90277);--color-blue-50:lab(96.492% -1.14644 -5.11479);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--color-blue-200:lab(86.15% -4.04379 -21.0797);--color-blue-300:lab(77.5052% -6.4629 -36.42);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-blue-800:lab(30.2514% 27.7853 -70.2699);--color-indigo-50:lab(95.4818% .411302 -6.78529);--color-indigo-200:lab(84.4329% 3.18977 -23.9688);--color-indigo-500:lab(48.295% 38.3129 -81.9673);--color-indigo-600:lab(38.4009% 52.6132 -92.3857);--color-purple-50:lab(97.1627% 2.99937 -4.13398);--color-purple-100:lab(93.3333% 6.97437 -9.83434);--color-purple-200:lab(87.8405% 13.4282 -18.7159);--color-purple-500:lab(52.0183% 66.11 -78.2316);--color-purple-600:lab(43.0295% 75.21 -86.5669);--color-purple-700:lab(36.1758% 69.8525 -80.0381);--color-slate-50:lab(98.1434% -.369519 -1.05966);--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533)}}}@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{.absolute{position:absolute}.relative{position:relative}.top-1{top:var(--spacing)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-6{margin-left:calc(var(--spacing) * 6)}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-1\/2{height:50%}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-48{height:calc(var(--spacing) * 48)}.h-full{height:100%}.max-h-\[600px\]{max-height:600px}.min-h-\[300px\]{min-height:300px}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-32{width:calc(var(--spacing) * 32)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[\#2d9d70\]{border-color:#2d9d70}.border-\[\#4fd69c\]{border-color:#4fd69c}.border-\[\#d4d4d4\]{border-color:#d4d4d4}.border-\[\#e5e5e5\]{border-color:#e5e5e5}.border-blue-200{border-color:var(--color-blue-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-green-300{border-color:var(--color-green-300)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-orange-200{border-color:var(--color-orange-200)}.border-purple-200{border-color:var(--color-purple-200)}.border-red-200{border-color:var(--color-red-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-teal-200{border-color:var(--color-teal-200)}.bg-\[\#2d9d70\]{background-color:#2d9d70}.bg-\[\#666\]{background-color:#666}.bg-\[\#e3fcef\]{background-color:#e3fcef}.bg-\[\#f5f5f5\]{background-color:#f5f5f5}.bg-\[\#fafafa\]{background-color:#fafafa}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-current{background-color:currentColor}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-indigo-50{background-color:var(--color-indigo-50)}.bg-indigo-500{background-color:var(--color-indigo-500)}.bg-orange-50{background-color:var(--color-orange-50)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-500{background-color:var(--color-slate-500)}.bg-teal-50{background-color:var(--color-teal-50)}.bg-teal-500{background-color:var(--color-teal-500)}.bg-white{background-color:var(--color-white)}.bg-yellow-100{background-color:var(--color-yellow-100)}.object-cover{object-fit:cover}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-\[\#1a1a1a\]{color:#1a1a1a}.text-\[\#2d9d70\]{color:#2d9d70}.text-\[\#666\]{color:#666}.text-\[\#888\]{color:#888}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-indigo-600{color:var(--color-indigo-600)}.text-orange-600{color:var(--color-orange-600)}.text-purple-600{color:var(--color-purple-600)}.text-purple-700{color:var(--color-purple-700)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-slate-600{color:var(--color-slate-600)}.text-teal-600{color:var(--color-teal-600)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-700{color:var(--color-yellow-700)}.uppercase{text-transform:uppercase}.opacity-60{opacity:.6}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.hover\:border-\[\#999\]:hover{border-color:#999}.hover\:border-blue-300:hover{border-color:var(--color-blue-300)}.hover\:border-blue-500:hover{border-color:var(--color-blue-500)}.hover\:bg-\[\#248a62\]:hover{background-color:#248a62}.hover\:bg-\[\#f5f5f5\]:hover{background-color:#f5f5f5}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-red-600:hover{color:var(--color-red-600)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:shadow-\[\#2d9d70\]\/20:hover{--tw-shadow-color:#2d9d7033}@supports (color:color-mix(in lab, red, red)){.hover\:shadow-\[\#2d9d70\]\/20:hover{--tw-shadow-color:color-mix(in oklab, lab(57.7865% -40.7501 14.2218/.2) var(--tw-shadow-alpha), transparent)}}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-100:disabled{background-color:var(--color-gray-100)}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:block{display:block}.sm\:w-auto{width:auto}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}:root{--ink:#1e2024;--muted:#737575;--paper:#f5f3ee;--surface:#fffdf9;--line:#dedbd3;--red:#ea4335;--blue:#4285f4;--green:#34a853;--yellow:#fbbc05;--indigo:#6366f1;--purple:#a855f7;--orange:#f97316;--teal:#14b8a6;--slate:#64748b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), sans-serif;margin:0}a{color:inherit;text-decoration:none}.section-shell{width:min(1120px,100% - 48px);margin:0 auto}.site-header{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f3eee6;border-bottom:1px solid #1e20241a;position:sticky;top:0}.nav-shell{justify-content:space-between;align-items:center;width:min(1240px,100% - 48px);height:82px;margin:0 auto;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:11px;font-size:14px;font-weight:700;display:inline-flex}.brand-mark{background:var(--ink);width:30px;height:30px;color:var(--paper);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:19px;font-style:italic;display:inline-grid}.brand-copy{flex-direction:column;gap:2px;display:flex}.brand-copy strong{font-size:13px}.brand-copy small{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:500}.nav-links{color:var(--muted);align-items:center;gap:27px;font-size:12px;display:flex}.nav-links a{transition:color .2s}.nav-links a:hover{color:var(--ink)}.nav-status{color:var(--ink);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:7px;margin-right:5px;font-size:10px;display:inline-flex}.nav-status span{background:var(--green);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #8aae5824}.nav-contact{color:var(--ink);align-items:center;gap:5px;font-weight:650;display:inline-flex}.nav-contact svg,.text-link svg,.button svg,.footer-email svg{font-size:16px}.hero{grid-template-columns:1fr .82fr;align-items:center;gap:70px;min-height:650px;padding:96px 0 118px;display:grid;position:relative}.hero-copy{z-index:1;animation:.7s both rise;position:relative}.eyebrow,.section-kicker{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.eyebrow{color:var(--ink);margin:0 0 25px}.eyebrow-dot{background:var(--red);border-radius:50%;width:8px;height:8px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.075em;max-width:680px;margin-bottom:26px;font-size:clamp(54px,7vw,88px);font-weight:540;line-height:.98}h1 em,h2 em{color:var(--red);font-family:Georgia,serif;font-weight:400}.hero-intro{max-width:380px;color:var(--muted);margin-bottom:32px;font-size:15px;line-height:1.7}.hero-actions,.social-row{align-items:center;display:flex}.hero-actions{gap:24px}.button{border-radius:100px;align-items:center;gap:10px;padding:14px 21px;font-size:13px;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #1e202424}.button-primary{background:var(--ink);color:var(--paper)}.text-link{align-items:center;gap:5px;font-size:13px;font-weight:650;display:inline-flex}.text-link:hover svg{transform:translate(2px,-2px)}.text-link svg{transition:transform .2s}.social-row{gap:12px;margin-top:64px}.social-row a{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);border-radius:50%;place-items:center;transition:all .2s;display:grid}.social-row a:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-3px)}.hero-art{aspect-ratio:1/1.08;justify-self:end;width:min(100%,430px);animation:.8s .12s both rise;position:relative}.hero-art:before{background:var(--yellow);content:"";border-radius:48% 52% 41% 59%/42% 44% 56% 58%;position:absolute;inset:13% 5% 5% 11%;transform:rotate(-8deg)}.art-orbit{border:1px solid #1e20244d;border-radius:50%;position:absolute}.orbit-one{inset:1% 4% 5% 3%;transform:rotate(32deg)}.orbit-two{inset:7% 10% 1% 0;transform:rotate(-20deg)}.art-card{border:1px solid var(--ink);background:var(--blue);color:#fff;border-radius:48% 18% 42% 22%;flex-direction:column;justify-content:space-between;width:58%;height:57%;padding:22px 25px;display:flex;position:absolute;top:20%;left:18%;transform:rotate(11deg);box-shadow:10px 14px #1e20241a}.art-card-label{letter-spacing:.1em;align-self:flex-end;font-size:11px}.art-symbol{font-family:Georgia,serif;font-size:clamp(90px,12vw,145px);font-style:italic;line-height:.7}.art-card p{text-transform:uppercase;margin:0;font-size:11px;font-weight:700;line-height:1.1}.art-caption{color:var(--muted);font-family:Georgia,serif;font-size:14px;font-style:italic;line-height:1.15;position:absolute;bottom:2%;right:0}.scroll-cue{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;display:flex;position:absolute;bottom:30px;left:0}.scroll-cue svg{color:var(--red)}.skills-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.skills-inner{grid-template-columns:180px 1fr auto;align-items:center;gap:38px;padding:30px 0;display:grid}.section-kicker svg{color:var(--red);font-size:16px}.skills-list{flex-wrap:wrap;gap:9px;display:flex}.skill-chip,.tag-row span{border:1px solid var(--line);color:var(--muted);border-radius:100px;padding:8px 14px;font-size:12px;font-weight:600;transition:background .2s,color .2s}.skill-chip:hover{background:var(--ink);color:var(--paper)}.chip-0{border-color:#4868db73}.chip-1{border-color:#e94e3d73}.chip-2{border-color:#8aae5880}.chip-3{border-color:#6366f173}.chip-4{border-color:#a855f773}.chip-5{border-color:#f9731673}.chip-6{border-color:#14b8a673}.chip-7{border-color:#64748b73}.skills-detail-link,.back-link{color:var(--ink);white-space:nowrap;align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.skills-detail-link svg{transition:transform .2s}.skills-detail-link:hover svg{transform:translate(3px,-3px)}.skills-page-hero{padding-top:75px;padding-bottom:65px}.back-link{color:var(--muted);margin-bottom:80px}.back-link:hover{color:var(--ink)}.skills-page-hero h1{margin-top:24px;margin-bottom:22px}.skills-page-intro{max-width:400px;color:var(--muted);margin-bottom:0;font-size:15px;line-height:1.7}.skills-detail-grid{grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:140px;display:grid}.skill-detail-card{border:1px solid var(--line);border-top:3px solid var(--blue);background:var(--surface);min-height:190px;padding:22px;transition:transform .25s,box-shadow .25s;position:relative}.skill-detail-card:hover{transform:translateY(-5px);box-shadow:0 16px 28px #1e202417}.skill-detail-number{color:var(--muted);letter-spacing:.1em;font-size:11px}.skill-detail-card h2{letter-spacing:-.05em;margin:36px 0 10px;font-size:25px}.skill-detail-card p{max-width:190px;color:var(--muted);margin:0;font-size:12px;line-height:1.55}.skill-score-row{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:24px;font-size:10px;display:flex}.skill-score-row strong{color:var(--ink);font-size:12px}.skill-progress{background:#e4e1d9;border-radius:99px;height:6px;margin-top:9px;overflow:hidden}.skill-progress span{border-radius:inherit;background:var(--blue);height:100%;transition:width .5s;display:block}.chip-1 .skill-progress span{background:var(--red)}.chip-2 .skill-progress span{background:var(--green)}.chip-3 .skill-progress span{background:var(--indigo)}.chip-4 .skill-progress span{background:var(--purple)}.chip-5 .skill-progress span{background:var(--orange)}.chip-6 .skill-progress span{background:var(--teal)}.chip-7 .skill-progress span{background:var(--slate)}.skill-detail-card.chip-1{border-top-color:var(--red)}.skill-detail-card.chip-2{border-top-color:var(--green)}.skill-detail-card.chip-3{border-top-color:var(--indigo)}.skill-detail-card.chip-4{border-top-color:var(--purple)}.skill-detail-card.chip-5{border-top-color:var(--orange)}.skill-detail-card.chip-6{border-top-color:var(--teal)}.skill-detail-card.chip-7{border-top-color:var(--slate)}.skills-marquee{min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.skills-marquee-track{align-items:center;gap:9px;width:max-content;animation:28s linear infinite skills-marquee;display:flex}.skills-marquee:hover .skills-marquee-track{animation-play-state:paused}.skills-marquee .skill-chip{flex:none}.skills-marquee .skill-chip:after{color:var(--blue);content:"•";margin-left:9px;display:inline-block}.skills-marquee .skill-chip:last-child:after{content:""}@keyframes skills-marquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 4.5px))}}.split-section{grid-template-columns:.75fr 1.25fr;gap:100px;padding-top:125px;padding-bottom:125px;display:grid}.section-heading h2,.projects-heading h2{letter-spacing:-.07em;margin:22px 0 0;font-size:clamp(42px,5vw,65px);font-weight:520;line-height:.98}.education-list{flex-direction:column;gap:42px;padding-top:8px;display:flex;position:relative}.education-list:before{background:linear-gradient(var(--blue), var(--green));content:"";opacity:.45;width:1px;position:absolute;top:30px;bottom:30px;left:23px}.education-item{z-index:1;grid-template-columns:48px 1fr;gap:20px;display:grid;position:relative}.education-item:before{border:2px solid var(--surface);background:var(--blue);content:"";border-radius:50%;width:7px;height:7px;position:absolute;top:20px;left:20px}.education-item:nth-child(2):before{background:var(--green)}.education-item:nth-child(3):before{background:var(--yellow)}.education-icon{width:46px;height:46px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.icon-yellow{background:var(--yellow)}.icon-green{background:var(--green)}.item-meta{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px;font-size:11px}.education-item h3,.experience-item h3,.project-content h3{letter-spacing:-.035em;margin-bottom:7px;font-size:19px;font-weight:650}.item-description{max-width:450px;color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.65}.experience-section{background:var(--ink);color:var(--paper)}.experience-inner{padding-top:120px;padding-bottom:120px}.experience-inner .section-kicker,.experience-inner .item-meta{color:#a5a6a1}.experience-inner .section-kicker svg,.experience-inner h2 em{color:var(--yellow)}.experience-list{border-top:1px solid #47494a}.experience-item{border-bottom:1px solid #47494a;grid-template-columns:145px 1fr;gap:30px;padding:28px 0;display:grid}.experience-item h3{margin-bottom:3px}.company-name{color:var(--yellow);margin-bottom:12px;font-size:12px;font-weight:650}.experience-item .item-description{color:#a5a6a1}.experience-detail-link{color:var(--yellow);align-items:center;gap:8px;margin-top:28px;font-size:12px;font-weight:700;display:inline-flex}.experience-detail-link svg{transition:transform .2s}.experience-detail-link:hover svg{transform:translate(3px,-3px)}.experience-page{background:var(--ink);color:var(--paper)}.experience-page-shell{grid-template-columns:.82fr 1.18fr;gap:100px;width:min(1120px,100% - 48px);margin:0 auto;padding:80px 0 140px;display:grid}.experience-page-intro{align-self:start;position:sticky;top:110px}.experience-back-link{color:#a5a6a1;margin-bottom:75px;transition:color .2s}.experience-back-link:hover{color:var(--yellow)}.experience-page .section-kicker{color:#a5a6a1}.experience-page .section-kicker svg{color:var(--yellow)}.experience-page h1{margin:24px 0 28px;font-size:clamp(52px,6vw,78px)}.experience-page h1 em{color:var(--yellow)}.experience-page-intro>p{color:#a5a6a1;max-width:310px;font-size:14px;line-height:1.7}.experience-page-list{border-top:1px solid #47494a}.experience-page-item{border-bottom:1px solid #47494a;grid-template-columns:35px 130px 1fr;gap:18px;padding:31px 0 34px;transition:border-color .3s;animation:.65s both experience-reveal;display:grid}.experience-page-item:nth-child(2){animation-delay:80ms}.experience-page-item:nth-child(3){animation-delay:.16s}.experience-page-item:nth-child(4){animation-delay:.24s}.experience-page-item:nth-child(5){animation-delay:.32s}.experience-page-item:hover{border-color:#85857e}.experience-page-index{color:var(--yellow);font-family:Georgia,serif;font-size:19px;font-style:italic}.experience-page-date{color:#7f817e;letter-spacing:.08em;text-transform:uppercase;padding-top:4px;font-size:10px;font-weight:700;line-height:1.4}.experience-page-copy h2{color:#f5f3ee;letter-spacing:-.04em;margin:0 0 7px;font-size:22px;transition:color .25s}.experience-page-item:hover .experience-page-copy h2{color:var(--yellow)}.experience-page-copy span{color:var(--yellow);font-size:12px;font-weight:650}.experience-page-copy p{color:#a5a6a1;max-width:390px;margin:17px 0 0;font-size:13px;line-height:1.7;transition:color .25s}.experience-page-item:hover .experience-page-copy p{color:#d0d0ca}.experience-evidence{background-color:#303134;background-position:50%;background-size:cover;border-radius:6px;min-height:150px;margin-top:22px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:8px 8px #fbbc0529}.experience-evidence:after{content:"";background:linear-gradient(135deg,#20212414,#2021246b);position:absolute;inset:0}.experience-evidence span{z-index:1;color:#fff;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700;position:absolute;bottom:10px;right:12px}.experience-page-item:hover .experience-evidence{transform:translateY(-3px);box-shadow:11px 11px #fbbc0533}@keyframes experience-reveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.projects-section{padding-top:125px;padding-bottom:140px}.projects-heading{justify-content:space-between;align-items:end;margin-bottom:55px;display:flex}.projects-heading>p{max-width:250px;color:var(--muted);margin-bottom:3px;font-size:13px;line-height:1.6}.projects-heading h2{margin-bottom:0}.project-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;height:100%;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.project-card:hover{transform:translateY(-7px);box-shadow:0 18px 30px #1e20241a}.project-visual{background-color:#f8f9fa;background-position:50%;background-repeat:no-repeat;background-size:contain;justify-content:space-between;align-items:flex-start;height:220px;padding:14px 16px;display:flex;position:relative;overflow:hidden}.project-visual:before{display:none}.visual-blue{background-color:#e8f0fe}.visual-red{background-color:#fce8e6}.visual-green{background-color:#e6f4ea}.visual-yellow{background-color:#fef7e0}.project-visual-media{z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:12px}.project-visual-img{filter:drop-shadow(0 3px 10px #20212414);transition:transform .35s cubic-bezier(.2,0,0,1);object-fit:contain!important;object-position:center!important;width:100%!important;height:100%!important}.project-card:hover .project-visual-img,.projects-page-card:hover .project-visual-img{transform:scale(1.03)}.project-visual>span,.project-index{z-index:2;-webkit-backdrop-filter:blur(8px);color:var(--ink);letter-spacing:.08em;background:#ffffffe0;border:1px solid #0000000f;border-radius:6px;align-items:center;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex;position:relative;box-shadow:0 1px 3px #0000000a}.visual-shape{display:none}.project-arrow{z-index:2;background:var(--surface);color:var(--ink);border-radius:50%;padding:5px;font-size:24px;transition:transform .25s,background-color .2s,color .2s;position:relative;box-shadow:0 2px 6px #00000014}.project-card:hover .project-arrow,.projects-page-card:hover .project-arrow{transform:translate(2px,-2px)}.project-arrow-link{z-index:2;justify-content:center;align-items:center;display:inline-flex;position:relative}.project-no-image-icon{z-index:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-content{flex-direction:column;flex:1;padding:20px 20px 22px;display:flex}.project-status{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;background:0 0;border-radius:0;align-items:center;gap:7px;margin-bottom:18px;padding:0 0 11px;font-size:10px;font-weight:650;display:flex}.project-status span{width:6px;height:6px;box-shadow:none;background:currentColor;border-radius:50%;flex-shrink:0}.status-done{color:#188038;border-color:var(--line);background:0 0}.status-progress{color:#a15c00;border-color:var(--line);background:0 0}.status-inactive{color:#80868b;border-color:var(--line);background:0 0}.project-content h3{color:var(--ink);margin-bottom:10px;font-size:18px;font-weight:700;line-height:1.35}.project-content p{min-height:42px;color:var(--muted);flex:1;margin-bottom:18px;font-size:13px;line-height:1.6}.tag-row{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.tag-row span{border:1px solid var(--line);color:var(--ink);background:#f8f9fa;border-radius:100px;align-items:center;padding:4px 10px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.projects-page{background:var(--paper)}.projects-page-hero{padding-top:75px;padding-bottom:65px}.projects-page-hero .back-link{margin-bottom:75px}.projects-page-hero h1{margin:24px 0 22px;font-size:clamp(52px,6vw,78px)}.projects-page-hero h1 em{color:var(--blue)}.projects-page-hero>p{max-width:390px;color:var(--muted);margin-bottom:0;font-size:15px;line-height:1.7}.projects-page-grid{grid-template-columns:repeat(2,1fr);gap:22px;padding-bottom:140px;display:grid}.projects-page-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;height:100%;transition:transform .25s,box-shadow .25s;display:flex;overflow:hidden}.projects-page-card:hover{transform:translateY(-5px);box-shadow:0 14px 26px #3c40431f}.projects-page-card .project-visual{height:260px}.projects-page-card .project-visual-no-image{justify-content:center;align-items:center;display:flex}.projects-page-card .project-no-image-icon{opacity:.8;z-index:1;font-size:56px}.projects-page-card .visual-blue .project-no-image-icon{color:#1f2937}.projects-page-card .visual-red .project-no-image-icon{color:#dc2626}.projects-page-card .visual-green .project-no-image-icon{color:#059669}.projects-page-card .visual-yellow .project-no-image-icon{color:#d97706}.projects-page-card-content{flex-direction:column;flex:1;padding:24px;display:flex}.projects-page-card-content h2{letter-spacing:-.05em;margin-bottom:10px;font-size:25px}.projects-page-card-content>p{max-width:440px;min-height:43px;color:var(--muted);flex:1;margin-bottom:21px;font-size:13px;line-height:1.65}.projects-page-card-content .tag-row{margin-top:auto}.projects-heading-side{flex-direction:column;align-items:flex-end;gap:18px;display:flex}.projects-heading-side>p{max-width:250px;color:var(--muted);text-align:right;margin-bottom:0;font-size:13px;line-height:1.6}.projects-all-link{color:var(--blue);align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.projects-all-link svg{transition:transform .2s}.projects-all-link:hover svg{transform:translate(3px,-3px)}.site-footer{border-top:1px solid var(--line);background:var(--surface)}.footer-inner{padding-top:43px;padding-bottom:30px}.footer-topline{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:39px;display:flex}.footer-brand{align-items:center;gap:11px;display:flex}.footer-brand strong{margin-bottom:5px;font-size:13px;display:block}.footer-inner p{color:var(--muted);margin:0;font-size:11px}.footer-note{text-align:right;font-family:Georgia,serif;font-style:italic;line-height:1.05;color:var(--ink)!important;font-size:21px!important}.footer-note em{color:var(--red)}.footer-bottomline{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;padding-top:25px;display:grid}.footer-nav{color:var(--muted);align-items:center;gap:16px;font-size:11px;display:flex}.footer-nav span{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.footer-nav a:hover{color:var(--ink)}.footer-email{justify-self:center;font-size:12px;font-weight:650}.footer-email svg{vertical-align:middle;transition:transform .2s}.footer-email:hover svg{transform:translate(3px,-3px)}.copyright{justify-self:end}.contact-page{background:var(--paper)}.contact-shell{grid-template-columns:.85fr 1.15fr;gap:110px;padding-top:75px;padding-bottom:140px;display:grid}.contact-intro>.back-link{margin-bottom:75px}.contact-intro h1{margin:24px 0;font-size:clamp(52px,6vw,78px)}.contact-intro h1 em{color:var(--blue)}.contact-intro>p{max-width:340px;color:var(--muted);margin-bottom:0;font-size:15px;line-height:1.7}.contact-details{flex-direction:column;gap:18px;margin-top:55px;display:flex}.contact-details>a,.contact-details>div{border-top:1px solid var(--line);max-width:300px;color:var(--ink);align-items:center;gap:13px;padding-top:15px;font-size:13px;display:flex}.contact-details svg{color:var(--blue);flex:none;font-size:18px}.contact-details span{flex-direction:column;flex:1;gap:4px;display:flex}.contact-details small{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.contact-details a>svg:last-child{color:var(--muted);font-size:15px;transition:transform .2s}.contact-details a:hover>svg:last-child{transform:translate(3px,-3px)}.contact-form-wrap{border:1px solid var(--line);background:var(--surface);padding:30px}.contact-form-heading{border-bottom:1px solid var(--line);color:var(--ink);justify-content:space-between;align-items:center;padding-bottom:20px;font-size:13px;font-weight:700;display:flex}.contact-form-heading strong{color:var(--muted);letter-spacing:.1em;font-size:10px;font-weight:600}.contact-form{flex-direction:column;gap:26px;padding-top:30px;display:flex}.contact-form label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:10px;font-size:11px;font-weight:700;display:flex}.contact-form input,.contact-form textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font:inherit;letter-spacing:0;text-transform:none;background:0 0;border-radius:0;outline:0;padding:9px 0 12px;font-size:14px;font-weight:400;transition:border-color .2s}.contact-form textarea{resize:vertical;min-height:110px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#9aa0a6}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue)}.contact-submit{background:var(--blue);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:4px;justify-content:center;align-self:flex-start;align-items:center;gap:10px;padding:14px 20px;font-size:12px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.contact-submit:hover{background:#1a73e8;transform:translateY(-2px)}.contact-submit svg{font-size:16px}body:has(.auth-page){background:#f8f9fa}:is(body:has(.auth-page) .site-header,body:has(.auth-page) .site-footer){display:none}.auth-page{color:#202124;background:#f8f9fa;place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.auth-decor{opacity:.75;pointer-events:none;border-radius:50%;position:absolute}.auth-decor-blue{background:#e8f0fe;width:430px;height:430px;top:-180px;right:-130px}.auth-decor-yellow{background:#fef7e0;width:380px;height:380px;bottom:-180px;left:-140px}.auth-shell{z-index:1;width:min(1050px,100% - 48px);padding:42px 0 48px;position:relative}.auth-brand-row{justify-content:space-between;align-items:center;display:flex}.auth-brand{color:#202124;align-items:center;gap:10px;font-size:13px;font-weight:700;display:inline-flex}.auth-index{color:#5f6368;letter-spacing:.1em;text-transform:uppercase;font-size:10px}.auth-content{grid-template-columns:.9fr 1.1fr;align-items:center;gap:105px;padding:105px 0 85px;display:grid}.auth-kicker{color:#5f6368;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.auth-kicker span{background:var(--blue);border-radius:50%;width:7px;height:7px}.auth-copy h1{margin:22px 0;font-size:clamp(48px,6vw,76px)}.auth-copy h1 em{color:var(--blue)}.auth-copy>p{color:#5f6368;max-width:310px;font-size:14px;line-height:1.7}.auth-card{background:#fff;border:1px solid #dadce0;padding:30px;box-shadow:0 16px 35px #3c404314}.auth-card-heading{color:#202124;border-bottom:1px solid #dadce0;justify-content:space-between;align-items:center;padding-bottom:18px;font-size:13px;font-weight:700;display:flex}.auth-card-heading strong{color:#5f6368;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.auth-form{flex-direction:column;gap:24px;padding-top:28px;display:flex}.auth-form label>span{color:#5f6368;letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px;font-size:10px;font-weight:700;display:block}.auth-input{color:#5f6368;border-bottom:1px solid #dadce0;align-items:center;gap:10px;padding:8px 0 11px;transition:border-color .2s;display:flex}.auth-input:focus-within{border-color:var(--blue)}.auth-input svg{flex:none;font-size:16px}.auth-input input{color:#202124;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;font-size:14px}.auth-input input::placeholder{color:#9aa0a6}.auth-submit{background:var(--blue);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:4px;justify-content:center;align-items:center;gap:9px;padding:14px 18px;font-size:12px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.auth-submit:hover{background:#1a73e8;transform:translateY(-2px)}.auth-submit:disabled{cursor:wait;opacity:.7;transform:none}.auth-error{color:#c5221f;margin:-7px 0 0;font-size:12px;line-height:1.5}.auth-note{color:#9aa0a6;margin:24px 0 0;font-size:11px}.auth-back{color:#5f6368;align-items:center;gap:7px;font-size:12px;display:inline-flex}.auth-back svg{transition:transform .2s;transform:rotate(-45deg)}.auth-back:hover{color:#202124}.auth-back:hover svg{transform:rotate(-45deg)translate(2px,-2px)}.admin-page{color:#202124;background:#f8f9fa;min-height:100vh}.admin-shell{width:min(1180px,100% - 56px);margin:0 auto;padding:30px 0 70px}.admin-header{border-bottom:1px solid #dadce0;justify-content:space-between;align-items:center;padding-bottom:22px;display:flex}.admin-brand{align-items:center;gap:11px;display:inline-flex}.admin-brand>span:last-child{flex-direction:column;gap:3px;display:flex}.admin-brand strong{font-size:13px}.admin-brand small{color:#5f6368;letter-spacing:.1em;text-transform:uppercase;font-size:9px}.admin-account{color:#5f6368;align-items:center;gap:20px;font-size:11px;display:flex}.admin-account button{color:#202124;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:7px;font-weight:700;display:inline-flex}.admin-account button svg{color:var(--red)}.admin-welcome{justify-content:space-between;align-items:end;gap:30px;padding:92px 0 82px;display:flex}.admin-kicker{color:#5f6368;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.admin-kicker span{background:var(--green);border-radius:50%;width:7px;height:7px}.admin-welcome h1{margin:22px 0;font-size:clamp(48px,6vw,76px)}.admin-welcome h1 em{color:var(--blue)}.admin-welcome p{color:#5f6368;max-width:350px;margin:0;font-size:14px;line-height:1.7}.admin-preview-link{color:var(--blue);align-items:center;gap:8px;font-size:12px;font-weight:700;display:inline-flex}.admin-preview-link svg{font-size:16px}.admin-status-card{background:#fff;border:1px solid #dadce0;border-radius:8px;flex-direction:column;gap:16px;max-width:520px;margin-top:24px;padding:16px;display:flex;box-shadow:0 1px 3px #3c40430f}.admin-status-content{align-items:flex-start;gap:12px;display:flex}.admin-status-icon{flex-shrink:0;margin-top:2px;font-size:20px}.admin-status-icon-active{color:#34a853}.admin-status-icon-inactive{color:#80868b}.admin-status-title{color:#202124;margin:0 0 4px;font-size:13px;font-weight:700}.admin-status-desc{color:#5f6368;margin:0;font-size:12px;line-height:1.5}.admin-status-button{letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid;border-radius:24px;align-items:center;gap:8px;padding:10px 16px;font-size:11px;font-weight:700;transition:all .2s;display:inline-flex}.admin-status-button-active{color:#188038;background:#e6f4ea;border-color:#34a853}.admin-status-button-active:hover:not(:disabled){background:#d3ead3}.admin-status-button-inactive{color:#5f6368;background:#f8f9fa;border-color:#dadce0}.admin-status-button-inactive:hover:not(:disabled){background:#f1f3f4}.admin-status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.admin-status-dot-active{background:#34a853;animation:.2s infinite pulse}.admin-status-dot-inactive{background:#80868b}.admin-section-heading{color:#202124;border-bottom:1px solid #dadce0;justify-content:space-between;align-items:center;padding-bottom:15px;font-size:12px;font-weight:700;display:flex}.admin-section-heading small{color:#5f6368;letter-spacing:.1em;font-size:10px;font-weight:600}.admin-menu-grid{grid-template-columns:repeat(4,1fr);gap:14px;padding-top:18px;display:grid}.admin-menu-card{border:1px solid #dadce0;border-top:3px solid var(--blue);background:#fff;flex-direction:column;justify-content:space-between;min-height:180px;padding:18px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative}.admin-menu-card:nth-child(2){border-top-color:var(--red)}.admin-menu-card:nth-child(3){border-top-color:var(--yellow)}.admin-menu-card:nth-child(4){border-top-color:var(--green)}.admin-menu-card:hover{border-color:#aeb4ba;transform:translateY(-4px);box-shadow:0 12px 24px #3c40431a}.admin-menu-index{color:#5f6368;letter-spacing:.1em;font-size:10px}.admin-menu-card>svg:not(.admin-menu-arrow){color:var(--blue);margin-top:28px;font-size:23px}.admin-menu-card:nth-child(2)>svg:not(.admin-menu-arrow){color:var(--red)}.admin-menu-card:nth-child(3)>svg:not(.admin-menu-arrow){color:#c58b00}.admin-menu-card:nth-child(4)>svg:not(.admin-menu-arrow){color:var(--green)}.admin-menu-card strong{letter-spacing:-.02em;font-size:15px}.admin-menu-arrow{color:#5f6368;font-size:18px;transition:transform .2s;position:absolute;top:17px;right:17px}.admin-menu-card:hover .admin-menu-arrow{transform:translate(3px,-3px)}.admin-summary{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:60px;display:grid}.admin-summary article{border-top:1px solid #dadce0;flex-direction:column;gap:8px;padding-top:17px;display:flex}.admin-summary span{color:#5f6368;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.admin-summary strong{letter-spacing:-.06em;font-size:38px;font-weight:500}.admin-summary small{color:#5f6368;font-size:11px}.admin-loading{color:#5f6368;background:#f8f9fa;place-items:center;min-height:100vh;font-size:12px;display:grid}.home-page{--paper:#f8f9fa;--surface:#fff;--line:#dadce0;--ink:#202124;--muted:#5f6368}.home-page .site-header{background:#f8f9faeb;border-color:#e1e3e6}.home-page .hero{min-height:610px;padding-top:82px;padding-bottom:100px}.home-page .hero-copy{animation:.6s both rise}.home-page .eyebrow{color:var(--muted);margin-bottom:22px}.home-page .eyebrow-dot{background:var(--blue)}.home-page h1{letter-spacing:-.065em;max-width:650px;margin-bottom:24px;font-size:clamp(52px,6.5vw,80px);font-weight:560}.home-page h1 em{color:var(--blue)}.home-page .hero-intro{max-width:410px;font-size:14px}.home-page .hero-skills{flex-wrap:wrap;gap:7px;max-width:440px;margin:0 0 30px;display:flex}.home-page .hero-skills span{border:1px solid var(--line);color:var(--muted);letter-spacing:.04em;border-radius:3px;padding:7px 10px;font-size:10px;font-weight:650}.home-page .button-primary{background:var(--blue)}.home-page .button:hover{box-shadow:0 5px 16px #3c404329}.home-page .social-row{margin-top:48px}.home-page .social-row a{background:var(--surface)}.home-page .hero-art{aspect-ratio:1/.92;background:0 0;width:min(100%,415px)}.home-page .hero-art:before{opacity:.65;background:linear-gradient(90deg,#0000 49.8%,#e8eaed 50%,#0000 50.2%),linear-gradient(#0000 49.8%,#e8eaed 50%,#0000 50.2%);border-radius:0;width:100%;height:100%;inset:auto;transform:none}.home-page .art-orbit{display:none}.home-page .hero-photo{background-color:#e8f0fe;background-image:url(/pic-me.jpg);background-position:50%;background-size:cover;border:0;border-radius:50%;transition:transform .45s,box-shadow .45s;animation:7s ease-in-out infinite photo-float;position:absolute;inset:9% 9% 10% 13%;overflow:hidden;box-shadow:14px 14px #4285f429}.home-page .hero-photo:after{content:"";background:linear-gradient(145deg,#ffffff1f,#0000 48%,#2021241f);position:absolute;inset:0}.home-page .hero-art:hover .hero-photo{transform:scale(1.015);box-shadow:18px 18px #4285f42e}.home-page .hero-art .art-caption{z-index:1}.home-page .art-card{width:68%;height:66%;color:var(--ink);background:#f1f3f4;border:1px solid #c5c9ce;border-radius:8px;padding:24px;top:17%;left:16%;transform:none;box-shadow:12px 12px #4868db1f}.home-page .art-card-label{color:var(--muted);font-size:10px}.home-page .art-symbol{color:var(--blue);font-size:clamp(90px,12vw,135px)}.home-page .art-card p{color:var(--muted)}.home-page .art-caption{font-size:12px;bottom:14px;right:18px}.home-page .scroll-cue{color:var(--muted);bottom:25px}.home-page .scroll-cue svg{color:var(--blue)}.home-page .skills-band{background:var(--surface);border-color:var(--line)}.home-page .section-kicker svg{color:var(--blue)}.home-page .skill-chip{background:var(--surface)}.home-page .skill-chip:hover{color:var(--ink);background:#f1f3f4}.home-page .split-section{padding-top:110px;padding-bottom:110px}.home-page .section-heading h2,.home-page .projects-heading h2{font-size:clamp(40px,4.5vw,58px)}.home-page .section-heading h2 em,.home-page .projects-heading h2 em{color:var(--blue)}.home-page .education-icon{border-radius:10px;width:42px;height:42px}.home-page .icon-yellow{color:#b06000;background:#fef7e0}.home-page .icon-green{color:#188038;background:#e6f4ea}.home-page .experience-section{background:#202124}.home-page .experience-inner{padding-top:105px;padding-bottom:105px}.home-page .experience-inner .section-kicker svg{color:var(--yellow)}.home-page .projects-section{padding-top:110px;padding-bottom:120px}.home-page .project-grid{gap:16px}.home-page .project-card{border-radius:8px}.home-page .project-card:hover{box-shadow:0 12px 24px #3c40431f}.home-page .project-visual{height:215px}.home-page .visual-blue{background:#e8f0fe}.home-page .visual-red{background:#fce8e6}.home-page .visual-green{background:#e6f4ea}.home-page .visual-yellow{background:#fef7e0}.home-page .project-visual>span,.home-page .project-index{color:var(--ink);background:#ffffffe0}.home-page .project-visual-no-image{justify-content:center;align-items:center;display:flex}.home-page .project-no-image-icon{opacity:.8;z-index:1;font-size:48px}.home-page .visual-blue .project-no-image-icon{color:#1f2937}.home-page .visual-red .project-no-image-icon{color:#dc2626}.home-page .visual-green .project-no-image-icon{color:#059669}.home-page .visual-yellow .project-no-image-icon{color:#d97706}.home-page .visual-shape{border-color:#2021244d}.home-page .project-arrow{background:var(--surface)}.home-page .project-content h3{font-size:18px}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{opacity:.5}}@keyframes photo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.skills-marquee-track{animation-play-state:paused}.home-page .hero-photo,.experience-page-item{animation:none}}@media (max-width:1024px){.hero{grid-template-columns:1fr .75fr;gap:48px;padding:80px 0 100px}.split-section{gap:60px}.project-grid{grid-template-columns:repeat(2,1fr);gap:16px}.home-page .hero{padding-top:72px}.admin-menu-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.section-shell,.nav-shell{width:calc(100% - 36px);max-width:520px}.nav-shell{height:64px}.nav-links{gap:10px;font-size:11px}.nav-links>a:not(.nav-contact){display:none}.nav-status{margin-right:0;font-size:9px}.nav-contact{gap:4px;font-size:11px}.hero{flex-direction:column-reverse;align-items:center;gap:36px;min-height:auto;padding:60px 0 90px;display:flex}.hero-copy{width:100%}.hero-art{aspect-ratio:1;align-self:center;width:min(78vw,300px)}.scroll-cue{font-size:10px;bottom:22px}.social-row{gap:9px;margin-top:36px}.social-row a{width:32px;height:32px}h1{letter-spacing:-.07em;font-size:clamp(44px,13vw,66px)}.hero-actions{flex-wrap:wrap;gap:14px}.button{padding:12px 18px;font-size:12px}.skills-inner{flex-direction:column;align-items:flex-start;gap:16px;padding:22px 0;display:flex}.skills-marquee{width:100%}.skills-list{margin-top:14px}.skills-detail-link{margin-top:4px}.skills-page-hero{padding-top:52px;padding-bottom:48px}.back-link{margin-bottom:55px}.skills-detail-grid{grid-template-columns:1fr;padding-bottom:80px}.skill-detail-card{min-height:165px}.split-section{flex-direction:column;gap:36px;padding-top:68px;padding-bottom:68px;display:flex}.section-heading{margin-bottom:0}.section-heading h2{font-size:clamp(36px,10vw,52px)}.education-list{gap:28px}.education-item{grid-template-columns:40px 1fr;gap:14px}.education-icon{width:38px;height:38px}.education-item h3{font-size:16px}.experience-inner{padding-top:68px;padding-bottom:68px}.experience-item{flex-direction:column;gap:4px;padding:20px 0;display:flex}.experience-item .item-meta{margin-bottom:4px}.experience-item h3{font-size:16px}.experience-page-shell{width:calc(100% - 36px);max-width:520px;padding:52px 0 80px;display:block}.experience-page-intro{position:static}.experience-back-link,.experience-page-intro>p{margin-bottom:55px}.experience-page-item{grid-template-columns:28px 1fr;gap:10px 15px;padding:26px 0 29px}.experience-page-index{grid-row:span 2}.experience-page-date{grid-column:2;padding-top:0}.experience-page-copy{grid-column:2}.experience-page-copy h2{font-size:18px}.experience-evidence{min-height:135px;margin-top:18px}.projects-section{padding-top:68px;padding-bottom:80px}.projects-heading{flex-direction:column;align-items:flex-start;gap:0;margin-bottom:28px;display:flex}.project-grid{grid-template-columns:1fr;gap:14px}.project-visual{height:200px}.project-content{padding:16px 16px 18px}.project-content h3{font-size:16px}.projects-heading-side{flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin-top:18px}.projects-heading-side>p{text-align:left;max-width:200px;font-size:12px;display:none}.projects-page-hero{padding-top:52px;padding-bottom:48px}.projects-page-hero .back-link{margin-bottom:55px}.projects-page-grid{grid-template-columns:1fr;padding-bottom:80px}.projects-page-card .project-visual{height:200px}.projects-page-card .project-no-image-icon{font-size:42px}.projects-page-card-content{padding:18px 18px 20px}.projects-page-card-content h2{font-size:20px}.contact-shell{padding-top:52px;padding-bottom:80px;display:block}.contact-intro>.back-link{margin-bottom:55px}.contact-intro>p{max-width:100%}.contact-details{margin-top:36px;margin-bottom:44px}.contact-form-wrap{padding:20px 16px}.contact-form{gap:22px;padding-top:22px}.footer-topline{flex-direction:column;gap:20px;padding-bottom:28px}.footer-note{text-align:left;font-size:17px!important}.footer-inner{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.footer-bottomline{flex-direction:column;align-items:flex-start;gap:16px;width:100%;display:flex}.footer-nav{flex-wrap:wrap;gap:8px 14px}.footer-email,.copyright{align-self:flex-start}.copyright{order:3}.auth-shell{width:calc(100% - 36px);max-width:520px;padding-top:28px}.auth-content{padding:80px 0 55px;display:block}.auth-copy{margin-bottom:45px}.auth-card{padding:22px 18px}.admin-shell{width:calc(100% - 36px);max-width:520px;padding-top:24px}.admin-header{align-items:flex-start}.admin-account{flex-direction:column;align-items:flex-end;gap:8px;font-size:10px}.admin-account>span{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.admin-welcome{padding:60px 0 52px;display:block}.admin-preview-link{margin-top:24px}.admin-status-card{flex-direction:row;align-items:center;gap:12px}.admin-status-content{flex-direction:row;gap:8px}.admin-status-title{margin-bottom:0;font-size:12px}.admin-status-desc{display:none}.admin-menu-grid{grid-template-columns:1fr 1fr;gap:10px}.admin-menu-card{min-height:145px;padding:14px}.admin-menu-card strong{font-size:13px}.admin-summary{gap:0;margin-top:40px}.admin-summary article{gap:6px;padding-top:14px}.admin-summary strong{font-size:30px}.home-page .hero{flex-direction:column-reverse;gap:32px;padding-top:52px;padding-bottom:80px}.home-page h1{letter-spacing:-.065em;font-size:clamp(40px,12vw,64px)}.home-page .hero-intro{max-width:100%;margin-bottom:22px;font-size:13px}.home-page .hero-skills{gap:6px;margin-bottom:22px}.home-page .hero-actions{gap:14px}.home-page .social-row{margin-top:36px}.home-page .hero-art{aspect-ratio:1;align-self:center;width:min(72vw,280px)}.home-page .scroll-cue{display:none}.home-page .skills-inner{gap:14px;padding:20px 0}.home-page .split-section{flex-direction:column;gap:32px;padding-top:68px;padding-bottom:68px}.home-page .section-heading h2{font-size:clamp(34px,9vw,50px)}.home-page .experience-inner,.home-page .projects-section{padding-top:68px;padding-bottom:68px}.home-page .project-grid{gap:12px}.home-page .project-visual{height:190px}.home-page .project-no-image-icon{font-size:36px}.home-page .projects-heading{gap:0;margin-bottom:24px}.home-page .projects-heading h2{font-size:clamp(34px,9vw,50px)}}@media (max-width:400px){.section-shell,.nav-shell{width:calc(100% - 28px)}.home-page h1{font-size:clamp(36px,11vw,52px)}.home-page .hero-art{width:min(68vw,240px)}.hero-actions{flex-direction:column;align-items:flex-start}.button{justify-content:center;width:100%}.admin-menu-grid{grid-template-columns:1fr}.home-page .section-heading h2,.home-page .projects-heading h2{font-size:clamp(30px,9vw,44px)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
