@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8dd8a3188b79fd8f-s.0uwq05tg8f5a0.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:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0c8f209abc35ee02-s.p.03rqv30url-~q.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:DM Serif Display Fallback;src:local(Times New Roman);ascent-override:94.37%;descent-override:30.51%;line-gap-override:0.0%;size-adjust:109.78%}.dm_serif_display_fa1ae094-module__i-Qc4q__className{font-family:DM Serif Display,DM Serif Display Fallback;font-style:normal;font-weight:400}.dm_serif_display_fa1ae094-module__i-Qc4q__variable{--font-heading:"DM Serif Display", "DM Serif Display Fallback"}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/da8a9dd0d68e512b-s.075ksw~sx6hmf.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:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/94b4a5dc1fe84361-s.152ftqe40mrji.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/ff5be760267bb4bc-s.0.82snbe0x2a8.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/99596c30eb072d3c-s.0s6~0_kovb3c2.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/e5864b32625b6bc3-s.06wztka3punf6.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:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/e285ad1a914469f0-s.0d9dgiv-6zu4j.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:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/47df9ba1c7236d3b-s.p.0cqfp9mgbqxvb.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:"Source Sans 3 Fallback";src:local(Arial);ascent-override:109.21%;descent-override:42.66%;line-gap-override:0.0%;size-adjust:93.76%}.source_sans_3_936fb0e3-module__WvSn_W__className{font-family:"Source Sans 3","Source Sans 3 Fallback";font-style:normal}.source_sans_3_936fb0e3-module__WvSn_W__variable{--font-body:"Source Sans 3", "Source Sans 3 Fallback"}
.AmbientBackground-module__MaP_Yq__root{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.AmbientBackground-module__MaP_Yq__mesh{position:absolute;inset:0}.AmbientBackground-module__MaP_Yq__blob{filter:blur(60px);will-change:transform;border-radius:50%;position:absolute}.AmbientBackground-module__MaP_Yq__blob1{background:radial-gradient(circle,#f0a86847,#0000 60%);width:50vw;height:50vw;animation:22s ease-in-out infinite AmbientBackground-module__MaP_Yq__drift1;top:-10vw;left:-10vw}.AmbientBackground-module__MaP_Yq__blob2{background:radial-gradient(circle,#c9383838,#0000 60%);width:60vw;height:60vw;animation:28s ease-in-out infinite AmbientBackground-module__MaP_Yq__drift2;bottom:-15vw;right:-15vw}.AmbientBackground-module__MaP_Yq__blob3{background:radial-gradient(circle,#f0a8682e,#0000 65%);width:40vw;height:40vw;animation:18s ease-in-out infinite AmbientBackground-module__MaP_Yq__drift3;top:20%;left:40%}.AmbientBackground-module__MaP_Yq__canvas{width:100%;height:100%;position:absolute;inset:0}@keyframes AmbientBackground-module__MaP_Yq__drift1{0%,to{transform:translate(0)}33%{transform:translate(8vw,6vw)}66%{transform:translate(4vw,-4vw)}}@keyframes AmbientBackground-module__MaP_Yq__drift2{0%,to{transform:translate(0)}50%{transform:translate(-6vw,-8vw)}}@keyframes AmbientBackground-module__MaP_Yq__drift3{0%,to{transform:translate(0)}50%{transform:translate(-4vw,4vw)}}@media (prefers-reduced-motion:reduce){.AmbientBackground-module__MaP_Yq__blob{animation:none}}
.CommandPalette-module__0KULLW__overlay{background:var(--surface-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:60;position:fixed;inset:0}.CommandPalette-module__0KULLW__dialog{z-index:61}.CommandPalette-module__0KULLW__content{background:var(--background-card);border:1px solid var(--border);z-index:62;border-radius:14px;width:min(600px,90vw);position:fixed;top:18vh;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 30px 80px -20px #000c}.CommandPalette-module__0KULLW__input{width:100%;color:var(--text);border:none;border-bottom:1px solid var(--border);background:0 0;outline:none;padding:18px 22px;font-family:inherit;font-size:16px}.CommandPalette-module__0KULLW__list{max-height:50vh;padding:8px 0;overflow:auto}.CommandPalette-module__0KULLW__empty{color:var(--text-secondary);padding:18px 22px}.CommandPalette-module__0KULLW__group [cmdk-group-heading]{letter-spacing:.7px;text-transform:uppercase;color:var(--text-secondary);padding:14px 22px 6px;font-size:11px;font-weight:600}[cmdk-item]{cursor:pointer;color:var(--text);padding:10px 22px;font-size:14px;transition:background .12s}[cmdk-item][data-selected=true]{background:var(--accent-muted)}[cmdk-item]:hover{background:var(--accent-muted)}
*{box-sizing:border-box;margin:0;padding:0}:root{--background:#1a1818;--background-light:#221e1c;--background-card:#1f1b19;--text:#f8f4ed;--text-bright:#fff;--text-secondary:#b8a890;--text-faint:#9a8d7a;--accent:#f0a868;--accent-light:#ffd9a8;--accent-deep:#c97c3d;--accent-muted:#f0a8681a;--accent-hover:#f0a8682e;--rust:#c93838;--border:#f0a86826;--border-hover:#f0a86873;--surface-card:#1a161599;--surface-card-hover:#221c19b3;--surface-card-soft:#1a161580;--surface-card-soft-hover:#221c19a6;--surface-nav:#1a16158c;--surface-nav-scrolled:#14100ecc;--surface-overlay:#0a080899;--shadow-card:0 4px 24px -4px #1a181899;--shadow-hover:0 8px 40px -8px #f0a86833;--gradient-text:linear-gradient(135deg, #f0a868 0%, #ffd9a8 50%, #c93838 100%);--gradient-accent:linear-gradient(135deg, #f0a868, #c93838);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-section-y:var(--space-24);--space-section-y-tight:var(--space-16);--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-md:1.05rem;--font-size-lg:1.1rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-h1:clamp(2.25rem, 5vw, 3.75rem);--font-size-tagline:clamp(1.75rem, 4.5vw, 3.25rem)}html{scroll-behavior:smooth;background:var(--background);scroll-padding-top:5rem}html,body{max-width:100vw;font-family:var(--font-body), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--text);line-height:1.6;overflow-x:hidden}body{background:0 0}a{color:var(--accent);text-decoration:none;transition:color .25s}a:hover{color:var(--accent);text-decoration:none}main{z-index:0;position:relative}.container{max-width:1100px;margin:0 auto;padding:0 2rem}section{padding:var(--space-section-y) 0}h1,h2,h3{font-family:var(--font-heading), Georgia, serif;color:var(--text-bright);font-weight:400}h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-10)}main.portfolio{counter-reset:section}main.portfolio section[id] h2{align-items:center;gap:1rem;display:flex}main.portfolio section[id] h2:before{font-family:var(--font-body), monospace;color:var(--accent);counter-increment:section;content:"0" counter(section) ".";font-size:1.1rem;font-weight:400}main.portfolio section[id] h2:after{content:"";background:var(--border);flex:1;max-width:300px;height:1px}.btn{color:var(--accent);border:1px solid var(--accent);font-family:var(--font-body), monospace;letter-spacing:.05em;cursor:pointer;background:0 0;border-radius:6px;padding:.875rem 1.75rem;font-size:.875rem;font-weight:500;transition:all .25s cubic-bezier(.645,.045,.355,1);display:inline-block}.btn:hover{background:var(--accent-muted);text-decoration:none}.gradient-text{background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}::selection{color:var(--text-bright);background:#f0a8684d}::view-transition-old(root){animation-duration:.3s;animation-timing-function:ease-in-out}::view-transition-new(root){animation-duration:.3s;animation-timing-function:ease-in-out}::view-transition-old(page-title){animation:.3s ease-in-out both vt-fade-out}::view-transition-new(page-title){animation:.3s ease-in-out both vt-fade-in}@keyframes vt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}to{opacity:1}}main a:not([class*=btn]):not([class*=nav]):not([class*=Btn]){position:relative}main a:not([class*=btn]):not([class*=nav]):not([class*=Btn]):after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .2s ease-out;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}main a:not([class*=btn]):not([class*=nav]):not([class*=Btn]):hover:after{transform:scaleX(1)}
