:root{--r:#d46a6a;--o:#d49a50;--y:#f5c800;--g:#00d980;--b:#2898ff;--v:#a855f7;--bg:#0a0a0a;--fg:#f0ede8;--muted:#8a8a8a;--card:#111;--border:#ffffff14;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto;overflow-x:hidden}body{background:var(--bg);color:var(--fg);font-family:DM Mono,monospace;font-weight:300;line-height:1.6;overflow-x:hidden}@media (pointer:fine){body,a,button,[role=button],input,textarea,select,label,.btn,.nav-links a,.hamburger,.project,.project-tag{cursor:none}}.custom-cursor{pointer-events:none;z-index:9999;mix-blend-mode:screen;background:conic-gradient(var(--r), var(--o), var(--y), var(--g), var(--b), var(--v), var(--r));will-change:transform;border-radius:50%;width:12px;height:12px;transition:transform .18s cubic-bezier(.16,1,.3,1),width .25s cubic-bezier(.16,1,.3,1),height .25s cubic-bezier(.16,1,.3,1);position:fixed;top:0;left:0}.custom-cursor.is-hover{width:8px;height:8px}.custom-cursor-ring{pointer-events:none;z-index:9998;will-change:transform;border:1.5px solid #f0ede859;border-radius:50%;width:36px;height:36px;transition:width .3s cubic-bezier(.16,1,.3,1),height .3s cubic-bezier(.16,1,.3,1),border-color .3s,background .3s;position:fixed;top:0;left:0}.custom-cursor-ring.is-hover{background:#f0ede80a;border-color:#f0ede8d9;width:56px;height:56px}@media (prefers-reduced-motion:reduce){.custom-cursor,.custom-cursor-ring{display:none}body{cursor:auto}}#root{width:100%;min-height:100vh;position:relative;overflow:hidden}h1,h2,h3,h4,h5,h6{color:var(--fg);font-family:DM Serif Display,serif;font-weight:400;line-height:1.1}p{margin:0}a{color:inherit;text-decoration:none}ul{padding:0;list-style:none}img{max-width:100%;display:block}.rainbow{background:linear-gradient(90deg, var(--r), var(--o), var(--y), var(--g), var(--b), var(--v));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}::selection{color:#fff;background:#2898ff4d}@media (prefers-reduced-motion:reduce){.cherry-blossoms{display:none}}.page-flow{z-index:2;position:relative}.ambient-field{z-index:0;pointer-events:none;--active-color:var(--v);--active-color-2:var(--b);position:fixed;inset:0;overflow:hidden}.ambient-orb{filter:blur(220px);mix-blend-mode:screen;will-change:background;border-radius:50%;transition:background 1.4s cubic-bezier(.4,0,.2,1);position:absolute}.ambient-orb-a{background:var(--active-color);opacity:.11;width:180vmax;height:180vmax;top:50%;left:50%;transform:translate(-50%,-50%)}.ambient-orb-b{background:var(--active-color-2);opacity:.07;width:130vmax;height:130vmax;transition-duration:1.8s;top:30%;left:70%;transform:translate(-50%,-50%)}.ambient-grain{opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.ambient-orb{transition:none}}.spectrum-spine{z-index:60;pointer-events:none;--spine-progress:0;width:2px;position:fixed;top:0;bottom:0;left:28px}.spine-track{background:linear-gradient(180deg, var(--r) 0%, var(--o) 18%, var(--y) 34%, var(--g) 52%, var(--b) 72%, var(--v) 100%);opacity:.18;border-radius:2px;position:absolute;inset:0}.spine-progress{height:calc(var(--spine-progress) * 100%);background:linear-gradient(180deg, var(--r) 0%, var(--o) 18%, var(--y) 34%, var(--g) 52%, var(--b) 72%, var(--v) 100%);background-size:100% calc(100% / max(var(--spine-progress), .001));filter:drop-shadow(0 0 8px var(--active-color,var(--v)));background-position:0 0;border-radius:2px;position:absolute;top:0;left:0;right:0}.spine-dot{left:-5px;top:calc(var(--spine-progress) * 100%);background:var(--active-color,var(--v));width:12px;height:12px;box-shadow:0 0 0 3px var(--bg), 0 0 18px var(--active-color,var(--v)), 0 0 32px var(--active-color,var(--v));border-radius:50%;transition:background 1s,box-shadow 1s;position:absolute;transform:translateY(-50%)}.spine-stops{flex-direction:column;justify-content:space-between;margin:0;padding:0;list-style:none;display:flex;position:absolute;inset:8% 0}.spine-stop{color:var(--muted);opacity:.5;align-items:center;gap:14px;transition:opacity .4s,color .4s;display:flex;position:relative}.spine-stop.is-active{opacity:1;color:var(--stop-color)}.spine-stop-tick{background:currentColor;width:14px;height:1px;display:block}.spine-stop-label{letter-spacing:.22em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.62rem}@media (width<=900px){.spectrum-spine{left:14px}.spine-stop-label{display:none}}@media (width<=600px){.spectrum-spine{width:1px;left:10px}.spine-dot{width:9px;height:9px;left:-4px}}.navbar{z-index:80;background:linear-gradient(#0a0a0ab3,#0a0a0a00);justify-content:space-between;align-items:center;padding:1.5rem 3rem 1.5rem 5rem;transition:background .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.is-scrolled{-webkit-backdrop-filter:blur(14px);background:#0a0a0ab8}.nav-logo{letter-spacing:-.02em;color:var(--fg);font-family:Syne,sans-serif;font-size:1.05rem;font-weight:800;text-decoration:none}.nav-logo-tail{color:var(--fg)}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.5rem;padding:.4rem 0;font-size:.74rem;text-decoration:none;transition:color .3s;display:inline-flex;position:relative}.nav-link-num{background:var(--muted);border-radius:50%;width:4px;height:4px;font-size:0;transition:background .3s,transform .3s;display:inline-block}.nav-links a:hover{color:var(--fg)}.nav-links a:hover .nav-link-num{background:var(--fg);transform:scale(1.6)}.hamburger{background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--fg);width:22px;height:1.5px;transition:all .3s;display:block}.hamburger.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.hero{flex-direction:column;justify-content:center;min-height:100vh;padding:10rem 3rem 4rem 6rem;display:flex;position:relative;overflow:hidden}.hero-bg{pointer-events:none;background:radial-gradient(ellipse 50% 40% at 75% 35%, color-mix(in oklch, var(--v) 6%, transparent) 0%, transparent 65%);position:absolute;inset:0}.hero-content{z-index:1;max-width:920px;position:relative}.hero-tag{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);align-items:center;gap:1rem;margin-bottom:2.5rem;font-family:DM Mono,monospace;font-size:.7rem;display:flex}.hero-tag:before{content:"";background:linear-gradient(90deg, var(--r), var(--v));width:2.4rem;height:1px;display:inline-block}.hero-title{letter-spacing:-.035em;flex-direction:column;margin-bottom:2rem;font-family:DM Serif Display,serif;font-size:clamp(4rem,11vw,9.5rem);line-height:.95;display:flex}.hero-line{display:block}.hero-line em{background:linear-gradient(90deg, var(--r), var(--o), var(--y), var(--g), var(--b), var(--v));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;font-style:italic;animation:12s linear infinite rainbowSlide}@keyframes rainbowSlide{to{background-position:200% 0}}.hero-desc{max-width:560px;color:var(--muted);margin-bottom:3rem;font-size:.95rem;line-height:1.85}.hero-ctas{flex-wrap:wrap;gap:1rem;display:flex}.hero-marquee{pointer-events:none;position:absolute;bottom:2.2rem;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)}.hero-marquee-track{white-space:nowrap;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);opacity:.55;gap:2rem;width:max-content;font-family:DM Mono,monospace;font-size:.72rem;animation:38s linear infinite marqueeSlide;display:flex}.hero-marquee-track>span:nth-child(odd){color:var(--fg)}.hero-marquee-track>span:nth-child(2n){opacity:.4}@keyframes marqueeSlide{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.hero-marquee-track,.hero-line em{animation:none}}.btn{letter-spacing:.16em;text-transform:uppercase;isolation:isolate;will-change:transform;border:1px solid #0000;border-radius:999px;align-items:center;gap:.55rem;padding:.85rem 1.85rem;font-family:DM Mono,monospace;font-size:.74rem;text-decoration:none;transition:color .3s,border-color .3s,background .3s;display:inline-flex;position:relative}.btn-label{z-index:1;position:relative}.btn-arrow{z-index:1;transition:transform .4s cubic-bezier(.16,1,.3,1);position:relative}.btn:hover .btn-arrow{transform:translateY(3px)}.btn-primary{background:var(--fg);color:var(--bg);border-color:var(--fg)}.btn-primary:before{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--r), var(--o), var(--y), var(--g), var(--b), var(--v));opacity:0;z-index:-1;transition:opacity .4s;position:absolute;inset:0}.btn-primary:hover{color:var(--bg);border-color:#0000}.btn-primary:hover:before{opacity:1}.btn-ghost{color:var(--fg);background:0 0;border-color:#f0ede838}.btn-ghost:hover{border-color:var(--fg);background:#f0ede80d}section[data-section]{padding:7rem 3rem 7rem 6rem;position:relative}@media (width<=900px){.navbar{padding:1.25rem 2rem 1.25rem 3.5rem}.hero{padding:9rem 2rem 5rem 3.5rem}section[data-section]{padding:5rem 2rem 5rem 3.5rem}}@media (width<=600px){.navbar{padding:1rem 1.25rem 1rem 2.25rem}.hero{padding:7.5rem 1.25rem 4rem 2.25rem}section[data-section]{padding:4rem 1.25rem 4rem 2.25rem}}.flow-header{max-width:900px;margin-bottom:4rem}.flow-eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem;padding-left:1.6rem;font-family:DM Mono,monospace;font-size:.7rem;display:inline-block;position:relative}.flow-eyebrow:before{content:"";background:currentColor;width:1rem;height:1px;position:absolute;top:50%;left:0}.flow-title{letter-spacing:-.025em;color:var(--fg);font-family:DM Serif Display,serif;font-size:clamp(2.2rem,5vw,4rem);font-weight:400;line-height:1.05}.flow-title em{color:var(--fg);background:linear-gradient(90deg, var(--r), var(--v));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;font-style:italic}.stats{padding-top:0!important;padding-bottom:9rem!important}.stats-row{grid-template-columns:repeat(4,1fr);align-items:end;gap:3rem;max-width:1100px;display:grid}.stat{flex-direction:column;gap:.4rem;display:flex}.stat-num{letter-spacing:-.03em;color:var(--fg);font-family:Syne,sans-serif;font-size:clamp(2.8rem,5.5vw,4.5rem);font-weight:800;line-height:1}.stat-num.rainbow{background:linear-gradient(90deg, var(--r), var(--o), var(--y), var(--g), var(--b), var(--v));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stat-label{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.7rem}@media (width<=700px){.stats-row{grid-template-columns:repeat(2,1fr);gap:2.5rem 1.5rem}}.portfolio{padding-top:0!important}.project-stream{flex-direction:column;gap:3.5rem;margin:0;padding:0;list-style:none;display:flex}.project{isolation:isolate;border-top:1px solid #ffffff0f;grid-template-columns:minmax(260px,30%) 1fr;grid-template-areas:"figure body";align-items:start;gap:3rem;padding:2.5rem 0;display:grid;position:relative}.project:first-child{border-top:0;padding-top:0}.project-figure{grid-area:figure}.project-body{grid-area:body}.project.is-even{grid-template-columns:1fr minmax(260px,30%);grid-template-areas:"body figure"}.project.is-even .project-body{text-align:right}.project.is-even .project-tags,.project.is-even .project-meta{justify-content:flex-end}.project-figure{isolation:isolate;flex-direction:row;align-self:start;align-items:center;gap:1.5rem;min-width:0;display:flex;position:sticky;top:18vh}.project.is-even .project-figure{flex-direction:row-reverse;justify-content:flex-start}.project-numeral{letter-spacing:-.05em;color:var(--accent);text-shadow:0 0 30px color-mix(in oklch, var(--accent) 25%, transparent), 0 0 80px color-mix(in oklch, var(--accent) 12%, transparent);-webkit-user-select:none;user-select:none;flex-shrink:0;font-family:Syne,sans-serif;font-size:clamp(4rem,8vw,7.5rem);font-weight:800;line-height:.85;transition:transform .6s cubic-bezier(.16,1,.3,1);position:relative}.project-glyph-wrap{width:clamp(64px,6.5vw,86px);color:var(--accent);opacity:.9;flex-shrink:0}.glyph{width:100%;height:auto;display:block;overflow:visible}.glyph-stroke{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px color-mix(in oklch, currentColor 35%, transparent))}.glyph-bar{stroke-width:2px}.glyph-axis{fill:none;stroke:#ffffff1f;stroke-width:1px;stroke-linecap:round}.glyph-axis-dashed{stroke-dasharray:2 4}.glyph-node,.glyph-dot,.glyph-mark{fill:currentColor}.glyph-dot{opacity:.7}.glyph-mark{opacity:.4}@keyframes glyphBarTick{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.18)}}.glyph-dashboard .glyph-bar{transform-box:fill-box;transform-origin:50% 100%;animation:2.6s ease-in-out infinite glyphBarTick}@keyframes glyphKpiBreathe{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}.glyph-dashboard .glyph-kpi-ring{transform-box:fill-box;transform-origin:50%;animation:3.4s ease-in-out infinite glyphKpiBreathe}@keyframes glyphPacketFlow{0%{opacity:0;transform:translate(0)}6%{opacity:1}30%{opacity:1;transform:translate(46px)}36%{opacity:0}44%{opacity:0;transform:translate(46px)}50%{opacity:1}74%{opacity:1;transform:translate(92px)}80%{opacity:0}to{opacity:0;transform:translate(92px)}}.glyph-pipeline .glyph-packet{fill:currentColor;transform-box:fill-box;transform-origin:50%;filter:drop-shadow(0 0 4px);animation:4.2s ease-in-out infinite glyphPacketFlow}.glyph-pipeline .glyph-packet-2{animation-delay:2.1s}@keyframes glyphObsRipple{0%,70%,to{opacity:.55;transform:scale(1)}35%{opacity:1;transform:scale(1.4)}}.glyph-panel .glyph-pulse-dot{transform-box:fill-box;transform-origin:50%;animation:3.6s ease-in-out infinite glyphObsRipple}@keyframes glyphNodePulse{0%,80%,to{opacity:.85;transform:scale(1)}10%{opacity:1;transform:scale(1.45)}}.glyph-tree .glyph-node{transform-box:fill-box;transform-origin:50%;animation:4s ease-in-out infinite glyphNodePulse}.glyph-tree .tree-l0{animation-delay:0s}.glyph-tree .tree-l1{animation-delay:.4s}.glyph-tree .tree-l2{animation-delay:.8s}.glyph-tree .tree-l3{animation-delay:1.2s}@keyframes glyphCouponTick{0%,75%,to{opacity:.55;transform:translateY(0)}10%{opacity:1;transform:translateY(-3px)}20%{opacity:.85;transform:translateY(0)}}.glyph-bond .glyph-coupon{transform-box:fill-box;transform-origin:50% 100%;animation:4.4s ease-in-out infinite glyphCouponTick}@keyframes glyphNeedleSweep{0%,to{transform:rotate(0)}50%{transform:rotate(-22deg)}}.glyph-gauge .glyph-needle{transform-box:view-box;transform-origin:70px 64px;animation:5.2s ease-in-out infinite glyphNeedleSweep}@media (prefers-reduced-motion:reduce){.glyph *,.glyph-needle,.glyph-coupon,.glyph-packet,.glyph-pulse-dot,.glyph-bar,.glyph-kpi-ring{animation:none!important}}.project-numeral:before{content:"";background:radial-gradient(circle at center, color-mix(in oklch, var(--accent) 22%, transparent) 0%, color-mix(in oklch, var(--accent) 8%, transparent) 35%, transparent 70%);filter:blur(50px);z-index:-1;pointer-events:none;opacity:.55;position:absolute;inset:-40% -30%}.project:hover .project-numeral{transform:scale(1.04)rotate(-1.5deg)}.project-body{flex-direction:column;gap:1rem;max-width:640px;display:flex}.project.is-even .project-body{margin-left:auto}.project-meta{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.75rem;font-family:DM Mono,monospace;font-size:.68rem;display:flex}.project-type:before{content:"— ";color:var(--muted)}.project.is-even .project-type:before{content:""}.project.is-even .project-type:after{content:" —";color:var(--muted)}.project-title{letter-spacing:-.02em;color:var(--fg);margin:0;font-family:DM Serif Display,serif;font-size:clamp(1.8rem,3.4vw,2.7rem);font-weight:400;line-height:1.1}.project-desc{color:var(--muted);max-width:56ch;font-size:.92rem;line-height:1.8}.project.is-even .project-desc{margin-left:auto}.project-tags{flex-wrap:wrap;gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.project-tag{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border:1px solid #ffffff1a;border-radius:999px;padding:.3rem .75rem;font-family:DM Mono,monospace;font-size:.62rem;transition:color .3s,border-color .3s}.project:hover .project-tag{color:var(--accent);border-color:color-mix(in oklch, var(--accent) 50%, transparent)}@media (width<=800px){.project,.project.is-even{grid-template-columns:1fr;grid-template-areas:"figure""body";gap:1.25rem}.project.is-even .project-body{text-align:left}.project.is-even .project-tags,.project.is-even .project-meta{justify-content:flex-start}.project.is-even .project-body,.project.is-even .project-desc{margin-left:0}.project.is-even .project-type:before{content:"— "}.project.is-even .project-type:after{content:""}.project.is-even .project-figure{flex-direction:row}.project-figure{flex-direction:row;align-items:center;gap:1.5rem;position:static}.project-numeral{font-size:clamp(4rem,18vw,6rem)}.project-glyph-wrap{width:100px}}.workspace{padding-top:0!important}.workspace-list{flex-direction:column;max-width:1100px;margin:0;padding:0;list-style:none;display:flex}.workspace-row{border-bottom:1px solid #ffffff0f;grid-template-columns:minmax(180px,22%) 1fr auto;align-items:baseline;gap:1.5rem;padding:1.4rem 0;transition:padding-left .4s cubic-bezier(.16,1,.3,1);display:grid}.workspace-row:hover{padding-left:1rem}.workspace-row:before{content:"";width:0;position:absolute}.workspace-row-label{letter-spacing:.22em;text-transform:uppercase;color:var(--row-color);padding-left:1.25rem;font-family:DM Mono,monospace;font-size:.68rem;position:relative}.workspace-row-label:before{content:"";background:var(--row-color);width:8px;height:8px;box-shadow:0 0 16px color-mix(in oklch, var(--row-color) 60%, transparent);border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.workspace-row-rule{background:repeating-linear-gradient(90deg,#ffffff2e 0 2px,#0000 2px 6px);align-self:center;width:100%;height:1px}.workspace-row-value{letter-spacing:-.01em;color:var(--fg);text-align:right;font-family:DM Serif Display,serif;font-size:clamp(1rem,1.5vw,1.25rem)}@media (width<=700px){.workspace-row{grid-template-columns:1fr;gap:.4rem}.workspace-row-rule{display:none}.workspace-row-value{text-align:left}}.about{padding-top:0!important}.about-layout{grid-template-columns:1.2fr 1fr;align-items:start;gap:5rem;max-width:1100px;display:grid}.about-text p{color:var(--muted);max-width:60ch;margin-bottom:1.4rem;font-size:1rem;line-height:1.85}.about-text p strong{color:var(--fg);font-weight:500}.about-text p em{color:var(--fg);font-style:italic}.skills-list{margin:0;padding:0;list-style:none}.skill-item{color:var(--fg);border-bottom:1px solid #ffffff0f;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1rem 0;font-size:.88rem;transition:color .3s;display:grid}.skill-item:hover{color:var(--skill-color)}.skill-item:first-child{border-top:1px solid #ffffff0f}.skill-name{letter-spacing:.16em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.72rem}.skill-bar{background:#ffffff0f;width:110px;height:2px;position:relative;overflow:hidden}.skill-fill{filter:drop-shadow(0 0 6px);border-radius:1px;position:absolute;top:0;bottom:0;left:0}@media (width<=800px){.about-layout{grid-template-columns:1fr;gap:3rem}}.contact{text-align:center;position:relative;overflow:hidden;padding:9rem 3rem 9rem 6rem!important}.contact-aurora{pointer-events:none;background:radial-gradient(ellipse 70% 50% at 50% 50%, color-mix(in oklch, var(--v) 8%, transparent) 0%, transparent 70%);filter:blur(20px);position:absolute;inset:-20% -10% 0}.contact-inner{z-index:1;flex-direction:column;align-items:center;max-width:760px;margin:0 auto;display:flex;position:relative}.contact-eyebrow{margin-bottom:1.75rem;padding-left:1.6rem}.contact-title{letter-spacing:-.03em;margin-bottom:1.25rem;font-family:DM Serif Display,serif;font-size:clamp(3rem,7vw,6rem);font-weight:400;line-height:1}.contact-title em{background:linear-gradient(90deg, var(--r), var(--o), var(--y), var(--g), var(--b), var(--v));-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;font-style:italic;animation:10s linear infinite rainbowSlide}.contact-sub{color:var(--muted);margin-bottom:2.75rem;font-size:.95rem}.contact-links{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}@media (width<=900px){.contact{padding:7rem 2rem!important}}@media (width<=600px){.contact{padding:5.5rem 1.25rem!important}}.site-footer{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;z-index:5;border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:1.75rem 3rem 1.75rem 6rem;font-family:DM Mono,monospace;font-size:.68rem;display:flex;position:relative}.footer-rainbow{background:linear-gradient(90deg, var(--r), var(--o), var(--y), var(--g), var(--b), var(--v));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@media (width<=700px){.site-footer{text-align:center;flex-direction:column;gap:.75rem;padding:1.5rem 1.25rem 1.5rem 2.25rem}}.mobile-nav{z-index:90;-webkit-backdrop-filter:blur(16px);background:#0a0a0af2;flex-direction:column;justify-content:center;align-items:center;gap:2rem;display:none;position:fixed;inset:0}.mobile-nav.open{display:flex}.mobile-nav a{color:var(--fg);font-family:DM Serif Display,serif;font-size:2rem;font-weight:400;text-decoration:none;transition:color .2s}.mobile-nav a:hover{color:var(--b)}@media (width<=768px){.nav-links{display:none}.hamburger{display:flex}}.scroll-reveal{opacity:0}@media (prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal.revealed{opacity:1!important;transform:none!important}.ambient-orb{display:none}}
