@import "https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap";:root{--paper:#f4f0e8;--paper-warm:#ebe5d9;--ink:#0a0a0a;--ink-soft:#2a2824;--muted:#7a746a;--line:#0a0a0a1f;--line-strong:#0a0a0a38;--paper-alpha:#f4f0e8d1;--accent:#e85d04;--accent-deep:#c44d00;--accent-glow:#e85d0426;--font-display:"Syne", system-ui, sans-serif;--font-serif:"Instrument Serif", Georgia, serif;--font-mono:"Space Mono", "Courier New", monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--space-32:8rem;--radius-sm:4px;--radius-md:12px;--radius-lg:24px;--radius-xl:40px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.34, 1.56, .64, 1);--nav-h:72px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;overflow-x:clip}body{font-family:var(--font-display);background:var(--paper);color:var(--ink);line-height:1.5;overflow-x:clip}::selection{background:var(--ink);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:inherit}img,svg{max-width:100%;display:block}.grain{z-index:9999;pointer-events:none;opacity:.045;will-change:transform;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px;position:fixed;inset:0;transform:translateZ(0)}.display-hero{font-family:var(--font-display);letter-spacing:-.04em;text-transform:uppercase;word-break:break-word;overflow-wrap:break-word;padding-bottom:.25em;font-size:clamp(3.5rem,11vw,9.5rem);font-weight:800;line-height:.92}.display-section{font-family:var(--font-display);letter-spacing:-.03em;padding-bottom:.15em;font-size:clamp(2.25rem,5vw,4.5rem);font-weight:700;line-height:1.25}.serif-italic{font-family:var(--font-serif);font-style:italic;font-weight:400}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.body-text{font-family:var(--font-display);color:var(--ink-soft);font-size:1.05rem;font-weight:400;line-height:1.75}.body-sm{color:var(--muted);font-size:.875rem;line-height:1.65}.container{width:100%;max-width:1320px;margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem)}.container-wide{max-width:1600px}section{position:relative}.section-pad{padding:clamp(4rem,9vh,7.5rem) 0}.section-header{margin-bottom:clamp(3rem,6vw,5rem)}.section-header-row{justify-content:space-between;align-items:flex-end;gap:var(--space-8);flex-wrap:wrap;display:flex}.section-index{font-family:var(--font-mono);color:#0000;-webkit-text-stroke:1px var(--line-strong);letter-spacing:-.04em;font-size:clamp(4rem,10vw,8rem);font-weight:700;line-height:.85}.btn{align-items:center;gap:var(--space-3);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .35s var(--ease-out);border:none;font-size:.75rem;text-decoration:none;display:inline-flex}.btn-primary{background:var(--ink);color:var(--paper);border-radius:var(--radius-full,9999px);padding:1rem 1.75rem}.btn-primary:hover{background:var(--accent);box-shadow:0 12px 40px var(--accent-glow);transform:translateY(-2px)}.btn-outline{color:var(--ink);border:1.5px solid var(--line-strong);background:0 0;border-radius:9999px;padding:1rem 1.75rem}.btn-outline:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}.btn-ghost{color:var(--ink);border-bottom:1px solid var(--ink);background:0 0;border-radius:0;padding:.5rem 0}.btn-ghost:hover{color:var(--accent);border-color:var(--accent)}@keyframes nav-slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.nav{z-index:200;height:var(--nav-h);transition:all .5s var(--ease-out);animation:nav-slide-down .8s var(--ease-out) forwards;justify-content:space-between;align-items:center;padding:0 clamp(1.25rem,4vw,3rem);display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{background:var(--paper-alpha);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-logo{font-family:var(--font-display);letter-spacing:-.03em;align-items:center;gap:var(--space-3);font-size:1.1rem;font-weight:800;text-decoration:none;display:flex}.nav-logo-mark{border:2px solid var(--ink);width:28px;height:28px;font-family:var(--font-mono);place-items:center;font-size:.55rem;font-weight:700;display:grid}.nav-links{align-items:center;gap:clamp(1.5rem,3vw,2.5rem);list-style:none;display:flex}.nav-link{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.68rem;text-decoration:none;transition:color .25s;position:relative}.nav-link:after{content:"";background:var(--accent);transform-origin:100%;height:1.5px;transition:transform .4s var(--ease-out);position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.nav-link:hover:after,.nav-link.active:after{transform-origin:0;transform:scaleX(1)}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-cta{background:var(--ink);border-radius:9999px;padding:.6rem 1.25rem;color:var(--paper)!important}.nav-cta:hover{background:var(--accent)!important}.nav-toggle{border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:none}.nav-toggle span{background:var(--ink);width:18px;height:1.5px;transition:transform .3s var(--ease-out);display:block}.nav-toggle.open span:first-child{transform:translateY(6.5px)rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-menu{z-index:190;background:var(--paper);padding:var(--space-24) clamp(1.25rem, 4vw, 3rem);transition:transform .6s var(--ease-out);flex-direction:column;justify-content:center;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.mobile-menu.open{transform:translateY(0)}@media (width>=769px){.mobile-menu{display:none!important}}.mobile-menu-links{gap:var(--space-6);flex-direction:column;list-style:none;display:flex}.mobile-menu-link{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-size:clamp(2rem,8vw,3.5rem);font-weight:700;text-decoration:none;transition:color .25s}.mobile-menu-link:hover{color:var(--accent)}.hero{min-height:100dvh;padding-top:var(--nav-h);grid-template-columns:1fr;align-content:end;display:grid;position:relative;overflow:hidden}.hero-grid-bg{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);pointer-events:none;background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 30%,#000 20%,#0000 75%);mask-image:radial-gradient(80% 70% at 50% 30%,#000 20%,#0000 75%)}.hero-orb{background:radial-gradient(circle, var(--accent-glow) 0%, transparent 70%);filter:blur(40px);pointer-events:none;will-change:transform;border-radius:50%;width:min(55vw,600px);height:min(55vw,600px);animation:12s ease-in-out infinite alternate orb-drift;position:absolute;top:10%;right:-5%;transform:translateZ(0)}@keyframes orb-drift{0%{transform:translate(0)scale(1)}to{transform:translate(-40px,30px)scale(1.08)}}.hero-inner{z-index:1;padding-bottom:clamp(3rem,8vh,6rem);position:relative}.hero-top-row{justify-content:space-between;align-items:flex-start;gap:var(--space-8);flex-wrap:wrap;margin-bottom:clamp(2rem,5vh,4rem);display:flex}.hero-meta{max-width:280px}.hero-meta p{font-family:var(--font-mono);color:var(--muted);letter-spacing:.04em;font-size:.72rem;line-height:1.8}.hero-status{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--line-strong);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:var(--space-6);border-radius:9999px;font-size:.65rem;display:inline-flex}.hero-status-dot{background:#22c55e;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.hero-title-wrap{margin-bottom:clamp(2rem,4vh,3rem)}.hero-title-mobile{display:none}.hero-title-line{margin-bottom:-.3em;padding-bottom:.3em;display:block;overflow:hidden}.hero-title-line span{display:inline-block}.hero-title-accent{color:var(--accent)}.hero-sub{max-width:520px;margin-bottom:var(--space-10)}.hero-actions{gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.hero-scroll{align-items:center;gap:var(--space-4);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.65rem;display:flex;position:absolute;bottom:clamp(2rem,5vh,4rem);right:clamp(1.25rem,4vw,3rem)}.hero-scroll-line{background:var(--line-strong);width:60px;height:1px;position:relative;overflow:hidden}.hero-scroll-line:after{content:"";background:var(--accent);animation:scroll-slide 2s var(--ease-out) infinite;position:absolute;inset:0}@keyframes scroll-slide{0%{transform:translate(-100%)}to{transform:translate(100%)}}.marquee-wrap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--space-4) 0;background:var(--ink);color:var(--paper);overflow:hidden}.marquee-track{width:max-content;animation:30s linear infinite marquee;display:flex}.marquee-track.reverse{animation:30s linear infinite marquee-reverse}.marquee-track:hover,.marquee-track.reverse:hover{animation-play-state:paused}.marquee-item{align-items:center;gap:var(--space-8);padding:0 var(--space-8);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:.75rem;display:flex}.marquee-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-reverse{0%{transform:translate(-50%)}to{transform:translate(0)}}.work-section{position:relative}.work-section .eyebrow{color:var(--muted)}.work-scroll-outer{height:200vh;position:relative}.work-sticky{flex-direction:column;justify-content:center;height:100dvh;display:flex;position:sticky;top:0;overflow:hidden}.work-header{margin-bottom:var(--space-8);padding:0 clamp(1.25rem,4vw,3rem)}.work-track-wrap{padding-left:clamp(1.25rem,4vw,3rem);overflow:hidden}.work-track{will-change:transform;gap:clamp(1.25rem,3vw,2rem);display:flex}.project-card{cursor:pointer;text-align:left;color:inherit;font:inherit;background:0 0;border:none;flex:0 0 clamp(290px,35vh + 100px,520px);padding:0}.project-card-visual{aspect-ratio:4/3;border-radius:var(--radius-lg);margin-bottom:var(--space-6);transition:transform .6s var(--ease-out);border:1px solid var(--line);background:#121210;position:relative;overflow:hidden}.project-image-wrap{z-index:0;position:absolute;inset:0;overflow:hidden}.project-card:hover .project-card-visual{transform:scale(.98)}.project-card-bg{transition:transform .8s var(--ease-out);mix-blend-mode:multiply;z-index:1;position:absolute;inset:0}.project-card-cover{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .8s var(--ease-out);z-index:0;position:absolute;inset:0}.project-card:hover .project-card-cover,.project-card:hover .project-card-bg{transform:scale(1.05)}.project-card-index{top:var(--space-6);left:var(--space-6);font-family:var(--font-mono);letter-spacing:.1em;color:#ffffffb3;z-index:2;font-size:.7rem;position:absolute}.project-card-tag{bottom:var(--space-6);left:var(--space-6);padding:var(--space-2) var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;z-index:2;background:#0a0a0a99;border-radius:9999px;font-size:.62rem;position:absolute}.project-card-arrow{top:var(--space-6);right:var(--space-6);background:var(--paper);width:48px;height:48px;color:var(--ink);z-index:2;transition:transform .4s var(--ease-snap);border-radius:50%;place-items:center;display:grid;position:absolute}.project-card:hover .project-card-arrow{transform:rotate(-45deg)scale(1.1)}.project-card-name{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:var(--space-2);font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.project-card-stack{gap:var(--space-2);flex-wrap:wrap;display:flex}.project-card-stack span{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);font-size:.62rem}.work-progress{align-items:center;gap:var(--space-4);display:flex;position:absolute;bottom:clamp(2rem,5vh,4rem);left:clamp(1.25rem,4vw,3rem);right:clamp(1.25rem,4vw,3rem)}.work-progress-bar{background:#f4f0e826;flex:1;height:1px;position:relative}.work-progress-fill{background:var(--accent);height:100%;transition:width .1s linear;position:absolute;top:0;left:0}.work-progress-label{font-family:var(--font-mono);letter-spacing:.1em;color:#f4f0e866;white-space:nowrap;font-size:.65rem}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:300;background:#0a0a0a99;position:fixed;inset:0}.modal-panel{background:var(--paper);z-index:301;border-radius:40px;flex-direction:column;width:auto;max-width:900px;margin:0 auto;display:flex;position:fixed;inset:4vh 4vw;overflow:hidden;box-shadow:0 40px 120px #00000080}@media (width<=900px){.modal-panel{border-radius:24px;inset:2vh 2vw}}.modal-hero{background:var(--paper-warm);flex-shrink:0;width:100%;height:45vh;position:relative;overflow:hidden}@media (width<=900px){.modal-hero{height:35vh}}.modal-hero-cover{object-fit:cover;width:100%;height:100%;padding:0;position:absolute;inset:0}.modal-hero-overlay{position:absolute;inset:0}.modal-close{top:var(--space-6);right:var(--space-6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;width:44px;height:44px;transition:all .3s var(--ease-out);z-index:2;background:#0a0a0a4d;border:1.5px solid #ffffff4d;border-radius:50%;place-items:center;display:grid;position:absolute}.modal-close:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.modal-body{gap:var(--space-8);flex-direction:column;flex:1;padding:clamp(2rem,5vw,4rem);display:flex;overflow-y:auto}.modal-title{font-family:var(--font-display);letter-spacing:-.03em;padding-bottom:.15em;font-size:clamp(2rem,5vw,2.75rem);font-weight:800;line-height:1}.modal-block-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--space-3);font-size:.65rem}.modal-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.modal-tag{padding:var(--space-1) var(--space-3);border:1px solid var(--line-strong);font-family:var(--font-mono);letter-spacing:.06em;border-radius:9999px;font-size:.68rem}.modal-quote{padding:var(--space-6);border-left:3px solid var(--accent);background:var(--paper-warm);border-radius:0 var(--radius-md) var(--radius-md) 0}.modal-quote p{font-family:var(--font-serif);color:var(--ink-soft);font-size:1.15rem;font-style:italic;line-height:1.6}.modal-links{gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--line);flex-wrap:wrap;margin-top:auto;display:flex}.journey-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.journey-card{background:var(--paper);gap:var(--space-4);transition:background .4s var(--ease-out);flex-direction:column;padding:clamp(1.5rem,3vw,2.5rem);display:flex}.journey-card:hover{background:var(--paper-warm)}.journey-card.active{background:var(--ink);color:var(--paper)}.journey-card.active .journey-phase,.journey-card.active .journey-desc,.journey-card.active .journey-milestone{color:#f4f0e8a6}.journey-card.active .journey-title{color:var(--paper)}.journey-num{font-family:var(--font-mono);letter-spacing:.12em;color:var(--accent);font-size:.65rem}.journey-card.active .journey-num{color:var(--accent)}.journey-phase{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.62rem}.journey-title{font-family:var(--font-display);letter-spacing:-.02em;padding-bottom:.15em;font-size:clamp(1.1rem,2vw,1.35rem);font-weight:700;line-height:1.2}.journey-desc{color:var(--muted);flex:1;font-size:.88rem;line-height:1.7}.journey-milestones{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.journey-milestone{font-family:var(--font-mono);letter-spacing:.06em;padding:var(--space-1) var(--space-2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);font-size:.58rem}.journey-card.active .journey-milestone{border-color:#f4f0e833}.capabilities-new-layout{flex-direction:column;gap:clamp(3rem,6vh,4.5rem);display:flex}.capabilities-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,3vw,2.5rem);display:grid}.capability-group-card{gap:var(--space-4);border:1px solid var(--line);padding:var(--space-6);border-radius:var(--radius-md);background:var(--paper-warm);transition:all .3s var(--ease-out);flex-direction:column;display:flex}.capability-group-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.capabilities-intro .body-text{margin-top:var(--space-2)}.capability-group-header{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);margin-bottom:var(--space-4);display:flex}.capability-group-name{font-family:var(--font-display);font-size:1.1rem;font-weight:700}.capability-group-desc{font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted);text-align:right;font-size:.62rem}.capability-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.capability-tag{padding:var(--space-2) var(--space-4);border:1px solid var(--line-strong);font-family:var(--font-mono);letter-spacing:.04em;transition:all .3s var(--ease-out);cursor:default;border-radius:9999px;font-size:.72rem}.capability-tag:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-2px)}.capability-tag.growing{color:var(--muted);border-style:dashed}.capability-tag.growing:hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}.capabilities-dark-section{color:#f4f0e8;background:#0a0a0a}:root.dark .capabilities-dark-section{background:var(--paper)}.capabilities-dark-section .capability-group-card.glass-card{-webkit-backdrop-filter:blur(4px);transition:all .4s var(--ease-out);background:#ffffff08;border:1px solid #ffffff14;box-shadow:0 8px 32px #0000004d}.capabilities-dark-section .capability-group-card.glass-card:hover{background:#ffffff0f;border-color:#fff3;transform:translateY(-4px);box-shadow:0 12px 40px #e85d0426}.capabilities-dark-section .capability-group-name{color:#fff}.capabilities-dark-section .capability-group-desc{color:#ffffff80}.capabilities-dark-section .capability-group-header{border-bottom-color:#ffffff1a}.capabilities-dark-section .capability-tag{color:#fffc;background:#ffffff05;border-color:#ffffff1a}.capabilities-dark-section .capability-tag:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px)}.capability-tag.learned{border-color:#22c55e66}.capability-tag.learned:hover{color:#fff;background:#22c55e33;border-color:#22c55e}.capability-tag.learning{border-style:dashed;border-color:#ffbd2e66}.capability-tag.learning:hover{color:#fff;background:#ffbd2e33;border-color:#ffbd2e}.about-section{background:var(--paper-warm)}.about-layout{grid-template-columns:.9fr 1.1fr;align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.about-card{top:calc(var(--nav-h) + 2rem);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-xl);padding:clamp(2rem,4vw,3rem);position:sticky}.about-avatar{background:var(--ink);width:88px;height:88px;color:var(--paper);font-family:var(--font-display);margin-bottom:var(--space-6);border-radius:50%;place-items:center;font-size:1.75rem;font-weight:800;display:grid}.about-name{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:var(--space-2);font-size:1.75rem;font-weight:800}.about-role{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-8);font-size:.68rem}.about-stat-grid{gap:var(--space-4);margin-bottom:var(--space-8);grid-template-columns:1fr 1fr;display:grid}.about-stat{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md)}.about-stat-value{font-family:var(--font-display);letter-spacing:-.03em;font-size:2rem;font-weight:800;line-height:1}.about-stat-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:var(--space-2);font-size:.6rem}.about-links{gap:var(--space-3);flex-direction:column;display:flex}.about-link{align-items:center;gap:var(--space-3);font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-soft);font-size:.72rem;text-decoration:none;transition:color .25s;display:flex}.about-link:hover{color:var(--accent)}.about-prose{gap:var(--space-8);flex-direction:column;display:flex}.about-quote{font-family:var(--font-serif);color:var(--ink);padding:var(--space-8) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:clamp(1.5rem,3vw,2.25rem);font-style:italic;line-height:1.35}.about-values{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.about-value{padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color .3s, transform .3s var(--ease-out)}.about-value:hover{border-color:var(--ink);transform:translateY(-3px)}.about-value-title{margin-bottom:var(--space-2);font-size:.9rem;font-weight:700}.about-value-sub{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);font-size:.62rem;line-height:1.5}.contact-section{color:#f4f0e8;--paper:#f4f0e8;--ink:#0d0c0a;--ink-soft:#ebe5d9;--muted:#8a847a;--line:#f4f0e81f;--line-strong:#f4f0e838;background:#0d0c0a}.contact-section .eyebrow{color:#f4f0e873}.contact-layout{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(3rem,6vw,6rem);display:grid}.contact-layout>*{min-width:0}.contact-headline{font-family:var(--font-display);letter-spacing:-.04em;text-transform:uppercase;padding-bottom:.15em;font-size:clamp(2rem,4.5vw,3.5rem);font-weight:800;line-height:.95}.contact-headline em{font-family:var(--font-serif);text-transform:none;color:var(--accent);font-style:italic;font-weight:400}.contact-email-link{font-family:var(--font-mono);letter-spacing:.02em;color:var(--paper);padding-bottom:var(--space-2);margin-top:var(--space-8);border-bottom:1px solid #f4f0e84d;font-size:clamp(.85rem,2vw,1rem);text-decoration:none;transition:color .3s,border-color .3s;display:inline-block}.contact-email-link:hover{color:var(--accent);border-color:var(--accent)}.contact-channels{gap:var(--space-3);margin-top:var(--space-10);flex-direction:column;display:flex}.contact-channel{padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);color:var(--paper);transition:all .35s var(--ease-out);border:1px solid #f4f0e81f;justify-content:space-between;align-items:center;text-decoration:none;display:flex}.contact-channel:hover{border-color:var(--accent);background:#e85d0414;transform:translate(6px)}.contact-channel-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#f4f0e866;margin-bottom:2px;font-size:.62rem}.contact-channel-value{font-size:.95rem}.contact-form{gap:var(--space-6);flex-direction:column;display:flex}.contact-form .form-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#f4f0e873;margin-bottom:var(--space-2);font-size:.65rem;display:block}.contact-form .form-input,.contact-form .form-textarea{border-radius:var(--radius-md);width:100%;padding:var(--space-4);color:var(--paper);font-family:var(--font-display);background:#f4f0e80f;border:1px solid #f4f0e81f;outline:none;font-size:1rem;transition:border-color .3s}.contact-form .form-input:focus,.contact-form .form-textarea:focus{border-color:var(--accent)}.contact-form .form-input::placeholder,.contact-form .form-textarea::placeholder{color:#f4f0e840}.contact-form .form-textarea{resize:vertical;min-height:140px;line-height:1.6}.contact-form .btn-primary{background:var(--accent);color:var(--paper);align-self:flex-start}.contact-form .btn-primary:hover{background:var(--paper);color:var(--ink)}.contact-sent{padding:var(--space-12);text-align:center;border-radius:var(--radius-lg);border:1px solid #f4f0e81f}.contact-sent h3{margin-bottom:var(--space-3);font-size:1.75rem;font-weight:700}.contact-section .contact-sent .btn-outline{color:#f4f0e8!important;background:0 0!important;border-color:#f4f0e84d!important}.contact-section .contact-sent .btn-outline:hover{color:#0d0c0a!important;background:#f4f0e8!important;border-color:#f4f0e8!important}.social-flip-wrap{margin-top:clamp(2rem,4vw,3rem)}.social-flip-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#f4f0e866;margin-bottom:var(--space-4);font-size:.65rem}.social-flip{justify-content:flex-start;align-items:center;display:flex}.social-flip-group{align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-xl);background:#f4f0e80a;border:1px solid #f4f0e81f;flex-wrap:nowrap;display:flex;position:relative;overflow:hidden}.social-flip-border{pointer-events:none;background:linear-gradient(90deg,#0000,#e85d04b3,#0000);height:1px;position:absolute;left:0;right:0}.social-flip-border-top{top:-1px}.social-flip-border-bottom{bottom:-1px}.social-flip-node{cursor:pointer;width:clamp(40px,4.5vw,60px);height:clamp(40px,4.5vw,60px);color:inherit;text-decoration:none;display:flex;position:relative}@media (width<=480px){.social-flip-node{width:40px;height:40px}.social-flip-group{gap:var(--space-2);padding:var(--space-2)}}@media (width>=768px){.social-flip-group{flex-wrap:nowrap}}.social-flip-inner{width:100%;height:100%;position:relative}.social-flip-face{border-radius:var(--radius-md);backface-visibility:hidden;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.social-flip-front{color:#f4f0e8bf;font-family:var(--font-mono);letter-spacing:.02em;background:#f4f0e814;border:1px solid #f4f0e81f;font-size:1.15rem;font-weight:700}.social-flip-back{background:var(--accent);color:#f4f0e8;border:1px solid #0000;transform:rotateY(180deg)}.social-flip-back svg{width:26px;height:26px}.footer{border-top:1px solid var(--line);padding:var(--space-8) 0;background:var(--paper)}.footer-inner{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.footer-brand{font-family:var(--font-display);letter-spacing:-.02em;font-size:.9rem;font-weight:800}.footer-meta{font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted);font-size:.65rem}.footer-link{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:var(--space-2);font-size:.65rem;text-decoration:none;transition:color .25s;display:flex}.footer-link:hover{color:var(--accent)}.reveal{opacity:0;transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1);transform:translateY(40px)scale(.96)}.reveal.visible{opacity:1;transform:translateY(0)scale(1)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}@media (width<=1024px){.journey-grid,.capabilities-grid{grid-template-columns:repeat(2,1fr)}.capabilities-layout,.about-layout,.contact-layout{grid-template-columns:1fr}.about-card{position:relative;top:auto}.about-values{grid-template-columns:repeat(2,1fr)}.writing-grid{gap:clamp(1.5rem,3vw,3rem)}.console-grid{gap:var(--space-8);grid-template-columns:1fr}.contact-headline{font-size:clamp(2rem,5vw,4rem)}}@media (width<=768px){:root{--nav-h:64px}.nav-links{display:none}.nav-toggle{display:flex}.hero{min-height:100svh}.hero-scroll{display:none}.hero-top-row{gap:var(--space-4);flex-direction:column;margin-bottom:clamp(1.5rem,4vh,3rem)}.hero-meta{max-width:100%}.hero-title-wrap{margin-bottom:clamp(1.5rem,3vh,2.5rem)}.hero-title-desktop{display:none}.hero-title-mobile{display:block}.hero-sub{max-width:100%}.hero-inner{padding-bottom:clamp(2rem,6vh,4rem)}.marquee-item{gap:var(--space-4);padding:0 var(--space-4);font-size:.68rem}.work-scroll-outer{height:auto}.work-sticky{height:auto;padding:var(--space-8) 0;position:relative}.work-track-wrap{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-right:clamp(1.25rem,4vw,3rem);overflow-x:auto}.work-track-wrap::-webkit-scrollbar{display:none}.work-track{gap:var(--space-4);padding-bottom:var(--space-6);flex-direction:row!important;transform:none!important}.project-card{scroll-snap-align:start;max-width:380px;flex:0 0 85vw!important}.project-card-name{font-size:clamp(1.2rem,4vw,1.6rem)}.project-card-arrow{width:40px;height:40px}.work-progress{display:none}.journey-grid{grid-template-columns:1fr}.journey-card{padding:clamp(1.25rem,3vw,2rem)}.capabilities-grid{grid-template-columns:1fr}.capability-group-card{padding:var(--space-4)}.capability-group-header{align-items:flex-start;gap:var(--space-1);flex-direction:column}.capability-group-desc{text-align:left}.about-layout{gap:clamp(2rem,4vw,3rem)}.about-values{grid-template-columns:1fr}.about-stat-grid{grid-template-columns:1fr 1fr}.about-card{padding:clamp(1.5rem,4vw,2.5rem)}.about-quote{padding:var(--space-6) 0;font-size:clamp(1.25rem,4vw,1.75rem)}.writing-grid{gap:var(--space-6);grid-template-columns:1fr}.writing-card{padding:clamp(1.25rem,4vw,2rem)}.writing-title{font-size:clamp(1.15rem,4vw,1.5rem)}.contact-layout{gap:clamp(2rem,5vw,3rem)}.contact-headline{font-size:clamp(2rem,7vw,3rem)}.contact-channel{padding:var(--space-3) var(--space-4)}.contact-form .form-input,.contact-form .form-textarea{padding:var(--space-3);font-size:.95rem}.console-grid{gap:var(--space-6);grid-template-columns:1fr}.terminal-body{padding:var(--space-4);min-height:220px;font-size:.65rem}.metrics-grid{grid-template-columns:1fr 1fr}.metric-card{padding:var(--space-4)}.metric-value{font-size:1.6rem}.modal-panel{border-radius:0;width:100vw}.modal-hero{height:180px}.modal-body{gap:var(--space-6);padding:clamp(1.25rem,4vw,2rem)}.modal-title{font-size:clamp(1.6rem,5vw,2.25rem)}.writing-reader-panel{border-radius:0!important;width:100vw!important}.writing-reader-body{max-width:100%}.writing-reader-title{font-size:clamp(1.5rem,5vw,2.25rem)}.cp-modal{border-radius:12px;width:min(96%,520px)}.cp-overlay{padding-top:clamp(3rem,8vh,6rem)}.cp-results{max-height:280px}.section-pad{padding:clamp(3rem,7vh,5rem) 0}.section-header{margin-bottom:clamp(2rem,5vw,3.5rem)}.section-index{font-size:clamp(3rem,8vw,5rem)}.footer-inner{text-align:center;gap:var(--space-3);flex-direction:column}}@media (width<=480px){.hero-actions{flex-direction:column;align-items:stretch}.btn-primary,.btn-outline{justify-content:center;padding:.85rem 1.5rem;font-size:.7rem}.hero-status{padding:var(--space-1) var(--space-3);font-size:.6rem}.display-hero{letter-spacing:-.03em;font-size:clamp(2.2rem,10vw,3.5rem)}.display-section{font-size:clamp(1.8rem,7vw,2.5rem)}.project-card{max-width:none;flex:0 0 90vw!important}.project-browser-bar{gap:5px;height:24px;padding:0 10px}.browser-dot{width:5px;height:5px}.browser-url-bar{padding:1px 16px;font-size:.5rem}.project-image-wrap,.project-card-bg{inset:24px 0 0}.project-card-index{top:var(--space-4);left:var(--space-4);font-size:.62rem}.project-card-tag{bottom:var(--space-4);left:var(--space-4);padding:var(--space-1) var(--space-3);font-size:.56rem}.project-card-arrow{top:var(--space-4);right:var(--space-4);width:36px;height:36px}.journey-milestones{gap:var(--space-1)}.journey-milestone{padding:2px var(--space-1);font-size:.52rem}.about-avatar{width:72px;height:72px;font-size:1.4rem}.about-name{font-size:1.5rem}.about-stat-value{font-size:1.6rem}.about-value{padding:var(--space-4)}.contact-headline{font-size:clamp(1.75rem,8vw,2.5rem)}.contact-email-link{word-break:break-all;font-size:.8rem}.contact-channels{margin-top:var(--space-6)}.contact-channel{align-items:flex-start;gap:var(--space-1);padding:var(--space-3) var(--space-4);flex-direction:column}.contact-channel:hover{transform:translateY(-2px)}.contact-form .btn-primary{justify-content:center;align-self:stretch}.contact-sent{padding:var(--space-8)}.contact-sent h3{font-size:1.35rem}.terminal-body{padding:var(--space-3);min-height:180px;font-size:.6rem}.terminal-header{padding:var(--space-2) var(--space-3)}.terminal-dots .dot{width:8px;height:8px}.terminal-title{font-size:.58rem}.metrics-grid{grid-template-columns:1fr}.metric-value{font-size:1.4rem}.modal-hero{height:150px}.modal-close{width:38px;height:38px;top:var(--space-4);right:var(--space-4)}.modal-title{font-size:clamp(1.4rem,6vw,1.85rem)}.modal-tag{padding:2px var(--space-2);font-size:.6rem}.modal-quote{padding:var(--space-4)}.modal-quote p{font-size:1rem}.modal-links{gap:var(--space-2)}.cp-modal{border-radius:10px;width:min(98%,480px)}.cp-overlay{align-items:flex-start;padding-top:clamp(2rem,6vh,4rem)}.cp-search-bar{padding:12px 14px}.cp-input{font-size:.82rem}.cp-results{max-height:55vh;padding:6px}.cp-item{border-radius:8px;padding:10px;font-size:.74rem}.cp-footer{flex-wrap:wrap;justify-content:center;gap:12px;padding:8px 14px}.cp-footer-group{font-size:.52rem}.writing-card{padding:clamp(1rem,4vw,1.5rem)}.writing-excerpt{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.88rem;display:-webkit-box;overflow:hidden}.section-pad{padding:clamp(2.5rem,6vh,4rem) 0}.section-header-row{align-items:flex-start;gap:var(--space-4);flex-direction:column}.eyebrow{font-size:.62rem}.mobile-menu{padding:var(--space-16) clamp(1.25rem, 4vw, 3rem)}.mobile-menu-link{font-size:clamp(1.6rem,7vw,2.5rem)}.mobile-menu-links{gap:var(--space-4)}}@media (width<=360px){.display-hero{font-size:clamp(1.8rem,11vw,2.5rem)}.display-section{font-size:clamp(1.5rem,7vw,2rem)}.container,.nav{padding:0 1rem}.hero-meta p{font-size:.65rem}.btn-primary,.btn-outline{padding:.75rem 1.25rem;font-size:.65rem}.btn-ghost{font-size:.68rem}.project-card{flex:0 0 92vw!important}.about-stat-grid{grid-template-columns:1fr}.about-stat-value{font-size:1.4rem}.capability-tag{padding:var(--space-1) var(--space-3);font-size:.62rem}.contact-channel-value{font-size:.85rem}.terminal-body{min-height:160px;font-size:.55rem}.metric-card{padding:var(--space-3)}.metric-value{font-size:1.2rem}.cp-modal{border-radius:0;width:100%;max-height:100dvh}.cp-overlay{align-items:stretch;padding-top:0}.writing-title{font-size:clamp(1rem,5vw,1.25rem)}.footer-inner{gap:var(--space-2)}.footer-brand{font-size:.8rem}.footer-meta,.footer-link{font-size:.58rem}}@media (hover:none) and (pointer:coarse){.nav-link{padding:8px 4px}.btn-primary,.btn-outline,.btn-ghost{min-height:44px}.capability-tag{align-items:center;min-height:36px;display:inline-flex}.contact-channel{min-height:48px}.project-card:hover .project-card-visual,.project-card:hover .project-card-cover,.project-card:hover .project-card-bg,.project-card:hover .project-card-arrow,.capability-tag:hover,.about-value:hover,.writing-card:hover,.metric-card:hover,.journey-card:hover,.contact-channel:hover{transform:none}.btn-primary:active,.btn-outline:active{transform:scale(.97)}.project-card:active .project-card-visual{transform:scale(.98)}.writing-card:active{transform:translateY(-2px)}.capability-tag:active{transform:scale(.95)}}@media (height<=500px) and (orientation:landscape){.hero{min-height:auto;padding-top:calc(var(--nav-h) + 1rem);padding-bottom:2rem}.hero-inner{padding-bottom:1.5rem}.hero-top-row,.hero-title-wrap{margin-bottom:1rem}.display-hero{font-size:clamp(2rem,8vw,4rem)}.section-pad{padding:2rem 0}.mobile-menu{padding-top:var(--nav-h);justify-content:flex-start;overflow-y:auto}.mobile-menu-link{font-size:clamp(1.2rem,4vw,1.8rem)}.mobile-menu-links{gap:var(--space-2)}}:root.dark{--paper:#0d0c0a;--paper-warm:#171613;--ink:#f4f0e8;--ink-soft:#ebe5d9;--muted:#8a847a;--line:#f4f0e81f;--line-strong:#f4f0e838;--paper-alpha:#0d0c0ad1;--accent:#ff7214;--accent-deep:#e85d04;--accent-glow:#ff721426}nav,.about-card,.project-card,.modal-panel,.contact-form,.form-input,.form-textarea,.btn{transition:background-color .4s var(--ease-out), color .4s var(--ease-out), border-color .4s var(--ease-out), box-shadow .4s var(--ease-out)}.theme-toggle{border:1px solid var(--line);color:var(--ink);cursor:pointer;width:32px;height:32px;transition:all .2s var(--ease-out);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.theme-toggle:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.testimonial-quote{font-family:var(--font-serif)}.writing-section{border-top:1px solid var(--line)}.writing-grid{grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,4rem);margin-top:clamp(3rem,8vh,6rem);display:grid}.writing-card{border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:all .3s var(--ease-out);background:0 0;flex-direction:column;align-items:start;width:100%;min-width:0;padding:clamp(2rem,4vw,3rem);display:flex}.writing-card:hover{background:var(--paper-warm);border-color:var(--line-strong);transform:translateY(-4px)}.writing-meta{font-family:var(--font-mono);letter-spacing:.05em;color:var(--muted);text-transform:uppercase;margin-bottom:var(--space-4);align-items:center;font-size:.68rem;display:flex}.writing-sep{margin:0 var(--space-2)}.writing-title{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:var(--space-4);color:var(--ink);padding-bottom:.15em;font-size:clamp(1.35rem,2.5vw,1.85rem);font-weight:700;line-height:1.25}.writing-excerpt{font-family:var(--font-display);color:var(--ink-soft);margin-bottom:var(--space-6);flex-grow:1;font-size:.95rem;line-height:1.6}.writing-read-more{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);align-items:center;font-size:.68rem;font-weight:700;display:inline-flex}.writing-read-more svg{transition:transform .2s var(--ease-out)}.writing-card:hover .writing-read-more svg{transform:translate(4px)}.writing-reader-panel{flex-direction:column;display:flex;overflow-y:auto;padding:clamp(2rem,4vw,4rem)!important}.writing-reader-close{margin-bottom:var(--space-6);align-self:flex-end}.writing-reader-body{max-width:680px;margin:0 auto}.writing-reader-title{font-family:var(--font-display);letter-spacing:-.03em;margin-top:var(--space-4);margin-bottom:var(--space-6);color:var(--ink);font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.15}.writing-reader-divider{background:var(--line);height:1px;margin-bottom:var(--space-8)}.writing-reader-content{margin-top:var(--space-6)}.writing-reader-section{margin-top:var(--space-6);margin-bottom:var(--space-6)}.writing-reader-section-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:var(--space-2);font-size:.8rem}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.console-section{border-top:1px solid var(--line)}.console-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(2rem,4vw,4rem);margin-top:clamp(3rem,8vh,6rem);display:grid}.terminal-panel{border-radius:var(--radius-md);color:#f4f0e8;background:#121210;border:1px solid #f4f0e826;width:100%;min-width:0;overflow:hidden;box-shadow:0 20px 50px #0000004d}.terminal-header{padding:var(--space-3) var(--space-4);background:#1c1c1a;border-bottom:1px solid #f4f0e814;justify-content:space-between;align-items:center;display:flex}.terminal-dots{gap:6px;display:flex}.terminal-dots .dot{border-radius:50%;width:10px;height:10px}.terminal-dots .dot.red{background:#ff5f56}.terminal-dots .dot.yellow{background:#ffbd2e}.terminal-dots .dot.green{background:#27c93f}.terminal-title{font-family:var(--font-mono);letter-spacing:.05em;color:#f4f0e866;font-size:.65rem}.terminal-icon{color:#f4f0e84d}.terminal-body{padding:var(--space-6);font-family:var(--font-mono);flex-direction:column;min-height:280px;font-size:.72rem;display:flex}.terminal-loading{justify-content:center;align-items:center;gap:var(--space-3);color:var(--muted);flex-direction:column;flex:1;display:flex}.terminal-stream{gap:var(--space-4);flex-direction:column;display:flex}.terminal-line{color:#e85d04;word-break:break-word;overflow-wrap:break-word}.terminal-line.system{color:#f4f0e8cc}.terminal-line .prompt{color:#5f7564;margin-right:var(--space-2)}.terminal-log-item{padding-left:var(--space-4);opacity:0;animation:log-appear .5s var(--ease-out) forwards;border-left:2px solid #f4f0e81a;flex-direction:column;gap:2px;margin-left:6px;display:flex;transform:translate(-10px)}@keyframes log-appear{to{opacity:1;transform:translate(0)}}.log-meta{align-items:center;gap:var(--space-2);color:#f4f0e873;font-size:.65rem;display:flex}.log-icon{color:var(--accent);align-items:center;display:flex}.log-repo{color:#f4f0e8;font-weight:700}.log-detail{color:#ebe5d9;word-break:break-word;overflow-wrap:break-word;line-height:1.5}.blinking-cursor{background:var(--accent);vertical-align:middle;width:6px;height:14px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.metrics-panel{gap:var(--space-6);flex-direction:column;display:flex}.metrics-heading{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:var(--space-2);font-size:1.25rem;font-weight:700}.metrics-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.metric-card{padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color .3s,transform .3s}.metric-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.metric-card.highlight{background:#e85d0405;border-color:#e85d0438}.metric-value{font-family:var(--font-display);margin-bottom:var(--space-1);font-size:2rem;font-weight:800;line-height:1}.metric-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.6rem}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.work-track{cursor:grab}.work-track.dragging,.work-track.dragging .project-card{cursor:grabbing}.terminal-tab-btn{opacity:.8}.terminal-tab-btn:hover{opacity:1;color:#f4f0e8!important;background:#ffffff0f!important}.terminal-tab-btn.active{opacity:1;font-weight:700;color:#f4f0e8!important;background:#ffffff1a!important}.terminal-line.input{color:#f4f0e8}.terminal-line.output{color:#f4f0e8b3}.terminal-line.error{color:#ff5f56}.terminal-scroll-area::-webkit-scrollbar{width:6px}.terminal-scroll-area::-webkit-scrollbar-track{background:0 0}.terminal-scroll-area::-webkit-scrollbar-thumb{background:#f4f0e81f;border-radius:9999px;transition:background .2s}.terminal-scroll-area::-webkit-scrollbar-thumb:hover{background:#e85d0466}.terminal-scroll-area{scrollbar-width:thin;scrollbar-color:#f4f0e81f transparent}canvas{transition:opacity .5s}.carousel-btn{color:#f4f0e899!important;border-color:#f4f0e826!important}.carousel-btn:not(:disabled):hover{transform:scale(1.05);background:var(--paper)!important;color:var(--ink)!important;border-color:var(--paper)!important}.carousel-btn:disabled{border-color:#f4f0e814!important}.cp-overlay{-webkit-backdrop-filter:blur(16px)saturate(1.2);z-index:9999;opacity:0;pointer-events:none;background:#0a0a08a6;justify-content:center;align-items:flex-start;padding-top:clamp(5rem,12vh,9rem);transition:opacity .2s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0}.cp-overlay.cp-open{opacity:1;pointer-events:auto}.cp-modal{background:linear-gradient(165deg,#20201cf7,#161614fc);border:1px solid #f4f0e81a;border-radius:16px;flex-direction:column;width:min(92%,560px);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;transform:translateY(24px)scale(.96);box-shadow:0 0 0 1px #f4f0e80a,0 24px 80px #0009,0 8px 24px #0006}.cp-overlay.cp-open .cp-modal{transform:translateY(0)scale(1)}.cp-search-bar{border-bottom:1px solid #f4f0e812;align-items:center;gap:10px;padding:14px 18px;display:flex}.cp-search-icon{color:#f4f0e84d;flex-shrink:0;align-items:center;display:flex}.cp-input{color:#f4f0e8;font-family:var(--font-mono);letter-spacing:.01em;background:0 0;border:none;outline:none;flex:1;font-size:.88rem}.cp-input::placeholder{color:#f4f0e847}.cp-esc-badge{font-family:var(--font-mono);color:#f4f0e859;letter-spacing:.04em;background:#f4f0e80f;border:1px solid #f4f0e814;border-radius:5px;flex-shrink:0;padding:3px 7px;font-size:.58rem;font-weight:500}.cp-results{scroll-behavior:smooth;max-height:340px;padding:8px;overflow-y:auto}.cp-results::-webkit-scrollbar{width:3px}.cp-results::-webkit-scrollbar-track{background:0 0}.cp-results::-webkit-scrollbar-thumb{background:#f4f0e814;border-radius:99px}.cp-group+.cp-group{margin-top:6px}.cp-group-header{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#f4f0e852;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:6px 12px 4px;font-size:.58rem;font-weight:600;display:flex}.cp-group-count{color:#f4f0e840;background:#f4f0e80d;border-radius:99px;padding:1px 6px;font-size:.52rem;font-weight:500}.cp-item{color:#f4f0e899;width:100%;font-family:var(--font-mono);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:.78rem;transition:all .15s;animation:.25s both cp-fade-in;display:flex}@keyframes cp-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cp-item.cp-active{color:#f4f0e8;background:#e85d0414;border-color:#e85d042e;box-shadow:0 0 20px #e85d040f}.cp-item:hover:not(.cp-active){color:#f4f0e8d9;background:#f4f0e808}.cp-item-left{align-items:center;gap:10px;display:flex}.cp-item-icon{opacity:.35;align-items:center;transition:opacity .2s,color .2s;display:flex}.cp-item-icon.cp-icon-lit{opacity:.9;color:var(--accent,#e85d04)}.cp-item-label{white-space:nowrap}.cp-item-right{align-items:center;gap:4px;display:flex}.cp-kbd{font-family:var(--font-mono);color:#f4f0e852;text-align:center;letter-spacing:.03em;background:#f4f0e80d;border:1px solid #f4f0e812;border-radius:5px;min-width:18px;padding:2px 7px;font-size:.56rem;font-weight:500}.cp-active .cp-kbd{color:#f4f0e88c;background:#e85d041a;border-color:#e85d0433}.cp-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:2.5rem 1rem;display:flex}.cp-empty-icon{color:#f4f0e81f;display:flex}.cp-empty-icon svg{width:28px;height:28px}.cp-empty p{font-family:var(--font-mono);color:#f4f0e873;margin:0;font-size:.78rem}.cp-empty strong{color:#f4f0e8b3}.cp-empty-hint{font-family:var(--font-mono);color:#f4f0e833;font-size:.62rem}.cp-footer{-webkit-user-select:none;user-select:none;border-top:1px solid #f4f0e80f;justify-content:center;align-items:center;gap:20px;padding:10px 18px;display:flex}.cp-footer-group{font-family:var(--font-mono);color:#f4f0e838;align-items:center;gap:5px;font-size:.58rem;display:flex}.cp-footer-kbd{color:#f4f0e84d;text-align:center;background:#f4f0e80d;border:1px solid #f4f0e812;border-radius:4px;min-width:16px;padding:1px 5px;font-size:.56rem}.metric-card,.about-value,.journey-card,.writing-card,.command-palette-toggle{transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s}.metric-card:hover,.about-value:hover,.writing-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #00000026;border-color:#f4f0e840!important}.command-palette-toggle:hover{color:var(--accent)!important;border-color:#e85d0466!important}@media (width<=1024px){.console-grid{grid-template-columns:1fr}}@media (width<=768px){.writing-grid{grid-template-columns:1fr}.terminal-line{word-break:break-word;white-space:pre-wrap}}.interactive-stat{-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.interactive-stat:hover{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 4%, transparent);transform:translateY(-2px)}.interactive-stat.active{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 8%, transparent);box-shadow:0 0 0 1px var(--accent)}.chess-card{padding:var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(10px);border:1px solid #ffffff1a;max-width:280px;margin:0 auto;transition:all .3s;box-shadow:0 4px 30px #00000008}.chess-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.chess-header-title{font-family:var(--font-mono);letter-spacing:.02em;color:var(--muted);text-transform:lowercase;text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:.7rem;overflow:hidden}.chess-header-actions{align-items:center;gap:8px;display:flex}.chess-action-btn{border:1px solid var(--line);cursor:pointer;font-family:var(--font-mono);color:var(--muted);border-radius:var(--radius-sm);text-transform:lowercase;background:0 0;padding:2px 8px;font-size:.65rem;transition:all .2s}.chess-action-btn:hover{color:var(--accent);border-color:var(--accent)}.chess-action-btn.active{background:color-mix(in oklch, var(--accent) 8%, transparent);border-color:var(--accent);color:var(--accent)}.chess-restart-btn{cursor:pointer;font-family:var(--font-mono);color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;padding:2px 6px;font-size:.7rem;transition:color .2s;display:flex}.chess-restart-btn:hover{color:var(--accent)}.chess-restart-icon{transition:transform .3s}.chess-restart-btn:hover .chess-restart-icon{transform:rotate(-180deg)}.chess-board-container{justify-content:center;align-items:center;width:100%;display:flex}.chess-board{border:1px solid var(--line);border-radius:var(--radius-md);grid-template-rows:repeat(8,1fr);width:240px;height:240px;display:grid;overflow:hidden;box-shadow:0 4px 12px #0000000d}.chess-board-row{grid-template-columns:repeat(8,1fr);width:100%;height:30px;display:grid}.chess-square{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:30px;height:30px;transition:background-color .15s;display:flex;position:relative}.chess-square-light{background-color:color-mix(in oklch, var(--ink) 6%, transparent)}.chess-square-dark{background-color:color-mix(in oklch, var(--ink) 22%, transparent)}.chess-square:hover{filter:brightness(.95)}.chess-square-selected{box-shadow:inset 0 0 0 2px var(--accent);background-color:color-mix(in oklch, var(--accent) 18%, transparent)!important}.chess-square-check{box-shadow:inset 0 0 0 2px #ef4444;background-color:#ef444459!important}.chess-piece-wrapper{object-fit:contain;width:85%;height:85%;transition:transform .15s}.chess-piece-wrapper:hover{transform:scale(1.08)}.chess-move-dot{background-color:color-mix(in oklch, var(--accent) 65%, transparent);pointer-events:none;z-index:2;border-radius:50%;width:8px;height:8px;position:absolute}.chess-move-capture{border:2px solid color-mix(in oklch, var(--accent) 65%, transparent);pointer-events:none;z-index:2;border-radius:50%;width:22px;height:22px;position:absolute}.chess-footer{margin-top:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.chess-status-text{font-family:var(--font-mono);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:.7rem;overflow:hidden}.chess-score{font-family:var(--font-mono);color:var(--muted);font-size:.7rem}.chess-score-val{font-weight:500}.chess-wins{color:var(--ink);font-weight:700}.chess-losses,.chess-draws{color:var(--muted)}.chess-score-sep{color:var(--line)}.loader{background:var(--paper);z-index:10000;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.loader-center{align-items:center;gap:var(--space-8);flex-direction:column;display:flex}.loader-logo{background:var(--ink);border-radius:50%;place-items:center;width:88px;height:88px;display:grid;position:relative}.loader-logo:before{content:"";background:conic-gradient(from 0deg, var(--accent) 0%, var(--accent) var(--loader-progress,0%), var(--line) var(--loader-progress,0%), var(--line) 100%);opacity:.5;border-radius:50%;animation:2s linear infinite loader-spin;position:absolute;inset:-2px}@keyframes loader-spin{to{transform:rotate(360deg)}}.loader-text{font-family:var(--font-mono);color:var(--paper);letter-spacing:-.03em;font-size:1.75rem;font-weight:800}.loader-progress{background:var(--line);border-radius:2px;width:200px;height:1px;position:relative;overflow:hidden}.loader-progress-fill{background:var(--accent);height:100%;transition:width .1s linear}.loader-status{align-items:center;gap:var(--space-4);display:flex}.loader-percentage{font-family:var(--font-mono);color:var(--ink);letter-spacing:.04em;text-align:right;min-width:40px;font-size:.875rem;font-weight:700}.loader-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.65rem}.loader-grid{gap:var(--space-3);width:80px;height:80px;margin-top:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.loader-dot{background:var(--ink);border-radius:50%;width:8px;height:8px}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}html[data-magicui-theme-vt=active]::view-transition-group(root){animation-duration:var(--magicui-theme-toggle-vt-duration)}html[data-magicui-theme-vt=active]::view-transition-new(root){clip-path:var(--magicui-theme-vt-clip-from)}.text-3d-flip-root{display:inline;position:relative}.text-3d-flip-word{display:inline-flex}.text-3d-flip-space{white-space:pre}.text-3d-flip-char{transform-style:preserve-3d;display:inline-block;position:relative}.text-3d-flip-char>span{height:1lh}.text-3d-flip-front{backface-visibility:hidden;position:relative}.text-3d-flip-back{backface-visibility:hidden;position:absolute;top:0;left:0}.contact-em-flip{font-family:var(--font-serif);text-transform:none;color:var(--accent);font-style:italic;font-weight:400}.magic-highlighter{background:0 0;display:inline-block;position:relative}.dock-container{z-index:1000;-webkit-backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:24px;align-items:center;gap:12px;padding:12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #0003}html.dark .dock-container{background:#0003;border:1px solid #ffffff0d}.dock-item{color:var(--ink);cursor:pointer;aspect-ratio:1;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:50%;outline:none;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex;position:relative}html.dark .dock-item{color:#fffc;background:#ffffff0d}.dock-item:hover{color:var(--ink);background:#fff3}html.dark .dock-item:hover{color:#fff;background:#ffffff26}.dock-item.active{background:var(--ink);color:var(--paper)}html.dark .dock-item.active{color:#000;background:#fff}.dock-item-wrapper{justify-content:center;align-items:center;height:100%;display:flex;position:relative}.dock-tooltip{background:var(--ink);color:var(--paper);opacity:0;pointer-events:none;white-space:nowrap;font-size:.75rem;font-weight:500;font-family:var(--font-sans);border-radius:8px;padding:6px 12px;transition:opacity .2s,transform .2s;position:absolute;top:-45px;left:50%;transform:translate(-50%)scale(.9)}html.dark .dock-tooltip{color:#000;background:#fff}.dock-item:hover .dock-tooltip{opacity:1;transform:translate(-50%)scale(1)}.dock-divider{background:#fff3;width:1px;height:32px;margin:0 4px}html.dark .dock-divider{background:#ffffff1a}.top-left-logo{font-family:var(--font-display);z-index:1000;text-transform:uppercase;letter-spacing:-.05em;color:var(--ink);mix-blend-mode:difference;font-size:1.5rem;font-weight:800;text-decoration:none;position:fixed;top:24px;left:32px}html.dark .top-left-logo{color:#fff}@media (width<=768px){.dock-container{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;justify-content:flex-start;gap:8px;width:auto;padding:10px 12px;left:16px;right:16px;overflow-x:auto;transform:none}.dock-container::-webkit-scrollbar{display:none}.dock-item,.dock-item-wrapper{flex-shrink:0!important;width:40px!important;height:40px!important}.dock-divider{margin:0 2px;flex-shrink:0!important;width:1px!important;height:24px!important}.top-left-logo{top:20px;left:20px}}.variable-proximity{font-family:Roboto Flex,sans-serif}.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}.galaxy-container{width:100%;height:100%;position:relative}.custom-cursor-wrapper{pointer-events:none;z-index:99999;mix-blend-mode:difference;will-change:transform;width:24px;height:24px;margin-top:-3px;margin-left:-3px;position:fixed;top:0;left:0}svg.modern-cursor{width:24px;height:24px;transition:transform .2s cubic-bezier(.25,1,.5,1);animation:3s ease-in-out infinite float-and-pulse;overflow:visible}.custom-cursor-wrapper.hovering svg.modern-cursor{animation-play-state:paused;transform:scale(1.1)rotate(-5deg)}.cursor-fill{fill:#fff;transition:fill .3s}.cursor-stroke{stroke:#1a1a1a;stroke-width:2px;stroke-linejoin:round;transition:stroke .3s}@keyframes float-and-pulse{0%{transform:translateY(0)scale(1)}50%{transform:translateY(-8px)scale(1.05)}to{transform:translateY(0)scale(1)}}@media (pointer:fine){body,body *,a,button,input,textarea,select{cursor:none!important}}
