.hardware-accel-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:var(--space-md);background:#0f0e0c80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:hardwareAccelBackdropIn var(--duration-normal) var(--ease-out-expo) forwards}[data-theme=dark] .hardware-accel-modal-backdrop{background:#0009}@keyframes hardwareAccelBackdropIn{0%{opacity:0}to{opacity:1}}.hardware-accel-modal{max-width:420px;width:100%;padding:var(--space-md);border-radius:12px;border:1px solid var(--color-beige);background:#f6f2ebfa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 48px #0f0e0c1f;animation:hardwareAccelModalIn var(--duration-slow) var(--ease-out-expo) forwards}[data-theme=dark] .hardware-accel-modal{border-color:var(--border-dark);background:#2a2620fa;box-shadow:0 24px 48px #0006}@keyframes hardwareAccelModalIn{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.hardware-accel-modal-title{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;margin-bottom:var(--space-sm);line-height:1.3}.hardware-accel-modal-body{font-family:var(--font-body);font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-md)}.hardware-accel-modal-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.75rem 1.5rem;border-radius:999px;border:1px solid var(--color-burnt-orange);background-color:var(--color-burnt-orange);color:var(--color-cream);font-family:var(--font-display);font-size:.875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:none;transition:background-color var(--duration-normal) var(--ease-out-expo),color var(--duration-normal) var(--ease-out-expo),transform var(--duration-fast) var(--ease-out-expo)}.hardware-accel-modal-btn:hover{background-color:var(--color-charcoal);border-color:var(--color-charcoal);transform:translateY(-1px)}.hardware-accel-modal-btn:active{transform:translateY(0)}.hardware-accel-modal-btn:focus-visible{outline:2px solid var(--color-burnt-orange);outline-offset:2px}.hardware-accel-modal-btn-secondary{margin-bottom:var(--space-sm);background:transparent;color:var(--color-burnt-orange)}.hardware-accel-modal-btn-secondary:hover{background:#b85a301f;border-color:var(--color-burnt-orange);color:var(--color-burnt-orange)}[data-theme=dark] .hardware-accel-modal-btn-secondary{color:var(--color-marmalade)}[data-theme=dark] .hardware-accel-modal-btn-secondary:hover{background:#d4732b26;border-color:var(--color-marmalade);color:var(--color-marmalade)}.hardware-accel-modal-howto{margin-bottom:var(--space-md);padding:var(--space-sm);border-radius:8px;border:1px solid var(--color-beige);background:#00000008;animation:hardwareAccelBackdropIn var(--duration-normal) var(--ease-out-expo) forwards}[data-theme=dark] .hardware-accel-modal-howto{border-color:var(--border-dark);background:#ffffff0a}.hardware-accel-modal-howto-list{margin:0;padding-left:1.25rem;font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);line-height:1.7;list-style:disc}.hardware-accel-modal-howto-list li{margin-bottom:.5rem}.hardware-accel-modal-howto-list li:last-child{margin-bottom:0}.hardware-accel-modal-howto-list strong{color:var(--text-primary)}.dither-container{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;display:block}.decay-card.content{position:relative;overflow:visible;border-radius:8px}.decay-card.content:before{content:"";position:absolute;bottom:-10px;right:-10px;width:calc(100% + 10px);height:calc(70% + 10px);border-bottom:3px solid var(--color-burnt-orange, #b85a30);border-right:3px solid var(--color-burnt-orange, #b85a30);border-top:none;border-left:none;z-index:0;pointer-events:none;opacity:.9}.decay-card .svg{position:relative;z-index:1;width:100%;height:100%;display:block;will-change:transform;overflow:hidden;border-radius:8px}.decay-card .decay-card-hover-image{opacity:0;transition:opacity .35s ease;pointer-events:none}.decay-card:hover .decay-card-hover-image{opacity:1}.decay-card .decay-card-image-border{stroke:var(--color-warm-gray-dark, #6b6154);stroke-width:2;vector-effect:non-scaling-stroke}[data-theme=dark] .decay-card .decay-card-image-border{stroke:var(--border-dark, #3d3832)}.decay-card .card-text-wrap{position:absolute;left:0;right:0;bottom:0;padding:1.25em 1em 1em;background:linear-gradient(to top,rgba(15,14,12,.95) 0%,rgba(15,14,12,.75) 50%,transparent 100%);pointer-events:none}[data-theme=dark] .decay-card .card-text-wrap{background:linear-gradient(to top,rgba(28,25,21,.98) 0%,rgba(28,25,21,.8) 50%,transparent 100%)}.decay-card .card-text{position:relative;bottom:auto;left:auto;letter-spacing:-.02em;font-weight:800;font-size:1.5rem;line-height:1.35em;color:#f5f0e6;text-shadow:0 1px 2px rgba(0,0,0,.4)}.decay-card .card-text:first-line{font-size:2.25rem}@media(max-width:768px){.decay-card.content{width:100%!important;max-width:320px;height:auto!important;aspect-ratio:4/5}.decay-card.content:before{bottom:-8px;right:-8px;width:calc(100% + 8px);height:calc(70% + 8px);border-width:2px}.decay-card .card-text-wrap{padding:1em .75em .75em}.decay-card .card-text{font-size:1.25rem}.decay-card .card-text:first-line{font-size:1.75rem}}@media(max-width:480px){.decay-card.content{max-width:280px}.decay-card.content:before{bottom:-6px;right:-6px;width:calc(100% + 6px);height:calc(70% + 6px)}.decay-card .card-text-wrap{padding:.75em .5em .5em}.decay-card .card-text{font-size:1.1rem}.decay-card .card-text:first-line{font-size:1.5rem}}@media(max-width:360px){.decay-card.content{max-width:240px}}.dock-outer{margin:0 .5rem;display:flex;max-width:100%;align-items:center;pointer-events:none}.dock-panel{position:fixed;bottom:.5rem;left:50%;transform:translate(-50%);display:flex;align-items:flex-end;width:fit-content;gap:1rem;border-radius:1rem;background-color:#f6f2ebeb;border:1px solid var(--color-burnt-orange, #b85a30);padding:0 .5rem .5rem;pointer-events:auto;z-index:120}[data-theme=dark] .dock-panel{background-color:#1c1915eb;border-color:var(--color-burnt-orange, #b85a30)}.dock-item{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background-color:#f6f2ebe6;border:1px solid var(--color-burnt-orange, #b85a30);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;cursor:none;outline:none;padding:0;font:inherit}.dock-item:focus-visible{outline:2px solid var(--color-marmalade, #d4732b);outline-offset:4px}[data-theme=dark] .dock-item{background-color:#1c1915f5;border-color:var(--color-burnt-orange, #b85a30);box-shadow:0 8px 20px #00000080,0 2px 8px #0000004d}.dock-item-theme{border-radius:18px}.dock-item-theme:hover{border-color:var(--color-pastel-blue);box-shadow:0 0 0 1px #7a94a8b3,0 8px 20px #0006}[data-theme=dark] .dock-item-theme{border-color:#7a94a873;background-color:#0f0e0ce6}[data-theme=dark] .dock-item-theme:hover{border-color:#7a94a8f2}.dock-icon{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%;color:var(--text-primary)}.dock-theme-icon{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.dock-theme-icon svg{transition:transform var(--duration-fast) var(--ease-out-expo),color var(--duration-fast) var(--ease-out-expo)}.dock-item-theme:hover .dock-theme-icon svg{transform:scale(1.05)}.dock-theme-icon-dark,[data-theme=dark] .dock-theme-icon-light{opacity:0}[data-theme=dark] .dock-theme-icon-dark{opacity:1}.dock-label{position:absolute;top:-1.5rem;left:50%;width:fit-content;white-space:pre;border-radius:.375rem;border:1px solid var(--color-burnt-orange, #b85a30);background-color:#f6f2ebfa;padding:.125rem .5rem;font-size:.75rem;color:var(--text-primary);transform:translate(-50%);pointer-events:none}[data-theme=dark] .dock-label{border-color:var(--color-burnt-orange, #b85a30);background-color:#1c1915fa;color:var(--text-primary)}.dock-theme-toggle{all:unset;width:100%;height:100%;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;cursor:none;color:var(--text-primary)}.dock-theme-toggle svg{transition:transform var(--duration-fast) var(--ease-out-expo),color var(--duration-fast) var(--ease-out-expo);stroke-width:1.6}.dock-item:hover .dock-theme-toggle svg{transform:scale(1.1)}@media(max-width:768px){.dock-panel{gap:.6rem;padding:.35rem .5rem .5rem;bottom:.75rem;border-radius:.875rem}.dock-item{border-radius:8px;min-width:44px;min-height:44px}.dock-label{font-size:.7rem;padding:.1rem .4rem;top:-1.25rem}.dock-icon svg{width:18px;height:18px}.dock-theme-icon svg{width:18px;height:18px}}@media(max-width:480px){.dock-outer{margin:0 .35rem}.dock-panel{gap:.5rem;padding:.3rem .4rem .4rem;bottom:.5rem;border-radius:.75rem}.dock-item{border-radius:7px;min-width:44px;min-height:44px}.dock-item-theme{border-radius:14px}.dock-label{font-size:.65rem;top:-1.1rem;border-radius:.3rem}.dock-icon svg{width:16px;height:16px}.dock-theme-icon svg{width:16px;height:16px}}@media(max-width:360px){.dock-panel{gap:.4rem;padding:.25rem .35rem .35rem}.dock-item{min-width:44px;min-height:44px}.dock-icon svg{width:14px;height:14px}.dock-theme-icon svg{width:14px;height:14px}}.focus-container{position:relative;display:flex;gap:.15em;justify-content:flex-start;align-items:center;flex-wrap:wrap;outline:none;-webkit-user-select:none;user-select:none}.focus-word{position:relative;font-size:3rem;font-weight:900;cursor:none;transition:filter .3s ease,color .3s ease;outline:none;-webkit-user-select:none;user-select:none}.focus-word.active{filter:blur(0)}.focus-frame{position:absolute;top:0;left:0;pointer-events:none;box-sizing:content-box;border:none}.corner{position:absolute;width:1rem;height:1rem;border:3px solid var(--border-color, #fff);filter:drop-shadow(0 0 4px var(--border-color, #fff));border-radius:3px;transition:none}.top-left{top:-10px;left:-10px;border-right:none;border-bottom:none}.top-right{top:-10px;right:-10px;border-left:none;border-bottom:none}.bottom-left{bottom:-10px;left:-10px;border-right:none;border-top:none}.bottom-right{bottom:-10px;right:-10px;border-left:none;border-top:none}@media(max-width:768px){.focus-container{gap:.1em}.corner{width:.75rem;height:.75rem;border-width:2px}.top-left{top:-6px;left:-6px}.top-right{top:-6px;right:-6px}.bottom-left{bottom:-6px;left:-6px}.bottom-right{bottom:-6px;right:-6px}}@media(max-width:480px){.corner{width:.6rem;height:.6rem;border-width:2px}.top-left{top:-4px;left:-4px}.top-right{top:-4px;right:-4px}.bottom-left{bottom:-4px;left:-4px}.bottom-right{bottom:-4px;right:-4px}}.contact-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10003;display:grid;place-items:center;padding:1.25rem;background:#0a0907b8}.contact-modal{position:relative;width:min(100%,620px);padding:clamp(1.5rem,4vw,2.5rem);border:1px solid rgba(245,240,230,.35);background:#211e19;color:#f5f0e6}.contact-modal-close{position:absolute;top:1rem;right:1rem;border:0;background:transparent;color:#f5f0e6;font-size:1.75rem;line-height:1;cursor:pointer}.contact-modal-kicker{margin:0 0 .5rem;color:#d4732b;font:600 .72rem/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase}.contact-modal h2{margin:0 0 1.5rem;font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem)}.contact-modal form{display:grid;gap:1rem}.contact-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-modal label{display:grid;gap:.45rem;color:#e5dfd4;font:600 .78rem/1.2 var(--font-body);letter-spacing:.06em;text-transform:uppercase}.contact-modal input,.contact-modal textarea{width:100%;box-sizing:border-box;border:1px solid rgba(245,240,230,.35);border-radius:0;background:#ffffff0a;color:#f5f0e6;padding:.78rem .85rem;font:400 1rem/1.4 var(--font-body);text-transform:none;letter-spacing:normal}.contact-modal textarea{resize:vertical}.contact-modal input:focus,.contact-modal textarea:focus{outline:2px solid #d4732b;outline-offset:2px}.contact-modal-submit{justify-self:start;min-height:48px;border:1px solid #d4732b;border-radius:0;background:#d4732b;color:#17130f;padding:.75rem 1.05rem;font:700 .85rem/1 var(--font-body);cursor:pointer}.contact-modal-submit:disabled{opacity:.65;cursor:wait}.contact-modal-error{margin:0;color:#f5f0e6;font:400 .9rem/1.4 var(--font-body)}.contact-modal-success p{margin:0 0 1.25rem;color:#e5dfd4;font:400 1rem/1.5 var(--font-body)}.contact-modal-honeypot{position:absolute;left:-10000px}@media(max-width:540px){.contact-modal-grid{grid-template-columns:1fr}.contact-modal{padding:1.5rem}}.flowing-menu-wrap{width:100%;height:100%;overflow:hidden;background-color:var(--bg-primary)}.flowing-menu{display:flex;flex-direction:column;height:100%;margin:0;padding:0}.flowing-menu__item{flex:1;position:relative;overflow:hidden;text-align:center;border-top:1px solid var(--color-beige)}.flowing-menu__item:first-child{border-top:none}[data-theme=dark] .flowing-menu__item{border-color:var(--color-warm-gray-dark)}.flowing-menu__link{display:flex;align-items:center;justify-content:center;height:100%;position:relative;cursor:none;text-transform:uppercase;text-decoration:none;white-space:nowrap;font-family:var(--font-display);font-weight:600;font-size:clamp(3rem,8vh,6.5rem);color:var(--text-primary);z-index:2}.flowing-menu__link:hover{color:var(--color-burnt-orange)}.flowing-menu__item--compact .flowing-menu__link,.flowing-menu__item--compact .marquee__part span{font-size:clamp(2rem,6.5vh,5rem)}.flowing-menu__item:hover .flowing-menu__link{opacity:0;transition:opacity .2s ease}.flowing-menu__marquee{position:absolute;top:0;left:0;overflow:hidden;width:100%;height:100%;pointer-events:none;transform:translate3d(0,101%,0);background-color:var(--color-cream)}[data-theme=dark] .flowing-menu__marquee{background-color:var(--bg-secondary)}.marquee__inner-wrap{height:100%;width:100%;overflow:hidden}.marquee__inner{display:flex;align-items:center;position:relative;height:100%;width:fit-content;will-change:transform}.marquee__part{display:flex;align-items:center;flex-shrink:0;color:var(--text-primary)}[data-theme=dark] .marquee__part{color:var(--text-primary)}.marquee__part span{white-space:nowrap;text-transform:uppercase;font-family:var(--font-display);font-weight:600;font-size:clamp(3rem,8vh,6.5rem);line-height:1;padding:0 2vw}.marquee__img{width:380px;height:14vh;min-height:140px;margin:2em 3vw;padding:1em 0;border-radius:70px;background-size:cover;background-position:50% 50%;border:1px solid var(--color-beige)}[data-theme=dark] .marquee__img{border-color:var(--color-warm-gray-dark)}@media(max-width:768px){.flowing-menu__link,.flowing-menu__item--compact .flowing-menu__link,.marquee__part span,.flowing-menu__item--compact .marquee__part span{font-size:clamp(1.15rem,6.5vw,2.15rem)}.marquee__img{width:180px;min-height:100px;height:12vh}}:root{--color-cream: #F6F2EB;--color-off-white: #EDE7DC;--color-beige: #DDD4C4;--color-warm-gray: #A89E8C;--color-warm-gray-dark: #6B6154;--color-burnt-orange: #B85A30;--color-marmalade: #D4732B;--color-olive: #5C6B4A;--color-pastel-blue: #7A94A8;--color-black: #0F0E0C;--color-charcoal: #252219;--font-display: "Syne", sans-serif;--font-serif: "Cormorant Garamond", serif;--font-body: "Karla", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 8rem;--space-xxl: 12rem;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .2s;--duration-normal: .4s;--duration-slow: .8s;--duration-slower: 1.2s;--bg-primary: var(--color-cream);--bg-secondary: var(--color-off-white);--text-primary: #0F0E0C;--text-secondary: #252219;--text-muted: #5C5346}[data-theme=dark]{--bg-primary: #1C1915;--bg-secondary: #2A2620;--bg-dark: #151210;--border-dark: #3D3832;--text-primary: #F5F0E6;--text-secondary: #E5DFD4;--text-muted: #B8AD9E}.theme-transitioning *{transition:background-color var(--duration-slow) var(--ease-out-expo),color var(--duration-slow) var(--ease-out-expo),border-color var(--duration-slow) var(--ease-out-expo)!important}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;max-width:100%;overflow-x:hidden}html{scroll-behavior:smooth;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;width:100%;max-width:100%;box-sizing:border-box}body{font-family:var(--font-body);font-weight:400;line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);cursor:none;overflow-x:hidden;transition:background-color var(--duration-slow) var(--ease-out-expo),color var(--duration-slow) var(--ease-out-expo)}::selection{background-color:var(--color-burnt-orange);color:var(--color-cream)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-beige)}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-warm-gray);border-radius:4px}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-warm-gray-dark)}::-webkit-scrollbar-thumb:hover{background:var(--color-charcoal)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--color-warm-gray)}.grain-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}.cursor-dot{position:fixed;width:8px;height:8px;background-color:var(--color-burnt-orange);border-radius:50%;pointer-events:none;z-index:10002;transform:translate(-50%,-50%);transition:transform .1s ease-out,opacity .2s ease}.cursor-outline{position:fixed;width:36px;height:36px;border:2px solid var(--color-burnt-orange);border-radius:50%;pointer-events:none;z-index:10001;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s ease,transform .2s ease}.cursor-hover .cursor-dot{transform:translate(-50%,-50%) scale(.5)}.cursor-hover .cursor-outline{opacity:.85}a,button,[role=button],.magnetic-btn,.project-card,.dock-item,.dock-item *,input[type=submit],input[type=button],[type=button]{cursor:none}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);mix-blend-mode:difference}.nav-right{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0}.nav-logo a{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--color-cream);text-decoration:none;letter-spacing:.05em}.nav-links{display:flex;gap:var(--space-lg);flex-wrap:nowrap}.nav-link{font-family:var(--font-body);font-size:.875rem;font-weight:400;color:var(--color-cream);text-decoration:none;letter-spacing:.05em;text-transform:uppercase;position:relative;overflow:hidden}.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background-color:var(--color-cream);transform:scaleX(0);transform-origin:right;transition:transform var(--duration-normal) var(--ease-out-expo)}.nav-link:hover:after{transform:scaleX(1);transform-origin:left}.nav-link:hover{letter-spacing:.1em;transition:letter-spacing var(--duration-normal) var(--ease-out-expo)}.theme-toggle{background:transparent;border:1px solid rgba(15,14,12,.12);border-radius:999px;min-width:48px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;cursor:none;transition:all var(--duration-normal) var(--ease-out-expo);position:relative;padding:0 .9rem;color:var(--text-primary);background:#f6f2ebeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--font-body);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.theme-toggle:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:#0000000a;opacity:0;transition:opacity var(--duration-normal) var(--ease-out-expo),transform var(--duration-normal) var(--ease-out-expo);z-index:0}.theme-toggle:hover{transform:translateY(-1px);box-shadow:0 6px 16px #00000014}.theme-toggle:hover:before{opacity:1;transform:scale(1.02)}.theme-toggle:active{transform:translateY(0);box-shadow:0 3px 10px #0000000f}.theme-toggle:focus-visible{outline:2px solid var(--color-burnt-orange);outline-offset:2px}.theme-icon{width:18px;height:18px;position:absolute;left:.9rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo);z-index:1;color:var(--text-primary);pointer-events:none}.theme-icon svg{width:100%;height:100%;stroke:currentColor;display:block;transform-origin:center center}.theme-icon-light{opacity:1;transform:translateY(-50%) translateY(.5px) rotate(0) scale(1)}.theme-icon-dark{opacity:0;transform:translateY(-50%) translateY(.5px) rotate(-180deg) scale(.5)}.theme-label{position:relative;z-index:1;white-space:nowrap;color:var(--text-primary);display:inline-flex;align-items:center;line-height:1;padding-left:calc(18px + .65rem)}[data-theme=dark] .theme-toggle{background:#2a2620eb;border-color:#f5f0e62e;color:var(--text-primary)}[data-theme=dark] .theme-toggle:before{background:#ffffff0f}[data-theme=dark] .theme-icon{color:var(--text-primary)}[data-theme=dark] .theme-icon-light{opacity:0;transform:translateY(-50%) translateY(.5px) rotate(180deg) scale(.5)}[data-theme=dark] .theme-icon-dark{opacity:1;transform:translateY(-50%) translateY(.5px) rotate(0) scale(1)}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:var(--space-xl) var(--space-lg);position:relative;z-index:1;overflow:hidden;overflow-x:hidden;width:100%;box-sizing:border-box}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,#1c191540,#1c191573 40%,#1c1915d9 75%,#1c1915)}[data-theme=dark] .hero:before{display:none}.hero .floating-ring{border-color:var(--color-warm-gray);opacity:.1}.hero .floating-circle{opacity:.12}.hero .floating-dot{opacity:.3;background-color:var(--color-pastel-blue)}.hero .floating-line{background:linear-gradient(to right,transparent,var(--color-warm-gray),transparent);opacity:.15}.hero:hover .floating-ring{opacity:.15}.hero:hover .floating-circle{opacity:.18}.site-content{position:relative;z-index:1}.why-lagging-hint{position:fixed;top:var(--space-md);left:var(--space-lg);z-index:10;margin:0;min-height:44px;padding:.75rem 0;border:none;background:none;font-family:var(--font-body);font-size:.75rem;font-weight:400;color:#b8ad9e;letter-spacing:.1em;text-transform:uppercase;cursor:none;transition:color var(--duration-normal) var(--ease-out-expo),opacity var(--duration-normal) var(--ease-out-expo);text-decoration:none}.why-lagging-hint:hover{color:var(--color-marmalade);text-decoration:underline;text-underline-offset:.2em;text-decoration-color:var(--color-marmalade)}.why-lagging-hint:focus-visible{outline:2px solid var(--color-burnt-orange);outline-offset:4px}[data-theme=dark] .why-lagging-hint{color:var(--text-muted)}[data-theme=dark] .why-lagging-hint:hover{color:var(--color-marmalade);text-decoration-color:var(--color-marmalade)}.site-dither-wrapper{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden;pointer-events:none}.site-dither-wrapper .dither-container{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important}.site-dither-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:transparent}[data-theme=dark] .site-dither-wrapper:after{background:linear-gradient(to bottom,#1c191540,#1c191573 40%,#1c1915d9 75%,#1c1915)}.projects-page{position:relative;z-index:2;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding-top:var(--space-md)}.projects-page-back{position:absolute;top:var(--space-md);left:var(--space-lg);display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--color-burnt-orange);background:#f6f2ebe6;color:var(--color-burnt-orange);text-decoration:none;font-family:var(--font-display);font-size:.875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color var(--duration-normal) var(--ease-out-expo),color var(--duration-normal) var(--ease-out-expo)}.projects-page-back:hover{background-color:var(--color-burnt-orange);color:var(--color-cream)}[data-theme=dark] .projects-page-back{background:#1c1915e6;color:var(--color-marmalade)}[data-theme=dark] .projects-page-back:hover{background-color:var(--color-burnt-orange);color:var(--color-cream)}.projects-page-center{flex:1;display:flex;flex-direction:column;min-height:90vh;width:100%;max-width:100%;margin:0;margin-top:calc(var(--space-md) + 2.5rem);border-radius:0;overflow:hidden;box-shadow:none}[data-theme=dark] .projects-page-center{box-shadow:none}@media(max-width:768px){.projects-page-back{left:var(--space-md);top:var(--space-sm);padding:.4rem .75rem;font-size:.8rem}.projects-page-center{margin-top:calc(var(--space-sm) + 2.25rem)}}.hero-dither-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;display:block;pointer-events:none}.hero-content{max-width:1200px;margin:0 auto;width:100%;padding:0 var(--space-sm);box-sizing:border-box;overflow-wrap:break-word;word-wrap:break-word;position:relative;z-index:2}.hero-content .greeting-text,.hero-content .hero-title,.hero-content .hero-title .word,.hero-content .hero-title .focus-word,.hero-content .hero-title .accent,.hero-content .hero-title .focus-word:last-of-type,.hero-content .subtitle-text,.hero-content .hero-tagline,.hero-content .hero-tagline p,.hero-scroll-indicator .scroll-text,[data-theme=dark] .hero-content .greeting-text,[data-theme=dark] .hero-content .hero-title,[data-theme=dark] .hero-content .hero-title .word,[data-theme=dark] .hero-content .hero-title .focus-word,[data-theme=dark] .hero-content .hero-title .accent,[data-theme=dark] .hero-content .hero-title .focus-word:last-of-type,[data-theme=dark] .hero-content .subtitle-text,[data-theme=dark] .hero-content .hero-tagline,[data-theme=dark] .hero-content .hero-tagline p,[data-theme=dark] .hero-scroll-indicator .scroll-text{text-shadow:0 1px 2px rgba(0,0,0,.08)}.hero-greeting{margin-bottom:var(--space-sm)}.greeting-text{font-family:var(--font-body);font-size:clamp(1rem,1.5vw,1.125rem);font-weight:300;color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:var(--space-xs)}[data-theme=dark] .greeting-text{color:var(--text-muted)}.hero-title{font-family:var(--font-display);font-size:clamp(4rem,14vw,11rem);font-weight:700;line-height:.9;letter-spacing:-.04em;margin-bottom:var(--space-md);color:var(--text-primary);word-break:normal;overflow-wrap:normal}.hero-title .line{display:block;margin-bottom:.05em;overflow-wrap:break-word}.hero-title .word{display:inline-block;position:relative;overflow-wrap:break-word;white-space:nowrap}.hero-title .accent{color:var(--color-burnt-orange);font-weight:800;letter-spacing:-.05em;white-space:nowrap;text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:.08em;text-underline-offset:.15em}.hero-title .hero-title-focus.focus-container{gap:.05em;justify-content:flex-start}.hero-title .focus-word{font-family:var(--font-display);font-size:clamp(4rem,14vw,11rem);font-weight:700;letter-spacing:-.04em;line-height:.9;color:var(--text-primary)}.hero-title .focus-word:last-of-type{color:var(--color-marmalade);font-weight:800;letter-spacing:-.05em}.hero .greeting-text{color:#e5dfd4}.hero .hero-title,.hero .hero-title .word,.hero .hero-title .focus-word{color:#f5f0e6}.hero .hero-title .accent,.hero .hero-title .focus-word:last-of-type{color:#d4732b}.hero .subtitle-text{color:#e5dfd4}.hero .hero-tagline,.hero .hero-tagline p{color:#b8ad9e}.hero .hero-tagline .alias-subtle{color:#b8ad9e;opacity:.6}.hero .scroll-text{color:#b8ad9e}.hero-subtitle{margin-bottom:var(--space-lg)}.subtitle-text{font-family:var(--font-serif);font-size:clamp(1.5rem,3vw,2.25rem);font-style:italic;font-weight:400;color:var(--text-secondary);letter-spacing:-.01em;line-height:1.3}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.hero-tagline{font-family:var(--font-body);font-size:clamp(.875rem,1.5vw,1rem);font-weight:400;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:var(--space-lg);line-height:1.6}.hero-tagline .alias-subtle{font-weight:300;opacity:.6}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.hero-action{display:inline-flex;align-items:center;gap:.65rem;min-height:48px;padding:.75rem 1rem;border:1px solid rgba(245,240,230,.72);border-radius:4px;color:#f5f0e6;font-family:var(--font-body);font-size:.875rem;font-weight:600;letter-spacing:.04em;text-decoration:none;transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease,border-color var(--duration-fast) ease}.hero-action-primary{background:var(--color-marmalade);border-color:var(--color-marmalade);color:var(--color-black)}.hero-action:hover{background:#f5f0e6;border-color:#f5f0e6;color:var(--color-black)}.hero-action:focus-visible,.project-visual-link:focus-visible,.project-title a:focus-visible,.project-arrow:focus-visible{outline:2px solid var(--color-marmalade);outline-offset:4px}.hero-intro{max-width:600px;font-size:clamp(1rem,1.75vw,1.25rem);font-weight:300;color:var(--text-secondary);line-height:1.7;letter-spacing:.01em}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-scroll-indicator{position:absolute;bottom:var(--space-lg);left:var(--space-lg);z-index:2;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.scroll-text{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;writing-mode:vertical-rl;color:var(--text-muted)}.scroll-line{width:1px;height:60px;background:linear-gradient(to bottom,var(--color-black),transparent);animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,to{transform:scaleY(1);opacity:1}50%{transform:scaleY(.5);opacity:.5}}.hero-decoration{position:absolute;right:10%;top:50%;transform:translateY(-50%);pointer-events:none;z-index:2}.deco-circle{width:300px;height:300px;border:1px solid var(--color-beige);border-radius:50%;animation:rotate 30s linear infinite}.deco-line{position:absolute;width:200px;height:1px;background:var(--color-beige);top:50%;left:50%;transform-origin:left center;animation:rotateLine 15s linear infinite}@keyframes rotate{to{transform:translateY(-50%) rotate(360deg)}}@keyframes rotateLine{to{transform:rotate(360deg)}}.floating-elements{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.floating-ring{position:absolute;border:1px solid var(--color-beige);border-radius:50%;opacity:.15;animation:floatRing 20s ease-in-out infinite}[data-theme=dark] .floating-ring{border-color:var(--color-warm-gray);opacity:.1}.floating-ring-1{width:200px;height:200px;top:15%;right:8%;animation-duration:25s;animation-delay:0s}.floating-ring-2{width:150px;height:150px;bottom:25%;left:12%;animation-duration:30s;animation-delay:-5s}.floating-ring-3{width:100px;height:100px;top:60%;right:20%;animation-duration:22s;animation-delay:-10s}@keyframes floatRing{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(30px,-40px) rotate(90deg)}50%{transform:translate(-20px,30px) rotate(180deg)}75%{transform:translate(40px,20px) rotate(270deg)}}.floating-circle{position:absolute;border-radius:50%;opacity:.08;animation:floatCircle 18s ease-in-out infinite}[data-theme=dark] .floating-circle{opacity:.12}.floating-circle-1{width:120px;height:120px;background:radial-gradient(circle,var(--color-burnt-orange) 0%,transparent 70%);top:30%;left:5%;animation-duration:24s;animation-delay:-3s}.floating-circle-2{width:80px;height:80px;background:radial-gradient(circle,var(--color-olive) 0%,transparent 70%);bottom:35%;right:15%;animation-duration:20s;animation-delay:-8s}@keyframes floatCircle{0%,to{transform:translate(0) scale(1)}33%{transform:translate(50px,-30px) scale(1.1)}66%{transform:translate(-40px,50px) scale(.9)}}.floating-dot{position:absolute;width:6px;height:6px;border-radius:50%;background-color:var(--color-burnt-orange);opacity:.4;animation:floatDot 15s ease-in-out infinite}[data-theme=dark] .floating-dot{opacity:.3;background-color:var(--color-pastel-blue)}.floating-dot-1{top:20%;left:25%;animation-duration:16s;animation-delay:0s}.floating-dot-2{top:70%;right:30%;animation-duration:18s;animation-delay:-6s}.floating-dot-3{bottom:20%;left:40%;animation-duration:14s;animation-delay:-12s}@keyframes floatDot{0%,to{transform:translate(0);opacity:.4}50%{transform:translate(60px,-80px);opacity:.6}}.floating-line{position:absolute;background:linear-gradient(to right,transparent,var(--color-beige),transparent);opacity:.2;animation:floatLine 12s ease-in-out infinite}[data-theme=dark] .floating-line{background:linear-gradient(to right,transparent,var(--color-warm-gray),transparent);opacity:.15}.floating-line-1{width:150px;height:1px;top:40%;right:25%;transform:rotate(45deg);animation-duration:14s;animation-delay:-2s}.floating-line-2{width:100px;height:1px;bottom:30%;left:20%;transform:rotate(-30deg);animation-duration:16s;animation-delay:-7s}@keyframes floatLine{0%,to{transform:translate(0) rotate(var(--rotation, 45deg));opacity:.2}50%{transform:translate(40px,-30px) rotate(calc(var(--rotation, 45deg) + 20deg));opacity:.3}}.hero:hover .floating-ring{opacity:.2}.hero:hover .floating-circle{opacity:.12}.hero:hover .floating-dot{opacity:.5}[data-theme=dark] .hero:hover .floating-ring{opacity:.15}[data-theme=dark] .hero:hover .floating-circle{opacity:.18}.interlude .floating-ring-4{width:180px;height:180px;top:20%;left:8%;animation-duration:28s}.interlude .floating-circle-3{width:100px;height:100px;background:radial-gradient(circle,var(--color-pastel-blue) 0%,transparent 70%);bottom:25%;right:12%;animation-duration:22s}.interlude .floating-dot-4{top:50%;left:50%;transform:translate(-50%,-50%);animation-duration:20s}.section-header{display:flex;align-items:baseline;gap:var(--space-md);margin-bottom:var(--space-xl);padding:0 var(--space-lg);position:relative;z-index:2}.section-number{font-family:var(--font-body);font-size:.875rem;color:var(--text-muted);letter-spacing:.1em}.section-title{font-family:var(--font-display);font-size:clamp(2rem,6vw,4rem);font-weight:700;letter-spacing:-.02em;text-transform:uppercase}.work-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md)}.section-header-left{display:flex;align-items:baseline;gap:var(--space-md)}.btn-view-all{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border-radius:999px;border:1px solid var(--color-burnt-orange);background:transparent;color:var(--color-burnt-orange);text-decoration:none;font-family:var(--font-display);font-size:.875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:background-color var(--duration-normal) var(--ease-out-expo),color var(--duration-normal) var(--ease-out-expo),transform var(--duration-fast) var(--ease-out-expo)}.btn-view-all:hover{background-color:var(--color-burnt-orange);color:var(--color-cream)}.btn-view-all-icon{transition:transform var(--duration-normal) var(--ease-out-expo)}.btn-view-all:hover .btn-view-all-icon{transform:translate(4px)}[data-theme=dark] .btn-view-all{border-color:var(--color-burnt-orange);color:var(--color-marmalade)}[data-theme=dark] .btn-view-all:hover{background-color:var(--color-burnt-orange);color:var(--color-cream)}.education{padding:var(--space-xxl) 0;background-color:var(--bg-primary);position:relative;z-index:1}.education-grid{max-width:1200px;margin:0 auto;padding:0 var(--space-lg);display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:var(--space-lg)}.education-card{border-radius:12px;border:1px solid var(--color-beige);background:#f5f1eacc;padding:var(--space-md);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=dark] .education-card{border-color:var(--border-dark);background:#1c1915eb}.education-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(196,93,53,.12),transparent 60%);opacity:0;transition:opacity var(--duration-normal) var(--ease-out-expo)}.education-card:hover:before{opacity:1}.education-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-xs)}.education-title{font-family:var(--font-display);font-size:1.4rem;margin-bottom:var(--space-sm)}.education-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .7rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(196,93,53,.35);background:#c45d351f;color:var(--text-primary);white-space:nowrap}[data-theme=dark] .education-badge{border-color:#8ba5b559;background:#8ba5b51f}.education-badge-muted{border-color:#0000001f;background:#0000000a;color:var(--text-muted)}[data-theme=dark] .education-badge-muted{border-color:#ffffff29;background:#ffffff0f;color:var(--text-muted)}.education-sep{margin:0 .35rem;opacity:.6}.education-body{font-size:.98rem;color:var(--text-secondary);margin-bottom:var(--space-sm)}.education-list{list-style:none;display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:var(--text-secondary);padding-left:0}.education-list li:before{content:"•";margin-right:.5rem;color:var(--color-burnt-orange)}.experience{padding:var(--space-xxl) 0;background-color:var(--bg-primary);position:relative;z-index:1;scroll-margin-top:1rem}.experience-list{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.experience-entry{display:grid;grid-template-columns:minmax(10rem,.75fr) minmax(0,2fr);gap:var(--space-xl);padding:var(--space-lg) 0;border-top:1px solid var(--color-beige)}.experience-entry:last-child{border-bottom:1px solid var(--color-beige)}[data-theme=dark] .experience-entry{border-color:var(--border-dark)}.experience-meta{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;color:var(--text-muted);font-size:.74rem;font-weight:600;letter-spacing:.1em;line-height:1.45;text-transform:uppercase}.experience-meta span:last-child{color:var(--color-burnt-orange)}.experience-content h3{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.08}.experience-company{margin:.45rem 0 var(--space-sm);color:var(--color-burnt-orange);font-family:var(--font-serif);font-size:1.05rem;font-style:italic}.experience-content ul{display:grid;gap:.5rem;max-width:46rem;margin:0;padding:0;color:var(--text-secondary);font-size:.95rem;line-height:1.65;list-style:none}.experience-content li{position:relative;padding-left:1rem}.experience-content li:before{position:absolute;left:0;color:var(--color-burnt-orange);content:"-"}.about{padding:var(--space-xxl) 0;background-color:var(--bg-secondary);position:relative;z-index:1;overflow:hidden}.about-floating-elements{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.floating-square{position:absolute;border:1px solid var(--color-beige);opacity:.12;animation:floatSquare 18s ease-in-out infinite}[data-theme=dark] .floating-square{border-color:var(--color-warm-gray);opacity:.08}.floating-square-1{width:80px;height:80px;top:10%;right:15%;transform:rotate(45deg);animation-duration:20s;animation-delay:0s}.floating-square-2{width:60px;height:60px;bottom:20%;left:8%;transform:rotate(15deg);animation-duration:22s;animation-delay:-8s}@keyframes floatSquare{0%,to{transform:translate(0) rotate(var(--rotation, 45deg))}33%{transform:translate(40px,-30px) rotate(calc(var(--rotation, 45deg) + 90deg))}66%{transform:translate(-30px,40px) rotate(calc(var(--rotation, 45deg) + 180deg))}}.floating-triangle{position:absolute;width:0;height:0;border-style:solid;opacity:.1;animation:floatTriangle 16s ease-in-out infinite}.floating-triangle-1{border-width:0 30px 52px 30px;border-color:transparent transparent var(--color-olive) transparent;top:30%;right:5%;animation-duration:18s;animation-delay:-4s}[data-theme=dark] .floating-triangle{border-color:transparent transparent var(--color-pastel-blue) transparent;opacity:.08}@keyframes floatTriangle{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(50px,-40px) rotate(180deg)}}.floating-diamond{position:absolute;width:50px;height:50px;border:1px solid var(--color-burnt-orange);transform:rotate(45deg);opacity:.15;animation:floatDiamond 14s ease-in-out infinite}.floating-diamond-1{bottom:15%;right:25%;animation-duration:16s;animation-delay:-6s}[data-theme=dark] .floating-diamond{border-color:var(--color-pastel-blue);opacity:.1}@keyframes floatDiamond{0%,to{transform:translate(0) rotate(45deg)}50%{transform:translate(-40px,50px) rotate(225deg)}}.floating-grid{position:absolute;width:100px;height:100px;opacity:.08;background-image:linear-gradient(var(--color-beige) 1px,transparent 1px),linear-gradient(90deg,var(--color-beige) 1px,transparent 1px);background-size:20px 20px;animation:floatGrid 12s ease-in-out infinite}.floating-grid-1{top:50%;left:3%;animation-duration:14s;animation-delay:-10s}[data-theme=dark] .floating-grid{background-image:linear-gradient(var(--color-warm-gray) 1px,transparent 1px),linear-gradient(90deg,var(--color-warm-gray) 1px,transparent 1px);opacity:.06}@keyframes floatGrid{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(60px,-50px) rotate(90deg)}}.about:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--color-beige),transparent)}.about-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-xl);padding:0 var(--space-lg);max-width:1400px;margin:0 auto;position:relative;z-index:2}.about-image-wrapper,.about-profile-card-wrapper{position:relative}.about-profile-card-wrapper{max-width:420px;align-self:start;display:flex;justify-content:center;margin-inline:auto}.about-profile-card-wrapper .decay-card{flex-shrink:0}.about-image{aspect-ratio:4/5;background-color:var(--color-beige);border-radius:4px;overflow:hidden;position:relative}.about-photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block;position:absolute;top:0;left:0;transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo)}.about-photo-primary{opacity:1;z-index:2}.about-photo-hover{opacity:0;z-index:1;transform:scale(1.1)}.about-image-wrapper:hover .about-photo-primary{opacity:0;transform:scale(.95)}.about-image-wrapper:hover .about-photo-hover{opacity:1;transform:scale(1.05)}.image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-olive) 0%,#7A8F6A 100%);opacity:0;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out-expo)}.about-photo:not([src]),.about-photo[src=""],.about-image:not(:has(img[src])) .image-placeholder{opacity:1;pointer-events:auto}.placeholder-text{font-family:var(--font-display);font-size:4rem;font-weight:800;color:var(--color-cream);opacity:.3}.image-frame{position:absolute;top:20px;left:20px;right:-20px;bottom:-20px;border:1px solid var(--color-burnt-orange);border-radius:4px;z-index:-1}.about-content{display:flex;flex-direction:column;justify-content:center;gap:var(--space-lg)}.about-actions{margin-top:var(--space-sm)}.btn-cv{display:inline-flex;align-items:center;gap:.75rem;padding:.85rem 1.75rem;border-radius:999px;border:1px solid var(--color-burnt-orange);background-color:var(--color-burnt-orange);color:var(--color-cream);text-decoration:none;font-family:var(--font-display);font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;position:relative;overflow:hidden}.btn-cv:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000014;opacity:0;transform:translate(-40%);transition:opacity var(--duration-normal) var(--ease-out-expo),transform var(--duration-normal) var(--ease-out-expo)}.btn-cv-label{position:relative;z-index:1}.btn-cv-icon{position:relative;z-index:1;font-size:1.1rem;transform:translateY(1px);transition:transform var(--duration-normal) var(--ease-out-expo)}.btn-cv:hover:before{opacity:1;transform:translate(0)}.btn-cv:hover .btn-cv-icon{transform:translate(2px,3px)}[data-theme=dark] .btn-cv{background-color:var(--color-burnt-orange);border-color:var(--color-burnt-orange);color:var(--color-cream)}.about-intro .large-text{font-family:var(--font-serif);font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.4;color:var(--text-primary)}.about-intro em{color:var(--color-burnt-orange);font-style:italic}.alias{font-family:var(--font-body);font-size:.9em;font-weight:300;font-style:normal;color:var(--text-muted);margin-left:.5rem}.alias-subtle{font-family:var(--font-body);font-size:.85em;font-weight:300;color:var(--text-muted);opacity:.8;margin-left:.5rem}.alias-footer{font-family:var(--font-body);font-size:.75em;font-weight:300;color:var(--text-muted);opacity:.7;margin-left:.5rem}.about-details p{font-size:1.125rem;color:var(--text-secondary);max-width:500px}.about-philosophy blockquote{font-family:var(--font-serif);font-size:1.5rem;font-style:italic;color:var(--color-olive);position:relative;padding-left:var(--space-md);border-left:2px solid var(--color-olive)}.quote-mark{font-size:2rem;color:var(--color-burnt-orange);opacity:.5}.skills{padding:var(--space-lg) 0;overflow:hidden;background-color:var(--color-black);position:relative;z-index:1}[data-theme=dark] .skills{background-color:var(--bg-dark)}.skills-marquee{display:flex;overflow:hidden}.marquee-track{display:flex;gap:var(--space-lg);animation:marquee 40s linear infinite;white-space:nowrap}.marquee-item{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:600;color:var(--color-cream);text-transform:uppercase;letter-spacing:.05em}.marquee-divider{color:var(--color-burnt-orange);font-size:.75rem;align-self:center}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.work{padding:var(--space-xxl) 0;position:relative;z-index:1;overflow:hidden;scroll-margin-top:1rem}.work:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,#f6f2eb40,#f6f2eb73 40%,#f6f2ebd9 75%,#f6f2eb)}[data-theme=dark] .work:before{display:none}.work-floating-elements{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.floating-hexagon{position:absolute;width:60px;height:60px;background:transparent;border:1px solid var(--color-olive);opacity:.12;clip-path:polygon(30% 0%,70% 0%,100% 50%,70% 100%,30% 100%,0% 50%);animation:floatHexagon 20s ease-in-out infinite}[data-theme=dark] .floating-hexagon{border-color:var(--color-pastel-blue);opacity:.08}.floating-hexagon-1{top:15%;right:10%;animation-duration:24s;animation-delay:0s}.floating-hexagon-2{bottom:20%;left:12%;animation-duration:22s;animation-delay:-10s}@keyframes floatHexagon{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(50px,-30px) rotate(60deg)}50%{transform:translate(-30px,50px) rotate(120deg)}75%{transform:translate(40px,30px) rotate(180deg)}}.floating-pattern{position:absolute;width:120px;height:120px;opacity:.1;background-image:radial-gradient(circle,var(--color-burnt-orange) 2px,transparent 2px);background-size:20px 20px;animation:floatPattern 16s ease-in-out infinite}.floating-pattern-1{top:40%;right:5%;animation-duration:18s;animation-delay:-5s}[data-theme=dark] .floating-pattern{background-image:radial-gradient(circle,var(--color-pastel-blue) 2px,transparent 2px);opacity:.08}@keyframes floatPattern{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-50px,40px) scale(1.2)}}.floating-arc{position:absolute;width:100px;height:100px;border:2px solid var(--color-beige);border-top:none;border-left:none;border-radius:0 100% 0 0;opacity:.1;animation:floatArc 14s ease-in-out infinite}[data-theme=dark] .floating-arc{border-color:var(--color-warm-gray);opacity:.08}.floating-arc-1{top:25%;left:8%;animation-duration:16s;animation-delay:-2s}.floating-arc-2{bottom:30%;right:18%;transform:rotate(180deg);animation-duration:18s;animation-delay:-8s}@keyframes floatArc{0%,to{transform:translate(0) rotate(var(--rotation, 0deg))}50%{transform:translate(60px,-50px) rotate(calc(var(--rotation, 0deg) + 45deg))}}.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-lg);padding:0 var(--space-lg);max-width:1600px;margin:0 auto;position:relative;z-index:2}.project-card{grid-column:span 6;position:relative}.project-card-large{grid-column:span 12}.project-card-large .project-image{aspect-ratio:21/9}.project-visual-link{display:block;text-decoration:none;color:inherit;position:relative;width:100%;height:100%}.project-image{aspect-ratio:4/3;border-radius:8px;overflow:hidden;position:relative;margin-bottom:var(--space-md)}.project-image-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform var(--duration-slow) var(--ease-out-expo);position:relative;overflow:hidden}.project-screenshots{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.project-screenshot{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;position:absolute;top:0;left:0;opacity:0;transition:opacity var(--duration-slow) var(--ease-out-expo);z-index:1}.project-screenshot.active{opacity:1;z-index:2}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:#1a1a1ab3;border:2px solid rgba(255,255,255,.3);color:var(--color-cream);cursor:none;display:flex;align-items:center;justify-content:center;z-index:5;opacity:0;transition:all var(--duration-normal) var(--ease-out-expo);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto}.carousel-arrow:hover{background:#1a1a1ae6;border-color:var(--color-burnt-orange);color:var(--color-burnt-orange);transform:translateY(-50%) scale(1.1)}.carousel-arrow:active{transform:translateY(-50%) scale(.95)}.carousel-arrow svg{width:20px;height:20px}.carousel-arrow-prev{left:var(--space-md)}.carousel-arrow-next{right:var(--space-md)}.project-card:hover .carousel-arrow{opacity:1}[data-theme=dark] .carousel-arrow{background:#0a0a0ab3;border-color:#fff3}[data-theme=dark] .carousel-arrow:hover{background:#0a0a0ae6;border-color:var(--color-pastel-blue);color:var(--color-pastel-blue)}.project-carousel-dots{position:absolute;bottom:var(--space-md);left:50%;transform:translate(-50%);display:flex;gap:var(--space-xs);z-index:5;opacity:.6;transition:opacity var(--duration-normal) var(--ease-out-expo);pointer-events:auto}.project-card:hover .project-carousel-dots{opacity:1}.carousel-dot{width:10px;height:10px;border-radius:50%;border:2px solid rgba(255,255,255,.8);background:#ffffff4d;cursor:none;padding:0;transition:all var(--duration-fast) var(--ease-out-expo);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000004d}.carousel-dot:hover{background:#ffffffb3;border-color:#fff;transform:scale(1.3);box-shadow:0 2px 12px #0006}.carousel-dot.active{background:var(--color-cream);border-color:var(--color-cream);width:28px;border-radius:6px;box-shadow:0 2px 12px #c45d3580}.project-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);z-index:0;opacity:1;transition:opacity var(--duration-normal) var(--ease-out-expo)}.project-image:has(.project-screenshot.active) .project-placeholder{opacity:0;pointer-events:none}.project-screenshots:not(:has(img.active))~.project-placeholder,.project-image:not(:has(.project-screenshot.active)) .project-placeholder{opacity:1;pointer-events:auto}.project-icon{font-size:4rem;opacity:.8}.project-placeholder-text{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-cream);text-transform:uppercase;letter-spacing:.1em}.project-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(26,26,26,.85) 0%,rgba(26,26,26,.4) 40%,rgba(196,93,53,.1) 60%,transparent 100%);opacity:.25;transition:opacity var(--duration-normal) var(--ease-out-expo);z-index:2;border-radius:8px;display:flex;align-items:flex-end;justify-content:center;padding:var(--space-lg);pointer-events:none}.project-overlay>*{pointer-events:auto}.visit-site-text{font-family:var(--font-display);font-size:clamp(.875rem,1.5vw,1.125rem);font-weight:600;color:var(--color-cream);text-transform:uppercase;letter-spacing:.15em;opacity:0;transform:translateY(10px);transition:opacity var(--duration-normal) var(--ease-out-expo),transform var(--duration-normal) var(--ease-out-expo);position:relative;z-index:3}.visit-site-text:after{content:" →";margin-left:.5em;display:inline-block;transition:transform var(--duration-normal) var(--ease-out-expo)}.project-card:hover .visit-site-text{opacity:1;transform:translateY(0)}.project-card:hover .visit-site-text:after{transform:translate(4px)}.project-overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(196,93,53,.15) 0%,transparent 70%);opacity:.3;transition:opacity var(--duration-normal) var(--ease-out-expo)}.project-overlay:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:1px solid rgba(196,93,53,0);border-radius:8px;transition:border-color var(--duration-normal) var(--ease-out-expo);pointer-events:none}.project-card:hover .project-image-inner{transform:scale(1.05)}.project-card:hover .project-overlay{opacity:1}.project-card:hover .project-overlay:before{opacity:1}.project-card:hover .project-overlay:after{border-color:#c45d354d}[data-theme=dark] .project-overlay{background:linear-gradient(to top,rgba(10,10,10,.9) 0%,rgba(10,10,10,.5) 40%,rgba(139,165,181,.15) 60%,transparent 100%)}[data-theme=dark] .project-overlay:before{background:radial-gradient(circle at center,rgba(139,165,181,.2) 0%,transparent 70%)}[data-theme=dark] .project-overlay:after{border-color:#8ba5b54d}.project-info{padding:0 var(--space-xs)}.project-meta{display:flex;gap:var(--space-md);margin-bottom:var(--space-xs)}.project-category,.project-year{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.project-title{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;margin-bottom:var(--space-xs);transition:color var(--duration-fast) ease}.project-title a{color:inherit;text-decoration:none}.project-card:hover .project-title{color:var(--color-burnt-orange)}.project-description{font-size:1rem;color:var(--text-secondary);margin-bottom:var(--space-sm);max-width:400px}.project-tags{display:flex;gap:var(--space-xs);flex-wrap:wrap}.tag{font-size:.75rem;padding:.25rem .75rem;background-color:var(--color-beige);border-radius:20px;color:var(--text-secondary)}[data-theme=dark] .tag{background-color:var(--border-dark);color:var(--text-secondary)}.project-arrow{position:absolute;top:var(--space-md);right:var(--space-md);width:40px;height:40px;background-color:var(--color-cream);border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transform:translate(-10px,10px);transition:all var(--duration-normal) var(--ease-out-expo)}[data-theme=dark] .project-arrow{background-color:var(--text-primary)}[data-theme=dark] .project-arrow svg{stroke:var(--bg-primary)}.project-arrow svg{width:16px;height:16px}.project-card:hover .project-arrow{opacity:1;transform:translate(0)}.interlude{padding:var(--space-xxl) var(--space-lg);display:flex;align-items:center;justify-content:center;min-height:60vh;background:linear-gradient(135deg,var(--color-off-white) 0%,var(--color-cream) 100%);position:relative;z-index:1;overflow:hidden}[data-theme=dark] .interlude{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.interlude:before{content:"";position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,var(--color-pastel-blue) 0%,transparent 70%);opacity:.2;top:20%;left:10%}.interlude:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,var(--color-burnt-orange) 0%,transparent 70%);opacity:.1;bottom:10%;right:15%}.interlude-text{font-family:var(--font-display);font-size:clamp(3rem,10vw,8rem);font-weight:800;text-align:center;line-height:1;letter-spacing:-.02em;text-transform:uppercase}.interlude-text .line{display:block}.interlude-text .accent{color:var(--color-olive);font-family:var(--font-serif);font-style:italic;font-weight:500;text-transform:none}.contact{padding:var(--space-xxl) 0;background-color:var(--color-black);color:var(--color-cream);position:relative;z-index:1;overflow:hidden}[data-theme=dark] .contact{background-color:var(--bg-dark)}.contact-floating-elements{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.floating-blob{position:absolute;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;opacity:.08;animation:floatBlob 25s ease-in-out infinite}.floating-blob-1{width:150px;height:150px;background:radial-gradient(circle,var(--color-burnt-orange) 0%,transparent 70%);top:10%;left:8%;animation-duration:28s;animation-delay:0s}.floating-blob-2{width:120px;height:120px;background:radial-gradient(circle,var(--color-olive) 0%,transparent 70%);bottom:15%;right:12%;animation-duration:26s;animation-delay:-12s}[data-theme=dark] .floating-blob{opacity:.12}@keyframes floatBlob{0%,to{transform:translate(0) scale(1);border-radius:30% 70% 70% 30%/30% 30% 70% 70%}25%{transform:translate(40px,-50px) scale(1.1);border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{transform:translate(-30px,40px) scale(.9);border-radius:30% 60% 70% 40%/50% 60% 30%}75%{transform:translate(50px,30px) scale(1.05);border-radius:50%}}.floating-wave{position:absolute;width:200px;height:60px;opacity:.1;background:linear-gradient(90deg,transparent 0%,var(--color-pastel-blue) 20%,var(--color-pastel-blue) 80%,transparent 100%);border-radius:50%;animation:floatWave 20s ease-in-out infinite}.floating-wave-1{top:30%;right:5%;animation-duration:22s;animation-delay:-4s}.floating-wave-2{bottom:25%;left:10%;transform:rotate(90deg);animation-duration:24s;animation-delay:-14s}[data-theme=dark] .floating-wave{opacity:.08}@keyframes floatWave{0%,to{transform:translate(0) rotate(var(--rotation, 0deg)) scaleX(1)}50%{transform:translate(60px,-40px) rotate(calc(var(--rotation, 0deg) + 10deg)) scaleX(1.2)}}.floating-orb{position:absolute;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(196,93,53,.3) 0%,rgba(196,93,53,.1) 50%,transparent 100%);opacity:.15;animation:floatOrb 18s ease-in-out infinite;filter:blur(1px)}.floating-orb-1{top:50%;left:5%;animation-duration:20s;animation-delay:-6s}.floating-orb-2{bottom:20%;right:8%;background:radial-gradient(circle at 30% 30%,rgba(90,111,74,.3) 0%,rgba(90,111,74,.1) 50%,transparent 100%);animation-duration:22s;animation-delay:-16s}[data-theme=dark] .floating-orb{opacity:.2}@keyframes floatOrb{0%,to{transform:translate(0) scale(1);opacity:.15}33%{transform:translate(50px,-60px) scale(1.2);opacity:.2}66%{transform:translate(-40px,50px) scale(.8);opacity:.1}}.contact .section-number{color:var(--color-warm-gray)}.contact .section-title{color:var(--color-cream)}.contact-content{max-width:800px;margin:0 auto;padding:0 var(--space-lg);text-align:center;position:relative;z-index:2}.contact-intro .large-text{font-family:var(--font-serif);font-size:clamp(1.5rem,3vw,2rem);font-style:italic;line-height:1.4;margin-bottom:var(--space-xl);color:var(--color-beige)}.contact-cta{margin-bottom:var(--space-xl)}.contact-email{display:inline-flex;align-items:center;gap:var(--space-md);padding:0;border:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font-display);font-size:clamp(1.5rem,4vw,3rem);font-weight:700;color:var(--color-cream);text-decoration:none;text-align:left;cursor:pointer;position:relative;transition:color var(--duration-normal) ease}.contact-email:focus-visible{outline:2px solid var(--color-burnt-orange);outline-offset:8px}.contact-email:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background-color:var(--color-burnt-orange);transform:scaleX(0);transform-origin:right;transition:transform var(--duration-normal) var(--ease-out-expo)}.contact-email:hover:after{transform:scaleX(1);transform-origin:left}.contact-email:hover{color:var(--color-burnt-orange)}.email-arrow{transition:transform var(--duration-normal) var(--ease-out-expo)}.contact-email:hover .email-arrow{transform:translate(10px)}.social-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-md);max-width:1100px;margin:0 auto}.social-box{display:block;text-decoration:none;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:var(--space-md);background:#ffffff05;transition:all var(--duration-normal) var(--ease-out-expo);position:relative;overflow:hidden}.social-box:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#c45d351a,#5a6f4a1a);opacity:0;transition:opacity var(--duration-normal) var(--ease-out-expo);z-index:0}.social-box:hover{border-color:var(--color-burnt-orange);background:#ffffff0d;transform:translateY(-4px)}.social-box:hover:before{opacity:1}.social-box-content{display:flex;align-items:center;gap:var(--space-md);position:relative;z-index:1}.social-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#ffffff0d;color:var(--color-cream);flex-shrink:0;transition:all var(--duration-normal) var(--ease-out-expo)}.social-icon svg{width:24px;height:24px;fill:currentColor}.social-box[data-platform=linkedin] .social-icon{background:#0077b533;color:#0077b5}.social-box[data-platform=github] .social-icon{background:#ffffff1a;color:var(--color-cream)}.social-box[data-platform=facebook] .social-icon{background:#1877f233;color:#1877f2}.social-box[data-platform=instagram] .social-icon{background:linear-gradient(135deg,#e1306c33,#ffc85733,#405de633);color:#e1306c}.social-box:hover .social-icon{transform:scale(1.1) rotate(5deg);background:#ffffff1a}.social-box[data-platform=linkedin]:hover .social-icon{background:#0077b54d;color:#0077b5}.social-box[data-platform=github]:hover .social-icon{background:#ffffff26;color:var(--color-cream)}.social-box[data-platform=facebook]:hover .social-icon{background:#1877f24d;color:#1877f2}.social-box[data-platform=instagram]:hover .social-icon{background:linear-gradient(135deg,#e1306c4d,#ffc8574d,#405de64d);color:#e1306c}.social-box-text{flex:1;display:flex;flex-direction:column;gap:.25rem}.social-name{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--color-cream);text-transform:uppercase;letter-spacing:.05em;transition:color var(--duration-fast) ease}.social-handle{font-family:var(--font-body);font-size:.875rem;color:var(--color-warm-gray);opacity:.7;transition:color var(--duration-fast) ease}.social-box:hover .social-handle{color:var(--color-burnt-orange);opacity:1}.social-arrow{font-size:1.25rem;color:var(--color-warm-gray);transition:all var(--duration-normal) var(--ease-out-expo);flex-shrink:0}.social-box:hover .social-arrow{color:var(--color-burnt-orange);transform:translate(4px,-4px)}[data-theme=dark] .social-box{border-color:#ffffff26;background:#ffffff08}[data-theme=dark] .social-box:hover,[data-theme=dark] .social-icon{background:#ffffff14}.footer{padding:var(--space-lg);background-color:var(--color-black);color:var(--color-cream);border-top:1px solid var(--color-charcoal);position:relative;z-index:1}[data-theme=dark] .footer{background-color:var(--bg-dark);border-top-color:var(--border-dark)}.footer-content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;margin-bottom:var(--space-md)}.footer-left,.footer-right{display:flex;flex-direction:column;gap:var(--space-xs)}.footer-name{font-family:var(--font-display);font-weight:600}.footer-title{font-size:.875rem;color:var(--color-warm-gray)}.footer-location,.footer-year{font-size:.875rem;color:var(--color-warm-gray);text-align:right}.footer-bottom{text-align:center;padding-top:var(--space-md);border-top:1px solid var(--color-charcoal)}.footer-tagline{font-family:var(--font-serif);font-style:italic;font-size:.875rem;color:var(--color-warm-gray)}.reveal-text,.hero .reveal-text{opacity:1}.reveal-fade{opacity:0;transform:translateY(30px);transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo)}.reveal-fade.revealed{opacity:1;transform:translateY(0)}.reveal-fade.delay-1{transition-delay:.15s}.reveal-fade.delay-2{transition-delay:.3s}.reveal-image{opacity:0;transform:translateY(50px) scale(.95);transition:opacity var(--duration-slower) var(--ease-out-expo),transform var(--duration-slower) var(--ease-out-expo)}.reveal-image.revealed{opacity:1;transform:translateY(0) scale(1)}.reveal-project{opacity:0;transform:translateY(80px);transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo)}.reveal-project.revealed{opacity:1;transform:translateY(0)}.magnetic-btn{display:inline-block;transition:transform var(--duration-fast) var(--ease-out-expo)}@media(max-width:1024px){.about-grid{grid-template-columns:1fr;gap:var(--space-lg)}.about-image-wrapper,.about-profile-card-wrapper{max-width:400px}.project-card{grid-column:span 12}.hero-decoration,.floating-ring-2,.floating-ring-3,.floating-circle-2,.floating-dot-2,.floating-dot-3,.floating-line-2{display:none}}@media(max-width:768px){.about-floating-elements,.work-floating-elements,.contact-floating-elements,.floating-elements{display:none}:root{--space-lg: 2rem;--space-xl: 4rem;--space-xxl: 6rem}.nav{padding:var(--space-sm) var(--space-md)}.nav-logo a{font-size:1rem}.nav-links{gap:var(--space-sm)}.nav-link{font-size:.75rem;letter-spacing:.03em}.theme-toggle{min-width:40px;width:40px;height:40px;padding:0;justify-content:center}.theme-label{display:none}.theme-icon{left:50%;transform:translate(-50%,-50%)}.theme-icon-light,.theme-icon-dark{transform:translate(-50%,-50%) translateY(.5px) rotate(0) scale(1)}[data-theme=dark] .theme-icon-light{transform:translate(-50%,-50%) translateY(.5px) rotate(180deg) scale(.5)}[data-theme=dark] .theme-icon-dark{transform:translate(-50%,-50%) translateY(.5px) rotate(0) scale(1)}.hero{padding:var(--space-lg) var(--space-md);min-height:100vh;min-height:100dvh;overflow-x:hidden;display:flex;flex-direction:column;justify-content:center}.hero-content{padding-top:60px;padding-left:0;padding-right:0;width:100%;max-width:100%;overflow-x:hidden}.hero-greeting{margin-bottom:var(--space-xs)}.hero-title{font-size:clamp(2.5rem,12vw,4.5rem);line-height:1;letter-spacing:-.03em;margin-bottom:var(--space-md);width:100%;max-width:100%;box-sizing:border-box;word-break:normal;overflow-wrap:normal}.hero-title .line{display:block;width:100%;max-width:100%}.hero-title .word{display:inline-block;white-space:nowrap}.hero-title .focus-word{font-size:clamp(2.5rem,12vw,4.5rem);line-height:1}.hero-title .accent{letter-spacing:-.03em;white-space:nowrap}.hero-subtitle{margin-bottom:var(--space-md)}.hero-tagline{margin-bottom:var(--space-md);line-height:1.8}.hero-actions{gap:.75rem}.hero-action{min-height:44px;padding:.65rem .85rem;font-size:.8rem}.hero-scroll-indicator{display:none}.section-header{padding:0 var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-sm)}.work-section-header{flex-direction:column;align-items:flex-start}.btn-view-all{padding:.5rem 1rem;font-size:.8rem}.section-title{font-size:clamp(1.75rem,8vw,2.5rem)}.education{padding:var(--space-xl) 0}.education-grid{padding:0 var(--space-md);gap:var(--space-md)}.education-card{padding:var(--space-md)}.education-top{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.education-title{font-size:1.15rem;line-height:1.3}.education-badge{font-size:.65rem;padding:.25rem .6rem}.education-body{font-size:.9rem;line-height:1.5}.education-list{font-size:.85rem;gap:.5rem}.experience{padding:var(--space-xl) 0}.experience-list{padding:0 var(--space-md)}.experience-entry{grid-template-columns:1fr;gap:var(--space-sm);padding:var(--space-md) 0}.experience-meta{flex-direction:row;flex-wrap:wrap;column-gap:var(--space-sm);row-gap:.25rem}.experience-content h3{font-size:1.35rem}.experience-content ul{font-size:.88rem}.about{padding:var(--space-xl) 0}.about-grid,.work-grid,.contact-content{padding:0 var(--space-md)}.about-grid{gap:var(--space-lg);text-align:center}.about-image-wrapper,.about-profile-card-wrapper{max-width:320px;width:100%;margin:0 auto}.about-content{text-align:left;gap:var(--space-md)}.about-intro .large-text{font-size:clamp(1.25rem,5vw,1.75rem);text-align:center}.about-details p{font-size:1rem;max-width:100%}.about-philosophy blockquote{font-size:1.25rem;padding-left:var(--space-sm)}.about-actions{display:flex;justify-content:center}.work{padding:var(--space-xl) 0}.work-grid{gap:var(--space-lg)}.project-card{margin-bottom:0}.project-card-large .project-image{aspect-ratio:16/10}.project-image{margin-bottom:var(--space-sm);aspect-ratio:16/10}.project-title{font-size:clamp(1.25rem,5vw,1.75rem);margin-bottom:var(--space-xs)}.project-description{font-size:.9rem;margin-bottom:var(--space-sm);max-width:100%}.carousel-arrow{opacity:.85;width:44px;height:44px}.carousel-arrow:hover,.project-carousel-dots{opacity:1}.contact{padding:var(--space-xl) 0}.contact-intro{margin-bottom:var(--space-lg)}.contact-intro .large-text{font-size:clamp(1.25rem,4.5vw,1.75rem)}.contact-cta{margin-bottom:var(--space-lg)}.contact-email{font-size:clamp(1.25rem,6vw,2rem);word-break:break-word}.social-links{grid-template-columns:1fr;gap:var(--space-md)}.social-box{padding:var(--space-md)}.social-box-content{gap:var(--space-md)}.social-icon{width:44px;height:44px;font-size:1rem}.social-name{font-size:1rem}.social-handle{font-size:.85rem}.footer-content{flex-direction:column;gap:var(--space-md);text-align:center}.footer-left,.footer-right{align-items:center}.footer-location,.footer-year{text-align:center}.cursor-dot,.cursor-outline{display:none}body{cursor:auto}a,button,[role=button],.magnetic-btn,.project-card,.dock-item,.dock-item *,.flowing-menu__link,.focus-word,input[type=submit],input[type=button],[type=button]{cursor:pointer}.floating-elements,.hero-decoration{display:none}.interlude{padding:var(--space-xl) var(--space-md);min-height:40vh}.interlude-text{font-size:clamp(2.5rem,10vw,5rem)}.skills{padding:var(--space-md) 0}.marquee-item{font-size:clamp(1.25rem,4vw,2rem)}}@media(max-width:480px){:root{--space-xs: .375rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-xxl: 4rem}.nav{padding:var(--space-xs) var(--space-sm)}.nav-logo a{font-size:.9rem}.nav-links{gap:var(--space-xs)}.nav-link{font-size:.7rem;padding:var(--space-xs) 0}.theme-toggle{min-width:36px;width:36px;height:36px}.theme-icon{width:16px;height:16px}.hero{padding:var(--space-md) var(--space-sm);padding-top:60px;padding-bottom:calc(80px + var(--space-md));overflow-x:hidden}.hero-content{padding-top:0;padding-left:0;padding-right:0;width:100%;max-width:100%;overflow-x:hidden}.greeting-text{font-size:.875rem;margin-bottom:var(--space-xs);overflow-wrap:break-word}.hero-title{font-size:clamp(2rem,11vw,3rem);margin-bottom:var(--space-sm);line-height:1;letter-spacing:-.02em;max-width:100%;width:100%;box-sizing:border-box;word-break:normal;overflow-wrap:normal}.hero-title .line{display:block;max-width:100%;width:100%}.hero-title .word{display:inline-block;white-space:nowrap}.hero-title .focus-word{font-size:clamp(2rem,11vw,3rem);line-height:1}.hero-title .accent{letter-spacing:-.01em;white-space:nowrap}.subtitle-text{font-size:clamp(1.125rem,5vw,1.5rem);margin-bottom:var(--space-sm);overflow-wrap:break-word;max-width:100%}.hero-tagline{font-size:.75rem;margin-bottom:var(--space-md);overflow-wrap:break-word;word-break:break-word;max-width:100%;line-height:1.8}.hero-intro{font-size:clamp(.9rem,4vw,1.1rem);max-width:100%;overflow-wrap:break-word}.section-header{padding:0 var(--space-sm);margin-bottom:var(--space-md);gap:var(--space-xs)}.section-number{font-size:.7rem}.section-title{font-size:clamp(1.5rem,9vw,2rem)}.education{padding:var(--space-lg) 0}.education-grid{padding:0 var(--space-sm);gap:var(--space-sm)}.education-card{padding:var(--space-sm)}.education-title{font-size:1rem}.education-badge{font-size:.6rem}.education-body{font-size:.85rem}.education-list{font-size:.8rem}.experience{padding:var(--space-lg) 0}.experience-list{padding:0 var(--space-sm)}.experience-entry{gap:var(--space-xs);padding:var(--space-sm) 0}.experience-meta{font-size:.67rem}.experience-content h3{font-size:1.15rem}.experience-company{font-size:.95rem}.experience-content ul{font-size:.82rem}.about{padding:var(--space-lg) 0}.about-grid,.work-grid,.contact-content{padding:0 var(--space-sm)}.about-grid{gap:var(--space-md)}.about-image-wrapper,.about-profile-card-wrapper{max-width:280px}.about-intro .large-text{font-size:clamp(1.125rem,4.5vw,1.5rem)}.about-details p{font-size:.9rem}.about-philosophy blockquote{font-size:1.125rem}.quote-mark{font-size:1.5rem}.btn-cv{padding:.7rem 1.25rem;font-size:.8rem;gap:.5rem}.work{padding:var(--space-lg) 0}.work-grid{gap:var(--space-md)}.project-category,.project-year{font-size:.65rem}.project-meta{gap:var(--space-sm)}.project-title{font-size:clamp(1.125rem,5.5vw,1.5rem)}.project-description{font-size:.8rem;line-height:1.5}.project-tags{gap:.35rem}.tag{font-size:.65rem;padding:.2rem .5rem}.project-arrow{width:32px;height:32px;top:var(--space-sm);right:var(--space-sm)}.project-arrow svg{width:14px;height:14px}.carousel-arrow{width:44px;height:44px}.carousel-arrow svg{width:16px;height:16px}.carousel-arrow-prev{left:var(--space-xs)}.carousel-arrow-next{right:var(--space-xs)}.project-carousel-dots{bottom:var(--space-sm);gap:6px}.carousel-dot,.carousel-dot.active{width:44px;height:44px;border:0;border-radius:0;background:transparent;box-shadow:none;position:relative}.carousel-dot:before{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border:2px solid rgba(255,255,255,.8);border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%)}.carousel-dot.active:before{width:22px;border-radius:6px;background:var(--color-cream);border-color:var(--color-cream)}.interlude{padding:var(--space-lg) var(--space-sm);min-height:30vh}.interlude-text{font-size:clamp(1.75rem,10vw,3.5rem)}.interlude-text .accent{font-size:.85em}.contact{padding:var(--space-lg) 0}.contact-intro .large-text{font-size:clamp(1rem,4.5vw,1.35rem);margin-bottom:var(--space-md)}.contact-cta{margin-bottom:var(--space-md)}.contact-email{font-size:clamp(1rem,6vw,1.5rem);gap:var(--space-sm);flex-wrap:wrap;justify-content:center}.social-links{gap:var(--space-sm)}.social-box{padding:var(--space-sm)}.social-box-content{gap:var(--space-sm)}.social-icon{width:40px;height:40px;border-radius:6px}.social-icon svg{width:20px;height:20px}.social-name{font-size:.9rem}.social-handle{font-size:.75rem}.social-arrow{font-size:1rem}.footer{padding:var(--space-md) var(--space-sm);padding-bottom:calc(70px + var(--space-sm))}.footer-name{font-size:.85rem}.footer-title,.footer-location,.footer-year,.footer-tagline{font-size:.75rem}.footer-bottom{padding-top:var(--space-sm)}.skills{padding:var(--space-sm) 0}.marquee-track{gap:var(--space-md)}.marquee-item{font-size:clamp(1rem,4vw,1.5rem)}.marquee-divider{font-size:.6rem}}@media(max-width:360px){.hero-title,.hero-title .focus-word{font-size:clamp(1.75rem,10vw,2.5rem)}.subtitle-text{font-size:1rem}.hero-tagline{font-size:.7rem}.section-title{font-size:clamp(1.35rem,9vw,1.75rem)}.about-image-wrapper,.about-profile-card-wrapper{max-width:240px}.interlude-text{font-size:clamp(1.5rem,10vw,2.5rem)}.contact-email{font-size:clamp(.9rem,6vw,1.25rem)}.social-box{padding:var(--space-xs)}.social-icon{width:36px;height:36px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.page-transition{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--color-black);z-index:9998;transform:scaleY(0);transform-origin:bottom}.page-transition.active{animation:pageTransition 1s var(--ease-in-out) forwards}@keyframes pageTransition{0%{transform:scaleY(0);transform-origin:bottom}50%{transform:scaleY(1);transform-origin:bottom}50.1%{transform-origin:top}to{transform:scaleY(0);transform-origin:top}}.checker-pattern{background-image:linear-gradient(45deg,var(--color-black) 25%,transparent 25%),linear-gradient(-45deg,var(--color-black) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-black) 75%),linear-gradient(-45deg,transparent 75%,var(--color-black) 75%);background-size:40px 40px;background-position:0 0,0 20px,20px -20px,-20px 0px}
